1 var local = localStorage;
\r
2 var session = sessionStorage;
\r
3 var array = new Array();
\r
5 $(document).ready(function() {
\r
7 // Get information storage
\r
11 $("#register").on("click", function() {
\r
12 var filter=/\d{4}-\d{2}-\d{2}/;
\r
13 if ($("#txtTask").val() == "") {
\r
14 alert("Please enter the task.");
\r
15 } else if (filter.test($("#datePiker").val())==false) {
\r
16 alert("Please use the Date Picker.")
\r
18 if (confirm("Are you sure you want to store the task?")) {
\r
19 var key = getKeyToDate($("#datePiker").val());
\r
20 var taskText = $("#txtTask").val();
\r
21 var plainStr = htmlTagToPlain(taskText);
\r
24 // Store localStorage data
\r
25 local.setItem(key, plainStr);
\r
27 if (e.code === 22) {
\r
28 alert("Not enough memory.");
\r
37 $("#delete").on("click", function() {
\r
38 $(":checkbox[name='storageCheck']:checked").each(function(i, v) {
\r
39 // The completed Task is deleted from localStorage.
\r
40 local.removeItem(v.value);
\r
41 session.removeItem(v.value);
\r
46 // disable keyboard for date input field
\r
47 $("#datePiker").on("keypress", function(e) {
\r
51 //add eventListener for tizenhwkey
\r
52 window.addEventListener('tizenhwkey', function(e) {
\r
53 if(e.keyName == "back")
\r
54 window.setTimeout(exitCurrentApplication, 1000)
\r
59 * Exit current application
\r
61 function exitCurrentApplication() {
\r
62 tizen.application.getCurrentApplication().exit();
\r
66 * Change htmlTag to plaintext
\r
68 function htmlTagToPlain(str){
\r
69 var plainFilter1 = /[&]/gi;
\r
70 var plainFilter2 = /[<]/gi;
\r
71 var plainFilter3 = /[>]/gi;
\r
73 var tempStr1 = str.replace(plainFilter1, "&");
\r
74 var tempStr2 = tempStr1.replace(plainFilter2, "<");
\r
75 return tempStr2.replace(plainFilter3, ">");
\r
79 * Call Task data stored in Storage
\r
81 function getHtmlToStorage(index) {
\r
86 + local.getItem(array[index])
\r
87 + "<input type='checkbox' id='"
\r
91 + "' name='storageCheck' onclick='taskComplete(this.value)' /></li>";
\r
95 * Get information storage
\r
97 function getStorage() {
\r
99 var $todayHtml = $("#todayList");
\r
100 var $beforeHtml = $("#beforeList");
\r
101 var $afterHtml = $("#afterList");
\r
102 var $datePiker = $("#datePiker");
\r
103 var $pDate = $("#pDate");
\r
105 var today = new Date();
\r
106 var year = today.getFullYear();
\r
107 var month = (today.getMonth() + 1) > 9 ? "" + (today.getMonth() + 1) : "0"
\r
108 + (today.getMonth() + 1);
\r
109 var date = today.getDate() > 9 ? "" + today.getDate() : "0"
\r
111 var currentDate = year + month + date;
\r
113 array = new Array();
\r
115 $datePiker.val(year + "-" + month + "-" + date);
\r
116 $pDate[0].innerHTML = "";
\r
117 $todayHtml[0].innerHTML = "";
\r
118 $beforeHtml[0].innerHTML = "";
\r
119 $afterHtml[0].innerHTML = "";
\r
120 $pDate.append("Today (" + year + "." + month + "." + date + ")");
\r
123 for (var i = 0; i < local.length; i++) {
\r
124 var taskTime = local.key(i);
\r
125 array.push(taskTime);
\r
127 array.sort(function(a, b) { return b - a; });
\r
129 // Call Task data stored in localStorage
\r
130 for ( var i = 0; i < array.length; i++) {
\r
132 // Import localStorage key to compared with the current date
\r
133 taskDate = array[i].substring(0, 8);
\r
136 if (currentDate == taskDate) {
\r
137 $todayHtml.append(getHtmlToStorage(i));
\r
139 } else if (currentDate > taskDate) {
\r
140 $beforeHtml.append(getHtmlToStorage(i));
\r
143 $afterHtml.append(getHtmlToStorage(i));
\r
146 for ( var j = 0; j < session.length; j++) {
\r
147 if (array[i] == session.key(j)) {
\r
148 // Shows Task Completed data until the browser (App) is re-executed
\r
149 $("#list_" + session.key(j)).addClass("del");
\r
150 $("#" + session.key(j)).attr("checked", true);
\r
155 $todayHtml[0].innerHTML == "" ? $("#divToday").hide() : "";
\r
156 $beforeHtml[0].innerHTML == "" ? $("#divPrevious").hide() : "";
\r
157 $afterHtml[0].innerHTML == "" ? $("#divAfter").hide() : "";
\r
159 if (local.length == 0 && session.length == 0)
\r
160 $("#divList").hide();
\r
164 * task complete stored in sessionStorage
\r
166 function taskComplete(key) {
\r
168 if ($("#" + key).is(":checked")) {
\r
170 // For completed Task, Strikeout is indicated
\r
171 $("#list_" + key).addClass("del");
\r
173 // task Complete stored in sessionStorage
\r
174 session.setItem(key, local.getItem(key));
\r
176 $("#list_" + key).removeClass("del");
\r
177 session.removeItem(key);
\r
182 * Create key by using the storage date
\r
184 function getKeyToDate(date) {
\r
186 var time = new Date();
\r
190 if (time.getHours() < 10)
\r
191 hourFormat = "0" + time.getHours();
\r
193 hourFormat = time.getHours();
\r
194 if (time.getMinutes() < 10)
\r
195 minuteFormat = "0" + time.getMinutes();
\r
197 minuteFormat = time.getMinutes();
\r
198 if (time.getSeconds() < 10)
\r
199 secondFormat = "0" + time.getSeconds();
\r
201 secondFormat = time.getSeconds();
\r
202 return (date.replace(/\-/g, "") + hourFormat + minuteFormat + secondFormat).replace(/\./g, "");
\r