Module:FormCheckAndSubmit

From Tsadra Foundation Advanced Contemplative Scholarships
Revision as of 04:49, 20 May 2024 by Jeremi (talk | contribs) ((by SublimeText.Mediawiker))

Documentation for this module may be created at Module:FormCheckAndSubmit/doc

local p = {}

function p.main(frame)
    
    local pargs = frame:getParent().args
    local requiredFields = {
        ["firstname"] = pargs.firstname ,
        ["lastname"] = pargs.lastname ,
        ["birthdate"] = pargs.birthdate ,
        ["birthcountry"] = pargs.birthcountry ,
        ["nationality"] = pargs.nationality ,
        ["street"] = pargs.street ,
        ["city"] = pargs.city ,
        ["postalcode"] = pargs.postalcode ,
        ["country"] = pargs.country ,
        ["email"] = pargs.email ,
        ["telephone"] = pargs.telephone ,
        ["retreattype"] = pargs.retreattype ,
        ["cvedu"] = pargs['cv-edu'] ,
        ["cvwork"] = pargs['cv-work'] ,
        ["studiedtibetan"] = pargs.studiedtibetan ,
        ["spokentibcomprehension"] = pargs.spokentibcomprehension ,
        ["writtentibcomprehension"] = pargs.writtentibcomprehension ,
        ["tibetanrequiredforretreat"] = pargs.tibetanrequiredforretreat ,
        ["tibetanretreatparts"] = pargs.tibetanretreatparts ,
        ["introbuddhism"] = pargs.introbuddhism ,
        ["refugehistory"] = pargs.refugehistory ,
        ["formalvows"] = pargs.formalvows ,
        ["ngondrocomplete"] = pargs.ngondrocomplete ,
        ["previousretreatscomplete"] = pargs.previousretreatscomplete ,
        ["ynadvstudiesprogs"] = pargs.ynadvstudiesprogs ,
        ["ynofferedservices"] = pargs.ynofferedservices ,
        ["othercommunitywork"] = pargs.othercommunitywork ,
        ["retreatduration"] = pargs.retreatduration ,
        ["StartFunding"] = pargs.StartFunding ,
        ["EndFunding"] = pargs.EndFunding ,
        ["costestimateCurrency"] = pargs.costestimateCurrency ,
        ["costestimate"] = pargs.costestimate ,
        ["requestedamountCurrency"] = pargs.requestedamountCurrency ,
        ["requestedamount"] = pargs.requestedamount ,
        ["othermoney"] = pargs.othermoney ,
        ["letterofmotivation"] = pargs.letterofmotivation ,
        ["FileHaveCV"] = pargs.FileHaveCV ,
        ["FileHaveDharmaCV"] = pargs.FileHaveDharmaCV ,
        ["FileHavePhoto"] = pargs.FileHavePhoto ,
        ["FileHaveDescriptFinSit"] = pargs.FileHaveDescriptFinSit ,
        ["recom1NameFirst"] = pargs.recom1NameFirst ,
        ["recom1NameLast"] = pargs.recom1NameLast ,
        ["recom1Email"] = pargs.recom1Email ,
        ["recom1Relate"] = pargs.recom1Relate ,
        ["recom2NameFirst"] = pargs.recom2NameFirst ,
        ["recom2NameLast"] = pargs.recom2NameLast ,
        ["recom2Email"] = pargs.recom2Email ,
        ["recom2Relate"] = pargs.recom2Relate
    }
    local threeYearFields = {
        ["center"] = pargs.center ,
        ["centerstreet"] = pargs.centerstreet ,
        ["centercity"] = pargs.centercity ,
        ["centerpostalcode"] = pargs.centerpostalcode ,
        ["centercountry"] = pargs.centercountry ,
        ["startdate"] = pargs.startdate ,
        ["enddate"] = pargs.enddate ,
        ["retreatmaster"] = pargs.retreatmaster ,
        ["retreatadministrator"] = pargs.retreatadministrator ,
        ["retreatadministratoremail"] = pargs.retreatadministratoremail ,
        ["retreatliaison"] = pargs.retreatliaison ,
        ["retreatliaisonemail"] = pargs.retreatliaisonemail ,
        ["FileHaveAcceptLetter"] = pargs.FileHaveAcceptLetter ,
        ["AcceptLetterAuthorFirst"] = pargs.AcceptLetterAuthorFirst ,
        ["AcceptLetterAuthorLast"] = pargs.AcceptLetterAuthorLast ,
        ["AcceptLetterEmail"] = pargs.AcceptLetterEmail ,
        ["AcceptLetterPhone"] = pargs.AcceptLetterPhone ,
        ["FileHaveRetreatBudgCost"] = pargs.FileHaveRetreatBudgCost ,
        ["CostLetterAuthorFirst"] = pargs.CostLetterAuthorFirst ,
        ["CostLetterAuthorLast"] = pargs.CostLetterAuthorLast ,
        ["CostLetterEmail"] = pargs.CostLetterEmail ,
        ["CostLetterPhone"] = pargs.CostLetterPhone ,
        ["FileHaveEligibilityDocs"] = pargs.FileHaveEligibilityDocs
    }
    local solitaryFields = {
        ["solcenterstreet"] = pargs.solcenterstreet ,
        ["solcentercity"] = pargs.solcentercity ,
        ["solcenterpostalcode"] = pargs.solcenterpostalcode ,
        ["solcentercountry"] = pargs.solcentercountry ,
        ["solstartdate"] = pargs.solstartdate ,
        ["solenddate"] = pargs.solenddate ,
        ["solretreatliaison"] = pargs.solretreatliaison ,
        ["solretreatliaisonemail"] = pargs.solretreatliaisonemail ,
        ["SolHermDescription"] = pargs.SolHermDescription ,
        ["FileHaveSolHermDescript"] = pargs.FileHaveSolHermDescript ,
        ["FileHaveSolRetreatProg"] = pargs.FileHaveSolRetreatProg ,
        ["FileHaveSolRetreatBudg"] = pargs.FileHaveSolRetreatBudg
    }

    -- if pargs.retreattype == "Three-year retreat" then
    --     for key, value in pairs( threeYearFields ) do 
    --         table.insert( requiredFields , key , value )
    --     end
    -- elseif pargs.retreattype == "Solitary hermitage" then
    --     for key, value in pairs( solitaryFields ) do 
    --         table.insert( requiredFields , key , value )
    --     end
    -- end

    -- for key, value in ipairs( requiredFields ) do 
    --     if value == nil or value == "" then
    --         return 'Fields missing.'
    --     end
    -- end

    return #requiredFields

end

return p