Anda dapat membuat halaman dokumentasi untuk buat pada modul Scribunto ini.
Penyunting dapat melakukan uji coba pada halaman bak pasir (buat | cermin) dan kasus uji (buat) modul ini.
Subhalaman modul ini.
Penyunting dapat melakukan uji coba pada halaman bak pasir (buat | cermin) dan kasus uji (buat) modul ini.
Subhalaman modul ini.
require('strict') localyesno=require('Module:Yesno') localmakeMessageBox=require('Module:Message box').main localgetArgs localactiveBox-- lazily initialized if we get an active request ---------------------------------------------------------------------- -- Box class definition ---------------------------------------------------------------------- localbox={} box.__index=box functionbox.new(protectionType,args) localobj={} obj.args=args setmetatable(obj,box) obj.tmboxArgs={}-- Used to store arguments to be passed to tmbox by the box:export method. -- Set data fields. obj.tmboxArgs.attrs={['data-origlevel']=protectionType} returnobj end functionbox:setArg(key,value) -- This sets a value to be passed to tmbox. ifkeythen self.tmboxArgs[key]=value end end functionbox:export() ifnotmw.title.getCurrentTitle().isTalkPageandnotself.args.demothen return'<span class="error">Kesalahan: Permintaan suntingan halaman yang dilindungi hanya dapat dilakukan di halaman pembicaraan.</span>[[Kategori:Halaman non-pembicaraan dengan templat permintaan suntingan]]' end -- String together page names provided localtitles={} fork,vinpairs(self.args)do iftype(k)=='number'then table.insert(titles,self.args[k]) end end localpagesText if#titles==0then pagesText='' elseif#titles==1andmw.title.getCurrentTitle().subjectPageTitle.fullText==titles[1]then pagesText='' else fori,vinpairs(titles)do ifi==1then pagesText=' hingga [[:'..v..']]' elseifi==#titlesthen pagesText=pagesText..' dan [[:'..v..']]' else pagesText=pagesText..', [[:'..v..']]' end end end self:setArg('smalltext',"[[Wikipedia:Permintaan pelindungan halaman/Penyuntingan|Permintaan suntingan]] ini"..pagesText.. " telah dijawab. Atur parameter <code style=\"white-space: nowrap;\">|answered=</code> atau <code style=\"white-space: nowrap;\">|ans=</code> menjadi '''no''' untuk mengaktifkan kembali permintaan Anda.") self:setArg('small',true) self:setArg('class','editrequest') returnmakeMessageBox('tmbox',self.tmboxArgs) end ---------------------------------------------------------------------- -- Process arguments and initialise objects ---------------------------------------------------------------------- localp={} functionp._main(protectionType,args) localboxType=box ifnotyesno(args.answeredorargs.ans,true)then ifnotactiveBoxthen activeBox=require('Modul:Protected edit request/active')(box,yesno,makeMessageBox) end boxType=activeBox end localrequestBox=boxType.new(protectionType,args) returnrequestBox:export() end localmt={} functionmt.__index(t,k) ifnotgetArgsthen getArgs=require('Module:Arguments').getArgs end returnfunction(frame) returnt._main(k,getArgs(frame,{wrappers={'Templat:Edit fully-protected','Templat:Edit semi-protected','Templat:Edit template-protected','Templat:Edit extended-protected','Templat:Edit interface-protected','Templat:Edit protected'}})) end end returnsetmetatable(p,mt)