<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://meta.wikioasis.org/wiki/User:Bosco/ReportSRG.js?action=history&amp;feed=atom</id>
	<title>User:Bosco/ReportSRG.js - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://meta.wikioasis.org/wiki/User:Bosco/ReportSRG.js?action=history&amp;feed=atom"/>
	<link rel="alternate" type="text/html" href="https://meta.wikioasis.org/wiki/User:Bosco/ReportSRG.js?action=history"/>
	<updated>2026-05-25T12:28:00Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.45.3</generator>
	<entry>
		<id>https://meta.wikioasis.org/wiki/User:Bosco/ReportSRG.js?diff=5362&amp;oldid=prev</id>
		<title>Bosco at 05:07, 25 May 2026</title>
		<link rel="alternate" type="text/html" href="https://meta.wikioasis.org/wiki/User:Bosco/ReportSRG.js?diff=5362&amp;oldid=prev"/>
		<updated>2026-05-25T05:07:32Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 05:07, 25 May 2026&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l52&quot;&gt;Line 52:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 52:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;           var api=new mw.Api();&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;           var api=new mw.Api();&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;           try{&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;           try{&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;             await api.postWithEditToken({action:&#039;edit&#039;,title:targetTitle,appendtext:&#039;\n&#039;+wikitext+&#039;\n&#039;,summary:&#039;Reporting user(s) for global lock&#039;});&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;             await api.postWithEditToken({action:&#039;edit&#039;,title:targetTitle,appendtext:&#039;\n&#039;+wikitext+&#039;\n&#039;,summary:&#039;Reporting user(s) for global lock&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;) ([[User:Bosco/ReportSRG.js|ReportSRG]]&lt;/ins&gt;&#039;});&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;             mw.notify(&amp;#039;Report successfully submitted to Steward requests on Meta&amp;#039;,{type:&amp;#039;success&amp;#039;});&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;             mw.notify(&amp;#039;Report successfully submitted to Steward requests on Meta&amp;#039;,{type:&amp;#039;success&amp;#039;});&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;           }catch(e){&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;           }catch(e){&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;

&lt;!-- diff cache key metawiki:diff:1.41:old-5353:rev-5362:php=table --&gt;
&lt;/table&gt;</summary>
		<author><name>Bosco</name></author>
	</entry>
	<entry>
		<id>https://meta.wikioasis.org/wiki/User:Bosco/ReportSRG.js?diff=5353&amp;oldid=prev</id>
		<title>Bosco: report users to SRG to req lock</title>
		<link rel="alternate" type="text/html" href="https://meta.wikioasis.org/wiki/User:Bosco/ReportSRG.js?diff=5353&amp;oldid=prev"/>
		<updated>2026-05-25T04:11:47Z</updated>

		<summary type="html">&lt;p&gt;report users to SRG to req lock&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;//&amp;lt;nowiki&amp;gt;&lt;br /&gt;
mw.loader.using([&amp;#039;mediawiki.api&amp;#039;,&amp;#039;mediawiki.util&amp;#039;],function(){&lt;br /&gt;
  $(function(){&lt;br /&gt;
    mw.util.addPortletLink(&amp;#039;p-personal&amp;#039;,&amp;#039;#&amp;#039;,&amp;#039;Global Lock Report&amp;#039;,&amp;#039;pt-global-lock-report&amp;#039;,&amp;#039;Report user(s) to Steward requests&amp;#039;);&lt;br /&gt;
    $(&amp;#039;#pt-global-lock-report&amp;#039;).on(&amp;#039;click&amp;#039;,function(e){&lt;br /&gt;
      e.preventDefault();&lt;br /&gt;
      var $form=$(&amp;#039;&amp;lt;div id=&amp;quot;globalLockForm&amp;quot;&amp;gt;&amp;#039;).css({padding:&amp;#039;1em&amp;#039;,border:&amp;#039;1px solid #ccc&amp;#039;,background:&amp;#039;#f9f9f9&amp;#039;});&lt;br /&gt;
      $form.append(&amp;#039;&amp;lt;h3&amp;gt;Report user(s) for global lock&amp;lt;/h3&amp;gt;&amp;#039;);&lt;br /&gt;
      $form.append(&amp;#039;&amp;lt;label&amp;gt;Section title: &amp;lt;/label&amp;gt;&amp;lt;input id=&amp;quot;reportTitle&amp;quot; style=&amp;quot;width:300px&amp;quot; placeholder=&amp;quot;Username of user being locked&amp;quot;&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;#039;);&lt;br /&gt;
      var $userContainer=$(&amp;#039;&amp;lt;div id=&amp;quot;userContainer&amp;quot;&amp;gt;&amp;#039;);$form.append($userContainer);&lt;br /&gt;
      $form.append(&amp;#039;&amp;lt;button id=&amp;quot;addUser&amp;quot;&amp;gt;Add another username&amp;lt;/button&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;#039;);&lt;br /&gt;
      $form.append(&amp;#039;&amp;lt;label&amp;gt;Reason: &amp;lt;/label&amp;gt;&amp;lt;input id=&amp;quot;reason&amp;quot; style=&amp;quot;width:300px&amp;quot; placeholder=&amp;quot;Include your reason here&amp;quot;&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;#039;);&lt;br /&gt;
      $form.append(&amp;#039;&amp;lt;button id=&amp;quot;submitReport&amp;quot;&amp;gt;Submit report&amp;lt;/button&amp;gt; &amp;lt;button id=&amp;quot;cancelReport&amp;quot;&amp;gt;Cancel&amp;lt;/button&amp;gt;&amp;#039;);&lt;br /&gt;
      $(&amp;#039;#mw-content-text&amp;#039;).prepend($form);&lt;br /&gt;
&lt;br /&gt;
      function addUserField(){&lt;br /&gt;
        if($(&amp;#039;#userContainer .userRow&amp;#039;).length&amp;gt;=10){alert(&amp;#039;MultiLock supports at most 10 usernames.&amp;#039;);return;}&lt;br /&gt;
        var $row=$(&amp;#039;&amp;lt;div class=&amp;quot;userRow&amp;quot;&amp;gt;&amp;#039;).css({margin:&amp;#039;5px 0&amp;#039;});&lt;br /&gt;
        $row.append(&amp;#039;&amp;lt;input class=&amp;quot;username&amp;quot; style=&amp;quot;width:200px&amp;quot; placeholder=&amp;quot;username&amp;quot;&amp;gt; &amp;#039;);&lt;br /&gt;
        $row.append(&amp;#039;&amp;lt;label&amp;gt;&amp;lt;input type=&amp;quot;checkbox&amp;quot; class=&amp;quot;hideName&amp;quot;&amp;gt; Hide?&amp;lt;/label&amp;gt;&amp;#039;);&lt;br /&gt;
        $userContainer.append($row);&lt;br /&gt;
      }&lt;br /&gt;
      addUserField();&lt;br /&gt;
      $(&amp;#039;#addUser&amp;#039;).click(function(ev){ev.preventDefault();addUserField();});&lt;br /&gt;
&lt;br /&gt;
      $(&amp;#039;#submitReport&amp;#039;).click(async function(){&lt;br /&gt;
        var title=$(&amp;#039;#reportTitle&amp;#039;).val().trim();&lt;br /&gt;
        var reason=$(&amp;#039;#reason&amp;#039;).val().trim()||&amp;#039;No reason provided&amp;#039;;&lt;br /&gt;
        var users=[];&lt;br /&gt;
        $(&amp;#039;#userContainer .userRow&amp;#039;).each(function(){&lt;br /&gt;
          var uname=$(this).find(&amp;#039;.username&amp;#039;).val().trim();&lt;br /&gt;
          var hide=$(this).find(&amp;#039;.hideName&amp;#039;).is(&amp;#039;:checked&amp;#039;);&lt;br /&gt;
          if(uname)users.push({name:uname,hide:hide});&lt;br /&gt;
        });&lt;br /&gt;
        if(!title||users.length===0){alert(&amp;#039;Please fill in the title and at least one username.&amp;#039;);return;}&lt;br /&gt;
&lt;br /&gt;
        var wikitext=&amp;#039;== &amp;#039;+title+&amp;#039; ==\n{{status}}\n&amp;#039;;&lt;br /&gt;
        if(users.length===1){&lt;br /&gt;
          var u=users[0];&lt;br /&gt;
          wikitext+=&amp;#039;*{{LockHide|&amp;#039;+u.name+(u.hide?&amp;#039;|hidename=1&amp;#039;:&amp;#039;&amp;#039;)+&amp;#039;}}\n&amp;#039;;&lt;br /&gt;
        }else{&lt;br /&gt;
          users.forEach(function(u){&lt;br /&gt;
            wikitext+=&amp;#039;*{{MultiLock|&amp;#039;+u.name+(u.hide?&amp;#039;|hidename=1&amp;#039;:&amp;#039;&amp;#039;)+&amp;#039;}}\n&amp;#039;;&lt;br /&gt;
          });&lt;br /&gt;
        }&lt;br /&gt;
        wikitext+=&amp;#039;*:&amp;#039;+reason+&amp;#039; ~~~~&amp;#039;;&lt;br /&gt;
&lt;br /&gt;
        var targetTitle=&amp;#039;Steward requests&amp;#039;;&lt;br /&gt;
&lt;br /&gt;
        if(mw.config.get(&amp;#039;wgServer&amp;#039;).includes(&amp;#039;meta.wikioasis.org&amp;#039;)){&lt;br /&gt;
          // On Meta: submit directly&lt;br /&gt;
          var api=new mw.Api();&lt;br /&gt;
          try{&lt;br /&gt;
            await api.postWithEditToken({action:&amp;#039;edit&amp;#039;,title:targetTitle,appendtext:&amp;#039;\n&amp;#039;+wikitext+&amp;#039;\n&amp;#039;,summary:&amp;#039;Reporting user(s) for global lock&amp;#039;});&lt;br /&gt;
            mw.notify(&amp;#039;Report successfully submitted to Steward requests on Meta&amp;#039;,{type:&amp;#039;success&amp;#039;});&lt;br /&gt;
          }catch(e){&lt;br /&gt;
            console.error(e);&lt;br /&gt;
            mw.notify(&amp;#039;Error submitting report: &amp;#039;+e.toString(),{type:&amp;#039;error&amp;#039;});&lt;br /&gt;
          }&lt;br /&gt;
        }else{&lt;br /&gt;
          // On non‑Meta: show the wikitext and redirect to Meta source editor&lt;br /&gt;
          var $preview=$(&amp;#039;&amp;lt;textarea readonly&amp;gt;&amp;#039;).css({width:&amp;#039;100%&amp;#039;,height:&amp;#039;150px&amp;#039;}).val(wikitext);&lt;br /&gt;
          $(&amp;#039;#globalLockForm&amp;#039;).append(&amp;#039;&amp;lt;h4&amp;gt;Copy this wikitext and paste it on Meta:&amp;lt;/h4&amp;gt;&amp;#039;).append($preview);&lt;br /&gt;
          var url=&amp;#039;https://meta.miraheze.org/wiki/&amp;#039;+encodeURIComponent(targetTitle)+&amp;#039;?veaction=editsource&amp;#039;;&lt;br /&gt;
          window.open(url,&amp;#039;_blank&amp;#039;);&lt;br /&gt;
          mw.notify(&amp;#039;Redirecting to Meta in a new tab. Please paste your report there.&amp;#039;,{type:&amp;#039;info&amp;#039;});&lt;br /&gt;
        }&lt;br /&gt;
      });&lt;br /&gt;
&lt;br /&gt;
      $(&amp;#039;#cancelReport&amp;#039;).click(function(){$(&amp;#039;#globalLockForm&amp;#039;).remove();});&lt;br /&gt;
    });&lt;br /&gt;
  });&lt;br /&gt;
});&lt;br /&gt;
//&amp;lt;/nowiki&amp;gt;&lt;/div&gt;</summary>
		<author><name>Bosco</name></author>
	</entry>
</feed>