Wikipedia bbcwiki https://bbc.wikipedia.org/wiki/Pogu_ni_Alaman MediaWiki 1.47.0-wmf.24 first-letter Media Marhasurungan Panghataion Sipanghasea Panghataion ni Sipanghasea Wikipedia Panghataion ni Wikipedia Ugasan Panghataion ni Ugasan MediaWiki Panghataion ni MediaWiki Templat Panghataion ni Templat Pangurupion Panghataion ni Pangurupion Horong Panghataion ni Horong TimedText TimedText talk Module Module talk Event Event talk Pogu ni Alaman 0 1 18800 18788 2026-10-18T13:11:24Z Gazartashlomo0907 62 18800 wikitext text/x-wiki __noeditsection__ __NOTOC__ <!------------SADARION------------> <div class="mp-header__sadari-on">[[Ugasan:Simpleicons Business calendar-with-a-clock-time-tools.svg|24px|link=]]&nbsp;&nbsp;Sadarion:&nbsp;'''{{CURRENTDAYNAME}}, {{CURRENTDAY}} {{CURRENTMONTHNAME}} {{CURRENTYEAR}}'''</div> <templatestyles src="Templat:Pogu ni alaman/style.css" /> <div id="atas"> <div class="nomobile mp-header"> <div class="mp-header__main"> <div class="mp-header__welcome"> <!-- prettier-ignore --> <div class="mp-header__welcome-hero"><!-- -->'''Wikipedia Batak Toba'''<!-- --></div> <!-- prettier-ignore --> <div class="mp-header__welcome-subtitle"><!-- -->Sopo Parbinotoan lungkas na marhata [[Hata Batak Toba|Batak Toba]].<!-- --></div> </div> <!-- prettier-ignore --> <div class="mp-header__statistics"><!-- statistik jumlah artikel -->Saonari nunga adong '''[[Marhasurungan:AllPages|{{NUMBEROFARTICLES}}]]''' guritan <br> na tarsurat di bagasan [[hata Batak Toba]]. </div> <!-- prettier-ignore --> <div class="mp-header__portal hlist"> </div> </div> </div> <div class="mp-main-content"> <!-- prettier-ignore --> <div class="mp-main-content__focus"> <!-- ============== GURITAN NA TARPILLIT ================ --> {{Pogu ni alaman/Box3 |title = Guritan na tarpillit |id = mf-guritan na tarpillit |image = HSUtvald.svg |content = {{Wikipedia:Guritan na tarpillit/{{CURRENTWEEK}} {{CURRENTYEAR}}}} }} <!-- ================== GOMBAR NA TARPILLIT =============== --> {{Pogu ni alaman/Box3 |id = mf-gombar na tarpillit |title = Gombar na tarpillit |image = PL Wiki InM ikona.svg |content = [[Ugasan:Sinabung.jpg|350px]] <br>[[Dolok Sinabung]] na maringanan di [[Kabupaten Karo]]<br> <small>Gombar on dienet sian [https://commons.wikimedia.org/wiki/File:Sinabung.jpg Wikimedia Commons]</small> }} <!-- ============== TINGTING ================ --> {{Pogu ni alaman/Box3 |title = Tingting |id = mf-tinting |image = HSUtvald.svg |content = {{Templat:Tingting Ari Minggu}} <!-- ============== BAHEN GURITAN NA IMBARU ================ --> {{Pogu ni alaman/Box3 |title = Bahen guritan na imbaru |id = mf-bahen guritan na imbaru |image = HSUtvald.svg |content = <inputbox> type=create width=30 buttonlabel=Bahen </inputbox> }} </div> <!-- prettier-ignore --> <div class="mp-main-content__other"> <!-- ============== AHA DO WIKIPEDIA I ================ --> {{Pogu ni alaman/Box3 | image = {{{img1|Wikipedia logo puzzle globe spins horizontally and vertically, revealing the contents of all of its puzzle pieces, without background.gif}}} | class = nomobile | title = Aha do Wikipedia i? | content = Boi ma dohonon, Wikipedia i songon sada “halinu ni pustaha” manang “pustaha halinu” na pinadomudomu ni hatopan ni panggurit sian saluhut portibi on, jala ise pe boi do manongos guritan tu “pustaha halinu” saguru ragam hata ni hatopan i.<br> Molo adong hita na taronjar rohana naeng manongos guritan na imbaru tu “pustaha halinu”, nauli jala na denggan ma i, une jala pintor boi do ulahononhon.<br> Alai itaparrohahon ma ruhut-ruhut dohot uhum ni “pustaha halinu” na sian pamotoan (''lisensi'') ni hatopan na margoar ''Creative Commons BY-SA''.<br> Guritan manang tongosan di “pustaha halinu” on, boi dipatingkos manang dipargunahon, alai asa marpanghorhon na denggan, sian pamotoan ni ''Creative Commons BY-SA'' ma.<br> Porlu hita boto, ia nasa guritan manang tongosan di “pustaha halinu” dihobasi angka dongan panggurit di bagasan haradeon ni roha sambing, jala tongtong do nasida mangula sada partungkoan.<br> Ingkon barita na toho do isi ni guritan nang tongosan i, boi hatindanghonon marhite pustaha, jala mangihuthon ruhut-ruhut ni sigurit pustaha.<br> Adong do alaman panungkunan na boi mangurupi dongan na naeng manongos guritan na imbaru tu “pustaha halinu” on.<br> Unang hita maila masisungkunan manang mangido pangurupion, tarlumobi tu dongan na naeng manggurit dope. Laos boi do tapargunahon alaman on molo naeng manongos guritan na imbaru. }} </div> </div> <div class="mp-footer"> <div class="mp-footer__main"> {{Pogu ni alaman/Box4 | image = Wikimedia-logo-circle.svg | title = Ulaon Wikimedia na asing | content = {{MarsiadapariWMF}} }} </div> __NOTOC__ __NOEDITSECTION__ [[Horong:Pogu ni alaman]] 38cleqfhj0xas66hgal5owvomkbuly9 18813 18800 2026-10-19T00:21:05Z Gazartashlomo0907 62 18813 wikitext text/x-wiki __noeditsection__ __NOTOC__ <!------------SADARION------------> <div class="mp-header__sadari-on">[[Ugasan:Simpleicons Business calendar-with-a-clock-time-tools.svg|24px|link=]]&nbsp;&nbsp;Sadarion:&nbsp;'''{{CURRENTDAYNAME}}, {{CURRENTDAY}} {{CURRENTMONTHNAME}} {{CURRENTYEAR}}'''</div> <templatestyles src="Templat:Pogu ni alaman/style.css" /> <div id="atas"> <div class="nomobile mp-header"> <div class="mp-header__main"> <div class="mp-header__welcome"> <!-- prettier-ignore --> <div class="mp-header__welcome-hero"><!-- -->'''Wikipedia Batak Toba'''<!-- --></div> <!-- prettier-ignore --> <div class="mp-header__welcome-subtitle"><!-- -->Sopo Parbinotoan lungkas na marhata [[Hata Batak Toba|Batak Toba]].<!-- --></div> </div> <!-- prettier-ignore --> <div class="mp-header__statistics"><!-- statistik jumlah artikel -->Saonari nunga adong '''[[Marhasurungan:AllPages|{{NUMBEROFARTICLES}}]]''' guritan <br> na tarsurat di bagasan [[hata Batak Toba]]. </div> <!-- prettier-ignore --> <div class="mp-header__portal hlist"> </div> </div> </div> <div class="mp-main-content"> <!-- prettier-ignore --> <div class="mp-main-content__focus"> <!-- ============== GURITAN NA TARPILLIT ================ --> {{Pogu ni alaman/Box3 |title = Guritan na tarpillit |id = mf-guritan na tarpillit |image = HSUtvald.svg |content = {{Wikipedia:Guritan na tarpillit/{{CURRENTWEEK}} {{CURRENTYEAR}}}} }} <!-- ================== GOMBAR NA TARPILLIT =============== --> {{Pogu ni alaman/Box3 |id = mf-gombar na tarpillit |title = Gombar na tarpillit |image = PL Wiki InM ikona.svg |content = [[Ugasan:Sinabung.jpg|350px]] <br>[[Dolok Sinabung]] na maringanan di [[Kabupaten Karo]]<br> <small>Gombar on dienet sian [https://commons.wikimedia.org/wiki/File:Sinabung.jpg Wikimedia Commons]</small> }} <!-- ============== TINGTING ================ --> {{Pogu ni alaman/Box3 |title = Tingting |id = mf-tinting |image = HSUtvald.svg |content = {{Templat:Tingting}} <!-- ============== BAHEN GURITAN NA IMBARU ================ --> {{Pogu ni alaman/Box3 |title = Bahen guritan na imbaru |id = mf-bahen guritan na imbaru |image = HSUtvald.svg |content = <inputbox> type=create width=30 buttonlabel=Bahen </inputbox> }} </div> <!-- prettier-ignore --> <div class="mp-main-content__other"> <!-- ============== AHA DO WIKIPEDIA I ================ --> {{Pogu ni alaman/Box3 | image = {{{img1|Wikipedia logo puzzle globe spins horizontally and vertically, revealing the contents of all of its puzzle pieces, without background.gif}}} | class = nomobile | title = Aha do Wikipedia i? | content = Boi ma dohonon, Wikipedia i songon sada “halinu ni pustaha” manang “pustaha halinu” na pinadomudomu ni hatopan ni panggurit sian saluhut portibi on, jala ise pe boi do manongos guritan tu “pustaha halinu” saguru ragam hata ni hatopan i.<br> Molo adong hita na taronjar rohana naeng manongos guritan na imbaru tu “pustaha halinu”, nauli jala na denggan ma i, une jala pintor boi do ulahononhon.<br> Alai itaparrohahon ma ruhut-ruhut dohot uhum ni “pustaha halinu” na sian pamotoan (''lisensi'') ni hatopan na margoar ''Creative Commons BY-SA''.<br> Guritan manang tongosan di “pustaha halinu” on, boi dipatingkos manang dipargunahon, alai asa marpanghorhon na denggan, sian pamotoan ni ''Creative Commons BY-SA'' ma.<br> Porlu hita boto, ia nasa guritan manang tongosan di “pustaha halinu” dihobasi angka dongan panggurit di bagasan haradeon ni roha sambing, jala tongtong do nasida mangula sada partungkoan.<br> Ingkon barita na toho do isi ni guritan nang tongosan i, boi hatindanghonon marhite pustaha, jala mangihuthon ruhut-ruhut ni sigurit pustaha.<br> Adong do alaman panungkunan na boi mangurupi dongan na naeng manongos guritan na imbaru tu “pustaha halinu” on.<br> Unang hita maila masisungkunan manang mangido pangurupion, tarlumobi tu dongan na naeng manggurit dope. Laos boi do tapargunahon alaman on molo naeng manongos guritan na imbaru. }} </div> </div> <div class="mp-footer"> <div class="mp-footer__main"> {{Pogu ni alaman/Box4 | image = Wikimedia-logo-circle.svg | title = Ulaon Wikimedia na asing | content = {{MarsiadapariWMF}} }} </div> __NOTOC__ __NOEDITSECTION__ [[Horong:Pogu ni alaman]] ho62lcrm7ofgegllx12mc8yuoszmbv3 Kampung Ulos Huta Raja 0 628 18791 18086 2026-10-18T12:59:57Z Gazartashlomo0907 62 18791 wikitext text/x-wiki [[Ugasan:Tenun Ulos.jpg|thumb|right|Sada ina-ina pambahen [[Ulos]] di Huta Raja, Samosir]] '''Kampung Ulos Huta Raja''' i ma sada [[huta]] na adong di [[Pulo Samosir]] di topi ni [[Tao Toba]]. Huta on gabe inganan ''holding'' paturehon manang mambahen [[ulos]] ima abit ni halak [[Halak Batak Toba|Batak]]. Mambahen ulos on ima proses manual manang ditonun, di jolo j[[Jabu Bolon|jabu bolon]] di Huta Raja. Kampung Ulos on adong na di huta [[Lumban Suhi Suhi Toruan, Pangururan, Samosir|Lumban Suhi Suhi Toruan]], kecamatan [[Pangururan, Samosir|Pangururan]], [[Kabupaten Samosir]], propinsi [[Sumatra Utara]]. Andorangsona, Kampung Ulos direvitalisasi manang dipature pamarinta taon 2020 sahat tu 2021, dung i Kampung Ulos ditabalhon presiden [[Indonesia]], [[Joko Widodo]], tanggal 2 Pebruari 2022, asa boi gabe inganan ni jola marrekreasi mamereng pambahenan ulos Batak<ref name="RE">Nugraheny, Dian Erika. (2 Pebruari 2022) [https://nasional.kompas.com/read/2022/02/02/21562201/resmikan-kampung-ulos-huta-raja-jokowi-semoga-konservasi-warisan-pusaka-bisa ''Resmikan Kampung Ulos Huta Raja, Jokowi: Semoga Konservasi Warisan Pusaka Bisa Kita Kerjakan''], www.asional.kompas.com, Diakses tanggal 11 Pebruari 2022</ref> == Turiturian == Kampung ulos Huta Raja naung leleng adong, alai dang pola adong pambangunan lobi modern dibahen. Dung i, taon 2019, ro ma presiden ni [[Indonesia]] [[Joko Widodo]] tu huta on, lao mambereng angka inganan wisata di ruas ni Tao Toba, tarmasuk ma tu son. Didok Joko Widodo tu [[Kementerian Pekerjaan Umum dan Perumahan Rakyat|Menteri PUPR]] ima [[Basuki Hadimuljono]] asa dipature huta on museng lobi modern, gabe sada inganan wisata tu joloan.<ref name="SEJARAH">Maulana, Sapri. (3 Pebruari 2022), [https://nasional.tempo.co/read/1556840/jokowi-resmikan-huta-siallagan-kampung-ulos-huta-raja-telan-biaya-rp-558-m/full&view=ok ''Jokowi Resmikan Huta Siallagan - Kampung Ulos Huta Raja, Telan Biaya Rp 55,8 M''], www.nasional.tempo.co, Diakses tanggal 11 Pebruari 2022</ref> == Dipature == [[Ugasan:Rumah Bolon (Batak Traditional House).jpg|thumb|left|[[Jabu Bolon]], songon on ma tompa ni jabu bolon di Huta Raja, na dohot dipature taon 2020-2021.]] Dung adong parinta sian Joko Widodo tu Menteri PUPR, jala dipadalan ma paturehon kawasan Huta Raja on. Mula na taon 2020 sahat tu taon 2021 ma dipasidung paturehon Huta Raja on. Angka na dipature ima tarup ni [[Jabu Bolon]] na adong di huta on, dung i adong museng dibahen Jabu Bolon naimbaru, mambangun Pusat Informasi Budaya Galeri dohot silua. Adong museng paturehon pagar ni kuburan, mambangun inganan parkopian, dohot mambangun toilet. Bahat nihepeng paturehon Kampung Ulos Huta Raja ima hira-hira Rp 25,8 [[miliar]]. Bidang ni huta nadipature ima 16 ribu [[meter persegi]] sanga pe 0,016 km<sup>2</sup>.<ref name="SEJARAH"/> Mambahen jabu bolon naimbaru, alana asa sarupo tompa ni angka jabu di huta on. Andorangsona, adong dope jabu di huta tompa jabu umumna, dang songon Jabu Bolon, jabu adat ni halak Batak. Dibahen sarupo tompa ni angka jabu i, asa gabe tanda halobianna, jala gabe panarik minat ni wisatawan ro mamereng manang marwisata tu huta on. Adong hira-hira 40 [[Jabu Bolon]] bahatna. Dalan mardalan di huta on pe dipature, idia andorang sona sian tano dope alaman ni huta on. Dung dipature, dalan di huta on gabe dalan sian batu candi, dang sian tano be.<ref>Pardosi, Maurits. (2 Pebruari 2022) [https://medan.tribunnews.com/2022/02/02/kades-sebut-beberapa-pembangunan-di-kampung-ulos-hutaraja-setelah-dikunjungi-presiden-jokowi ''Kades Sebut Beberapa Pembangunan di Kampung Ulos Huta Raja, Setelah Dikunjungi Presiden Jokowi''], www.medan.tribunnews.com, Diakses tanggal 11 Pebruari 2022</ref> == Pogu tonun ulos == [[Ugasan:Tenun Ulos Batak Pulau Samosir.jpg|thumb|Sada ina-ina mambahen [[ulos]] di Kampung Ulos Huta Raja.]] Sarupa tu goarna ima Kampung Ulos manang Huta Ulos, huta on gabe dibahen pogu ni mambahen ulos di Pangururan, [[Kabupaten Samosir|Samosir]]. Marragam angka ulos, adong ulos ni par Angkola, Simalungun, Mandailing, alai nadibahen di Huta Raja on, somalna ima ulos ni halak Batak Toba. Na mambahen Huta Raja gabe dihasudunghon inganan wisata pogu tenun ulos, alana adong Jabu Bolon na marjejer di huta. Dang pola boi dipajumpang tompa ni huta naasing na songon i. Alani ima gabe huta dibahen pogu mambahen ulos Batak Toba, asa boi wisatawan sian Indonesia manang ruar negeri, boi mamereng, manang boha do mambahen ulos i.<ref name="ULOS">Oktalia, Natasha. (6 Juli 2020), [https://economy.okezone.com/read/2020/07/06/320/2241973/tarik-turis-asing-di-new-normal-kampung-ulos-akan-ditenun?page=1 ''Taris Turis Asing di New Normal, Kampung Ulos Akan "Ditenun" ''], www.economy.okezone.com, Diakses tanggal 11 Pebruari 2022</ref> == Pranala ruar == * [https://samosirkab.go.id/2022/02/03/kunjungi-kabupaten-samosir-presiden-ri-meresmikan-revitalisasi-pembangunan-huta-siallagan-dan-kampung-ulos-hutaraja/ Situs resmi pamarinta Kabupaten Samosir] * [https://www.youtube.com/watch?v=VLtTC3M5zKI&t=76s Almanak Panabalhon sian Presiden Joko Widodo] == Pustaha == {{reflist|2}}{{Templat:Batak Toba}} [[Horong:Inganan edang]] [[Horong:Inganan edang di Sumatera utara]] 4ok74has61dojpxbd3ovb4vikgv5ls9 Sipanghasea:Gazartashlomo0907 2 1328 18803 17178 2026-10-18T13:21:42Z Gazartashlomo0907 62 /* Selesele na asing */ 18803 wikitext text/x-wiki מיין נאמע איז שלמה ון איך בין פריילך (Goarhu Salomo jala las ni rohangku) == Selesele Wikipedia == * [[Sipanghasea:Gazartashlomo0907/selesele/daptar_guritan|Selesele_Daptar guritan]] * [[Sipanghasea:Gazartashlomo0907/selesele/umum|Selesele_Umum]] * [[Sipanghasea:Gazartashlomo0907/selesele/nilai|Selesele_Nilai]] * [[Sipanghasea:Gazartashlomo0907/selesele/teknis_kompetisi|Selesele_Teknis kompetisi]] * [[Sipanghasea:Gazartashlomo0907/selesele/sungkun_alusi|Selesele_Sungkun_alusi]] * [[Sipanghasea:Gazartashlomo0907/selesele/kompetisi1011|Selesele_Kompetisi1011]] == Parbinotoan na imbaru == [[Templat:WikiMartandangtuSumateraUtara/styles.css]] == Selesele na asing == *[[Sipanghasea:Gazartashlomo0907/selesele/selesele_spesimen_textboxhuta|selesele_spesimen_textboxhuta]] *[[Sipanghasea:Gazartashlomo0907/selesele/selesele_spesimen_multiscript|selesele_spesimen_multiscript]] == Selesele templat == {{Templat:Parsidohot_WikiLatih}} {{Templat:Parsidohot_WikiLatih|di=Zoom|tgl=4 dohot 6 Pebruari 2025}} cs8nr98mbzumphi96al04uq3cxk0jq9 18806 18803 2026-10-18T13:27:46Z Gazartashlomo0907 62 /* Selesele na asing */ 18806 wikitext text/x-wiki מיין נאמע איז שלמה ון איך בין פריילך (Goarhu Salomo jala las ni rohangku) == Selesele Wikipedia == * [[Sipanghasea:Gazartashlomo0907/selesele/daptar_guritan|Selesele_Daptar guritan]] * [[Sipanghasea:Gazartashlomo0907/selesele/umum|Selesele_Umum]] * [[Sipanghasea:Gazartashlomo0907/selesele/nilai|Selesele_Nilai]] * [[Sipanghasea:Gazartashlomo0907/selesele/teknis_kompetisi|Selesele_Teknis kompetisi]] * [[Sipanghasea:Gazartashlomo0907/selesele/sungkun_alusi|Selesele_Sungkun_alusi]] * [[Sipanghasea:Gazartashlomo0907/selesele/kompetisi1011|Selesele_Kompetisi1011]] == Parbinotoan na imbaru == [[Templat:WikiMartandangtuSumateraUtara/styles.css]] == Selesele na asing == *[[Sipanghasea:Gazartashlomo0907/selesele/selesele_spesimen_textboxhuta|selesele_spesimen_textboxhuta]] *[[Sipanghasea:Gazartashlomo0907/selesele/selesele_spesimen_multiscript|selesele_spesimen_multiscript]] *[[Sipanghasea:Gazartashlomo0907/selesele/kolaborasi|selesele_kolaborasi]] == Selesele templat == {{Templat:Parsidohot_WikiLatih}} {{Templat:Parsidohot_WikiLatih|di=Zoom|tgl=4 dohot 6 Pebruari 2025}} t0cd1wz7qji57a9j8a36zwyoj1df8rh Batu Gantung 0 1595 18789 16666 2026-10-18T12:41:27Z Gazartashlomo0907 62 18789 wikitext text/x-wiki [[Ugasan:"Batu Gantung - Rock Hanging" with historical laden story. - panoramio.jpg|thumb|Wisata '''Batu Gantung''' di Topi ni [[Tao Toba]], di [[Parapat, Girsang Sipangan Bolon, Simalungun|Parapat]]]] '''Batu Gantung''' manang jotjot didok holan '''Wisata Batu Gantung''' ima sada inganan na adong di di topi ni [[Tao Toba]] di Huta [[Parapat, Girsang Sipangan Bolon, Simalungun|Parapat]], [[Kabupaten Simalungun]], [[Sumatera Utara]], [[Indonesia]]. == Turiturian ni Batu Gantung == Molo taringot tu hahaadongan ni Batu Gantung on, adong do Turiturian na tongam na dihaporseai mulai sian na jolo sahat tu sonari on, tar lumobi ma angka jolma na tading di luat jolok ni Batu Gantu on. Molo di ida do sian rupa ni batu i, adong do tudos tu bohi ni sada anak boru dohot sada biang di lambung na, inna turiturian ma taringot hon tu Batu Gantung on, Ia na jolo adong ma sada anak boru na di patoho toho bapak na tu anak ni namboru na, ima apala pariban na asa gabe dongan saripe na, dongan sajabu na, di dok turiturian i, oto do anak ni namboru na i, alai anak ni namora di patoho toho ma ibana, jala na jolo songon na sada na ingkon di ulahon do molo mangoli tu anak ni namboru na, di dok bapak ni si boru boru ima tu boru na, "''Ho ingkon muli tu anak ni namboru mi, on pareta!''" Alani nunga di dok bapa na songoni, hape so adong holong ni rahana tu anak ni namboru na, gabe sip ma si boru i, alani biar na lao mangalo paretta na sian bapa na i. Disada tingki, sadari nai aneng di ari pesta pamasua masuan na dohot anak ni namboru na, lari ma si boru i sian jabu na dohot biang na (panangga na) sampe sahat ma ibana tu topi ni [[Tao Toba]], mangkatai ma ibana tu dirina sandiri, ninna ma: "''Na tumagon ma au mate manikkot dari pada muni au tu anak ni namboru ki''" dungi mangaluppat ma ibana tu Tao Toba laos dohot ma biang na i mangihuton ibana, alai sakkut ma obut na tu sada hau, jala dohot do biang na i sakkut, (Molo di turiturian na asing mandok, sakkut ma pat na di hapit batu, jala manggora ma bana, Parapat batu... ima umbahen gabe adong goar ni huta [[Parapat, Girsang Sipangan Bolon, Simalungun|Parapat]])<ref name=":0">'''IDNTimes.com''' (20 Januari 2024). [https://www.idntimes.com/travel/destination/dhiya-azzahra/mitos-batu-gantung-di-danau-toba?page=all 5 Fakta Unik Batu Gantung di Danau Toba Serat Mitos dan Lagenda] (Diida: 26 November 2024 - 09.50 Wib)</ref>, nanget naget gabe batu ma dangin ni si borua i dohot danging ni biang na i, ima turiturian na adong di angka jolma na di haporseai dope sahat ro disadari on.<ref name=":1">'''Detik.com''' (18 Maret 2024) [https://web.archive.org/web/20241201203924/https://www.detik.com/sumut/budaya/d-7247747/batu-gantung-tempat-wisata-di-danau-toba-yang-punya-kisah-menarik Batu Gantung Tempat Wisata di Danau Toba yang Punya Kisah Menarik] (Diida: 26 November 2024 - 09.34 Wib)</ref> == Hahaadongan ni Batu Gantung pandok ni Siboto Surat == Nang pe sahatu tu nuaeng godang angka jolma na porsea tu turiturian na adong i, alai molo sian angka Siboto surat mandok, molo hahaadongan ni Batu Gantung i, ima alani adong do aktivitas na masa dung mapulta Dolok Toba na uju i, di anggar anggar hahaadongan na i ima ala adong ''Lava Andesit'' na sumaling kental na, alani adong ari (cuacca) na toppu toppu marganti, gabe tor marpir ma lava i, ima di anggar anggar na umbahen gabe adong Batu Gantung i.<ref>'''GoodNewsFormIndoensia.id''' (14 Maret 2023)[https://www.goodnewsfromindonesia.id/2023/03/14/keindahan-batu-gantung-dari-danau-toba-yang-menyimpan-cerita-kesedihan Keindahan Batu Gantung Dari Danau Toba yang Menyimpan Cerita Kesedihan] (Diida: 26 November 2024 - 09.44 Wib)</ref> == Inganan ni Batu Gantung == [[Ugasan:Legenda Batu Gantung di tepi D. Toba " - panoramio.jpg|thumb|'''Batu Gantung''' di Topi ni [[Tao Toba]]]] Tu angka jolma aneng ro marwisata tu Batu Gantung on, boi ma mar kapal sian [[Bontean Ajibata]] hira hira 10 manang 20 menit sian Bontean i sahat ma hita tu inganan ni Batu Gantung on, molo sian Kota [[Medan]], hurang lobi mar 5 jom ma pardalan asa sahat tu inganan on. Songon na dipabotohon pamarenta, Batu Gantung on nunga be dibahen gabe sada sada inganan na lao inganan marwisata.<ref name=":1" /><ref name=":0" /> == Pustaha == {{reflist}} inkoagl8oo25xoqqv9x6mv2ox716yj6 18790 18789 2026-10-18T12:45:17Z Gazartashlomo0907 62 18790 wikitext text/x-wiki [[Ugasan:"Batu Gantung - Rock Hanging" with historical laden story. - panoramio.jpg|thumb|Wisata '''Batu Gantung''' di Topi ni [[Tao Toba]], di [[Parapat, Girsang Sipangan Bolon, Simalungun|Parapat]]]] '''Batu Gantung''' manang jotjot didok holan '''Wisata Batu Gantung''' ima sada inganan na adong di di topi ni [[Tao Toba]] di Huta [[Parapat, Girsang Sipangan Bolon, Simalungun|Parapat]], [[Kabupaten Simalungun]], [[Sumatera Utara]], [[Indonesia]]. == Turiturian ni Batu Gantung == Molo taringot tu hahaadongan ni Batu Gantung on, adong do Turiturian na tongam na dihaporseai mulai sian na jolo sahat tu sonari on, tar lumobi ma angka jolma na tading di luat jolok ni Batu Gantu on. Molo di ida do sian rupa ni batu i, adong do tudos tu bohi ni sada anak boru dohot sada biang di lambung na, inna turiturian ma taringot hon tu Batu Gantung on, Ia na jolo adong ma sada anak boru na di patoho toho bapak na tu anak ni namboru na, ima apala pariban na asa gabe dongan saripe na, dongan sajabu na, di dok turiturian i, oto do anak ni namboru na i, alai anak ni namora di patoho toho ma ibana, jala na jolo songon na sada na ingkon di ulahon do molo mangoli tu anak ni namboru na, di dok bapak ni si boru boru ima tu boru na, "''Ho ingkon muli tu anak ni namboru mi, on pareta!''" Alani nunga di dok bapa na songoni, hape so adong holong ni rahana tu anak ni namboru na, gabe sip ma si boru i, alani biar na lao mangalo paretta na sian bapa na i. Disada tingki, sadari nai aneng di ari pesta pamasua masuan na dohot anak ni namboru na, lari ma si boru i sian jabu na dohot biang na (panangga na) sampe sahat ma ibana tu topi ni [[Tao Toba]], mangkatai ma ibana tu dirina sandiri, ninna ma: "''Na tumagon ma au mate manikkot dari pada muni au tu anak ni namboru ki''" dungi mangalumpat ma ibana tu Tao Toba laos dohot ma biang na i mangihuton ibana, alai sakkut ma obut na tu sada hau, jala dohot do biang na i sakkut, (Molo di turiturian na asing mandok, sakkut ma pat na di hapit batu, jala manggora ma bana, Parapat batu... ima umbahen gabe adong goar ni huta [[Parapat, Girsang Sipangan Bolon, Simalungun|Parapat]])<ref name=":0">'''IDNTimes.com''' (20 Januari 2024). [https://www.idntimes.com/travel/destination/dhiya-azzahra/mitos-batu-gantung-di-danau-toba?page=all 5 Fakta Unik Batu Gantung di Danau Toba Serat Mitos dan Lagenda] (Diida: 26 November 2024 - 09.50 Wib)</ref>, nanget naget gabe batu ma dangin ni si borua i dohot danging ni biang na i, ima turiturian na adong di angka jolma na di haporseai dope sahat ro disadari on.<ref name=":1">'''Detik.com''' (18 Maret 2024) [https://web.archive.org/web/20241201203924/https://www.detik.com/sumut/budaya/d-7247747/batu-gantung-tempat-wisata-di-danau-toba-yang-punya-kisah-menarik Batu Gantung Tempat Wisata di Danau Toba yang Punya Kisah Menarik] (Diida: 26 November 2024 - 09.34 Wib)</ref> == Hahaadongan ni Batu Gantung pandok ni Siboto Surat == Nang pe sahatu tu nuaeng godang angka jolma na porsea tu turiturian na adong i, alai molo sian angka Siboto surat mandok, molo hahaadongan ni Batu Gantung i, ima alani adong do aktivitas na masa dung mapulta Dolok Toba na uju i, di anggar anggar hahaadongan na i ima ala adong ''Lava Andesit'' na sumaling kental na, alani adong ari (cuacca) na toppu toppu marganti, gabe tor marpir ma lava i, ima di anggar anggar na umbahen gabe adong Batu Gantung i.<ref>'''GoodNewsFormIndoensia.id''' (14 Maret 2023)[https://www.goodnewsfromindonesia.id/2023/03/14/keindahan-batu-gantung-dari-danau-toba-yang-menyimpan-cerita-kesedihan Keindahan Batu Gantung Dari Danau Toba yang Menyimpan Cerita Kesedihan] (Diida: 26 November 2024 - 09.44 Wib)</ref> == Inganan ni Batu Gantung == [[Ugasan:Legenda Batu Gantung di tepi D. Toba " - panoramio.jpg|thumb|'''Batu Gantung''' di Topi ni [[Tao Toba]]]] Tu angka jolma aneng ro marwisata tu Batu Gantung on, boi ma mar kapal sian [[Bontean Ajibata]] hira hira 10 manang 20 menit sian Bontean i sahat ma hita tu inganan ni Batu Gantung on, molo sian Kota [[Medan]], hurang lobi mar 5 jom ma pardalan asa sahat tu inganan on. Songon na dipabotohon pamarenta, Batu Gantung on nunga be dibahen gabe sada sada inganan na lao inganan marwisata.<ref name=":1" /><ref name=":0" /> == Pustaha == {{reflist}} [[Horong:Luat pariwisata di Sumatera Utara]] abvncyo0tjdu7dn5b66h9pfkjn7ijzb Module:Goalscorers/data/Piala Dunia FIFA 2026 828 3057 18794 17272 2026-10-18T13:05:06Z Gazartashlomo0907 62 Gazartashlomo0907 papindahon alaman [[Modul:Goalscorers/data/Piala Dunia FIFA 2026]] tu [[Module:Goalscorers/data/Piala Dunia FIFA 2026]] 17272 wikitext text/x-wiki local data = {} -- templat bendera data.templates = { flag_icon_linked = "fbicon" } -- date and matches played of latest update data.updated = { -- putaran, pertandingan, tanggal pembaruan, pertandingan usai sejauh ini/total pertandingan hari tersebut finals = { 103, "2026-07-18", "1/1" }, } data.groups = { -- BAGIAN INI JANGAN DIUBAH } -- untuk membuat nama pemain yang masih tampil pada turnamen menjadi cetak tebal -- HANYA DIPAKAI SETELAH BABAK GRUP RAMPUNG data.active_countries = { "ARG", "ESP"} -- putaran data.rounds = { finals = 3 } -- JANGAN DIUBAH -- daftar pencetak gol data.goalscorers = { -- nama pemain, negara, gol -- Arika Selatan (RSA) {"[[Thapelo Maseko]]", "RSA", 1 }, {"[[Teboho Mokoena (pemain sepak bola kelahiran 1997)|Teboho Mokoena]]", "RSA", 1 }, -- Ajazair (ALG) {"[[Rafik Belghali]]", "ALG", 1 }, {"[[Nadhir Benbouali]]", "ALG", 1 }, {"[[Amine Gouiri]]", "ALG", 1 }, {"[[Riyad Mahrez]]", "ALG", 2 }, -- Amerika Serikat (USA) {"[[Folarin Balogun]]", "USA", 3 }, {"[[Sebastian Berhalter]]", "USA", 1 }, {"[[Alex Freeman]]", "USA", 1 }, {"[[Giovanni Reyna]]", "USA", 1 }, {"[[Malik Tillman]]", "USA", 2 }, {"[[Auston Trusty]]", "USA", 1 }, -- Arab Saudi (KSA) {"[[Abdulelah Al-Amri]]", "KSA", 1 }, -- Argentina (ARG) {"[[Julián Alvarez]]", "ARG", 1 }, {"[[Giovani Lo Celso]]", "ARG", 1 }, {"[[Enzo Fernández]]", "ARG", 2 }, {"[[Alexis Mac Allister]]", "ARG", 1 }, {"[[Lautaro Martínez]]", "ARG", 3 }, {"[[Lisandro Martínez]]", "ARG", 1 }, {"[[Lionel Messi]]", "ARG", 8 }, {"[[Cristian Romero]]", "ARG", 1 }, -- Australia (AUS) {"[[Nestory Irankunda]]", "AUS", 1 }, {"[[Conor Metcalfe]]", "AUS", 1 }, -- Austria (AUT) {"[[Marko Arnautović]]", "AUT", 2 }, {"[[Saša Kalajdžić]]", "AUT", 1 }, {"[[Marcel Sabitzer]]", "AUT", 1 }, {"[[Romano Schmid]]", "AUT", 1 }, -- Belanda (NED) {"[[Brian Brobbey]]", "NED", 3 }, {"[[Virgil&nbsp;van Dijk]]", "NED", 1 }, {"[[Cody Gakpo]]", "NED", 3 }, {"[[Jan&nbsp;Paul&nbsp;van Hecke]]", "NED", 1 }, {"[[Crysencio Summerville]]", "NED", 2 }, -- Belgia (BEL) {"[[Kevin De Bruyne]]", "BEL", 1 }, {"[[Charles De Ketelaere]]", "BEL", 3 }, {"[[Romelu Lukaku]]", "BEL", 3 }, {"[[Alexis Saelemaekers]]", "BEL", 1 }, {"[[Youri Tielemans]]", "BEL", 2 }, {"[[Leandro Trossard]]", "BEL", 2 }, {"[[Hans Vanaken]]", "BEL", 1 }, -- Bosnia dan Herzegovina (BIH) {"[[Kerim Alajbegović]]", "BIH", 1 }, {"[[Jovo Lukić]]", "BIH", 1 }, {"[[Ermin Mahmić]]", "BIH", 2 }, -- Brasil (BRA) {"[[Casemiro]]", "BRA", 1 }, {"[[Matheus Cunha]]", "BRA", 3 }, {"[[Gabriel Martinelli]]", "BRA", 1 }, {"[[Neymar]]", "BRA", 1 }, {"[[Vinícius&nbsp;Júnior]]", "BRA", 4 }, -- Curaçao (CUW) {"[[Livano Comenencia]]", "CUW", 1 }, -- Ceko (CZE) {"[[Ladislav Krejčí (pemain sepak bola kelahiran 1999)|Ladislav Krejčí]]", "CZE", 1 }, {"[[Michal Sadílek]]", "CZE", 1 }, -- Ekuador (ECU) {"[[Nilson Angulo]]", "ECU", 1 }, {"[[Gonzalo Plata]]", "ECU", 1 }, -- Ghana (GHA) {"[[Derrick Luckassen]]", "GHA", 1 }, {"[[Caleb Yirenkyi]]", "GHA", 1 }, -- Haiti (HAI) {"[[Wilson Isidor]]", "HAI", 1 }, -- Inggris (ENG) {"[[Jude Bellingham]]", "ENG", 7 }, {"[[Anthony Gordon]]", "ENG", 1 }, {"[[Harry Kane]]", "ENG", 6 }, {"[[Ezri Konsa]]", "ENG", 1 }, {"[[Marcus Rashford]]", "ENG", 1 }, {"[[Declan Rice]]", "ENG", 1 }, {"[[Bukayo Saka]]", "ENG", 3 }, -- Iran (IRN) {"[[Mohammad Mohebi]]", "IRN", 1 }, {"[[Ramin Rezaeian]]", "IRN", 2 }, -- Irak (IRQ) {"[[Aymen Hussein]]", "IRQ", 1 }, -- Jepang (JPN) {"[[Junya Ito]]", "JPN", 1 }, {"[[Daichi Kamada]]", "JPN", 2 }, {"[[Daizen Maeda]]", "JPN", 1 }, {"[[Keito Nakamura]]", "JPN", 1 }, {"[[Kaishu Sano]]", "JPN", 1 }, {"[[Ayase Ueda]]", "JPN", 2 }, -- Jerman (GER) {"[[Nathaniel Brown]]", "GER", 1 }, {"[[Kai Havertz]]", "GER", 3 }, {"[[Jamal Musiala]]", "GER", 1 }, {"[[Felix Nmecha]]", "GER", 1 }, {"[[Leroy Sané]]", "GER", 1 }, {"[[Nico Schlotterbeck]]", "GER", 1 }, {"[[Deniz Undav]]", "GER", 3 }, -- Kanada (CAN) {"[[Jonathan David]]", "CAN", 3 }, {"[[Promise David]]", "CAN", 1 }, {"[[Stephen Eustáquio]]", "CAN", 1 }, {"[[Cyle Larin]]", "CAN", 2 }, {"[[Nathan Saliba]]", "CAN", 1 }, -- Kolombia (COL) {"[[Jhon Arias (pemain sepak bola)|Jhon Arias]]", "COL", 1 }, {"[[Luis Fernando Díaz|Luis Díaz]]", "COL", 1 }, {"[[Jaminton Campaz]]", "COL", 1 }, {"[[Daniel Muñoz (pemain sepak bola)|Daniel Muñoz]]", "COL", 2 }, -- Korea Selatan (KOR) {"[[Hwang In-beom]]", "KOR", 1 }, {"[[Oh Hyeon-gyu]]", "KOR", 1 }, -- Kroasia (CRO) {"[[Martin Baturina]]", "CRO", 1 }, {"[[Ante Budimir]]", "CRO", 1 }, {"[[Petar Musa]]", "CRO", 1 }, {"[[Ivan Perišić]]", "CRO", 1 }, {"[[Petar Sučić]]", "CRO", 1 }, {"[[Nikola Vlašić]]", "CRO", 1 }, -- Maroko (MAR) {"[[Issa Diop]]", "MAR", 1 }, {"[[Achraf Hakimi]]", "MAR", 1 }, {"[[Azzedine Ounahi]]", "MAR", 2 }, {"[[Soufiane Rahimi]]", "MAR", 2 }, {"[[Ismael Saibari]]", "MAR", 3 }, {"[[Gessime Yassine]]", "MAR", 1 }, -- Meksiko (MEX) {"[[Mateo Chávez]]", "MEX", 1 }, {"[[Álvaro Fidalgo]]", "MEX", 1 }, {"[[Julián Quiñones]]", "MEX", 4 }, {"[[Raúl Jiménez]]", "MEX", 3 }, {"[[Luis Romo]]", "MEX", 1 }, -- Mesir (EGY) {"[[Emam Ashour]]", "EGY", 2 }, {"[[Yasser Ibrahim]]", "EGY", 1 }, {"[[Mohamed Salah]]", "EGY", 1 }, {"[[Mahmoud Hassan|Trézéguet]]", "EGY", 1 }, {"[[Mahmoud Saber]]", "EGY", 1 }, {"[[Mostafa Ziko]]", "EGY", 2 }, -- Norwegia (NOR) {"[[Thelo Aasgaard]]", "NOR", 1 }, {"[[Erling Haaland]]", "NOR", 7 }, {"[[Marcus Holmgren Pedersen]]", "NOR", 1 }, {"[[Antonio Nusa]]", "NOR", 1 }, {"[[Leo Østigård]]", "NOR", 1 }, {"[[Andreas Schjelderup]]", "NOR", 1 }, -- Pantai Gading (CIV) {"[[Amad Diallo]]", "CIV", 2 }, {"[[Franck Kessié]]", "CIV", 1 }, {"[[Nicolas Pépé]]", "CIV", 2 }, -- Paraguay (PAR) {"[[Julio César Enciso Espínola|Julio Enciso]]", "PAR", 1 }, {"[[Matías Galarza (pemain sepak bola Paraguay)|Matías Galarza]]", "PAR", 1 }, {"[[Maurício Magalhães|Maurício]]", "PAR", 1 }, -- Portugal (POR) {"[[Rafael Leão]]", "POR", 1 }, {"[[Nuno Mendes (pemain sepak bola, lahir 2002)|Nuno Mendes]]", "POR", 1 }, {"[[João Neves]]", "POR", 1 }, {"[[Gonçalo Ramos]]", "POR", 1 }, {"[[Cristiano Ronaldo]]", "POR", 3 }, -- Prancis (FRA) {"[[Bradley Barcola]]", "FRA", 3 }, {"[[Désiré Doué]]", "FRA", 1 }, {"[[Ousmane Dembélé]]", "FRA", 6 }, {"[[Kylian Mbappé]]", "FRA", 10 }, -- Qatar (QAT) {"[[Hassan Al-Haydos]]", "QAT", 1 }, -- RD Kongo (COD) {"[[Brian Cipenga]]", "COD", 1 }, {"[[Fiston Mayele]]", "COD", 1 }, {"[[Yoane Wissa]]", "COD", 3 }, -- Selandia Baru (NZL) {"[[Elijah Just]]", "NZL", 3 }, {"[[Finn Surman]]", "NZL", 1 }, -- Senegal (SEN) {"[[Habib Diarra]]", "SEN", 2 }, {"[[Pape Gueye]]", "SEN", 2 }, {"[[Ibrahim Mbaye]]", "SEN", 1 }, {"[[Iliman Ndiaye]]", "SEN", 1 }, {"[[Ismaïla Sarr]]", "SEN", 4 }, -- Skotlandia (SCO) {"[[John McGinn]]", "SCO", 1 }, -- Spanyol (ESP) {"[[Álex Baena]]", "ESP", 1 }, {"[[Mikel Merino]]", "ESP", 2 }, {"[[Mikel Oyarzabal]]", "ESP", 5 }, {"[[Pedro Porro]]", "ESP", 2 }, {"[[Fabián Ruiz]]", "ESP", 1 }, {"[[Lamine Yamal]]", "ESP", 1 }, -- Swedia (SWE) {"[[Yasin Ayari]]", "SWE", 2 }, {"[[Anthony Elanga]]", "SWE", 2 }, {"[[Viktor Gyökeres]]", "SWE", 1 }, {"[[Alexander Isak]]", "SWE", 1 }, {"[[Mattias Svanberg]]", "SWE", 1 }, -- Swiss (SUI) {"[[Breel Embolo]]", "SUI", 2 }, {"[[Johan Manzambi]]", "SUI", 3 }, {"[[Dan Ndoye]]", "SUI", 2 }, {"[[Rubén Vargas]]", "SUI", 2 }, {"[[Granit Xhaka]]", "SUI", 1 }, -- Tanjung Verde (CPV) {"[[Sidny Lopes Cabral]]", "CPV", 1 }, {"[[Deroy Duarte]]", "CPV", 1 }, {"[[Kevin Pina (pemain sepak bola)|Kevin Pina]]", "CPV", 1 }, {"[[Hélio Varela]]", "CPV", 1 }, -- Tunisia (TUN) {"[[Hazem Mastouri]]", "TUN", 1 }, {"[[Omar Rekik]]", "TUN", 1 }, -- Turki (TUR) {"[[Kaan Ayhan]]", "TUR", 1 }, {"[[Arda Güler]]", "TUR", 1 }, {"[[Barış&nbsp;Alper Yılmaz]]", "TUR", 1 }, -- Uruguay (URU) {"[[Maximiliano Araújo]]", "URU", 2 }, {"[[Agustín Canobbio]]", "URU", 1 }, -- Uzbekistan (UZB) {"[[Abbosbek Fayzullaev]]", "UZB", 1 }, {"[[Eldor Shomurodov]]", "UZB", 1 }, -- Yordania (JOR) {"[[Nizar Al-Rashdan]]", "JOR", 1 }, {"[[Musa Al-Taamari]]", "JOR", 1 }, {"[[Ali Olwan]]", "JOR", 1 }, } -- daftar gol bunuh diri data.owngoalscorers = { -- nama pemain, negara, { gol bunuh diri, "lawan" } {"[[Damián Bobadilla]]", "PAR", { 1, "Amerika Serikat" } }, {"[[Miro Muheim]]", "SUI", { 1, "Qatar" } }, {"[[Mohamed Hany]]", "EGY", { 2, "Belgia, Australia" } }, {"[[Aymen Hussein]]", "IRQ", { 1, "Norwegia" } }, {"[[Yazan Al-Arab]]", "JOR", { 1, "Austria" } }, {"[[Mohamed Manai]]", "QAT", { 1, "Kanada" } }, {"[[Cameron Burgess]]", "AUS", { 1, "Amerika Serikat" } }, {"[[Hassan Al-Tambakti]]", "KSA", { 1, "Spanyol" } }, {"[[Abdukodir Khusanov]]", "UZB", { 1, "Portugal"} }, {"[[Mahmud Abunada]]", "QAT", { 1, "Bosnia dan Herzegovina"} }, {"[[Yassine Bounou]]", "MAR", { 1, "Haiti"} }, {"[[Ellyes Skhiri]]", "TUN", { 1, "Belanda"} }, {"[[Diney (pemain sepak bola kelahiran 1995)|Diney]]", "CPV", { 1, "Argentina"} } } return data 07ov9hfo4fn10ipbv879yuqgksw8x0f Module:Goalscorers 828 3058 18792 17273 2026-10-18T13:04:23Z Gazartashlomo0907 62 Gazartashlomo0907 papindahon alaman [[Modul:Goalscorers]] tu [[Module:Goalscorers]] 17273 wikitext text/x-wiki require('strict'); local yesno = require('Modul:Yesno') local p = {} local g = {} -- for parameters with global scope in this module g.goalscorers = {} -- table where selected and sorted players will be place g.args = {} g.totalGoals = 0 local data = {} -- module subpage data -- require('Modul:Goalscorers/data/UEFA Euro 2016 qualifying'); p.errorString = "" function p.error_msg() if p.errorString ~= "" then return '<span style="font-size:100%" class="error">' -- '<code style="color:inherit;border:inherit;padding:inherit;">&#124;_template=</code>' .. p.errorString .. '</span>'; end end -- data for goals scored held in module subpages, e.g. "Modul:Goalscorers/data/UEFA Euro 2016 qualifying" --[[ parameters containing data help in three tables data.rounds = {} -- group, play-off data.goalscorers = {} -- player, country, goals in each round) data.owngoalscorers = {} -- player, country, goals in each round) data.updated = {} -- date of latest update (month, day, year) --]] --[[ ############################ Parameter handing ############################### this section is currently unused will be used to take check parameters set in template ]] local function getArgs(frame) local parents = mw.getCurrentFrame():getParent() for k,v in pairs(parents.args) do --check content if v and v ~= "" then g.args[k]=mw.text.trim(v) --parents.args[k] end end for k,v in pairs(frame.args) do --check content if v and v ~= "" then g.args[k]= mw.text.trim(v) --parents.args[k] end end -- allow empty caption to blank default --if parents.args['caption'] then templateArgs['caption'] = parents.args['caption'] end end --[[ ############################## Main function and other functions ###################### p.main() - simple output of the data in the module in list form p.addIntroductorySentence() - menambah kalimat/paragraf pembuka jumlah gol dan rata-rata gol per pertandingan p.addFooterSentence() - menambah catatan kaki p.getNumberMatches() p.owngoals() - get own goals (no longer used?) p._owngoals() - core functionality for p.owngoals() ]] function p.main(frame) getArgs(frame) local dataTarget = g.args[1] or g.args['data'] if dataTarget then data = require('Modul:Goalscorers/data/'.. dataTarget) --or 'UEFA Euro 2016 qualifying' return p.useModuleData(frame) -- data on goals taken from module subpage else return p.useTemplateData(frame) -- data on goals/assists taken from template end end function p.useModuleData(frame) --p.goalscorers = {} -- table where selected and sorted players will be place g.totalGoals = 0 local ok = p.selectGoalscorers() -- selected goalscorers meeting round and group criteris -- CHANGE: append own goals to list (data will now include goals and own goals (negative)) p.selectGoalscorers("OG") p.sortGoalscorers() -- sort selected goalscorers by number of goal, then country local outputString = p.addIntroductorySentence() .. p.outputGoalscorers(frame) .. p.addFooterSentence() -- .. "" --TODO add intermediate heading? -- .. p._owngoals(frame) -- output list of goalscorers return p.error_msg() or outputString end --[[ ##################### standalone value outputs ########################## p.goals(frame) - output ONLY the total number of goals scored p.matches(frame) - output ONLY the number of matches played p.date(frame) - output ONLY the date of the most recent matches played accepts optional |format=yes to comma-format the number (e.g. 1,234). ]] function p.goals(frame) getArgs(frame) local result local dataTarget = g.args[1] or g.args['data'] if dataTarget then data = require('Modul:Goalscorers/data/' .. dataTarget) g.goalscorers = {} -- reset state (safe for multiple invokes per page) g.totalGoals = 0 local ok = p.selectGoalscorers() -- count goals for selected round/group if not ok then return p.error_msg() end p.selectGoalscorers("OG") -- include own goals in the total if p.errorString ~= "" then return p.error_msg() end result = g.totalGoals else result = tonumber(g.args['goals']) or 0 -- fall back to template-supplied data end if yesno(g.args['format']) then return mw.getLanguage('en'):formatNum(result) end return tostring(result) end function p.matches(frame) getArgs(frame) local result local dataTarget = g.args[1] or g.args['data'] if dataTarget then data = require('Modul:Goalscorers/data/' .. dataTarget) local round = g.args['round'] or "all" if round ~= "all" and not p.validateRound(round) then -- guard against bad round p.errorString = p.errorString .. 'Invalid round "' .. round .. '" specified. ' return p.error_msg() end result = p.getNumberMatches() -- respects round/group args else result = tonumber(g.args['matches']) or 0 end if yesno(g.args['format']) then return mw.getLanguage('en'):formatNum(result) end return tostring(result) end function p.date(frame) getArgs(frame) local dataTarget = g.args[1] or g.args['data'] if not dataTarget then return g.args['updated'] or "" end -- template-data fallback data = require('Modul:Goalscorers/data/' .. dataTarget) local round = g.args['round'] or "all" if round ~= "all" and not p.validateRound(round) then p.errorString = p.errorString .. 'Invalid round "' .. round .. '" specified. ' return p.error_msg() end local _, dateUpdated = p.getNumberMatches() if dateUpdated == "complete" or dateUpdated == "" then return "" end -- nothing to show local dateFormat = (data.params and data.params['date_format']) or 'dmy' local mdy = yesno(g.args['mdy']) if mdy == true then dateFormat = "mdy" elseif mdy == false then dateFormat = "dmy" end local r, grp = p.getRoundAndGroup() local finished = p.matchesFinished(r, grp, dateUpdated) if finished ~= "" then finished = " (" .. finished .. ")" end return p.error_msg() or (require('Modul:Date')._Date(dateUpdated):text(dateFormat) .. finished) end --[[ ##################### matches-finished helper ############################ p.matchesFinished(round, group, latestDate) Sums the optional "F/T" field (3rd element of a data.updated entry) for every entry dated on latestDate. Older dates are ignored. Returns "" when no entry supplies F/T, or a contributing entry on that date lacks it. ]] function p.matchesFinished(round, group, latestDate) if not latestDate or latestDate == "complete" or latestDate == "" or latestDate == "1700-01-01" then return "" end local entries = {} -- entries applying to round/group if round == "all" then for k, v in pairs(data.updated) do if k ~= "date" and k ~= "group" and p.validateRound(k) then entries[#entries+1] = v end end elseif round ~= "group" then entries[#entries+1] = data.updated[round] end if (round == "all" or round == "group") and data.updated.group then if group and group ~= "all" then entries[#entries+1] = data.updated.group[group] else for _, v in pairs(data.updated.group) do entries[#entries+1] = v end end end local finished, total, found = 0, 0, false -- sum F/T on the most-recent date for _, e in ipairs(entries) do if e[2] == latestDate then local f, t = string.match(tostring(e[3] or ""), "^%s*(%d+)%s*/%s*(%d+)%s*$") if not f then return "" end -- contributing entry without F/T -> skip finished, total, found = finished + f, total + t, true end end if not found then return "" end if finished >= total or finished < 1 or total < 1 then return "" end -- all done / invalid -> date only return finished .. " dari " .. total .. " pertandingan selesai" end function p.addIntroductorySentence() -- menambahkan teks/paragraf awal local totalGoalString = "Sebanyak" .. g.totalGoals .. " dicetak." local matches, dateUpdated = p.getNumberMatches() local mdyFormat = yesno(g.args['mdy']) local Date = require('Modul:Date')._Date local text1 = "" if g.totalGoals >= 1 then if dateUpdated ~= 'complete' or dateUpdated ~= 'completed' or dateUpdated ~= 'selesai' then text1 = "telah dicetak" end else if dateUpdated == 'complete' or dateUpdated == 'completed' or dateUpdated == 'selesai' then text1 = "dicetak" end end local text = string.format("Sebanyak %s gol %s", mw.getLanguage('id'):formatNum(g.totalGoals), text1) if matches then local average = g.totalGoals/tonumber(matches) -- menghitung rata-rata gol local precision = 3 -- presisi dua angka dibelakang koma if average < 1 then precision = 2 end -- presisi satu angka dibelakang koma average = string.format("%."..precision.."g", average) text = text .. string.format(" pada %d pertandingan, dengan rata-rata %s gol per pertandingan", matches, mw.getLanguage('id'):formatNum( tonumber(average))) end if dateUpdated == 'complete' or dateUpdated =='completed' or dateUpdated =='selesai' or dateUpdated == "" then text = text .. "." else local dateFormat = 'dmy' -- default if data.params and data.params['date_format'] then dateFormat = data.params['date_format'] end -- from data module if mdyFormat == true then dateFormat = "mdy" else if mdyFormat == false then dateFormat = "dmy" end -- template param overrides end local round, group = p.getRoundAndGroup() local finished = p.matchesFinished(round, group, dateUpdated) if finished ~= "" then finished = ", " .. finished end text = text .. " (per " .. Date(dateUpdated):text(dateFormat) .. finished .. ")." end text = p.addAdditionHeaderText(text, dateUpdated) -- handles template parameters bold, further, extra return text --totalGoalString end function p.addFooterSentence() -- menambahkan teks akhir/catatan kaki local footerSentence = g.args['footer'] or "" --footerSentence = "This is a footer sentence." -- test footer if data.params then local footer = data.params['footer'] or nil if footer then local frame = mw.getCurrentFrame() local processed = frame:preprocess(footer) if g.notes then footerSentence = footerSentence .. processed end end end if footerSentence ~= "" then footerSentence = '<div style = "" >' .. footerSentence .. '</div>' end return footerSentence end function p.getNumberMatches() local matches = g.args['matches'] local dateUpdated = data.updated['date'] or "1700-01-01" --'complete' -- assume completed if missing --local round = g.args['round'] or "all" -- round = all(empty)|group|playoffs --local group = g.args['group'] or "all" -- group = all(empty), A,B,C etc local round, group = p.getRoundAndGroup() local allGroupGames = 0 local latestGroupDate = "1800-01-01" if group and (round == "all" or group == "all") then -- count all the group games for k,v in pairs(data.updated.group) do allGroupGames = allGroupGames + v[1] if v[2] ~= "complete" and v[2] > latestGroupDate then latestGroupDate = v[2] end -- update if later date end if latestGroupDate == "1800-01-01" then latestGroupDate = "complete" end -- no dates so must be complete end if group and (round == "all" and group ~= "all") then -- for totals of all rounds with only one group allGroupGames = data.updated.group[group][1] -- number matches latestGroupDate = data.updated.group[group][2] -- update date or completed end if round == "all" then -- all rounds and goals matches=0 for k,v in pairs(data.updated) do if k == "group" then matches = matches + allGroupGames if latestGroupDate ~= "complete" and latestGroupDate > dateUpdated then dateUpdated = latestGroupDate -- update if later date end elseif p.validateRound(k) then matches = matches + v[1] if v[2] ~= "complete" and v[2] > dateUpdated then dateUpdated = v[2] end -- update if later date end end elseif round == "group" then -- group round only if group == "all" then matches = allGroupGames dateUpdated = latestGroupDate else -- single group only matches = data.updated.group[group][1] -- number matches dateUpdated = data.updated.group[group][2] -- update date or completed end else -- any other round matches = data.updated[round][1] -- number matches dateUpdated = data.updated[round][2] -- update date or completed end if dateUpdated == "1700-01-01" then dateUpdated = "complete" end -- no dates so must be complete return matches, dateUpdated end function p.owngoals(frame) -- need to check parameters if external call getArgs(frame) data = require('Modul:Goalscorers/data/'.. g.args[1]) --or 'UEFA Euro 2016 qualifying' local outputString = p._owngoals(frame) return p.error_msg() or outputString end function p._owngoals(frame) -- internal call for own goals --p.goalscorers = {} -- table where selected and sorted players will be place p.selectGoalscorers("OG") -- selected goalscorers meeting round and group criteris p.sortGoalscorers() -- sort selected goalscorers by number of goal, then country return p.outputGoalscorers(frame, "OG") -- output list of goalscorers end function p.validateRound(round) local validateRound = false for k,v in pairs(data.rounds) do if k == round then validateRound = true end -- data for this round exists end return validateRound end --[[ ############################## functions to select goalscorers ###################### p.selectGoalscorers() - select goals scoreers required for list (rounds, groups) p.getRoundAndGroup() p.getGoalsCol(round) - get column containing round data or first data column if round = all (country, possibleGroup) p.getGoals (u, player) p.parseComment(comment) p.getPlayer(u) ]] --[[ p.selectGoalscorers() - select players meeting round and group criteria from goalscoreres list - gets goals and comments ]] function p.selectGoalscorers(og) local round, group = p.getRoundAndGroup() if not round then return false end -- exit if no valid round local goalMinimum = tonumber(g.args['minimum']) or -5 -- assume 5 own goals is maximum local goalsCol = p.getGoalsCol(round) -- first column for goals -- select players who have scored in rounds/groups requested local goalscorerData = data.goalscorers if og == "OG" then goalscorerData = data.owngoalscorers end for k,v in pairs(goalscorerData) do local goals, comment = 0, "" -- goals > 0 is the flag to include the player local playerName, playerAlias = p.getPlayer(v[1]) -- player name local goalsByRound, commentByRound = 0, "" if round == "all" then -- goals in all rounds and all groups for i = goalsCol, #v, 1 do if group and group ~= "all" and i == p.getGoalsCol("group") and group ~= p.getGroup(v[2], v[3]) then goalsByRound = 0 commentByRound = "" else goalsByRound, commentByRound = p.getGoals( v[i] , playerName) end goals = goals + goalsByRound --TODO use getGoals on round options if commentByRound ~= "" then if comment == "" then comment = commentByRound else comment = comment .. "," .. commentByRound --TODO decide on comma or semi-colon end end i = i+1 end elseif round == "all2" and group ~= "all" then -- goals in all rounds but only from one group --TODO code to go through all rounds but only include goals in specified group [TODO merge with above option] --mw.addWarning( g.args[1] .. ":Mix:round=all and group=" .. group .. "/" .. p.getGroup(v[2], v[3] ) ) for i = goalsCol, #v, 1 do if i == p.getGoalsCol("group") and group ~= p.getGroup(v[2], v[3]) then goalsByRound = 0 commentByRound = "" else goalsByRound, commentByRound = p.getGoals( v[i] , playerName) end goals = goals + goalsByRound if commentByRound ~= "" then if comment == "" then comment = commentByRound else comment = comment .. "," .. commentByRound --TODO decide on comma or semi-colon end end i = i+1 end elseif round == "group" then -- group round only if group == p.getGroup(v[2], v[3]) then -- single group only goals, comment = p.getGoals( v[goalsCol] , playerName) elseif group == "all" then -- any group goals, comment = p.getGoals( v[goalsCol] , playerName) else -- do nothing for other groups end --elseif round == "playoffs" then -- playoff round (redunant?) -- goals = v[goalsCol] else -- any other round goals, comment = p.getGoals( v[goalsCol] , playerName) -- should also handle playoffs end if goals >= goalMinimum and goals ~= 0 then if comment ~= "" then if og == "OG" then comment = '<span> (' .. p.sortComment(comment) .. ')</span>' else comment = '<span>' .. comment .. '</span>' -- no parenthesis when using notes end end if og == "OG" then goals = -goals end -- make owngoals negative numbers g.goalscorers[#g.goalscorers+1] = { player=playerName, alias=playerAlias, country=v[2], goals=goals, comment=p.parseComment(comment)} --g.totalGoals = g.totalGoals + math.abs(goals) -- increment total goal counter end g.totalGoals = g.totalGoals + math.abs(goals) -- increment total goal counter end return true -- data collected for selected goalscorers end --[[ p.getRoundAndGroup() ]] function p.getRoundAndGroup() local round = g.args['round'] or "all" -- round = all(empty)|group|playoffs local group = g.args['group'] or "all" -- group = all(empty), A,B,C etc local validateRound = false local validateGroupRound = false for k,v in pairs(data.rounds) do if k == round then validateRound = true end -- data for this round exists if k == "group" then validateGroupRound = true end -- there is a group round end if validateRound == false and round ~= "all" then local message = 'Invalid round "' .. round .. '" specified. No data found for that round. ' mw.addWarning( message ) p.errorString = p.errorString .. message round = nil end if validateGroupRound == false then group = false end -- there is no group round -- TODO add group error checking -- Could merge with getGoalsCol() and also return goalsCol return round, group end --[[ p.getGoalsCol(round) - get column containing round data or first data column if round = "all" - allows group column to be omitted from player table when group table provided ]] function p.getGoalsCol(round) local minimum = 1000 if round == "all" then -- if all need column of first round for k,v in pairs(data.rounds) do if v < minimum then minimum = v end --return v -- return the first one [this seemed to work reliably, but sometimes table order is not as listed] end return minimum end if data.rounds and data.rounds[round] then return data.rounds[round] -- get column containing goals for that round else return 4 -- an old default when no data.round (may not be necessary) end end --[[ p.getGroup(country, possibleGroup) - get group from group table or from player table - possibleGroup is the column containing the Group (when no group table) or the first data column ]] function p.getGroup(country, possibleGroup) -- row contain player name, country code, group if given, goals if data.groups then for k,v in pairs(data.groups) do -- iterate through the groups --local = gotGroup = false for j,u in pairs(v) do -- for each group if u == country then return k end end end return "no group found" else return possibleGroup -- no group table, so assume column three contains the group end end --[[ get number of goals and any associated comment the goals can be a single number (the usual case) or as an option table (e.g. for own goals): { number of own goals, comma-delimited list of opponents } - if the entry is a table, we want the first entry (a number) and the second (comment string) - otherwise, if a number, we just want the number and an empty string ]] function p.getGoals (u, player) if type(u) == 'table' and type(u[1]) == 'number' then return u[1], u[2] -- return number of goals, comment elseif type(u) == 'number' then return u, "" -- return number of goals, empty string else p.errorString = p.errorString .. " Invalid goals entry for player " .. player return 0, "" end end function p.parseComment(comment) local frame = mw.getCurrentFrame() -- we have something like "{{efn-ua|name=goals}}" if string.find(comment, "efn" , 1 , true ) then -- if we have a comment with a note g.notes = true -- set flag end return frame:preprocess(comment) end function p.getPlayer(u) if type(u) == 'table' then if type(u[1]) == 'string' and type(u[2]) == 'string' then --[[if #u[2] >1 then p.errorString = p.errorString .. "\n\nWe have u[1]=" .. u[1] .. " and u[2]=" .. u[2] end]] return u[1], u[2] -- return player name, player sorting alias else p.errorString = p.errorString .. " Invalid name entry for player " .. u[1] .. ", " .. u[2] return "", "" --TODO errroer end elseif type(u) == 'string' then return u, "" -- return player name else p.errorString = p.errorString .. " Invalid name entry for player " .. u or u[1] or "unknown" return "", "" end end --[[ ############################## functions to sort goalscorers ###################### p.preprocessSortName (name) p.getPlayerSortName (playerName, sortName, countryName) p.sortComment(comment) p.getCountryName(country) p.sortGoalscorers() -- the main sort funtion ]] --[=[ function p.preprocessSortName() stripp off wikitext [[ and ]] force to lowercase change special characters to standard letters ]=] function p.preprocessSortName (name) name = string.gsub(name, "%[%[", "") -- strip off [[ and ]] name = string.gsub(name, "%]%]", "") --name =string.lower(name) -- force lower case and return name = mw.ustring.lower(name) -- use unicode function local specialChars = { -- list of special characters and replacement pairs { "ı", "i" } , { "İ", "i" } , { "ß", "ss" }, { "ý", "y" } , { "ř", "r" } , { "ő", "o" }, { "é", "e" } , { "è", "e" } , { "þ", "th" }, { "ē", "e" } , { "ņ", "n" } , { "č", "c" }, { "ū", "u" } , { "ž", "z" } , { "æ", "ae" }, { "å", "a" } , { "ø", "o" } , { "ą", "a" }, { "ń", "n" } , { "ł", "l" } , { "ã", "a" }, { "ș", "s" } , { "š", "s" } , { "í", "i" }, { "á", "a" } , { "ä", "a" } , { "ć", "c" }, { "ç", "c" } , { "ğ", "g" } , { "ö", "o" }, { "ë", "e" } , { "ú", "u" } , { "ó", "o" }, { "ð", "d" } , { "ü", "u" } , { "ű", "u" }, { "ā", "a" } , { "ī", "i" } , { "đ", "dj" }, { "ă", "a" } , { "â", "a" } , { "ż", "z" }, { "ț", "t" } , { "ş", "s" } , { "ś", "s" }, { "ǎ", "a" } , { "ě", "e" } , { "ů", "u" }, { "ĕ", "e" } , { "ñ", "n" } , { "ď", "d" }, { "ï", "i" } , { "ź", "z" } , { "ô", "o" }, { "ė", "e" } , { "ľ", "l" } , { "ģ", "g" }, { "ļ", "l" } , { "ę", "e" } , { "ň", "n" }, { "ò", "o" } , { "ō", "o" } , { "î", "i" }, { "õ", "o" } , { "œ", "oe"} } for k,v in pairs(specialChars) do -- replace special characters from supplied list name = string.gsub(name, v[1], v[2]) end return name end --[[ return the name for sorting return supplied alias name for sorting otherwise checks for pipe (redirect) and uses name after pipe splits name into words returns first name if only name (e.g. Nani) otherwise returns name in format second_name [.. last name], firstname ]] function p.getPlayerSortName (playerName, sortName, countryName) --dewikify all names before sorting, also forces lowercase playerName = p.preprocessSortName(playerName) sortName = p.preprocessSortName(sortName) if sortName ~= "" then -- if we have a sort name supplied return sortName -- then return it end -- players from certain countries will use name in order supplied local noSort = { "CAM", "CHN", "TPE", "MYA", "PRK", "KOR", "VIE" } for k,v in pairs(noSort) do if v == countryName then return playerName end end -- else work it out from the supplied player name -- we don't want to test the name in a redirect, so get name after pipe if there is one if string.find (playerName, "|") then -- test for redirect local names = mw.text.split( playerName, "|") playerName = names[2] -- get name after pipe end local names = mw.text.split( playerName, " ") -- we don't want to sort on first name if #names == 1 then return names[1] -- return name of single name player else -- we will assume the second name is the sort name e.g, Joe Bloggs, Jan van Bloggen local name = names[2] -- set name to second name e.g. Bloggs or van local i=3 while i <= #names do -- any addition names e.g. Bloggen name= name .. names[i] i=i+1 end name = name .. ", " .. names[1] -- add first name e.g. Joe or Jan return name -- sort on second name third name etc, first name end end -- sort the list of countries alphabetically function p.sortComment(comment) local items = mw.text.split( comment, ",") -- split comma-delimited list for k,v in pairs(items) do items[k] = mw.text.trim(v) -- trim spaces and coe end table.sort(items, function(a,b) return a<b end) -- sort the table alphbetically local list = "melawan " -- construct the alphabetical list string for i=1, #items do local sep = ", " -- separator for comma-delimited list if i==1 then sep = "" -- first word doesn't need comma elseif i==#items then sep = " dan " -- use "and" before last word end list = list .. sep .. items[i] end return list end function p.getCountryName(country) if string.len(country) == 3 then -- if the country given as a three-letter code local codes = require('Modul:Goalscorers/data/Country codes') for k,v in pairs(codes.alias) do if v[1] == country then return v[2] end end else return country -- return the country name as is end end --[[ sort goalscorers by goals, country and name the sort first sorts by number of goals when these are equal, it sorts by country when these are equal, it sorts by name Note: the name sort is on the first name - a split of the name and sort on the last name is possible - however, this would be complicated by Dutch (e.g. Stefan de Vrij) and Spanish names - would sort on second name be better ]] function p.sortGoalscorers() local sort_function = function( a,b ) if (a.goals > b.goals) then -- primary sort on 'goals' -> a before b return true elseif (a.goals < b.goals) then -- primary sort on 'goals' -> b before a return false else -- a.goals == b.goals -- primary sort tied, --return a.country < b.country -- resolve with secondary sort on 'country' local country_a = p.getCountryName(a.country) -- sort on name of country, not the code local country_b = p.getCountryName(b.country) if (country_a < country_b) then -- secondary sort on 'country' return true elseif (country_a > country_b) then -- secondary sort on 'country' return false else -- a.country == b.country -- secondary sort tied, --return a.player < b.player --resolve with tertiary sort on 'player' name local player_a = p.getPlayerSortName(a.player, a.alias, a.country) -- get player name for sorting local player_b = p.getPlayerSortName(b.player, b.alias, b.country) return player_a < player_b -- --[[] --local test_a, test_b = a.player, b.player -- we don't want to test the name in a redirect, so get name after pipe if there is one if string.find (a.player, "|") then -- test for redirect local names = mw.text.split( a.player, "|") test_a = names[2] -- get name after pipe end if string.find (b.player, "|") then local names = mw.text.split( b.player, "|") test_b = names[2] end local names_a = mw.text.split( test_a, " ") -- we don't want to sort on first name local names_b = mw.text.split( test_b, " ") -- so split names if not names_a[2] then names_a[2] = test_a end -- for players with one name if not names_b[2] then names_b[2] = test_b end return names_a[2] < names_b[2] -- sort on second name ]] end end end table.sort(g.goalscorers, sort_function) end function p.tabulateGoalscorers(frame, og) -- ==============output the lists of goalscorers by goal====================== local goalNumber = 1000 local maxRank = tonumber(g.args['maxrank'] or 10) -- limit list top ten or value in parameter maxrank local rank = 1 local playerCount = 0 local rankCount = 0 local playerCells = "" local firstplayerCell = "" local tableString = '\n{| class="wikitable"' -- start table ..'\n|-' .. '\n!Peringkat !! Pemain !! Gol' -- add table headers if g.args['header'] then tableString = tableString .. '\n|+ ' .. g.args['header'] end -- add header for j,u in pairs(g.goalscorers) do -- run through sorted list of selected goalscorers -- is the player active still? local playerActive = false if data.active_countries then for k,v in pairs(data.active_countries) do if v == u['country'] then playerActive = true break; end end end local _,roundStatus = p.getNumberMatches() if roundStatus == "complete" then playerActive = false end -- overrides active_countries -- wikitext for tablulated list local goalscorerString = p.addLinkedIcon(frame, u['country']) -- linked flag icon if playerActive and g.args['bold']~='no' then goalscorerString = goalscorerString .. " '''" .. u['player'] .. "'''>" -- bolded name else goalscorerString = goalscorerString .. " " .. u['player'] -- name end goalscorerString = goalscorerString .. u['comment'] -- comment for o.g. -- we have a goalscorer playerCount = playerCount + 1 rankCount = rankCount + 1 if u['goals'] < goalNumber then -- player belongs to rowspan for new number of goals -- need to generate code for the previous rowspan (if there is one) -- then start the counts and player list for the new one if playerCount == 1 then firstplayerCell = '\n|' .. goalscorerString -- if first player in list just create cell and set goals goalNumber = u['goals'] --rank = 1 rankCount = 0 else -- else generate previous rowspan local rowSpan = rankCount if playerCount > maxRank * 1.5 then firstplayerCell = '\n| style="font-style:italic;text-align:center;"|' .. rankCount .. " pemain" playerCells = "" rowSpan = 1 end tableString = tableString .. '\n|-\n| style="text-align:center;" rowspan="' .. rowSpan .. '"|' .. rank --if rankCount > 1 then tableString = tableString .. "=" end -- adds equals when rank shared tableString = tableString .. firstplayerCell tableString = tableString .. '\n| style="text-align:center;" rowspan="' .. rowSpan .. '"|' .. goalNumber tableString = tableString .. playerCells rank = rank + rankCount if rank > maxRank then break end -- limit list top ten or value in parameter rankCount = 0 goalNumber = u['goals'] firstplayerCell = '\n|' .. goalscorerString -- set first player cell for next rowspan playerCells = "" end else -- else another player with same number of goals playerCells = playerCells .. '\n|-' .. '\n|' .. goalscorerString -- add to player cell list end end -- reached end of list of goalscorers -- if all scorers on one goal, tableString isn't updated in loop above (may need to generalise for other goal number) if goalNumber == 1 and rank <= maxRank then local rowSpan = rankCount + 1 tableString = tableString .. '\n|-\n| style="text-align:center;" rowspan="' .. rowSpan .. '"|' .. rank tableString = tableString .. firstplayerCell tableString = tableString .. '\n| style="text-align:center;" rowspan="' .. rowSpan .. '"|' .. goalNumber tableString = tableString .. playerCells end if tableString ~= "" then tableString = tableString .. "\n|}" return tableString else return (" Tidak ada gol yang sesuai dengan kriteria yang diminta.") end end function p.outputGoalscorers(frame, og) -- output list of goalscorers if g.args['table'] then return p.tabulateGoalscorers(frame, og) end -- optional table output local outputString = "" if og == "OG" then end -- ==============output the lists of goalscorers by goal====================== local goalNumber = 1000 --local goalMinimum = tonumber(templateArgs['minimum']) or 0 local listOpen = false -- flag for list started by template {{Div Col}} for j,u in pairs(g.goalscorers) do -- run through sorted list of selected goalscorers --if u['goals'] < goalMinimum then break end -- limit list to goals over a threshold (now handled in select goalscorers) if u['goals'] < goalNumber then -- start new list of new number of goals if listOpen then -- if an open list, close last list outputString = outputString .. p.closeList(frame) listOpen = false -- redundant as will be set true again end goalNumber = u['goals'] local goalString = " gol" --if og == "OG" then if goalNumber < 0 then goalString = string.format ("%s bunuh diri", goalString ) end if math.abs(u['goals']) ~= 1 then goalString = goalString end outputString = outputString .. "\n'''" .. math.abs(u['goals']) .. goalString .. "'''" -- list caption outputString = outputString .. p.openList(frame,og) --start new list listOpen = true --goalNumber = u['goals'] end -- is the player active still? local playerActive = false if data.active_countries then for k,v in pairs(data.active_countries) do if v == u['country'] then playerActive = true break; end end end local _,roundStatus = p.getNumberMatches() if roundStatus == "complete" then playerActive = false end -- overrides active_countries -- wikitext for bullet list local goalscorerString = '\n*<span>' .. p.addLinkedIcon(frame, u['country']) -- linked flag icon if playerActive and g.args['bold']~='no' then goalscorerString = goalscorerString .. " <b>" .. u['player'] .. "</b>" -- bolded name else goalscorerString = goalscorerString .. " " .. u['player'] -- name end goalscorerString = goalscorerString .. u['comment'] .. '</span>' -- comment for o.g. outputString = outputString .. goalscorerString -- .. " " .. tostring(u['goals']) end -- reached end of list of goalscorers if outputString ~= "" then outputString = outputString .. p.closeList(frame) return outputString else return (" Tidak ada gol yang sesuai dengan kriteria yang diminta.") end end -- output icon linked to national team page function p.addLinkedIcon(frame, country) g.iconCache = g.iconCache or {} local cache = g.iconCache[data] -- per data module (safe across invokes) if not cache then cache = {}; g.iconCache[data] = cache end if cache[country] ~= nil then return cache[country] end -- already built for this team local icon = data.templates['flag_icon_linked'] -- fbicon etc set in data module local flagvar = data.templates.flagvar and data.templates.flagvar[country] local level = data.templates['youth_level'] -- youth level, e.g. under-21 local result local avar = ({fbicon='fb', fbwicon='fbw', fbuicon='fbu', fbwuicon='fbwu'})[icon] if avar then -- {{#invoke:flagg|main|pxxl|avar=fb|variant=VAR|CODE}} result = require('Module:Flagg').luaMain(frame, {'pxxl', avar=avar, age=level, variant=flagvar, country}) else local args = {country, flagvar or ""} if level then table.insert(args, 1, level) end result = frame:expandTemplate{title=icon, args=args} end cache[country] = result return result end -- formatting of list under each number of goals function p.openList(frame,og) return mw.getCurrentFrame():extensionTag{ name = 'templatestyles', args = { src = 'Div col/styles.css' } } .. '<div class="div-col" style="column-width:25em;">' -- perhaps add "column-count:3;"" to limit max number of columns? end function p.closeList(frame) return '</div>' end function p.firstToUpper(str) return (str:gsub("^%l", string.upper)) end -- handles parameters bold, further, extra function p.addAdditionHeaderText(text, dateUpdated) if g.args['inlineref'] then text = text .. g.args['inlineref'] end if g.args['bold'] and g.args['bold']~='no' then text = text .. " Pemain dengan '''cetak tebal''' masih bermain pada turnamen ini." end if g.args['further'] then if text ~= "" then text = text .. " " end text = text .. g.args['further'] end if g.args['extra'] then text = text .. "\n\n" .. g.args['extra'] end return text end -- count number of goals for data in template function p.countGoals(list, number, totalGoals) local split = mw.text.split( list, "\n", true ) -- split the list for number of goals scorers with N goals local count = #split * math.abs(number) -- calculate number of goals (including own goals) totalGoals = totalGoals + count --mw.addWarning( "Entry: " .. list .. "[" .. count .. "]") return totalGoals end --[[ use data supplied by template ]] --function p.list(frame) function p.useTemplateData(frame) --getArgs(frame) --[[ {{#if:{{{assists|}}}||Sebanyak {{{goals}}} {{#ifexpr:{{{goals}}}=1|gol|gol}} telah dicetak {{#if:{{{players|}}}|&nbsp;oleh {{{players}}} {{#ifexpr:{{{players}}}=1|pemain|pemain yang berbeda}} {{#if:{{{own_goals|}}}|&nbsp;(dengan {{{own_goals}}} gol di antaranya termasuk ke dalam {{#ifexpr:{{{own_goals}}}=1|gol bunuh diri|gol bunuh diri}})|}}|}} pada {{{matches}}} {{#ifexpr:{{{matches}}}=1|pertandingan|pertandingan}}, dengan rata-rata {{formatnum: {{#expr:{{{goals}}}/{{{matches}}} round 2}}}} {{formatnum:{{#ifexpr:({{{goals}}}/{{{matches}}} round 2)=1|gol|gol}}}} per pertandingan.}} {{#if:{{{bold|}}}|{{#if:{{{assists|}}}||&nbsp;}}Pemain dengan '''cetak tebal''' masih bermain pada turnamen ini.|}} {{#if:{{{further|}}}|{{#if:{{{assists|}}}||&nbsp;}}{{{further}}}|}} {{#if:{{{extra|}}}|{{{extra}}}{{clear}}|}} --]] local statNumber = mw.getLanguage('id'):formatNum( tonumber( g.args['goals'] or 0) ) --format number as string local matches = g.args['matches'] local statType = "gol" if g.args['assists'] or g.args['umpan gol'] then statType = "umpan gol" end if g.args['clean sheets'] or g.args['nirbobol'] then statType = "nirbobol" end local ongoing = g.args['ongoing'] local text1 = "Sebanyak" if g.args['lc'] then text1 = "sebanyak" end local text2 = "" if ongoing then text2 = "telah" end local updateString = "" local averageString = "" -- auto version: string.format(" pada %d pertandingan, dengan rata-rata %.3g gol per pertandingan") if g.args['goals'] and g.args['matches'] then local averageGoals = g.args['goals']/g.args['matches'] averageString = string.format("%.3g", averageGoals) end if g.args['updated'] and g.args['updated'] ~= "complete" and g.args['updated'] ~= "completed" and g.args['updated'] ~= "selesai" then updateString = "&nbsp;(per " ..g.args['updated'].. ")" end local sep = "." if g.args['sep'] then sep = g.args['sep'] end local text = "" if g.args['goals'] then --Sebanyak %statNumber %statType telah dicetak pada %matches pertandingan, dengan rata-rata %averageString per pertandingan (%updateString) text = string.format("%s %s %s %s dicetak pada %d pertandingan, dengan rata-rata %s gol per pertandingan"..updateString..sep, text1, statNumber, statType, text2, g.args['matches'], mw.getLanguage('id'):formatNum( tonumber(averageString))) end text = p.addAdditionHeaderText(text) -- handles template parameters bold, further, extra --[[ {{#if:{{{30 goals|{{{30 assists|}}}}}}|'''30 {{#if:{{{assists|}}}|assists|goals}}''' <div class="div-col columns column-count column-count-3" style="column-count:3;"> {{#if:{{{assists|}}}|{{{30 assists}}}|{{{30 goals}}}}}</div>|}}]] local output = "\n" local number = 30 local totalGoals = 0 while number > -4 do -- for the each goals/assists local entry = g.args[number .. ' goals'] or g.args[number .. ' goal'] or g.args[number .. ' assists'] or g.args[number .. ' assist'] or g.args[number .. ' clean sheets'] or g.args[number .. ' clean sheet'] if number < 0 then entry = g.args[math.abs(number) .. ' own goals'] or g.args[math.abs(number) .. ' own goal'] statType = "gol bunuh diri" end if entry then -- do we have goals/assists for this number output = output .. "\n'''" .. tostring(math.abs(number)) .. " " .. statType .. "'''\n" .. p.openList(frame) .. "\n" .. entry .. p.closeList(frame) totalGoals = p.countGoals(entry, number, totalGoals) end number = number -1 end if statType == "gol" or statType == "gol bunuh diri" then if g.args['goals'] and totalGoals ~= tonumber(g.args['goals']) then mw.addWarning("PERINGATAN. Jumlah gol pada terdaftar (" .. totalGoals .. ") dan parameter gol (" .. g.args['goals'] .. ") tidak cocok.") end end --{{#if:{{{bottom|}}}|{{small|{{{bottom_text}}}}} <div class="div-col columns column-count column-count-3" style="column-count:3;"> {{{bottom}}}</div>|}}{{#if:{{{source|}}}|{{smaller|Source: {{{source}}}}}|}} local footerText = g.args['footer-text'] or g.args['bottom'] or "" local footerHeading = g.args['footer-heading'] or g.args['bottom-text'] or "" local footer = "" if footerText ~= "" then local heading = "" if footerHeading ~= "" then heading = '<p>' .. footerHeading .. '</p>' end footer = '\n' .. heading .. p.openList(frame) .. '\n' .. footerText .. p.closeList(frame) end --{{#if:{{{source|}}}|{{small|Source: {{{source}}}}}|}} local source = g.args['source'] or "" if source ~= "" then source = "<small>Sumber: " .. source .. "</small>" end return text .. output .. footer .. source end --[[ ######################## top scorer output ############################### p.topscorer(frame) - output the top goalscorer(s) for the whole competition |maxlist= how many tied players to list before collapsing to generic "N players" text (default 5) |basepage= page used in the collapsed link (default: current page) |section= section anchor for that link (default: Goalscorers) ]] function p.topscorer(frame) getArgs(frame) local dataTarget = g.args[1] or g.args['data'] if not dataTarget then return "" end -- this feature needs module data data = require('Modul:Goalscorers/data/' .. dataTarget) g.goalscorers = {} -- reset state (safe across invokes) g.totalGoals = 0 local ok = p.selectGoalscorers() -- regular goals only; own goals ignored if not ok then return p.error_msg() end p.sortGoalscorers() -- sorts by goals desc, then country, name if #g.goalscorers == 0 then return "" end -- no scorers -> output nothing -- collect the tied leaders (sorted, so they sit at the front of the list) local topGoals = g.goalscorers[1].goals local leaders = {} for _, v in ipairs(g.goalscorers) do if v.goals == topGoals then leaders[#leaders + 1] = v else break end end local numTied = #leaders local maxList = tonumber(g.args['maxlist']) or 5 -- local goalWord = (topGoals == 1) and "goal" or "goals" local output if numTied == 1 then -- single top scorer local v = leaders[1] output = p.addLinkedIcon(frame, v.country) .. " " .. v.player .. ' <span class="nowrap">(' .. topGoals .. ' gol)</span>' elseif numTied <= maxList then -- list each tied player local mList = require('Modul:List') local listArgs = { class = 'nowrap' } for _, v in ipairs(leaders) do listArgs[#listArgs + 1] = p.addLinkedIcon(frame, v.country) .. " " .. v.player end listArgs[#listArgs + 1] = '(masing-masing ' .. topGoals .. ' gol)' output = mList.makeList('unbulleted', listArgs) else -- too many tied -> generic text local mList = require('Modul:List') local cn = require('Modul:ConvertNumeric') local writtenNum = cn.spell_number2{ num = numTied, capitalize = true } -- e.g. 7 -> "Seven" local basePage = g.args['basepage'] or mw.title.getCurrentTitle().text local section = g.args['section'] or 'Pencetak gol' output = mList.makeList('unbulleted', { class = 'nowrap', "''[[" .. basePage .. "#" .. section .. "|" .. writtenNum .. " pemain]]''", '(masing-masing ' .. topGoals .. ' gol)' }) end return p.error_msg() or output end return p n05grpzw89ezusai371i8w24c9iyhgn Module:Modul:Goalscorers/doc 828 3061 18796 17277 2026-10-18T13:06:01Z Gazartashlomo0907 62 Gazartashlomo0907 papindahon alaman [[Modul:Goalscorers/doc]] tu [[Module:Modul:Goalscorers/doc]] 17277 wikitext text/x-wiki Modul ini untuk menampilkan daftar pencetak gol sepak bola; digunakan pada banyak artikel kompetisi sepak bola. {{Module rating |beta<!-- Values: pre-alpha • alpha • beta • release • protected -- If a rating not needed/relevant, delete this template call -->}} <!-- Please place categories where indicated at the bottom of this page and interwikis at Wikidata (see [[Wikipedia:Wikidata]]) --> '''Sub-halaman Data''' {{div col}} <ul class="listify">{{Special:Prefixindex/Module:Goalscorers/data/ |hideredirects=1 |stripprefix=0}}</ul> {{Div col end}} == Penggunaan == <code><nowiki>{{</nowiki>#invoke:{{BASEPAGENAME}}|main}}</code> Modul ini digunakan templat {{tl|goalscorers}}. <includeonly>{{#ifeq:{{SUBPAGENAME}}|sandbox | | <!-- Categories below this line, please; interwikis at Wikidata --> }}</includeonly> 45sbitqotilm14idkjouo721oh0honh Module:Location map/styles.css 828 3360 18798 17907 2026-10-18T13:07:39Z Gazartashlomo0907 62 Gazartashlomo0907 papindahon alaman [[Modul:Location map/styles.css]] tu [[Module:Location map/styles.css]] 17907 wikitext text/x-wiki /* {{pp|small=yes}} */ .locmap .od { position: absolute; } .locmap .id { position: absolute; line-height: 0; } .locmap .l0 { font-size: 0; position: absolute; } .locmap .pv { line-height: 110%; position: absolute; text-align: center; } .locmap .pl { line-height: 110%; position: absolute; top: -0.75em; text-align: right; } .locmap .pr { line-height: 110%; position: absolute; top: -0.75em; text-align: left; } .locmap .pv > div { display: inline; padding: 1px; } .locmap .pl > div { display: inline; /* inline does not impact floated elements */ padding: 1px; float: right; } .locmap .pr > div { display: inline; /* inline does not impact floated elements */ padding: 1px; float: left; } /* Dark mode theme: */ @media screen { html.skin-theme-clientpref-night .od, html.skin-theme-clientpref-night .od .pv > div, html.skin-theme-clientpref-night .od .pl > div, html.skin-theme-clientpref-night .od .pr > div { /* Use !important to override any infobox rules */ background: #fff !important; color: #000 !important; } html.skin-theme-clientpref-night .locmap img { filter: grayscale(0.6); } /* Special handling for maps inside infoboxes * [[Module talk:Location map#Map label background bug in dark mode]] */ html.skin-theme-clientpref-night .infobox-full-data .locmap div { background: transparent !important; } } @media screen and (prefers-color-scheme: dark) { html.skin-theme-clientpref-os .locmap img { filter: grayscale(0.6); } html.skin-theme-clientpref-os .od, html.skin-theme-clientpref-os .od .pv > div, html.skin-theme-clientpref-os .od .pl > div, html.skin-theme-clientpref-os .od .pr > div { /* Use !important to override any infobox rules */ background: white !important; color: #000 !important; } html.skin-theme-clientpref-os .infobox-full-data .locmap div { background: transparent !important; } } rs1zb23dpoja6q2k5yakw4kskmcnf7l Modul:Goalscorers 0 3556 18793 2026-10-18T13:04:23Z Gazartashlomo0907 62 Gazartashlomo0907 papindahon alaman [[Modul:Goalscorers]] tu [[Module:Goalscorers]] 18793 wikitext text/x-wiki #REDIRECT [[Module:Goalscorers]] nqcvm9onlt8u2tdowsij9dpa6wez4ij Modul:Goalscorers/data/Piala Dunia FIFA 2026 0 3557 18795 2026-10-18T13:05:06Z Gazartashlomo0907 62 Gazartashlomo0907 papindahon alaman [[Modul:Goalscorers/data/Piala Dunia FIFA 2026]] tu [[Module:Goalscorers/data/Piala Dunia FIFA 2026]] 18795 wikitext text/x-wiki #REDIRECT [[Module:Goalscorers/data/Piala Dunia FIFA 2026]] c9mlngneijrap54h1herxywtrd2cuan Modul:Goalscorers/doc 0 3558 18797 2026-10-18T13:06:01Z Gazartashlomo0907 62 Gazartashlomo0907 papindahon alaman [[Modul:Goalscorers/doc]] tu [[Module:Modul:Goalscorers/doc]] 18797 wikitext text/x-wiki #REDIRECT [[Module:Modul:Goalscorers/doc]] 39fryze2dypwxzvpv804l855t7mwv6q Modul:Location map/styles.css 0 3559 18799 2026-10-18T13:07:39Z Gazartashlomo0907 62 Gazartashlomo0907 papindahon alaman [[Modul:Location map/styles.css]] tu [[Module:Location map/styles.css]] 18799 wikitext text/x-wiki #REDIRECT [[Module:Location map/styles.css]] gbdcxpgrl4sumkeje5h0py16qdmwuo5 Wikipedia:Guritan na tarpillit/43 2026 4 3560 18801 2026-10-18T13:12:04Z Gazartashlomo0907 62 Created page with "{{Pogu ni alaman/Topigombar|Piper betel's leaf.jpg|250|Gombar ni demban.|{{{selular|}}}}} '''Demban''' ([[Hata Indonesia]]: ''Sirih'') sanga digoari muse '''burangir''' sanga '''napuran''' i ma sada suansuanan sian [[Indonesia]] na mangolu manginsir sanga magusande tu sada batang ni hau. Molo di bagasan abahan, mangallang napuran hombar ma muse dohot [[gambir]], [[pinang]], [[timbaho]] dohot [[hapur]]. Alai molo gahat mangallang hapur, boi manega ([[periodentitis]]) mam..." 18801 wikitext text/x-wiki {{Pogu ni alaman/Topigombar|Piper betel's leaf.jpg|250|Gombar ni demban.|{{{selular|}}}}} '''Demban''' ([[Hata Indonesia]]: ''Sirih'') sanga digoari muse '''burangir''' sanga '''napuran''' i ma sada suansuanan sian [[Indonesia]] na mangolu manginsir sanga magusande tu sada batang ni hau. Molo di bagasan abahan, mangallang napuran hombar ma muse dohot [[gambir]], [[pinang]], [[timbaho]] dohot [[hapur]]. Alai molo gahat mangallang hapur, boi manega ([[periodentitis]]) mambahen sega [[ipon]].<br> Di halak [[Malayu]], napuran on dibahen gabe [[ubat]] (''fitofarmaka''), dung i dipangke muse tu acara adat rumpun Melayu. Di Indonesia, napuran on gabe suansuanan na sudung sian Propinsi [[Hapuloan Riau]]. Halak di Hapuloan Riau maniop tongtong adat mangallang napuran, sudung tu adat manambut tondong na ro tu huta ni halahi. Demban i ma suansuanan tangkasan di [[Indonesia]] na tubu manjilir manang mangusande tu kambona ni hau na asing. '''([[Demban|Sasingkopna...]])''' [[Horong:Guritan na tarpillit]] s1ua14fldovwiwf7t8e7rkzfcqx53np 18802 18801 2026-10-18T13:12:20Z Gazartashlomo0907 62 Protected "[[Wikipedia:Guritan na tarpillit/43 2026]]" ([Patota=Allow only administrators] (indefinite) [Paunsat=Allow only administrators] (indefinite)) 18801 wikitext text/x-wiki {{Pogu ni alaman/Topigombar|Piper betel's leaf.jpg|250|Gombar ni demban.|{{{selular|}}}}} '''Demban''' ([[Hata Indonesia]]: ''Sirih'') sanga digoari muse '''burangir''' sanga '''napuran''' i ma sada suansuanan sian [[Indonesia]] na mangolu manginsir sanga magusande tu sada batang ni hau. Molo di bagasan abahan, mangallang napuran hombar ma muse dohot [[gambir]], [[pinang]], [[timbaho]] dohot [[hapur]]. Alai molo gahat mangallang hapur, boi manega ([[periodentitis]]) mambahen sega [[ipon]].<br> Di halak [[Malayu]], napuran on dibahen gabe [[ubat]] (''fitofarmaka''), dung i dipangke muse tu acara adat rumpun Melayu. Di Indonesia, napuran on gabe suansuanan na sudung sian Propinsi [[Hapuloan Riau]]. Halak di Hapuloan Riau maniop tongtong adat mangallang napuran, sudung tu adat manambut tondong na ro tu huta ni halahi. Demban i ma suansuanan tangkasan di [[Indonesia]] na tubu manjilir manang mangusande tu kambona ni hau na asing. '''([[Demban|Sasingkopna...]])''' [[Horong:Guritan na tarpillit]] s1ua14fldovwiwf7t8e7rkzfcqx53np Sipanghasea:Gazartashlomo0907/selesele/kolaborasi 2 3561 18804 2026-10-18T13:26:07Z Gazartashlomo0907 62 Created page with "{{Halaman Utama/Box3 | image = {{{img1|HSSamarbetecolor.svg}}} | class = nomobile | title = {{{jud1|Tantangan kolaborasi}}} | content = {{Halaman Utama/Modul partisipasi}} }}" 18804 wikitext text/x-wiki {{Halaman Utama/Box3 | image = {{{img1|HSSamarbetecolor.svg}}} | class = nomobile | title = {{{jud1|Tantangan kolaborasi}}} | content = {{Halaman Utama/Modul partisipasi}} }} 44aiom8gqsmitzxdbltab1xhxnmzmnm 18805 18804 2026-10-18T13:26:25Z Gazartashlomo0907 62 Protected "[[Sipanghasea:Gazartashlomo0907/selesele/kolaborasi]]" ([Patota=Allow only administrators] (indefinite) [Paunsat=Allow only administrators] (indefinite)) 18804 wikitext text/x-wiki {{Halaman Utama/Box3 | image = {{{img1|HSSamarbetecolor.svg}}} | class = nomobile | title = {{{jud1|Tantangan kolaborasi}}} | content = {{Halaman Utama/Modul partisipasi}} }} 44aiom8gqsmitzxdbltab1xhxnmzmnm 18807 18805 2026-10-18T13:38:19Z Gazartashlomo0907 62 18807 wikitext text/x-wiki {{Pogu ni alaman/Box3}}/Box3 | image = {{{img1|HSSamarbetecolor.svg}}} | class = nomobile | title = {{{jud1|Tantangan kolaborasi}}} | content = {{Pogu ni alaman/Modul partisipasi}} }} 08h1y2csh70spnb4iubc5v5i30qk9tt Sipanghasea:Gazartashlomo0907/selesele/alaman partisipasi 2 3562 18808 2026-10-18T13:48:02Z Gazartashlomo0907 62 Created page with "<!--[[File:Nuvola apps bug.png|15px]] '''Kolaborasi''' {{clear}} {{Pogu ni alaman/Modul partisipasi/Kolaborasi}} {{right|{{edit|Templat:Halaman_Utama/Modul_partisipasi|e}}}}--> [[File:OOjs UI icon heart-progressive.svg|16px]] '''Kolaborasi guritan na imbaru''' {{clear}} <!-- {{tantangan | status = mari | periode = ({{#time:F Y}}) | topik = }} --> {{tantangan | status = mari | periode = {{#time:F Y}} | topik = }} {{clear}} ;Tantangan kolaborasi {{hlist | {{Artikel tant..." 18808 wikitext text/x-wiki <!--[[File:Nuvola apps bug.png|15px]] '''Kolaborasi''' {{clear}} {{Pogu ni alaman/Modul partisipasi/Kolaborasi}} {{right|{{edit|Templat:Halaman_Utama/Modul_partisipasi|e}}}}--> [[File:OOjs UI icon heart-progressive.svg|16px]] '''Kolaborasi guritan na imbaru''' {{clear}} <!-- {{tantangan | status = mari | periode = ({{#time:F Y}}) | topik = }} --> {{tantangan | status = mari | periode = {{#time:F Y}} | topik = }} {{clear}} ;Tantangan kolaborasi {{hlist | {{Artikel tantangan mingguan|Pangkalan Angkatan Udara Carswell|Carswell Air Force Base}} | {{Artikel tantangan mingguan|Balon militer|Military balloon}} | {{Artikel tantangan mingguan|Pesisir Utara (Long Island)|North Shore (Long Island)}} | {{Artikel tantangan mingguan|Kodachrome}} | {{Artikel tantangan mingguan|Jacobson v. Massachusetts}} | {{Artikel tantangan mingguan|Komisioner Kesehatan Kota New York|Commissioner of Health of the City of New York}} | {{Artikel tantangan mingguan|Area 51: Sejarah Pangkalan Militer Sangat Rahasia Amerika yang Tidak Disensor|Area 51: An Uncensored History of America's Top Secret Military Base}} | {{Artikel tantangan mingguan|Seoul International Drama Awards}} | {{Artikel tantangan mingguan|Dataran San Agustin|Plains of San Agustin}} | {{Artikel tantangan mingguan|Rumah Sakit Willard Parker|Willard Parker Hospital}} }} ;Hasil kolaborasi na imbaru: {{hlist | {{Artikel tantangan mingguan|Fox Movietone Follies of 1929}} | {{Artikel tantangan mingguan|The Roswell Incident (buku 1980)|The Roswell Incident (1980 book)}} | {{Artikel tantangan mingguan|Athanasius I Manasses}} | {{Artikel tantangan mingguan|Departemen Kesehatan New York|New York Department of Health}} | {{Artikel tantangan mingguan|Zillis-Reischen}} }} '''[[Wikipedia:Panduan dalam menerjemahkan artikel|Panduan menerjemahkan artikel]]'''{{,}} '''[[Wikipedia:Modul partisipasi/Halaman yang telah dibuat|Arsip halaman yang telah dibuat]]''' <noinclude> [[File:Echo chat icon.svg|15px]] '''Diskusi''' {{clear}} {{daftar diskusi}} <hr> * [[Istimewa:Halaman yang diinginkan]] * [[Wikipedia:Permintaan artikel]] * [[Wikipedia:Terjemahan minggu ini]] </noinclude> stpr26u1klli3b5mhbc70gzchp18bst 18809 18808 2026-10-18T13:48:24Z Gazartashlomo0907 62 Protected "[[Sipanghasea:Gazartashlomo0907/selesele/alaman partisipasi]]" ([Patota=Allow only administrators] (indefinite) [Paunsat=Allow only administrators] (indefinite)) 18808 wikitext text/x-wiki <!--[[File:Nuvola apps bug.png|15px]] '''Kolaborasi''' {{clear}} {{Pogu ni alaman/Modul partisipasi/Kolaborasi}} {{right|{{edit|Templat:Halaman_Utama/Modul_partisipasi|e}}}}--> [[File:OOjs UI icon heart-progressive.svg|16px]] '''Kolaborasi guritan na imbaru''' {{clear}} <!-- {{tantangan | status = mari | periode = ({{#time:F Y}}) | topik = }} --> {{tantangan | status = mari | periode = {{#time:F Y}} | topik = }} {{clear}} ;Tantangan kolaborasi {{hlist | {{Artikel tantangan mingguan|Pangkalan Angkatan Udara Carswell|Carswell Air Force Base}} | {{Artikel tantangan mingguan|Balon militer|Military balloon}} | {{Artikel tantangan mingguan|Pesisir Utara (Long Island)|North Shore (Long Island)}} | {{Artikel tantangan mingguan|Kodachrome}} | {{Artikel tantangan mingguan|Jacobson v. Massachusetts}} | {{Artikel tantangan mingguan|Komisioner Kesehatan Kota New York|Commissioner of Health of the City of New York}} | {{Artikel tantangan mingguan|Area 51: Sejarah Pangkalan Militer Sangat Rahasia Amerika yang Tidak Disensor|Area 51: An Uncensored History of America's Top Secret Military Base}} | {{Artikel tantangan mingguan|Seoul International Drama Awards}} | {{Artikel tantangan mingguan|Dataran San Agustin|Plains of San Agustin}} | {{Artikel tantangan mingguan|Rumah Sakit Willard Parker|Willard Parker Hospital}} }} ;Hasil kolaborasi na imbaru: {{hlist | {{Artikel tantangan mingguan|Fox Movietone Follies of 1929}} | {{Artikel tantangan mingguan|The Roswell Incident (buku 1980)|The Roswell Incident (1980 book)}} | {{Artikel tantangan mingguan|Athanasius I Manasses}} | {{Artikel tantangan mingguan|Departemen Kesehatan New York|New York Department of Health}} | {{Artikel tantangan mingguan|Zillis-Reischen}} }} '''[[Wikipedia:Panduan dalam menerjemahkan artikel|Panduan menerjemahkan artikel]]'''{{,}} '''[[Wikipedia:Modul partisipasi/Halaman yang telah dibuat|Arsip halaman yang telah dibuat]]''' <noinclude> [[File:Echo chat icon.svg|15px]] '''Diskusi''' {{clear}} {{daftar diskusi}} <hr> * [[Istimewa:Halaman yang diinginkan]] * [[Wikipedia:Permintaan artikel]] * [[Wikipedia:Terjemahan minggu ini]] </noinclude> stpr26u1klli3b5mhbc70gzchp18bst 18810 18809 2026-10-18T13:49:46Z Gazartashlomo0907 62 18810 wikitext text/x-wiki <!--[[File:Nuvola apps bug.png|15px]] '''Kolaborasi''' {{clear}} {{Pogu ni alaman/Modul partisipasi/Kolaborasi}} {{right|{{edit|Templat:Halaman_Utama/Modul_partisipasi|e}}}}--> [[File:OOjs UI icon heart-progressive.svg|16px]] '''Kolaborasi guritan na imbaru''' {{clear}} <!-- {{tantangan | status = mari | periode = ({{#time:F Y}}) | topik = }} --> {{tantangan | status = mari | periode = {{#time:F Y}} | topik = }} {{clear}} ;Tantangan kolaborasi {{hlist | {{Guritan tantangan parmingguon|Pangkalan Angkatan Udara Carswell|Carswell Air Force Base}} | {{Guritan tantangan parmingguon|Balon militer|Military balloon}} | {{Guritan tantangan parmingguon|Pesisir Utara (Long Island)|North Shore (Long Island)}} ;Hasil kolaborasi na imbaru: {{hlist | {{Guritan tantangan parmingguon|Fox Movietone Follies of 1929}} }} '''[[Wikipedia:Panduan dalam menerjemahkan artikel|Panduan menerjemahkan artikel]]'''{{,}} '''[[Wikipedia:Modul partisipasi/Halaman yang telah dibuat|Arsip halaman yang telah dibuat]]''' <noinclude> [[File:Echo chat icon.svg|15px]] '''Diskusi''' {{clear}} {{daftar diskusi}} <hr> * [[Istimewa:Halaman yang diinginkan]] * [[Wikipedia:Permintaan artikel]] * [[Wikipedia:Terjemahan minggu ini]] </noinclude> 8xgtvnecqxw10vh3ff2jbwdm242kkaw 18811 18810 2026-10-18T13:50:41Z Gazartashlomo0907 62 18811 wikitext text/x-wiki <!--[[File:Nuvola apps bug.png|15px]] '''Kolaborasi''' {{clear}} {{Pogu ni alaman/Modul partisipasi/Kolaborasi}} {{right|{{edit|Templat:Halaman_Utama/Modul_partisipasi|e}}}}--> [[File:OOjs UI icon heart-progressive.svg|16px]] '''Kolaborasi guritan na imbaru''' {{clear}} <!-- {{tantangan | status = mari | periode = ({{#time:F Y}}) | topik = }} --> {{tantangan | status = mari | periode = {{#time:F Y}} | topik = }} {{clear}} ;Tantangan kolaborasi {{hlist | {{Guritan tantangan parmingguon|Pangkalan Angkatan Udara Carswell|Carswell Air Force Base}} | {{Guritan tantangan parmingguon|Balon militer|Military balloon}} | {{Guritan tantangan parmingguon|Pesisir Utara (Long Island)|North Shore (Long Island)}} }} ;Hasil kolaborasi na imbaru: {{hlist | {{Guritan tantangan parmingguon|Fox Movietone Follies of 1929}} }} '''[[Wikipedia:Panduan dalam menerjemahkan artikel|Panduan menerjemahkan artikel]]'''{{,}} '''[[Wikipedia:Modul partisipasi/Halaman yang telah dibuat|Arsip halaman yang telah dibuat]]''' <noinclude> [[File:Echo chat icon.svg|15px]] '''Diskusi''' {{clear}} {{daftar diskusi}} <hr> * [[Istimewa:Halaman yang diinginkan]] * [[Wikipedia:Permintaan artikel]] * [[Wikipedia:Terjemahan minggu ini]] </noinclude> 12u293jb0p1v8k5i162j9xpb06nyz5s 18812 18811 2026-10-18T13:51:54Z Gazartashlomo0907 62 18812 wikitext text/x-wiki <!--[[File:Nuvola apps bug.png|15px]] '''Kolaborasi''' {{clear}} {{Pogu ni alaman/Modul partisipasi/Kolaborasi}} {{right|{{edit|Templat:Halaman_Utama/Modul_partisipasi|e}}}}--> [[File:OOjs UI icon heart-progressive.svg|16px]] '''Kolaborasi guritan na imbaru''' {{clear}} <!-- {{tantangan | status = mari | periode = ({{#time:F Y}}) | topik = }} --> {{tantangan | status = mari | periode = {{#time:F Y}} | topik = }} {{clear}} ;Tantangan kolaborasi {{hlist | {{Guritan tantangan parmingguon|Pangkalan Angkatan Udara Carswell|Carswell Air Force Base}} | {{Guritan tantangan parmingguon|Balon militer|Military balloon}} | {{Guritan tantangan parmingguon|Pesisir Utara (Long Island)|North Shore (Long Island)}} }} ;Hasil kolaborasi na imbaru: {{hlist | {{Guritan tantangan parmingguon|Fox Movietone Follies of 1929}} }} '''[[id:Wikipedia:Panduan dalam menerjemahkan artikel|Panduan menerjemahkan artikel]]'''{{,}} '''[[Wikipedia:Modul partisipasi/Alaman na naung dibahenon|Arsip halaman na naung dibahenon]]''' se9mnb9afzkkitto4vf9r0tz5j6izh4