diff options
| author | hukl <contact@smyck.org> | 2009-05-08 16:30:24 +0200 |
|---|---|---|
| committer | hukl <contact@smyck.org> | 2009-05-08 16:30:24 +0200 |
| commit | 45e067f1108748067b727a53e7826cebbb429792 (patch) | |
| tree | 5662a337edd8e0e0ad8384cc5f3a44e7d3f06312 /public/javascripts/admin_interface.js | |
| parent | 21cc40557f7b8d72f468b72c50104fc4f11438e8 (diff) | |
comparing content instead of string length to track changes
Diffstat (limited to 'public/javascripts/admin_interface.js')
| -rw-r--r-- | public/javascripts/admin_interface.js | 32 |
1 files changed, 15 insertions, 17 deletions
diff --git a/public/javascripts/admin_interface.js b/public/javascripts/admin_interface.js index a1d78c7..0085bc2 100644 --- a/public/javascripts/admin_interface.js +++ b/public/javascripts/admin_interface.js | |||
| @@ -23,37 +23,35 @@ cccms = { | |||
| 23 | setup_autosave : function() { | 23 | setup_autosave : function() { |
| 24 | 24 | ||
| 25 | var elements = { | 25 | var elements = { |
| 26 | "title" : $('#page_title'), | 26 | title : $('#page_title'), |
| 27 | "abstract" : $('#page_abstract'), | 27 | abstract : $('#page_abstract'), |
| 28 | "body" : $('#page_body_ifr').contents().find('#tinymce'), | 28 | body : $('#page_body_ifr').contents().find('#tinymce'), |
| 29 | } | 29 | } |
| 30 | 30 | ||
| 31 | |||
| 32 | var page = { | 31 | var page = { |
| 33 | "cached_title_length" : elements.title.val().length, | 32 | cached_title : elements.title.val(), |
| 34 | "cached_abstract_length" : elements.abstract.val().length, | 33 | cached_abstract : elements.abstract.val(), |
| 35 | "cached_body_length" : elements.body.html().length, | 34 | cached_body : elements.body.html(), |
| 36 | 35 | ||
| 37 | "title_has_changed" : function() { | 36 | title_has_changed : function() { |
| 38 | return (elements.title.val().length != this.cached_title_length) | 37 | return (elements.title.val() != this.cached_title) |
| 39 | }, | 38 | }, |
| 40 | 39 | ||
| 41 | "abstract_has_changed" : function() { | 40 | abstract_has_changed : function() { |
| 42 | return (elements.abstract.val().length != this.cached_abstract_length) | 41 | return (elements.abstract.val() != this.cached_abstract) |
| 43 | }, | 42 | }, |
| 44 | 43 | ||
| 45 | "body_has_changed" : function() { | 44 | body_has_changed : function() { |
| 46 | return elements.body.html().length != this.cached_body_length | 45 | return elements.body.html() != this.cached_body |
| 47 | } | 46 | } |
| 48 | } | 47 | } |
| 49 | 48 | ||
| 50 | |||
| 51 | jQuery.fn.submitWithAjax = function(options) { | 49 | jQuery.fn.submitWithAjax = function(options) { |
| 52 | if (page.title_has_changed() || page.abstract_has_changed() || page.body_has_changed()) { | 50 | if (page.title_has_changed() || page.abstract_has_changed() || page.body_has_changed()) { |
| 53 | 51 | ||
| 54 | page.cached_title_length = elements.title.val().length; | 52 | page.cached_title = elements.title.val(); |
| 55 | page.cached_abstract_length = elements.abstract.val().length; | 53 | page.cached_abstract = elements.abstract.val(); |
| 56 | page.cached_body_length = elements.body.html().length; | 54 | page.cached_body = elements.body.html(); |
| 57 | 55 | ||
| 58 | $("#flash").append("<img src='/images/ajax-loader.gif' alt='' />"); | 56 | $("#flash").append("<img src='/images/ajax-loader.gif' alt='' />"); |
| 59 | $.post(this.attr("action"), $(this).serialize(), null, "script"); | 57 | $.post(this.attr("action"), $(this).serialize(), null, "script"); |
