<?xml version="1.0" encoding="UTF-8" ?>
<Module>
  <ModulePrefs 
      title="openmikes.org - __UP_state__ updates" 
      directory_title="openmikes.org - latest updates and additions"
      title_url="http://openmikes.org/" 
      author="Paul Roub" 
      render_inline="required"
      author_affiliation="openmikes.org"
      screenshot="http://openmikes.org/gadgets/omgadgetshot.png"
      thumbnail="http://openmikes.org/gadgets/omgadgetthumb.png"
      author_email="paul@roub.net"> 

      <Locale lang="en" country="us" />
  </ModulePrefs>

  <UserPref name="max" display_name="Maximum Nights to List" default_value="5" datatype="string" />

  <UserPref name="state" display_name="State" default_value="" datatype="enum" >
        <EnumValue value="" display_value="(all)" />
        <EnumValue value="AL" display_value="Alabama" />
        <EnumValue value="AK" display_value="Alaska" />
        <EnumValue value="AZ" display_value="Arizona" />
        <EnumValue value="AR" display_value="Arkansas" />
        <EnumValue value="BC" display_value="British Columbia" />
        <EnumValue value="CA" display_value="California" />
        <EnumValue value="CO" display_value="Colorado" />
        <EnumValue value="CT" display_value="Connecticut" />
        <EnumValue value="DE" display_value="Delaware" />
        <EnumValue value="DC" display_value="District Of Columbia" />
        <EnumValue value="FL" display_value="Florida" />
        <EnumValue value="GA" display_value="Georgia" />
        <EnumValue value="HI" display_value="Hawaii" />
        <EnumValue value="ID" display_value="Idaho" />
        <EnumValue value="IL" display_value="Illinois" />
        <EnumValue value="IN" display_value="Indiana" />
        <EnumValue value="IA" display_value="Iowa" />
        <EnumValue value="KS" display_value="Kansas" />
        <EnumValue value="KY" display_value="Kentucky" />
        <EnumValue value="LA" display_value="Louisiana" />
        <EnumValue value="ME" display_value="Maine" />
        <EnumValue value="MD" display_value="Maryland" />
        <EnumValue value="MA" display_value="Massachusetts" />
        <EnumValue value="MI" display_value="Michigan" />
        <EnumValue value="MN" display_value="Minnesota" />
        <EnumValue value="MS" display_value="Mississippi" />
        <EnumValue value="MO" display_value="Missouri" />
        <EnumValue value="MT" display_value="Montana" />
        <EnumValue value="NE" display_value="Nebraska" />
        <EnumValue value="NV" display_value="Nevada" />
        <EnumValue value="NH" display_value="New Hampshire" />
        <EnumValue value="NJ" display_value="New Jersey" />
        <EnumValue value="NM" display_value="New Mexico" />
        <EnumValue value="NSW" display_value="New South Wales" />
        <EnumValue value="NY" display_value="New York" />
        <EnumValue value="NC" display_value="North Carolina" />
        <EnumValue value="ND" display_value="North Dakota" />
        <EnumValue value="OH" display_value="Ohio" />
        <EnumValue value="OK" display_value="Oklahoma" />
        <EnumValue value="ON" display_value="Ontario" />
        <EnumValue value="OR" display_value="Oregon" />
        <EnumValue value="PA" display_value="Pennsylvania" />
        <EnumValue value="RI" display_value="Rhode Island" />
        <EnumValue value="SC" display_value="South Carolina" />
        <EnumValue value="SD" display_value="South Dakota" />
        <EnumValue value="TN" display_value="Tennessee" />
        <EnumValue value="TX" display_value="Texas" />
        <EnumValue value="UT" display_value="Utah" />
        <EnumValue value="VT" display_value="Vermont" />
        <EnumValue value="VA" display_value="Virginia" />
        <EnumValue value="WA" display_value="Washington" />
        <EnumValue value="WV" display_value="West Virginia" />
        <EnumValue value="WI" display_value="Wisconsin" />
        <EnumValue value="WY" display_value="Wyoming" />

  </UserPref>

  <Content type="html">
    <![CDATA[

      <style type="text/css">
        div#content__MODULE_ID__ {
            font-size: 82%;
            font-family: arial,sans-serif;
        }

        div#content__MODULE_ID__  ul {
            margin-left: 0px;
            padding-left: 0px;
        }
        
        div#content__MODULE_ID__  li {
            margin-left: 0px;
            margin-bottom: 5px;
        }
      
        div#content__MODULE_ID__ a {
            font-weight: normal;
        }
      </style>
    
     <div id="content__MODULE_ID__"></div>
<script> 
    function omOrgUpdates__MODULE_ID__() { 
    // XML breakfast menu data
    var url = "http://openmikes.org/atom/"; 
    var prefs = new _IG_Prefs(__MODULE_ID__);
    var state = prefs.getString("state");

    if (state != "")
    {
        url += "?liststate=" + state;
    }

    var maxi = prefs.getInt("max");

    if (maxi <= 0)
    {
        maxi = 5;
    }
    
    
    // Calorie limit set by user
//    var calorieLimit = prefs.getString("mycalories");
    // Indicates whether to show descriptions in the breakfast menu    
    //var description = prefs.getBool("mychoice");
 
    _IG_FetchXmlContent(url, function (response) {
           if (response == null || typeof(response) != "object" || 
                      response.firstChild == null) {
              _gel("content__MODULE_ID__").innerHTML = "<i>Invalid data.</i>";
              return;
           }
           var html = "<ul>"

           var itemList = response.getElementsByTagName("entry");
            var mnodes = Math.min(itemList.length, maxi);
 
           for (var i = 0; i < mnodes ; i++) { 
             var nodeList = itemList.item(i).childNodes;
             var data = "";
             var link = "";

             // Loop through child nodes. Extract data from the text nodes that are
             // the children of the associated name, price, and calories element nodes.
             for (var j = 0; j < nodeList.length ; j++) {
                var node = nodeList.item(j);
                if (node.nodeName == "title") {
                   var name = node.firstChild.nodeValue;
                }
                if (node.nodeName == "summary")
                {
                    data = node.firstChild.data;
                }
                if (node.nodeName == "link")
                {
                    link = node.attributes["href"].value;
                }
             } 
             // Append extracted data to the HTML string.
             html += "<li><a href='" + link + "'>" + name + "</a><br />";
             // If user has chosen to display descriptions
                html += "<i>" + data + "</i></li>";
         } 
         // Close up div
         html += "</ul>";

        // Display HTML string in <div>
        _gel('content__MODULE_ID__').innerHTML = html; 
    }); 
 }
 _IG_RegisterOnloadHandler(omOrgUpdates__MODULE_ID__);
 </script>
     ]]>
  </Content> 
</Module>
