
/*
 * -------
 * :ATTRIBUTION NOTICE BEGINS
 *
 * The following JSMsg functions are:
 * 
 *    (C) Copyright 2002 - 2004, Creativyst, Inc.
 *               ALL RIGHTS RESERVED
 * 
 * For more information go to:
 *   http://www.Creativyst.com/Doc/Std/JSMsg/JSMsg.htm
 * or email:
 *            Support@Creativyst.com
 * 
 * Licensed under the Open Software License version 1.1
 *
 * END ATTRIBUTION NOTICE:
 * -------
 *
 * The following version token is 
 * required by aggregators
 * -------
 * JSMsgVersion:1.0a
 * -------
 *
 * Made by: JSMFeed.pl v1.0e
*/
/* JSCpragma:StartCompress
*/
/* These functions are free software; you can redistribute 
 * them and/or modify them under the terms of the Open 
 * Software License (OSL) version 1.1 as published by
 * the Open Source Initiative;
 * 
 * This program is distributed in the hope that it will 
 * be useful, but WITHOUT ANY WARRANTY; without even the 
 * implied warranty of MERCHANTABILITY or FITNESS FOR A 
 * PARTICULAR PURPOSE. See the Open Software License
 * version 1.1 for more details.
 * 
 * For the complete details of the Open Software License
 * please visit the Open Source Initiative website.
 *
 * 
 * These functions are part of a shared convention.
 * called JSMsg.  Please see the JSMsg document
 * for more details.
 *
 * www.creativyst.com/Doc/Std/JSMsg/JSMsg.htm
 *
 * -------------------------------------------
 * Parts of this code were automatically
 * generated and may contain copyrighted
 * content from other sources as well.
 * Such content may not be used without
 * first obtaining explicit permissions
 * from their sources.
 *
 *
*/

