SFLC search:
  Clears the pending messages from a SourceForge project list

Usage:
  sflc listname password

For multiple lists use a comma separator between each list argument:
  sflc list1 password, list2 password


Security Warning:

Be aware that your password will remain in DQSD's history.
To reduce (NOT eliminate) visibility of your password it is
recommended you create an alias for this search which includes the
paramaters (sflc list1 password,list2 password), or call it using the
startupCommands preference variable (which runs upon DQSD startup).


Would someone on the dev team please check this in for me? Thanks!

Regards,

Shawn K. Hall
http://ReliableAnswers.com/

'// ========================================================
   "Whenever you see a successful business, someone once
    made a courageous decision."
      -- Peter Drucker, writer and management consultant
<search function="sflc">
  <name>SourceForge Lists Cleaner</name>
  <description>Clears the pending messages from a SourceForge project list
    <div class="helpboxDescLabels">Switches:</div>
    <table class="helpboxDescTable">
      <tr><td>listname password[,listname password...]</td><td> - </td><td> Parse inline input in the form <b>listname password</b>, used when storing a settings profile is inconvenient. </td></tr>
    </table>
    <div class="helpboxDescLabels">Examples:</div>
    <table class="helpboxDescTable">
      <tr><td>sflc project-users password</td></tr>
      <tr><td>sflc project-users password,project-devel password</td></tr>
    </table>
    <div class="helpboxDescLabels" style="color: red">Security warning:<br/>
    <table class="helpBoxDescTable">
      <tr><td style="color: red">Be aware that your password will remain in DQSD's history. 
	To reduce visibility of your password it is recommended to create an alias for this 
	search which includes the paramaters, or call it using the <b>startupCommands</b>
	preference variable (which runs upon DQSD startup).</td></tr>
    </table>
    </div>
  </description>
  <category>Functions</category>
  <link>http://ReliableAnswers.com/x/dqsd/</link>
  <contributor>Shawn K. Hall</contributor>
  <script><![CDATA[
      function sflc(q){
	if( q == "?" ){
	  qsfind("sflc /function");
	  return false;
	}
	if( q == "" ){
	  qsfind("sflc /function");
	  return false;
	}
	var sStatus = ""; var s = "";
	var sUrl  = "https://lists.sourceforge.net/lists/admindb/";;
	var sList = "";
	var sAuth = "";
	var oPush = "";
	
	try{
	//obtain variables
	  var fs = q.split(",");
	  oPush = fs[0].replace(/^\s+/g,'').replace(/\s+$/g,'').split(" ");
	  sList = oPush[0];
	  sAuth = oPush[1];
	  sUrl += sList;

	//attempt to obtain the current message list
	  var sPost = "adminpw=" + escape( sAuth );
	  sPost += "&amp;request_login=" + escape("Let me in...");
	  var xmlHttp = new ActiveXObject("Microsoft.XmlHttp");
	  xmlHttp.open("POST", sUrl, false);
	  xmlHttp.send(sPost);

	//get the response content from the remote site
	  var sBody = xmlHttp.responseText;
	  var rx = /<INPUT[\s]*name="([\d]+)"[\s]*type="RADIO"[\s]*value="3"[\s]*>/g;
	  var r; var i = 0;
	  while ((r = rx.exec(sBody)) != null){
	    i++;
	    s += "&" + r[1] + "=3";
	  }
	  s = s.substr(1);

	//process form
	  if (s != ""){
	  //building the post
	    s += "&" + "submit=" + escape("Submit All Data");
	    var xmlHttp = new ActiveXObject("Microsoft.XmlHttp");
	    xmlHttp.open("POST", sUrl, false);
	    xmlHttp.send(s);
	    sStatus = "Cleared " + i + " pending message(s) from " + sList;
	  }else{
	  //nothing in the form
	    sStatus = "Nothing to do (" + sList + ")";
	  }
	}catch(e){
	  sStatus = "It didn't work!" + "\n" + e.number + "::" + e.description;
	}
	setSearchWindowText(sStatus, false);

      //next list(s)
	if (fs.length > 1)
	  setTimeout("sflc('" + fs.slice(1).join(",") + "')", 1000);
      }
  ]]></script>
</search>

Reply via email to