1(function ($) { 2 'use strict'; 3 4 $.widget( "ui.remark_widget", { 5 _init: function() { 6 this.init(); 7 }, 8 9 init: function() { 10 11 var me = this, 12 widgetElement = $(me.element); 13 14 me.widgetElement = widgetElement; 15 16 widgetElement.on('click', '.remark-cancel', function() { 17 var editing = me.widgetElement.data('editing'); 18 $.proxy(me.switchToView(), me); 19 return false; 20 }); 21 22 widgetElement.on('click', '.remark-edit', function() { 23 var editing = me.widgetElement.data('editing'); 24 $.proxy(me.switchToEdit(), me); 25 return false; 26 }); 27 28 widgetElement.on('click', '.remark-save', function() { 29 $.proxy(me.save(), me); 30 return false; 31 }); 32 33 widgetElement.on('click', '.remark-delete', function() { 34 var remark_id = me.widgetElement.data('remarkid'); 35 36 $.proxy(me.delete(remark_id), me); 37 return false; 38 }); 39 40 widgetElement.on('click', '.depiction-delete', function() { 41 var depiction_id = $(this).data('id'); 42 43 $.proxy(me.delete(depiction_id), me); 44 45 return false; 46 }); 47 48 }, 49 50 switchToEdit: function() { 51 52 var me = this, 53 remark_id = me.widgetElement.data('remarkid'), 54 id = me.widgetElement.data('id'), 55 unique = me.widgetElement.data('unique'); 56 57 me.widgetElement.data('editing', 1); 58 59 z_event('render_remark_'+unique, {'editing':1, 'remark_id': remark_id, 'id': id}); 60 61 return false; 62 63 }, 64 65 switchToView: function() { 66 67 var me = this, 68 remark_id = me.widgetElement.data('remarkid'), 69 id = me.widgetElement.data('id'), 70 unique = me.widgetElement.data('unique'); 71 72 me.widgetElement.data('editing', '0'); 73 74 z_event('render_remark_' + unique, {'editing':0, 'remark_id': remark_id, 'id': id }); 75 76 return false; 77 78 }, 79 80 setValues: function(remark_id) { 81 82 var me = this; 83 84 if (remark_id) { 85 me.widgetElement.data('remarkid', remark_id); 86 } 87 88 }, 89 90 save: function() { 91 92 var me = this, 93 form = me.widgetElement.find('#rscform'), 94 tinyname = form.data('tinyname'), 95 contentText = tinymce.get(tinyname).getContent({'format':'text'}).trim(), 96 anonymousName = $('#anonymous_name'), 97 anonymousEmail = $('#anonymous_email'), 98 title = $('input#title'), 99 valid = true, 100 re = /[a-z A-Z 0-1]+/i, 101 em = /^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/; 102 103 var rawContent = tinymce.get(tinyname).getContent({'format':'raw'}); 104 105 rawContent = rawContent.replace(/<img([^>])*>/gi, 'img').trim(); 106 rawContent = $(rawContent).text(); 107 108 form.find('.has-error').each(function() { 109 $(this).removeClass('has-error is-error'); 110 }); 111 112 113 if (!rawContent || rawContent == "") { 114 $('.mce-tinymce').parent().addClass('has-error is-error'); 115 valid = false; 116 } 117 118 if (!re.test(title.val())) { 119 title.parent().addClass('has-error is-error'); 120 valid = false; 121 } 122 123 if (anonymousName.length > 0) { 124 if (!re.test(anonymousName.val())) { 125 anonymousName.parent().addClass('has-error is-error'); 126 valid = false; 127 } 128 129 if (!em.test(anonymousEmail.val())) { 130 anonymousEmail.parent().addClass('has-error is-error'); 131 valid = false;
132 } 133 } 134 if (valid) { 135 $('.remark-save').hide(); 136 $('.remark-cancel').hide(); 137 $(form).submit(); 138 return false; 139 } 140 141 142 return false; 143 }, 144 145 afterSave: function() { 146 147 var me = this; 148 me.switchToView(); 149 }, 150 151 delete: function(id) { 152 153 var me = this; 154 155 z_event('rsc_delete_' + id); 156 }, 157 158 afterDelete: function() { 159 160 var me = this; 161 162 delete z_registered_events['rsc_delete_' + me.widgetElement.data('remarkid')]; 163 delete z_registered_events['render_remark_' + me.widgetElement.data('unique')]; 164 165 if (me.widgetElement) me.widgetElement.remove(); 166 167 }, 168 169 afterDepictionDelete: function() { 170 171 var me = this; 172 173 me.switchToView(); 174 175 } 176 177 }); 178})(jQuery); 179(function ($) { 180 'use strict'; 181 182 $.widget( "ui.remarks_widget", { 183 _init: function() { 184 this.init(); 185 }, 186 187 init: function() { 188 189 var me = this, 190 widgetElement = $(me.element), 191 showForm = widgetElement.data('show_form'); 192 193 widgetElement.on('click', '.remark-new', function() { 194 z_event('new_remark'); 195 return false; 196 }); 197 198 $(document).on('remark:editing', function(event, remark_id) { 199 $('.remark-edit').hide(); 200 $('.remark-delete').hide(); 201 $('.remark-new').hide(); 202 }); 203 204 205 $(document).on('remark:viewing', function(event, remark_id) { 206 $('.remark-edit').show(); 207 $('.remark-delete').show(); 208 $('.remark-new').show(); 209 }); 210 211 $(document).on('remark:new', function(e, remark_id) { 212 var el = $('#remark_' + remark_id).closest('.do_remark_widget'), 213 widget = el.data('ui-remark_widget'); 214 215 widget.setValues(remark_id); 216 }); 217 218 $(document).on('remark:deleted', function(e, remark_id) { 219 var widget = me.getWidget(remark_id); 220 221 widget.afterDelete(); 222 }); 223 224 $(document).on('depiction:deleted', function(e, depiction_id, remark_id) { 225 var widget = me.getWidget(remark_id); 226 227 widget.afterDepictionDelete(depiction_id); 228 }); 229 230 $(document).on('remark:saved', function(e, remark_id) { 231 var widget = me.getWidget(remark_id); 232 233 widget.afterSave(); 234 if(showForm === true){ 235 z_event('new_remark'); 236 } 237 238 }); 239 240 }, 241 242 getWidget: function(remark_id) { 243 244 var els = $("[data-remarkid]"), 245 foundEl, 246 ref; 247 248 $.each(els, function(i, el) { 249 250 var $el = $(el); 251 var dataid = $el.data('remarkid'); 252 253 if (dataid == remark_id) { 254 foundEl = $el; 255 } 256 257 }); 258 259 if (foundEl) { 260 ref = foundEl.data('ui-remark_widget'); 261 } 262 263 return ref; 264 } 265 266 267 }); 268})(jQuery);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.