function np_JSMsg() {

this.Title = Array([this.ShortListSize]);
this.Desc = Array([this.ShortListSize]);
this.Link = Array([this.ShortListSize]);

this.MetaKeys = Array([5]);
this.MetaVals = Array([5]);



 this.ShortListSize = 15;
 this.BeenLoaded = 0;
 this.dispNumb;

 this.Msg = function(msgPart, msgOffset)
 {
    document.write( this.Get(msgPart, msgOffset) );
 }

 this.MsgDay = function(msgPart)
 {
    document.write( this.GetDay(msgPart) );
 }

 this.MsgN = function(msgPart, msgNumber)
 {
    document.write( this.GetN(msgPart, msgNumber) );
 }


 this.Get = function(msgPart, msgOffset)
 {
    if(!msgOffset) {
        msgOffset = 0;
    }
    if(!this.BeenLoaded) {
        this.BeenLoaded = 1;
        dispNumb = 
           this.getRandInt(this.ShortListSize);
    }
    return( this.GetN(msgPart, (dispNumb + msgOffset)) );
 }

 this.GetDay = function(msgPart)
 {
    var d = new Date();
    var x = d.getDate();
    return( this.GetN(msgPart, x) );
 }


 this.GetN = function(msgPart, msgNumber)
 {
    return( this.GetNCore(msgPart, msgNumber) );
 }

 this.GetNCore = function(msgPart, msgNumber)
 {
    var myTmp;

    if(!msgPart) {
        msgPart = "Body";
    }
    if(!msgNumber) {
        msgNumber = 0;
    }

    if(msgNumber >= this.ShortListSize) {
        msgNumber = msgNumber % this.ShortListSize;
    }

    if(  this.ok(msgPart,"Type") ) {
        return(this.Type[msgNumber]);
    }
    if(  this.ok(msgPart,"Title") ) {
        return(this.Title[msgNumber]);
    }
    if(  this.ok(msgPart, "Desc Description Content") ) {
        return(this.Desc[msgNumber]);
    }
    if(  this.ok(msgPart,"Body") ) {
        return(this.Body[msgNumber]);
    }
    if(  this.ok(msgPart, "Attrib Attribute Source") ) {
        return(this.Attrib[msgNumber]);
    }
    if(  this.ok(msgPart, "Author") ) {
        if(!this.Author[msgNumber]) {
            return(this.Attrib[msgNumber]);
        }
        return(this.Author[msgNumber]);
    }

    if(  this.ok(msgPart,"DayN Day2N Day") ) {
        myTmp = this.DateN[msgNumber];
        if(myTmp.length) { 
          myTmp = myTmp.substr(6,2);
          if(  this.ok(msgPart,"Day2N") ) {
            return(myTmp);
          }
          if(myTmp.charAt(0) == "0") {
            return(myTmp.substr(1,1))
          }
          return(myTmp);
        }
    }
    if(  this.ok(msgPart, "MonthN Month2N") ) {
        myTmp = this.DateN[msgNumber];
        if(myTmp.length) {
          myTmp = myTmp.substr(4,2)
          if(  this.ok(msgPart,"Month2N") ) {
            return(myTmp);
          }
          if(myTmp.charAt(0) == "0") {
            return(myTmp.substr(1,1))
          }
          return(myTmp);
        }
    }
    if(  this.ok(msgPart, "Year2N Year4N YearN Year") ) {
        if(this.DateN[msgNumber].length) {
          if(  this.ok(msgPart,"Year2N") ) {
            return(this.DateN[msgNumber].substr(2,2));
          }
          return(this.DateN[msgNumber].substr(0,4));
        }
    }

    if(  this.ok(msgPart,"Time") ) {
      myTmp = this.DateN[msgNumber];
      return(myTmp.substr(8,6));
    }
    if(  this.ok(msgPart,"Hour2N") ) {
      myTmp = this.DateN[msgNumber];
      return(myTmp.substr(8,2));
    }
    if(  this.ok(msgPart,"Minute2N") ) {
      myTmp = this.DateN[msgNumber];
      return(myTmp.substr(10,2));
    }

    if(  this.ok(msgPart,"Link") ) {
        return(this.Link[msgNumber]);
    }
    if( this.ok(msgPart,"LinkTitle") ) {
        if(this.MetaMsg(msgPart,"Link") && this.MetaMsg(msgPart,"Title") ) {
          if( !this.Link[msgNumber] ) {
              return(this.Title[msgNumber]);
          }

          if( !this.Title[msgNumber] ) {
            this.Title[msgNumber] =  this.Link[msgNumber];              
          }
          myTmp = '<A TARGET="_blank" \n'; 
          myTmp = myTmp + 'HREF="' + this.Link[msgNumber] + '">\n';
          myTmp = myTmp + this.Title[msgNumber] + '</A>\n';

          return(myTmp);

        }
        if( this.MetaMsg(msgPart,"Title") ) {
          return(this.Title[msgNumber]);
        }
        if( this.MetaMsg(msgPart,"Link") ) {
          if( this.Link[msgNumber] ) {
            myTmp = "<A TARGET=\"_blank\" \n"; 
            myTmp = myTmp + "HREF=\"" + this.Link[msgNumber] + "\">\n";
            myTmp = myTmp + this.Link[msgNumber] + "</A>\n";
            return(myTmp);
          }
        }
        return("");
    }
    if( this.ok(msgPart,"Cat Category Subject") ) {
        return(this.Cat[msgNumber]);
    }
    if( this.ok(msgPart,"Thumb") ) {
        return(this.Thumb[msgNumber]);
    }
    if( this.ok(msgPart,"Alt") ) {
        return(this.Alt[msgNumber]);
    }

    return("");
 }




 this.getRandInt = function(RandSz)
 {
    var t, t2, t3;

    t = 0;
    while(t < .000001) {
        t = Math.random();
        t = Math.abs(t);
    }
    t2 = t * 1000000;
    t2 = Math.round(t2);
    t3 = t2 % RandSz;
    return(t3);
 }



 this.ok = function(a, b)
 {
    var t, t2;

    if(!this.is(a,b)) {
        return(0);
    }
    return(this.MetaMsg(a));
 }

 this.is = function(a, b)
 {
    var t, t2;

    t = a + " ";
    t2 = b + " ";
    t2 = t2.toUpperCase();
    t = t.toUpperCase();

    if(t2.indexOf(t) == -1) {
        return(0);
    }
    return(1);
 }


 this.MetaMsg = function(msgCmd)
 {
    var i,l;

    if( this.is(msgCmd, "Title LinkTitle Desc Description Link LinkTitle ") ) {
         return(1);

    }
    else if( this.is(msgCmd, "MetaCount") ) {
        return(15);
    }
    else {
        if(this.MetaKeys) {
            l = this.MetaKeys.length;
            for(i = 0;i < l;i++) {
                if(this.MetaKeys[i] == msgCmd) {
                    return(this.MetaVals[i]);
                }
            }
        }
        return(0);
    }
 }

     

}

