From d6c29a7415d80d6ee8d93e5a8d9eb968826349ed Mon Sep 17 00:00:00 2001 From: taggon Date: Fri, 26 Nov 2010 08:07:55 +0000 Subject: [PATCH] =?UTF-8?q?=EC=9E=90=EB=8F=99=EC=A0=80=EC=9E=A5=20?= =?UTF-8?q?=EB=A9=94=EC=8B=9C=EC=A7=80=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: http://xe-core.googlecode.com/svn/sandbox@7922 201d5d3c-b55e-5fd7-737f-ddc643e51545 --- modules/editor/skins/xeed/editor.html | 15 ++++++++---- modules/editor/skins/xeed/js/xeed.js | 33 +++++++++++++++++++++++++++ 2 files changed, 44 insertions(+), 4 deletions(-) diff --git a/modules/editor/skins/xeed/editor.html b/modules/editor/skins/xeed/editor.html index 43459695a..f73726126 100644 --- a/modules/editor/skins/xeed/editor.html +++ b/modules/editor/skins/xeed/editor.html @@ -385,9 +385,16 @@ diff --git a/modules/editor/skins/xeed/js/xeed.js b/modules/editor/skins/xeed/js/xeed.js index 3ff9d49b9..af54bb14c 100644 --- a/modules/editor/skins/xeed/js/xeed.js +++ b/modules/editor/skins/xeed/js/xeed.js @@ -2941,6 +2941,7 @@ Table = xe.createPlugin('Table', { */ AutoSave = xe.createPlugin('AutoSave', { _enable : false, + _timer : null, _start_time : null, _save_time : null, $bar : null, @@ -2966,9 +2967,41 @@ AutoSave = xe.createPlugin('AutoSave', { }, deactivate : function() { this.$bar.unbind(); + clearTimeout(this._timer); }, _save_callback : function(params) { + var self = this; + + this._save_time = (new Date).getTime(); + this.$bar.slideDown(300); + this._update_message(); + + this._timer = setInterval(function(){self._update_message()}, 5000); + }, + _update_message : function() { + var msg = lang.autosave_format, now = (new Date).getTime(), write_interval, save_interval, write_msg, save_msg; + + write_interval = Math.floor( (now - this._start_time)/1000/60 ); + save_interval = Math.floor( (now - this._save_time)/1000/60 ); + + if (write_interval < 60) { + write_msg = ((write_interval>1)?lang.autosave_mins:lang.autosave_min).replace('%d', write_interval); + } else { + write_interval = Math.floor(write_interval/60); + write_msg = ((write_interval>1)?lang.autosave_hours:lang.autosave_hour).replace('%d', write_interval); + } + + if (save_interval < 60) { + save_msg = ((save_interval>1)?lang.autosave_mins_ago:lang.autosave_min_ago).replace('%d', save_interval); + } else { + save_interval = Math.floor(write_interval/60); + save_msg = ((save_interval>1)?lang.autosave_hours_ago:lang.autosave_hour_ago).replace('%d', save_interval); + } + + msg = msg.replace('%s', write_msg).replace('%s', save_msg); + + this.$bar.find('>p').html(msg); }, API_EXEC_AUTOSAVE : function() { _editorAutoSave(true, this._save_callback);