diff --git a/src/lang/class.default.php b/src/lang/class.default.php index 323363b..3075332 100644 --- a/src/lang/class.default.php +++ b/src/lang/class.default.php @@ -41,6 +41,7 @@ class DefaultLang 'taskdate_inline_duedate' => "Due: %s", 'taskdate_created' => "Date of creation", 'taskdate_completed' => "Date of completion", + 'go_back' => "<< Back", 'edit_task' => "Edit Task", 'add_task' => "New Task", 'priority' => "Priority", diff --git a/src/lang/en.php b/src/lang/en.php index 4a1c86c..45da788 100644 --- a/src/lang/en.php +++ b/src/lang/en.php @@ -43,6 +43,7 @@ class Lang extends DefaultLang 'taskdate_inline_duedate' => "Due: %s", 'taskdate_created' => "Date of creation", 'taskdate_completed' => "Date of completion", + 'go_back' => "<< Back", 'edit_task' => "Edit Task", 'add_task' => "New Task", 'priority' => "Priority", diff --git a/src/mytinytodo.js b/src/mytinytodo.js index 0d29bf8..b77fda0 100644 --- a/src/mytinytodo.js +++ b/src/mytinytodo.js @@ -31,7 +31,6 @@ var tabLists = { }; var curList = 0; var tagsList = []; -var page = {cur:'', prev:''}; var mytinytodo = window.mytinytodo = _mtt = { @@ -81,6 +80,12 @@ var mytinytodo = window.mytinytodo = _mtt = { } }, + page: { + current: '', + currentClass: '', + prev: '', + prevClass: 0 + }, // procs init: function(options, lang) @@ -375,11 +380,12 @@ var mytinytodo = window.mytinytodo = _mtt = { // Settings $("#settings").click(showSettings); - $("#settings_cancel").live('click', closeSettings); $("#settings_form").live('submit', function() { saveSettings(this); return false; }); + + $(".mtt-back-button").live('click', function(){ _mtt.pageBack(); return false; } ); // tab menu @@ -502,6 +508,23 @@ var mytinytodo = window.mytinytodo = _mtt = { errorDenied: function() { flashError(this.lang.get('denied')); + }, + + pageSet: function(page, pageClass) + { + this.page.prev = this.page.current; + this.page.prevClass = this.page.currentClass; + this.page.current = page; + this.page.currentClass = pageClass; + }, + + pageBack: function() + { + if(this.page.current == '') return false; + var showId = (this.page.prev == '') ? 'tasks' : this.page.prev; + showhide($('#page_'+ showId), $('#page_'+ this.page.current).removeClass('mtt-page-'+this.page.currentClass)); + this.page.current = this.page.prev; + this.page.currentClass = this.page.prevClass; } }; @@ -1812,7 +1835,7 @@ function updateAccessStatus() addsearchToggle(0); } $('#page_ajax').hide(); - page.cur = ''; + _mtt.page.current = ''; } function showAuth(el) @@ -1867,24 +1890,14 @@ function logout() function showSettings() { - if(page.cur == 'settings') return false; + if(_mtt.page.current == 'settings') return false; $('#page_ajax').load(_mtt.mttUrl+'settings.php?ajax=yes',null,function(){ showhide($('#page_ajax').addClass('mtt-page-settings'), $('#page_tasks')); - page.prev = page.cur; - page.cur = 'settings'; + _mtt.pageSet('ajax','settings'); }) return false; } -function closeSettings() -{ - showhide($('#page_tasks'), $('#page_ajax').removeClass('mtt-page-settings')); - page.prev = page.cur; - page.cur = ''; -// $("#msg").hide(); - return false; -} - function saveSettings(frm) { if(!frm) return false; diff --git a/src/settings.php b/src/settings.php index b96a6df..7a60c1e 100644 --- a/src/settings.php +++ b/src/settings.php @@ -74,6 +74,8 @@ function selectOptions($a, $value, $default=null) ?> +
+

@@ -180,7 +182,7 @@ function selectOptions($a, $value, $default=null) - + diff --git a/src/themes/default/style.css b/src/themes/default/style.css index 3ab90cb..adfd033 100644 --- a/src/themes/default/style.css +++ b/src/themes/default/style.css @@ -219,6 +219,8 @@ li.task-completed .task-note-block .task-note { text-decoration:line-through; } #page_taskedit.mtt-inedit .mtt-inadd { display:none; } #taskedit-date { font-size:10pt; font-weight:normal; text-align:right; float:right; color:#777; } +a.mtt-back-button { font-size:8pt; } + /* autocomplete */ .ac_results { padding:0px; border:1px solid #cccccc; background-color:#f9f9f9; overflow:hidden; z-index:99999; -moz-box-shadow:1px 2px 5px rgba(0,0,0,0.5); -webkit-box-shadow:1px 2px 5px rgba(0,0,0,0.5); } .ac_results ul { width: 100%; list-style-position: outside; list-style: none; padding: 0; margin: 0; }