Module:FormCheckAndSubmit: Difference between revisions

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


     -- if pargs.retreattype == "Three-year retreat" then
     local saveInput = mw.html.create( 'input' )
    --    for key, value in pairs( threeYearFields ) do
     saveInput
     --         table.insert( requiredFields , key , value )
         :attr( 'id', 'TfacsSubmitApplication' )
    --    end
        :attr( 'type', 'submit' )
    -- elseif pargs.retreattype == "Solitary hermitage" then
         :attr( 'value', 'Save your application' )
    --    for key, value in pairs( solitaryFields ) do
        :attr( 'class', 'btn btn-primary' )
    --         table.insert( requiredFields , key , value )
     local saveButton = tostring( saveInput )
    --    end
     -- end


     -- for key, value in ipairs( requiredFields ) do
     local submitInput = mw.html.create( 'input' )
     --    if value == nil or value == "" then
     submitInput
    --         return 'Fields missing.'
        :attr( 'id', 'TfacsSubmitApplication' )
    --    end
         :attr( 'type', 'submit' )
    -- end
        :attr( 'value', 'Submit your final application!' )
 
        :attr( 'class', 'btn btn-danger' )
     return #pargs
     local submitButton = tostring( submitInput )


    if not pargs.retreattype or pargs.retreattype == "" then
        return "Retreat type not selected."
    elseif pargs.retreattype == "Three-year retreat" then
        for key, value in ipairs( threeYearFields ) do
            table.insert( requiredFields , key , value )
        end
        if #requiredFields == 71 then
            return "All 71 fields for 3 year filled. All done!"
        else
            return "71 required fields for 3 year not filled. Not done."
        end
    elseif pargs.retreattype == "Solitary hermitage" then
        for key, value in ipairs( solitaryFields ) do
            table.insert( requiredFields , key , value )
        end
        if #requiredFields == 60 then
            return "All 60 fields for solitary filled. All done!"
        else
            return "60 required fields for solitary not filled. Not done."
        end
    end
   
end
end


return p
return p

Latest revision as of 06:20, 20 May 2024

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

local p = {}

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

    local saveInput = mw.html.create( 'input' )
    saveInput
        :attr( 'id', 'TfacsSubmitApplication' )
        :attr( 'type', 'submit' )
        :attr( 'value', 'Save your application' )
        :attr( 'class', 'btn btn-primary' )
    local saveButton = tostring( saveInput )

    local submitInput = mw.html.create( 'input' )
    submitInput
        :attr( 'id', 'TfacsSubmitApplication' )
        :attr( 'type', 'submit' )
        :attr( 'value', 'Submit your final application!' )
        :attr( 'class', 'btn btn-danger' )
    local submitButton = tostring( submitInput )

    if not pargs.retreattype or pargs.retreattype == "" then
        return "Retreat type not selected."
    elseif pargs.retreattype == "Three-year retreat" then
        for key, value in ipairs( threeYearFields ) do 
            table.insert( requiredFields , key , value )
        end
        if #requiredFields == 71 then
            return "All 71 fields for 3 year filled. All done!"
        else
            return "71 required fields for 3 year not filled. Not done."
        end
    elseif pargs.retreattype == "Solitary hermitage" then
        for key, value in ipairs( solitaryFields ) do 
            table.insert( requiredFields , key , value )
        end
        if #requiredFields == 60 then
            return "All 60 fields for solitary filled. All done!"
        else
            return "60 required fields for solitary not filled. Not done."
        end
    end
    
end

return p