<?xml version="1.0" encoding="UTF-8" ?>
<Module>
  <ModulePrefs title="__UP_title__"
               category="tools"
               render_inline="optional"
               scrolling="false"
               author="Sophia B."
               directory_title="__MSG_todo__"
               author_email="sophia.feedback+todo@gmail.com"
               author_affiliation="Google Inc."
               author_location="Mountain View, CA"
               screenshot="/ig/modules/todo.png"
               singleton="false"
               thumbnail="/ig/modules/todo-thm.png"
               description="__MSG_description__">
  <Locale messages="todo_content/todo_en.xml"/>
  <Locale lang="ar" messages="todo_content/todo_ar.xml" language_direction="rtl"/>
  <Locale lang="bg" messages="todo_content/todo_bg.xml"/>
  <Locale lang="ca" messages="todo_content/todo_ca.xml"/>
  <Locale lang="da" messages="todo_content/todo_da.xml"/>
  <Locale lang="de" messages="todo_content/todo_de.xml"/>
  <Locale lang="el" messages="todo_content/todo_el.xml"/>
  <Locale lang="es" messages="todo_content/todo_es.xml"/>
  <Locale lang="et" messages="todo_content/todo_et.xml"/>
  <Locale lang="fi" messages="todo_content/todo_fi.xml"/>
  <Locale lang="fil" messages="todo_content/todo_tl.xml"/>
  <Locale lang="fr" messages="todo_content/todo_fr.xml"/>
  <Locale lang="hi" messages="todo_content/todo_hi.xml"/>
  <Locale lang="hr" messages="todo_content/todo_hr.xml"/>
  <Locale lang="hu" messages="todo_content/todo_hu.xml"/>
  <Locale lang="hy" messages="todo_content/todo_hy.xml"/>
  <Locale lang="id" messages="todo_content/todo_id.xml"/>
  <Locale lang="is" messages="todo_content/todo_is.xml"/>
  <Locale lang="it" messages="todo_content/todo_it.xml"/>
  <Locale lang="ja" messages="todo_content/todo_ja.xml"/>
  <Locale lang="ko" messages="todo_content/todo_ko.xml"/>
  <Locale lang="lt" messages="todo_content/todo_lt.xml"/>
  <Locale lang="lv" messages="todo_content/todo_lv.xml"/>
  <Locale lang="ms" messages="todo_content/todo_ms.xml"/>
  <Locale lang="nl" messages="todo_content/todo_nl.xml"/>
  <Locale lang="no" messages="todo_content/todo_no.xml"/>
  <Locale lang="pl" messages="todo_content/todo_pl.xml"/>
  <Locale lang="pt-BR" messages="todo_content/todo_pt-br.xml"/>
  <Locale lang="ro" messages="todo_content/todo_ro.xml"/>
  <Locale lang="ru" messages="todo_content/todo_ru.xml"/>
  <Locale lang="sk" messages="todo_content/todo_sk.xml"/>
  <Locale lang="sl" messages="todo_content/todo_sl.xml"/>
  <Locale lang="sr" messages="todo_content/todo_sr.xml"/>
  <Locale lang="sv" messages="todo_content/todo_sv.xml"/>
  <Locale lang="th" messages="todo_content/todo_th.xml"/>
  <Locale lang="tl" messages="todo_content/todo_tl.xml"/>
  <Locale lang="tr" messages="todo_content/todo_tr.xml"/>
  <Locale lang="uk" messages="todo_content/todo_uk.xml"/>
  <Locale lang="zh-CN" messages="todo_content/todo_zh-cn.xml"/>
  <Locale lang="zh-tw" messages="todo_content/todo_zh-tw.xml"/>
  <Require feature="setprefs" />
