X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=view%2Ftheme%2Ffrio%2Fjs%2Ftheme.js;h=594fa256346a96db8063cc5b5869c289a2020a2e;hb=b9ab6137776f39db3d01481cb6a7d5f6a1634be5;hp=82cbace5cb7b9a142990b6f603a463fb27a23e0a;hpb=cadc8aa6e83c4fbbe6b18945f78fb91bd82ea585;p=friendica.git diff --git a/view/theme/frio/js/theme.js b/view/theme/frio/js/theme.js index 82cbace5cb..594fa25634 100644 --- a/view/theme/frio/js/theme.js +++ b/view/theme/frio/js/theme.js @@ -106,7 +106,10 @@ $(document).ready(function(){ delay: { show: 500, hide: 100 - } + }, + sanitizeFn: function (content) { + return DOMPurify.sanitize(content) + }, }); // initialize the bootstrap-select @@ -282,7 +285,7 @@ $(document).ready(function(){ * We are making an exception for buttons because of a race condition with the * comment opening button that results in an already closed comment UI. */ - $(document).on('click', function(event) { + $(document).on('mousedown', function(event) { if (event.target.type === 'button') { return true; } @@ -372,24 +375,19 @@ function openClose(theID) { } function showHide(theID) { - if(document.getElementById(theID).style.display == "block") { - document.getElementById(theID).style.display = "none" - } - else { - document.getElementById(theID).style.display = "block" - } -} + var elem = document.getElementById(theID); + var edit = document.getElementById("comment-edit-submit-wrapper-" + theID.match('[0-9$]+')); -function showHideComments(id) { - if( $('#collapsed-comments-' + id).is(':visible')) { - $('#collapsed-comments-' + id).slideUp(); - $('#hide-comments-' + id).html(window.showMore); - $('#hide-comments-total-' + id).show(); + if ($(elem).is(':visible')) { + if (!$(edit).is(':visible')) { + edit.style.display = "block"; + } + else { + elem.style.display = "none"; + } } else { - $('#collapsed-comments-' + id).slideDown(); - $('#hide-comments-' + id).html(window.showFewer); - $('#hide-comments-total-' + id).hide(); + elem.style.display = "block"; } } @@ -431,10 +429,10 @@ function justifyPhotos() { margins: 3, border: 0, sizeRangeSuffixes: { - 'lt100': '-2', - 'lt240': '-2', + 'lt48': '-6', + 'lt80': '-5', + 'lt300': '-4', 'lt320': '-2', - 'lt500': '', 'lt640': '-1', 'lt1024': '-0' } @@ -446,8 +444,16 @@ function justifyPhotosAjax() { $('#photo-album-contents').justifiedGallery('norewind').on('jg.complete', function(e){ justifiedGalleryActive = false; }); } +// Load a js script to the html head. function loadScript(url, callback) { - // Adding the script tag to the head as suggested before + // Check if the script is already in the html head. + var oscript = $('head script[src="' + url + '"]'); + + // Delete the old script from head. + if (oscript.length > 0) { + oscript.remove(); + } + // Adding the script tag to the head as suggested before. var head = document.getElementsByTagName('head')[0]; var script = document.createElement('script'); script.type = 'text/javascript'; @@ -458,7 +464,7 @@ function loadScript(url, callback) { script.onreadystatechange = callback; script.onload = callback; - // Fire the loading + // Fire the loading. head.appendChild(script); } @@ -520,24 +526,35 @@ function filter_replace(item) { return item.name; } -(function( $ ) { +(function($) { $.fn.contact_filter = function(backend_url, typ, autosubmit, onselect) { - if(typeof typ === 'undefined') typ = ''; - if(typeof autosubmit === 'undefined') autosubmit = false; + if (typeof typ === 'undefined') { + typ = ''; + } + + if (typeof autosubmit === 'undefined') { + autosubmit = false; + } // Autocomplete contacts contacts = { match: /(^)([^\n]+)$/, index: 2, - search: function(term, callback) { contact_search(term, callback, backend_url, typ); }, + search: function(term, callback) {contact_search(term, callback, backend_url, typ);}, replace: filter_replace, - template: contact_filter, + template: contact_filter }; this.attr('autocomplete','off'); var a = this.textcomplete([contacts], {className:'accontacts', appendTo: '#contact-list'}); - a.on('textComplete:select', function(e, value, strategy) { $(".dropdown-menu.textcomplete-dropdown.media-list").show(); }); + if(autosubmit) { + a.on('textComplete:select', function(e,value,strategy) {submit_form(this);}); + } + + a.on('textComplete:select', function(e, value, strategy) { + $(".dropdown-menu.textcomplete-dropdown.media-list").show(); + }); }; })( jQuery ); @@ -745,6 +762,7 @@ function doLikeAction(ident, verb) { $.get('like/' + ident.toString() + '?verb=' + verb, NavUpdate ); liking = 1; force_update = true; + update_item = ident.toString(); } // Decodes a hexadecimally encoded binary string