1/* 2 * functions to work with images 3 */ 4 5/** 6 * @type Array images that have been removed from medium and must be removed on server 7 */ 8var imagesToDelete = []; 9 10function editImageForm(id, ev) { 11 ev.preventDefault(); 12 var params = {'id': id}; 13 $.get(ajaxGetImageFormControllerURL, params, function (data) { 14 // shows popup 15 fadminPopup.showHTML(data); 16 17 $('#fadmin-gs-add-image-form__btn').click(function (e) { 18 e.preventDefault(); 19 20 var url = ajaxSaveImageControllerURL; 21 var form = $('#web-image-form'); 22 var serialized = serializeFormToObject(form); 23 $.post(url, {'imageFormData': serialized, 'id': id}, 24 function (response, status, xhr) { 25 var type = xhr.getResponseHeader("content-type") || ""; 26 var dataType = ""; 27 if (type.indexOf('html') > -1) { 28 dataType = 'html'; 29 } else if (type.indexOf('json') > -1) { 30 dataType = 'json'; 31 } 32 33 if (dataType == 'html') { 34 var $elem = $('div[data-web-image-id=' + id + ']'); 35 $elem.before($(response)); 36 $elem.remove(); 37 fadminPopup.hide(); 38 fadmin_editableContentChaged(); 39 } else if (dataType == 'json') { 40 41 var error = response.error; 42 // TODO: nahradit alert necim lepsim 43 //console.log(error); 44 45 alert("Nastala chyba " + serializeError(error)); 46 } 47 }); 48 //*/ 49 }); 50 }); 51} 52 53function packImages() { 54 $('div[data-web-image-id]').empty(); 55 56 var url = ajaxDeleteImageControllerURL; 57 var data = {}; 58 $.post( 59 url, 60 {'ids': imagesToDelete}, 61 function (response) { 62 63 }, 64 'json' 65 ); 66} 67 68function reloadImages(editable) { 69 if (typeof editable == "undefined" || editable === null) { 70 editable = false; 71 } 72 $('div[data-web-image-id]').each( 73 function (index, elem) { 74 var $elem = $(elem); 75 var url = ajaxReloadImageControllerURL; 76 if ($elem.hasClass('wide')) { 77 var position = 'wide'; 78 } else if ($elem.hasClass('left')) { 79 var position = 'left'; 80 } else if ($elem.hasClass('right')) { 81 var position = 'right'; 82 } else if ($elem.hasClass('center')) { 83 var position = 'center'; 84 } else { 85 var position = ''; 86 } 87 var data = {'id': $elem.attr("data-web-image-id"), 'editable': Number(editable)}; 88 $.get(url, {'image': data}, 89 function (response, status, xhr) { 90 var type = xhr.getResponseHeader("content-type") || ""; 91 var dataType = ""; 92 if (type.indexOf('html') > -1) { 93 dataType = 'html'; 94 } 95 if (type.indexOf('json') > -1) { 96 dataType = 'json'; 97 } 98 //HTML - tile 99 if (dataType == 'html') { 100 $response = $(response); 101 $response.removeClass('center').removeClass('left').removeClass('right').removeClass('wide'); 102 $response.addClass(position); 103 $elem.before($response); 104 $elem.remove(); 105 //json error 106 } else if (dataType == 'json') { 107 /*if(response.status == 'error' && response.data.display) { 108 $elem.add('<button onclick="removeTile(this)"> Remove Tile</button>' + "\n " + response.data.text); 109 }*/ 110 //TODO 111 } 112 113 }); 114 }); 115} 116 117function reloadImageIcos(editable) { 118 if (typeof editable == "undefined" || editable === null) { 119 editable = false;
120 } 121 $('div[data-web-image-ico-id]').each( 122 function (index, elem) { 123 var $elem = $(elem); 124 var url = ajaxReloadImageIcoControllerURL; 125 var data = {'id': $elem.attr("data-web-image-ico-id"), 'editable': Number(editable)}; 126 $.get(url, {'image': data}, 127 function (response, status, xhr) { 128 var type = xhr.getResponseHeader("content-type") || ""; 129 var dataType = ""; 130 if (type.indexOf('html') > -1) { 131 dataType = 'html'; 132 } 133 if (type.indexOf('json') > -1) { 134 dataType = 'json'; 135 } 136 //HTML - tile 137 if (dataType == 'html') { 138 $elem.before(response); 139 $elem.remove(); 140 //json error 141 } else if (dataType == 'json') { 142 /*if(response.status == 'error' && response.data.display) { 143 $elem.add('<button onclick="removeTile(this)"> Remove Tile</button>' + "\n " + response.data.text); 144 }*/ 145 //TODO 146 } 147 148 }); 149 }); 150} 151 152function removeImage(element) { 153 var el = $(element).closest('div[data-web-image-id]'); 154 imagesToDelete.push(el.attr('data-web-image-id')); 155 el.remove(); 156 fadmin_editableContentChaged(); 157} 158 159/*** 160 * Gallery 161 ***/ 162function reloadGalleryImages(editable) { 163 164 if (typeof editable == "undefined" || editable === null) { 165 editable = false; 166 } 167 168 $('div[data-web-gallery-image-id]').each( 169 function (index, elem) { 170 var $elem = $(elem); 171 var url = ajaxReloadGalleryImageControllerURL; 172 if ($elem.hasClass('wide')) { 173 var position = 'wide'; 174 } else if ($elem.hasClass('left')) { 175 var position = 'left'; 176 } else if ($elem.hasClass('right')) { 177 var position = 'right'; 178 } else if ($elem.hasClass('center')) { 179 var position = 'center'; 180 } else { 181 var position = ''; 182 } 183 184 var data = {'imageId': $elem.data("webGalleryImageId"), 'galleryId': $elem.data("webGalleryId"), 'editable': Number(editable)}; 185 186 $.post(url, {'image': data}, 187 function (response, status, xhr) { 188 var type = xhr.getResponseHeader("content-type") || ""; 189 var dataType = ""; 190 if (type.indexOf('html') > -1) { 191 dataType = 'html'; 192 } 193 if (type.indexOf('json') > -1) { 194 dataType = 'json'; 195 } 196 //HTML - tile 197 if (dataType == 'html') { 198 $response = $(response); 199 $response.removeClass('center').removeClass('left').removeClass('right').removeClass('wide'); 200 $response.addClass(position); 201 $elem.before($response); 202 $elem.remove(); 203 //json error 204 } else if (dataType == 'json') { 205 /*if(response.status == 'error' && response.data.display) { 206 $elem.add('<button onclick="removeTile(this)"> Remove Tile</button>' + "\n " + response.data.text); 207 }*/ 208 //TODO 209 } 210 211 }); 212 }); 213} 214 215function removeGalleryImage(element) { 216 var el = $(element).closest('div[data-web-gallery-image-id]'); 217 el.remove(); 218 fadmin_editableContentChaged(); 219} 220 221function packGalleryImages() { 222 $('div[data-web-gallery-image-id]').empty(); 223} 224 225function editImageIcoForm(icoElement) { 226 icoElement = $(icoElement); 227 228 $(icoElement).focusout(); 229 fadmin_setLoading(); 230 231 var params = {}; 232 var imageId = icoElement.data("web-image-ico-id"); 233 if (imageId != null) { 234 params.id = imageId; 235 } 236 237 $.get(ajaxGetImageIcoFormControllerURL, params, function(data) { 238 // shows popup 239 fadminPopup.showHTML(data); 240 $('#web-image-ico-form').submit(function (e) { 241 e.preventDefault(); 242 var url = ajaxSaveImageIcoControllerURL; 243 var form = $(this); 244 var serialized = serializeFormToObject(form); 245 $.post(url, {'imageFormData': serialized, 'id': imageId}, 246 function (response, status, xhr) { 247 var type = xhr.getResponseHeader("content-type") || ""; 248 var dataType = ""; 249 if (type.indexOf('html') > -1) { 250 dataType = 'html'; 251 } else if (type.indexOf('json') > -1) { 252 dataType = 'json'; 253 } 254 255 if (dataType == 'html') { 256 icoElement.before($(response)); 257 icoElement.remove(); 258 fadminPopup.hide(); 259 fadmin_editableContentChaged(); 260 } else if (dataType == 'json') { 261 262 var error = response.error; 263 // TODO: nahradit alert necim lepsim 264 //console.log(error); 265 266 alert("Nastala chyba " + serializeError(error)); 267 } 268 }); 269 // end of post function 270 }); 271 }); 272 273}
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.