On Sun, Aug 16, 2009 at 10:22 PM, Devendar Mallireddy<[email protected]> wrote:
> Hi
>
> I have a yahoo widget, I want to convert to Gadget, can some help me the 
> steps.
>
> Below is the code, it reads a web page & contents of the table are displayed.
>
> <?xml version="1.0" encoding="UTF-8"?>
> <widget version="1.0" minimumVersion="3.0">
>    <debug>off</debug>
> <!--
> Widget:
> by Devendar Reddy
> -->
>  <!-- BEGIN OF PREFERENCES ################################################ 
> -->
>
>  <preference name="userName">
>    <title>Unix Id:</title>
>    <type>text</type>
>    <description>Insert the Unix Id lower case</description>
>    <defaultvalue>dmalli</defaultvalue>
>    <group>sapSystem</group>
>  </preference>
>
> <preference name="prefTimer">
>        <title>Update interval in minutes:</title>
>        <type>text</type>
>        <defaultValue>30</defaultValue>
> </preference>
>
>  <!-- END OF PREFERENCES ################################################## 
> -->
>    <window name="mainWindow" width="385" height="160">
>        <textarea name="bkg" width="385" height="160" hOffset="0"
> vOffset="0">
>
>            <bgColor>#463E3F</bgColor>
>            <bgOpacity>255</bgOpacity>
>            <scrollbar>false</scrollbar>
>            <editable>false</editable>
>            <font>Verdana</font>
>            <size>12</size>
>        </textarea>
>
>
>          // <image src="Resources/base.png" width="1" height="1"
> name="imgSearchBg1">
>          // </image>
>
>
>
>
>          <image src="Resources/gene.png">
>                   <name>pleaseClick</name>
>                              <hOffset>312</hOffset>
>                                <vOffset>30</vOffset>
>                                    <visible>true</visible>
>                                    <onMouseDown>
>                        openURL(urlStr4);
>                        </onMouseDown>
>         </image>
>
>          <image src="Resources/signInButton.png">
>          <name>pleaseClick</name>
>                      <hOffset>312</hOffset>
>                        <vOffset>90</vOffset>
>                            <visible>true</visible>
>                            <onMouseDown>
>               openURL(urlStr4);
>                </onMouseDown>
>         </image>
>
>         <image src="Resources/Search Button 0.png" name="imgSearchBg">
>         <hOffset>100</hOffset>
>                        <vOffset>22</vOffset>
>                            <visible>true</visible>
>                            <onMouseDown>
>               openURL(urlStr2);
>                </onMouseDown>
>          </image>
>   </window>
>    <script>
>        function changeOpacity() {
>            this.opacity = (this.opacity/100)*90;
>        }
>    </script>
>    <action trigger="onLoad">
>    <![CDATA[
>         var theRows = [];   // an array of rows (of the table)
>         var itemOffsets = [2, 260];
>         var itemWidths  = [250, 50];
>         var ivalue2 = preferences.userName.value;
>         var urlStr2 =
> "http://gremedyprod.gene.com:9090/cgi-bin/ticket_search_support.cgi?ceo=";
>                + ivalue2 ;
>
>         var urlStr4 =
> "http://gremedyprod.com:9090/midtier/apps/default/gremedyprod/RemedySupport/start.jsp?cacheId=";
>                   + ivalue2 ;
> /*
>        var reIcon  = /src=\"(.*?)\"/gi;
>        var reLoc   = /<b>(.*?)<\/b>/gi;
>        var reCur   = /<small>(.*?)<\/small>/gi;
>        var reDesc  = /<font.*?>(.*?)<\/font>/gi;
>        var reList  = /<b.*>.*<\/b>/gi;
>        var reList2 = /<strong>(.*?)<\/strong>/gi;
>        var reList3 = /<small>(.*?)<\/small>/gi;
>        var reList4 = /<td>(.*)<\/td>/gi;
> */
>        updateInterval = Number(preferences.prefTimer.value);
>                    updateCounter = 0;
>        function fetchData(location)
>        {
>            var url = new URL();
>            url.location = location;
>            var data = url.fetch();
>            if (url.response != 200) { alert('fetch failed with code '
> + url.response); closeWidget(); }
>            return data;
>        }
>
>        function cleanData(data)
>        {
>            return data.replace(/\
> \;\,/gi,"").replace(/<p.*?>/gi,"").replace(/\r\n?|\n/g,"");
>        }
>
>        function esc(s) { return s.replace(/([\W])/g,"\\$1"); }
>
>        function makeReport(data)
>        {
>            var reTable = esc('<TABLE WIDTH="30%"') + '(.*?)' + 
> esc('</TABLE>');
>            var table = data.match(reTable);
>
>            if (!table) { alert('table is null'); closeWidget(); }
>            var reRows  = /<tr(.*?)>(.*?)<\/tr>/gi;
>            var report = table[0].match(reRows);
>
>            if (!report) { alert('report is null'); closeWidget(); }
>            return report;
>        }
>        function hide()
>           {
>            j = 0 ;
>           }
>        function makeRow1(i, hOffset, vOffset, items)    // items is
> an array of items
>        {
>            theRows[i] = [];    // array of items
>            var te1 = "gRemedy Summary : " + preferences.userName.value;
>            var row = theRows[i];
>                row[i] = new Text();
>                var item = row[i];
>                item.window = mainWindow;
>                item.data = te1;
>                item.data = item.data.replace(/<[^<>]+>/g,"");
>                item.vOffset = vOffset + 20*i + 16;
>                item.hOffset = 10 ;
>                item.height  = 20;
>                item.width = 360;
>                item.font = 'Arial Bold';
>                item.size = 16;
>                item.opacity = 255;
>                //item.color = "#000000";
>                item.color = "#FFCB2A";
>                //item.bgColor = "#FFCB2A";#585858
>                item.bgColor = "#463E3F";
>                item.bgOpacity = 255;
>
>
>        }
>
>        function makeRow2(i, hOffset, vOffset, items)    // items is
> an array of items
>        {
>            theRows[i] = [];    // array of items
>            var te1 = "" ;
>            var row = theRows[i];
>                row[i] = new Text();
>                var item = row[i];
>                item.window = mainWindow;
>                item.data = te1;
>                item.data = item.data.replace(/<[^<>]+>/g,"");
>                item.vOffset = vOffset + 20*i + 16;
>                item.hOffset = 10 ;
>                item.height  = 10;
>                item.width = 360;
>                item.font = 'Arial Bold';
>                item.size = 16;
>                item.opacity = 255;
>                //item.color = "#000000";
>                item.color = "#FFCB2A";
>                //item.bgColor = "#FFCB2A";#585858
>                item.bgColor = "#463E3F";
>                item.bgOpacity = 255;
>
>
>        }
>
>        function makeRow(i, hOffset, vOffset, items)    // items is an
> array of items
>        {
>            theRows[i] = [];    // array of items
>            var row = theRows[i];
>
>
>            for (var j = 0; j < items.length; j += 1)
>            {
>                row[i] = new Text();
>                var item = row[i];
>                item.window = mainWindow;
>                item.data = items[j];
>                item.data = item.data.replace(/<[^<>]+>/g,"");
>                item.vOffset = vOffset + 20*i + 10;
>                item.hOffset = hOffset + itemOffsets[j];
>                item.height  = 16;
>                item.width = itemWidths[j];
>                item.font = 'Arial Bold';
>                item.size = 12;
>                item.opacity = 255;
>                //item.color = "#000000";
>                item.color = "#DDDDDD";
>                //item.bgColor = "#313e5c";#FFFFFF
>                item.bgColor = "#463E3F";
>                item.bgOpacity = 255;
>            }
>        }
>
>        function displayReport(report)
>        {
>            var reCells = /<td.*?\>(.*?)<\/td>/gi;
>            //var reTable1 = esc('<TD><B>') + '(.*?)' + esc('</B></TD>');
>            //var table1 = data.match(reTable1);
>             //print (table1);
>              var k = 0;
>             makeRow1(k, 0, 0);
>             k += 1;
>             makeRow2(k, 0, 0);
>             k += 2;
>            for (var i= 0; i < report.length; i=i+1)
>            {
>
>
>                 var cells = report[i].match(reCells);
>
>                if (cells !== null)
>                {
>                    for (var j = 0; j < cells.length; j=j+1)
>                    {
>                        cells[j] =
> cells[j].replace(/<[^<>]+>/g,"").replace(/\s\s/g, "
> ").replace(/^\s*/g, '');
>                    }
>                    makeRow(k, 1, 1, cells);
>                    k += 1;
>                }
>            }
>        }
>  var ivalue = preferences.userName.value;
>  var urlStr = 
> "http://gremedyprod.com:9090/cgi-bin/ticket_search_support.cgi?ceo=";
>                + ivalue ;
>
>        var data = fetchData(urlStr);
>            data = cleanData(data);
>        var report = makeReport(data);
>
>        report.shift();
>
>        displayReport(report);
>
>    ]]>
>    </action>
>
>    /* this trigger updates once a minute and checks to see if the
> interval is right to update the page */
> <action trigger="onTimer" interval="60">
>        if(updateCounter++ == updateInterval) {
>              var ivalue1 = preferences.userName.value;
>              ivalue2 = preferences.userName.value;
>        var urlStr1 =
> "http://gremedyprod.com:9090/cgi-bin/ticket_search_support.cgi?ceo=";
>                + ivalue1 ;
>
>             var data = fetchData(urlStr1);
>       data = cleanData(data);
>        var report = makeReport(data);
>         report.shift();
>
>        displayReport(report);
>               print(updateCounter);
>            updateCounter = 0;
>
>
>                updateInterval = Number(preferences.prefTimer.value);
>
>
>        }
> </action>
>
> <action trigger="onPreferencesChanged" >
>        var ivalue3 = preferences.userName.value;
>        ivalue2 = ivalue3;
>        var urlStr3 =
> "http://gremedyprod.com:9090/cgi-bin/ticket_search_support.cgi?ceo=";
>                + ivalue3 ;
>        urlStr2 =
> "http://gremedyprod.com:9090/cgi-bin/ticket_search_support.cgi?ceo=";
>                + ivalue2 ;
>        urlStr4 =
> "http://gremedyprod.com:9090/midtier/apps/default/gremedyprod/RemedySupport/start.jsp?cacheId=";
>                   + ivalue2 ;
>        var data = fetchData(urlStr3);
>        data = cleanData(data);
>        var report = makeReport(data);
>          report.shift();
>          displayReport(report);
>
> </action>
>
> </widget>
>

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Google Desktop Developer Group" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/google-desktop-developer?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to