</ModulePrefs>
  <UserPref name="title" display_name="__MSG_title__" required="false" default_value="__MSG_todo__"/>
  <UserPref name="bgcolor" display_name="__MSG_background_color__" default_value="#e5ecf9" datatype="enum">
    <EnumValue display_value="__MSG_yellow__" value="#ffffcc"/>
    <EnumValue display_value="__MSG_blue__" value="#e5ecf9"/>
    <EnumValue display_value="__MSG_gray__" value="#efefef"/>
    <EnumValue display_value="__MSG_green__" value="#e0eee0"/>
    <EnumValue display_value="__MSG_pink__" value="#fff0f5"/>
    <EnumValue display_value="__MSG_orange__" value="#fff5ee"/>
  </UserPref>
  <UserPref name="todos" default_value="" datatype="hidden"/>
  <Content type="html" view="home,canvas">
    <![CDATA[
<script src="/ig/f/SEyhujSxXEM/modules/todo/todo_content/json_1.js"></script>
<script>var todos__MODULE_ID__,editedPrior__MODULE_ID__,editedName__MODULE_ID__,prefs__MODULE_ID__,evenRowColor__MODULE_ID__="#fff";_IG_RegisterOnloadHandler(function(){loadTodos__MODULE_ID__();window._IG_RegisterMaximizeHandler&&_IG_RegisterMaximizeHandler(__MODULE_ID__,loadTodos__MODULE_ID__)});
function loadTodos__MODULE_ID__(){prefs__MODULE_ID__=new _IG_Prefs(__MODULE_ID__);evenRowColor__MODULE_ID__=prefs__MODULE_ID__.getString("bgcolor").replace(/[^a-f0-9#]/g,"");var a=prefs__MODULE_ID__.getString("todos");todos__MODULE_ID__=a==""?{array:[]}:JSON.parse(a);editedName__MODULE_ID__=editedPrior__MODULE_ID__=-1;createTable__MODULE_ID__()}function saveTodos__MODULE_ID__(){prefs__MODULE_ID__.set("todos",JSON.stringify(todos__MODULE_ID__));_gel("newTodoInput__MODULE_ID__").focus()}
function addTodo__MODULE_ID__(a,c){resolvePendingEdits__MODULE_ID__();a=_trim(a);_gel("newTodoInput__MODULE_ID__").value="";if(!(a=="")){todos__MODULE_ID__.array[todos__MODULE_ID__.array.length]={name:a,priority:c};createTable__MODULE_ID__();saveTodos__MODULE_ID__();return false}}
function deleteTodo__MODULE_ID__(a){resolvePendingEdits__MODULE_ID__();var c=todos__MODULE_ID__.array.slice(0,a),b=todos__MODULE_ID__.array.slice(a+1,todos__MODULE_ID__.array.length);todos__MODULE_ID__.array=c.concat(b);createTable__MODULE_ID__();saveTodos__MODULE_ID__()}function swapTodos__MODULE_ID__(a,c){var b=todos__MODULE_ID__.array[a];todos__MODULE_ID__.array[a]=todos__MODULE_ID__.array[c];todos__MODULE_ID__.array[c]=b}
function sortByPriority__MODULE_ID__(a){for(var c=todos__MODULE_ID__.array[a],b=c.priority,d=a+1;d<todos__MODULE_ID__.array.length;d++){var e=todos__MODULE_ID__.array[d];if(e==null)break;var f=e.priority;if(f>=b)break;swapTodos__MODULE_ID__(d,d-1)}for(d=a-1;d>=0;d--){e=todos__MODULE_ID__.array[d];if(e==null)break;f=e.priority;if(f<=b)break;swapTodos__MODULE_ID__(d+1,d)}}
function setPriority__MODULE_ID__(a,c){var b=getRow__MODULE_ID__(a),d=b.childNodes.item(0);d.innerHTML=createPriorityLink__MODULE_ID__(c,a);todos__MODULE_ID__.array[a].priority=c;sortByPriority__MODULE_ID__(a);createTable__MODULE_ID__();saveTodos__MODULE_ID__()}function editPriority__MODULE_ID__(a,c){resolvePendingEdits__MODULE_ID__();editedPrior__MODULE_ID__=a;var b=getRow__MODULE_ID__(a),d=b.childNodes.item(0);d.innerHTML=createPrioritySelect__MODULE_ID__(a,c)}
function createTable__MODULE_ID__(){for(var a="<table cellspacing=0 id=todosTable__MODULE_ID__>",c=0;c<todos__MODULE_ID__.array.length;c++){if(todos__MODULE_ID__.array[c]==null)break;var b=todos__MODULE_ID__.array[c].priority,d=todos__MODULE_ID__.array[c].name;a=a+createRow__MODULE_ID__(c,b,d)}a=a+"</table>";_gel("todosDiv__MODULE_ID__").innerHTML=a}
function createRow__MODULE_ID__(a,c,b){var d='<tr id="row'+a+'__MODULE_ID__"'+(a%2!=0?" class=odd__MODULE_ID__ ":" style='background: "+evenRowColor__MODULE_ID__+"'")+"><td class=priority_td__MODULE_ID__>"+createPriorityLink__MODULE_ID__(c,a)+"</td><td class=name_td__MODULE_ID__>"+createName__MODULE_ID__(a,b)+"</td><td>"+createDelete__MODULE_ID__(a)+"</td></tr>";return d}
function escapeName__MODULE_ID__(a){a=a.replace(/&/g,"&#38;");a=a.replace(/</g,"&#60;");a=a.replace(/>/g,"&#62;");a=a.replace(/"/g,"&#34;");return a=a.replace(/'/g,"&#39;")}function createName__MODULE_ID__(a,c){var b='<a class=name_a__MODULE_ID__ href="javascript:editName__MODULE_ID__('+a+')">'+escapeName__MODULE_ID__(c)+"</a>";return b}
function createDelete__MODULE_ID__(a){var c='<a href="javascript:deleteTodo__MODULE_ID__('+a+')"><img class=delete__MODULE_ID__ src="http://www.google.com/ig/modules/todo_content/x.gif"></a>';return c}
function createPrioritySelect__MODULE_ID__(a,c){var b='<select id=select__MODULE_ID__ onchange="submitPriority__MODULE_ID__('+a+')"><option class=option__MODULE_ID__ value=1 onclick="submitPriority__MODULE_ID__('+a+')" '+(c==1?"selected=true":"")+'>__MSG_high__</option><option class=option__MODULE_ID__ value=2 onclick="submitPriority__MODULE_ID__('+a+')" '+(c==2?"selected=true":"")+'>__MSG_medium__</option><option class=option__MODULE_ID__ value=3 onclick="submitPriority__MODULE_ID__('+a+')" '+(c==
3?"selected=true":"")+">__MSG_low__</option></select>";return b}function createPriorityLink__MODULE_ID__(a,c){var b="<a class=p"+a+'___MODULE_ID__ href="javascript:editPriority__MODULE_ID__('+c+","+a+')">'+getPriorityText__MODULE_ID__(a)+"</a>";return b}function createEditNameForm__MODULE_ID__(a,c){var b='<input onkeypress="if (isEnter__MODULE_ID__(event)){setName__MODULE_ID__('+a+', event); return false;}" type=text id=name_input__MODULE_ID__ value="'+escapeName__MODULE_ID__(c)+'">';return b}
function getPriorityText__MODULE_ID__(a){if(a==1)return"__MSG_high__";else if(a==2)return"__MSG_medium__";return"__MSG_low__"}function submitPriority__MODULE_ID__(a){var c=getRow__MODULE_ID__(a),b=c.childNodes.item(0),d=_gel("select__MODULE_ID__"),e=d.options[d.selectedIndex].value;setPriority__MODULE_ID__(a,e);editedPrior__MODULE_ID__=-1}
function editName__MODULE_ID__(a){resolvePendingEdits__MODULE_ID__();editedName__MODULE_ID__=a;var c=getRow__MODULE_ID__(a),b=c.childNodes.item(1),d=todos__MODULE_ID__.array[a].name;b.innerHTML=createEditNameForm__MODULE_ID__(a,d);_gel("name_input__MODULE_ID__").focus();_gel("name_input__MODULE_ID__").select()}
function setName__MODULE_ID__(a){var c=_trim(_gel("name_input__MODULE_ID__").value);if(c=="")c=todos__MODULE_ID__.array[a].name;todos__MODULE_ID__.array[a].name=c;var b=getRow__MODULE_ID__(a),d=b.childNodes.item(1);d.innerHTML=createName__MODULE_ID__(a,c);saveTodos__MODULE_ID__();editedName__MODULE_ID__=-1;return false}
function resolvePendingEdits__MODULE_ID__(){editedPrior__MODULE_ID__!=-1&&submitPriority__MODULE_ID__(editedPrior__MODULE_ID__);editedName__MODULE_ID__!=-1&&setName__MODULE_ID__(editedName__MODULE_ID__)}function isEnter__MODULE_ID__(a){var c;if(a&&a.which){a=a;c=a.which}else{a=window.event;c=a.keyCode}if(c==13)return true;return false}function getRow__MODULE_ID__(a){return _gel("row"+a+"__MODULE_ID__")};</script>
<style>.delete__MODULE_ID__{border-style:none}.priority_td__MODULE_ID__{font-family:arial;padding-__BIDI_END_EDGE__:20px;font-size:12px}.p1___MODULE_ID__:link,.p1___MODULE_ID__:visited{color:red;text-decoration:none;font-size:12px}.p2___MODULE_ID__:link,.p2___MODULE_ID__:visited{color:#00f;text-decoration:none;font-size:12px}.p3___MODULE_ID__:link,.p3___MODULE_ID__:visited{color:#f0f;text-decoration:none;font-size:12px}.name_a__MODULE_ID__:link,.name_a__MODULE_ID__:visited{text-decoration:none;font-size:12px;color:#000}#name_input__MODULE_ID__,#newTodoInput__MODULE_ID__{width:100%;font-family:arial;padding:0}#new_todo_td__MODULE_ID__{font-size:12px}#input__MODULE_ID__{font-family:arial;padding:0}#todosTable__MODULE_ID__{margin:0;padding:0;width:100%;font-size:12px}.name_td__MODULE_ID__{width:100%}.option__MODULE_ID__{font-size:12px;padding:0;margin:0;font-family:arial}#select__MODULE_ID__{font-family:arial;width:52px;margin:0;padding:0}.odd__MODULE_ID__{background:#fff}</style>
<form name=newTodoForm__MODULE_ID__ onsubmit="return addTodo__MODULE_ID__(
                     document.newTodoForm__MODULE_ID__.
                     newTodoInput__MODULE_ID__.value, 3, false)">
<table cellspacing=0>
<tr>
<td id=new_todo_td__MODULE_ID__>
<nobr>__MSG_new_item__</nobr>
</td>
<td style=width:100%>
<input id=newTodoInput__MODULE_ID__ style=width:100%>
</td>
<td>
<input onclick="javascript:addTodo__MODULE_ID__(
                             document.newTodoForm__MODULE_ID__.
                             newTodoInput__MODULE_ID__.value, 3, false)" type=button value="__MSG_add__">
</td>
</table>
<div id=todosDiv__MODULE_ID__></div>
</form>
]]>
  </Content>
</Module>