np = new np_JSMsg();

/* how slow is the with statement */

with( np ) {
/* Meta values
*/
MetaKeys[0] = "MetaTitle";
MetaVals[0] = "Google News";
MetaKeys[1] = "MetaLink";
MetaVals[1] = "http://news.google.com/news?hl=en&amp;num=20&amp;edition=us&amp;ie=ISO-8859-1&amp;sa=G&amp;q=class+action";
MetaKeys[2] = "MetaLinkTitle";
MetaVals[2] = "<A HREF=\"http://news.google.com/news?hl=en&amp;num=20&amp;edition=us&amp;ie=ISO-8859-1&amp;sa=G&amp;q=class+action\" CLASS=\"JSMsg\">Google News</A>";
MetaKeys[3] = "MetaUpdateDate";
MetaVals[3] = "20070307000009";
MetaKeys[4] = "MetaDesc";
MetaVals[4] = "Google News search by &lt;a href=\"http://www.geckotribe.com/rss/grouper/\"&gt;Grouper&lt;/a&gt;";


/* content vaues:
*/
Title[0] = "Summary Notice of Pendency and Proposed Settlement of Class Action";
Desc[0] = "YOU ARE HEREBY NOTIFIED that the above-captioned action has been certified as a class action for certain purposes and that a settlement for One Million ...";
Link[0] = "http://sev.prnewswire.com/banking-financial-services/20070306/DCTU05306032007-1.html";

Title[1] = "UPDATE 1-Lerach Coughlin at top of US class-action ranks";
Desc[1] = "&quot;Six of the 10 largest settlements of all time were finalized in the year 2006,&quot; said Adam Savett, vice  president of ISS&#39; Securities Class Action Services. ...Lerach Coughlin at top of US class-action ranks ReutersInstitutional Shareholder Services Ranks Top 50 Plaintiffs&#39; Law ... PR Newswire (press release)all 6 news articles&nbsp;&raquo;";
Link[1] = "http://today.reuters.com/stocks/QuoteCompanyNewsArticle.aspx?view=CN&storyID=2007-03-06T213717Z_01_N06430293_RTRIDST_0_CLASSACTIONS-SETTLEMENTS-UPDATE-1.XML&rpc=66";

Title[2] = "BJC overpayment case is class-action";
Desc[2] = "A judge in St. Louis Circuit Court has granted  class-action status to a lawsuit alleging BJC HealthCare overcharged thousands of uninsured patients going ...Judge grants class-action status to billing lawsuit against BJC St. Louis Post-Dispatchall 2 news articles&nbsp;&raquo;";
Link[2] = "http://www.stltoday.com/stltoday/business/stories.nsf/0/E1E9A6B5F22CC85D86257297000D0FB2?OpenDocument";

Title[3] = "Overtime suit vs. SunTrust becomes class action";
Desc[3] = "A federal judge has granted class-action status to a lawsuit filed by a SunTrust Banks employee who alleges the bank owes him overtime back pay. ...";
Link[3] = "http://www.ajc.com/business/content/business/stories/2007/03/06/0307bizsuntrust.html";

Title[4] = "TracFone class-action settlement could cost up to $70M";
Desc[4] = "TracFone Wireless Inc. agreed to settle a class-action suit alleging the top prepaid cellular company misled consumers by charging them at the roaming rate ...";
Link[4] = "http://rcrnews.com/apps/pbcs.dll/article?AID=/20070305/FREE/70305009/1017";

Title[5] = "Partner Communications krijgt &#39;class action&#39;-certificatie voor ...";
Desc[5] = "TA) Partner Communications Announces It Received a Lawsuit Requesting Certification as a Class Action Business Editors/Telecommunications Writers/Legal ...";
Link[5] = "http://www.netherlandscorporatenews.com/archive/en/2007/03/06/f054.htm";

Title[6] = "OOIDA and Bridge Terminal Transport Announce $6.25 Million Class ...";
Desc[6] = "In June 2004 OOIDA and seven OOIDA members filed a class action lawsuit against the Charlotte, North Carolina based intermodal carrier in federal court on ...";
Link[6] = "http://www.layover.com/cgi-bin/portal/printnews.pl/10648.html";

Title[7] = "Class-action targets Montreal blue collars for 2003 protest";
Desc[7] = "A Montreal employees union could be forced to pay millions of dollars in compensation to drivers caught in a 2003 protest, if a class-action lawsuit ...";
Link[7] = "http://www.cbc.ca/canada/montreal/story/2007/03/06/qc-classaction20070306.html";

Title[8] = "Cauley Bowman Carney &amp; Williams Provides Update On Class Action ...";
Desc[8] = "(RTTNews) - Monday after the bell, The law firm of Cauley Bowman Carney &amp; Williams revealed that a class action lawsuit was filed in the United States ...Cauley Bowman Carney &amp; Williams, PLLC Announces That a Securities ... SYS-CON Mediaall 4 news articles&nbsp;&raquo;";
Link[8] = "http://www.tradingmarkets.com/.site/news/SMALL%20STOCK/504052/";

Title[9] = "Lerach&#39;s Bid for Lead Counsel Status Rejected in Comverse Class Action";
Desc[9] = "The federal judge overseeing a class action lawsuit against embattled telecommunications company Comverse Technology has vacated a magistrate judge&#39;s ...";
Link[9] = "http://www.law.com/jsp/article.jsp?id=1173101903791&pos=ataglance";

Title[10] = "Klafter &amp; Olsen LLP Announces Extended Class Period in its Action ...";
Desc[10] = "WASHINGTON, March 5 /PRNewswire-USNewswire/ -- Klafter &amp; Olsen LLP announces that it is extending the class period in its class action against New Century ...Shareholder Notice: Zwerling, Schachter &amp; Zwerling, LLP Files ... Earthtimes.orgall 7 news articles&nbsp;&raquo;";
Link[10] = "http://www.prnewswire.com/cgi-bin/stories.pl?ACCT=104&STORY=/www/story/03-05-2007/0004539981&EDATE=";

Title[11] = "Brower Piven Announces Class Action Lawsuit Against Openwave ...";
Desc[11] = "David Brower and Charles Piven have combined experience in securities and class action litigation of over 40 years. You may contact Brower Piven at The ...";
Link[11] = "http://www.marketwire.com/mw/release_html_b1?release_id=223135";

Title[12] = "Shareholder Class Action Filed Against Openwave Systems, Inc. by ...";
Desc[12] = "Notice is hereby  given that a class action lawsuit was filed in the United States District Court for the Southern District of New York on behalf of all ...";
Link[12] = "http://www.marketwire.com/mw/release_html_b1?release_id=223140";

Title[13] = "Caledonia class action lawsuit coming to Hamilton in June";
Desc[13] = "CALEDONIA (AM900 CHML) - Three days in June will be crucial to a class action lawsuit that has been filed on behalf of residents and businesses in Caledonia ...";
Link[13] = "http://www.900chml.com/news/news_local.cfm?cat=7428436912&rem=59971&red=80143623aPBIny&wids=410&gi=1&gm=news_local.cfm";

Title[14] = "Class action suit filed against Saint Anthony&#39;s Hospital";
Desc[14] = "Jefferson Hartley of Cottage Hills filed a class action complaint against an Alton hospital claiming it fraudulently asserted a lien on the proceeds of a ...";
Link[14] = "http://www.stclairrecord.com/news/191412-class-action-suit-filed-against-saint-anthonys-hospital";

} // end with block
