p&&$img.height(h).width(h*g)}if(f0){var v="";for(l=0;l"+PF.fn.htmlEncode(m[l].name)+"",delete CHV.fn.uploader.files[m[l].uid],$("li[data-id="+m[l].uid+"]",CHV.fn.uploader.selectors.queue).find("[data-action=cancel]").click();PF.fn.modal.simple({title:PF.fn._s("Some files couldn't be added"),message:""})}else CHV.fn.uploader.focus();CHV.fn.uploader.boxSizer()}},$.extend({},C,{orientation:a.exif?a.exif.get("Orientation"):1})),setTimeout(function(){o(e+1)},25)}))}else PF.fn.loading.destroy("fullscreen")}var i;if(!this.canAdd){e=e.originalEvent;return e.preventDefault(),e.stopPropagation(),!1}$fileinput=$(this.selectors.file),$fileinput.replaceWith($fileinput=$fileinput.clone(!0));var n=$(this.selectors.upload_item_template).html();let s=[],r=[];if(void 0===t){e=e.originalEvent;e.preventDefault(),e.stopPropagation();var l=e.dataTransfer||e.target;if("items"in l)for(var d=l.items,c=0;cCHV.obj.config.image.max_filesize.getBytes()?m.push({uid:c,name:p.name.truncate_middle()+" - "+PF.fn._s("File too big.")}):-1!=CHV.obj.config.upload.image_types.indexOf(f)||0!=/android/i.test(navigator.userAgent)?(i&&(p.md5=i),p.fromClipboard=1==e.clipboard,p.uid=c):m.push({uid:c,name:p.name.truncate_middle()+" - "+PF.fn._s("Invalid or unsupported file format.")})}for(c=0;c0&&0==s.length){var h="";for(c=0;c"+PF.fn.htmlEncode(m[c].name)+"";return void PF.fn.modal.simple({title:PF.fn._s("Some files couldn't be added"),message:""})}if(0==s.length)return}else{if(t=t.replace(/(<([^>]+)>)/g,"").replace(/(\[([^\]]+)\])/g,""),s=t.match_urls(),!s)return;s=s.array_unique(),s=$.map(s,function(e,t){return{uid:t,name:e,url:e}})}if($.isEmptyObject(this.files))for(c=0;c0){var i=[];for(var o in this.results.error)"object"==typeof this.results.error[o]&&(i[o]=this.results.error[o].error.message);i.length>0&&$(this.selectors.failed_result).html(""+i.join(" ")+" ")}else $(a.error,this.selectors.root).hide();if(!window.opener&&0==CHV.obj.config.upload.moderation&&CHV.obj.config.upload.redirect_single_upload&&1==Object.size(this.results.success)&&0==Object.size(this.results.error))return window.location.href=this.results.success[Object.keys(this.results.success)[0]].image.path_viewer,!1;if($("[data-text=queue-progress]",this.selectors.root).text(100),$("[data-group=uploading]",this.selectors.root).hide(),$(this.selectors.root).removeClass("queueUploading queueHasResults").addClass("queueCompleted"),$(this.selectors.queue).addClass(this.selectors.queue_complete.substring(1)),Object.size(this.results.success)>0&&$("[data-group=upload-result] textarea",this.selectors.root).exists()&&CHV.fn.fillEmbedCodes(this.results.success,CHV.fn.uploader.selectors.root,"val"),Object.size(this.results.success)>0&&Object.size(this.results.error)>0?$(a.mixed+", "+a.success,this.selectors.root).show():Object.size(this.results.success)>0?$(a.success,this.selectors.root).show():Object.size(this.results.error)>0&&$(a.error,this.selectors.root).show(),$(a.success,this.selectors.root).is(":visible")){$(a.success,this.selectors.root).find("[data-group^=user], [data-group=guest]").hide(),$(a.success,this.selectors.root).find("[data-group="+(PF.fn.is_user_logged()?"user":"guest")+"]").show();var n=Object.keys(this.results.success)[0];if(void 0!==this.results.success[n].image.album){var s=[];for(var r in this.results.success){var l=this.results.success[r].image;l.album&&l.album.id_encoded&&-1==s.indexOf(l.album.id_encoded)&&s.push(l.album.id_encoded)}var d={link:null,text:null};if(s.length<=1?(d.link=this.results.success[n].image.album.url,d.text=this.results.success[n].image.album.name):(d.link=this.results.success[n].image.user.url_albums,d.text=PF.fn._s("%s's Albums",this.results.success[n].image.user.name_short_html)),$("[data-text=upload-target]",this.selectors.root).text(d.text),$("[data-link=upload-target]",this.selectors.root).attr("href",d.link),PF.fn.is_user_logged()){var c=s.length>0?"album":"stream";$("[data-group=user-"+c+"]",this.selectors.root).show()}}}if(this.boxSizer(),this.queueStatus="done",window.opener&&void 0!==CHV.obj.opener.uploadPlugin[window.name]){if($('[data-action="copy"]',this.selectors.root).remove(),CHV.obj.opener.uploadPlugin[window.name].hasOwnProperty("autoInsert")&&CHV.obj.opener.uploadPlugin[window.name].autoInsert){var u=$(':input[name="'+CHV.obj.opener.uploadPlugin[window.name].autoInsert+'"]',CHV.fn.uploader.selectors.root),m=u.val();if(m)return window.opener.postMessage({id:window.name,message:m},"*"),void window.close()}}else $('[data-action="openerPostMessage"]',this.selectors.root).remove()}},$.extend(CHV.fn.uploader,$.extend(!0,{},CHV.obj.uploaderReset)),CHV.fn.fillEmbedCodes=function(e,t,a){void 0===a&&(a="val");var o=CHV.fn.uploader.selectors.root==t?"embed_upload_tpl":"embed_share_tpl";$.each(e,function(e,i){if(void 0!==i){var n="id_encoded"in i?i:i.image;if(!n.medium){n.medium={};for(var s=["filename","name","width","height","extension","size","size_formatted","url"],r=0;r0&&$.each(CHV.obj.categories,function(o,i){return void 0!==e&&i.id==e||(i.url_key==$("[name=form-category-url_key]",t).val()?(a=!0,!1):void 0)}),!a||(PF.fn.growl.call(PF.fn._s("Category URL key already being used.")),$("[name=form-category-url_key]",t).highlight(),!1)))},edit:{before:function(e){var t=$(e.target),a=t.data("category-id"),o=CHV.obj.categories[a],i="[data-modal="+t.data("target")+"]";$.each(CHV.fn.category.formFields,function(e,t){e="form-category-"+t,t=o[t];var a=$("[name="+e+"]",i);a.is("textarea")?a.html(PF.fn.htmlEncode(t)):a.attr("value",t)})},submit:function(){var e=PF.obj.modal.selectors.root,t=$("[name=form-category-id]",e).val();return!!CHV.fn.category.validateForm(t)&&(PF.obj.modal.form_data={action:"edit",edit:"category",editing:{}},$.each(CHV.fn.category.formFields,function(t,a){PF.obj.modal.form_data.editing[a]=$("[name=form-category-"+a+"]",e).val()}),!0)},complete:{success:function(e){var t=e.responseJSON.category,a="[data-content=category][data-category-id="+t.id+"]";$.each(t,function(e,t){$("[data-content=category-"+e+"]",a).html(PF.fn.htmlEncode(t))}),$("[data-link=category-url]").attr("href",t.url),CHV.obj.categories[t.id]=t,PF.fn.growl.expirable(PF.fn._s("The content has been edited."))}}},delete:{before:function(e){var t=$(e.target),a=t.data("category-id"),o=CHV.obj.categories[a];t.attr("data-confirm",t.attr("data-confirm").replace("%s",'"'+o.name+'"'))},submit:function(e){return PF.obj.modal.form_data={action:"delete",delete:"category",deleting:{id:e}},!0},complete:{success:function(e){PF.fn.growl.expirable(PF.fn._s("Category successfully deleted."));var t=e.responseJSON.request.deleting.id;$("[data-content=category][data-category-id="+t+"]").remove(),delete CHV.obj.categories[t]}}},add:{submit:function(){var e=PF.obj.modal.selectors.root;return!!CHV.fn.category.validateForm()&&(PF.obj.modal.form_data={action:"add-category",category:{}},$.each(CHV.fn.category.formFields,function(t,a){"id"!=a&&(PF.obj.modal.form_data.category[a]=$("[name=form-category-"+a+"]",e).val())}),!0)},complete:{success:function(e){var t=e.responseJSON.category,a="[data-content=dashboard-categories-list]",o=$("[data-content=category-dashboard-template]").html();$.each(t,function(e,t){o=o.replace(new RegExp("%"+e.toUpperCase()+"%","g"),t||"")}),$(a).append(o),0==Object.size(CHV.obj.categories)&&(CHV.obj.categories={}),CHV.obj.categories[t.id]=t,PF.fn.growl.call(PF.fn._s("Category %s added.",'"'+t.name+'"'))}}}},CHV.fn.ip_ban={formFields:["id","ip","expires","message"],validateForm:function(e){var t=PF.obj.modal.selectors.root,a=!1,o=$("[name=form-ip_ban-ip]",t).val();return!!CHV.fn.common.validateForm(t)&&(""!==$("[name=form-ip_ban-expires]",t).val()&&0==/^\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2}$/.test($("[name=form-ip_ban-expires]",t).val())?(PF.fn.growl.call(PF.fn._s("Invalid expiration date.")),$("[name=form-ip_ban-expires]",t).highlight(),!1):(Object.size(CHV.obj.ip_bans)>0&&$.each(CHV.obj.ip_bans,function(t,i){return void 0!==e&&i.id==e||(i.ip==o?(a=!0,!1):void 0)}),!a||(PF.fn.growl.call(PF.fn._s("IP %s already banned.",o)),$("[name=form-ip_ban-ip]",t).highlight(),!1)))},add:{submit:function(){var e=PF.obj.modal.selectors.root;return!!CHV.fn.ip_ban.validateForm()&&(PF.obj.modal.form_data={action:"add-ip_ban",ip_ban:{}},$.each(CHV.fn.ip_ban.formFields,function(t,a){"id"!=a&&(PF.obj.modal.form_data.ip_ban[a]=$("[name=form-ip_ban-"+a+"]",e).val())}),!0)},complete:{success:function(e){var t=e.responseJSON.ip_ban,a="[data-content=dashboard-ip_bans-list]",o=$("[data-content=ip_ban-dashboard-template]").html();void 0!==o&&($.each(t,function(e,t){o=o.replace(new RegExp("%"+e.toUpperCase()+"%","g"),t||"")}),$(a).append(o)),0==Object.size(CHV.obj.ip_bans)&&(CHV.obj.ip_bans={}),CHV.obj.ip_bans[t.id]=t,$("[data-content=ban_ip]").addClass("hidden"),$("[data-content=banned_ip]").removeClass("hidden"),PF.fn.growl.call(PF.fn._s("IP %s banned.",t.ip))},error:function(e){var t=e.responseJSON.error;PF.fn.growl.call(PF.fn._s(t.message))}}},edit:{before:function(e){var t=$(e.target),a=t.data("ip_ban-id"),o=CHV.obj.ip_bans[a],i="[data-modal="+t.data("target")+"]";$.each(CHV.fn.ip_ban.formFields,function(e,t){e="form-ip_ban-"+t,t=o[t];var a=$("[name="+e+"]",i);a.is("textarea")?a.html(PF.fn.htmlEncode(t)):a.attr("value",t)})},submit:function(){var e=PF.obj.modal.selectors.root,t=$("[name=form-ip_ban-id]",e).val();return!!CHV.fn.ip_ban.validateForm(t)&&(PF.obj.modal.form_data={action:"edit",edit:"ip_ban",editing:{}},$.each(CHV.fn.ip_ban.formFields,function(t,a){PF.obj.modal.form_data.editing[a]=$("[name=form-ip_ban-"+a+"]",e).val()}),!0)},complete:{success:function(e){var t=e.responseJSON.ip_ban,a="[data-content=ip_ban][data-ip_ban-id="+t.id+"]";$.each(t,function(e,t){$("[data-content=ip_ban-"+e+"]",a).html(PF.fn.htmlEncode(t))}),CHV.obj.ip_bans[t.id]=t},error:function(e){var t=e.responseJSON.error;PF.fn.growl.call(PF.fn._s(t.message))}}},delete:{before:function(e){var t=$(e.target),a=t.data("ip_ban-id"),o=CHV.obj.ip_bans[a];t.attr("data-confirm",t.attr("data-confirm").replace("%s",o.ip))},submit:function(e){return PF.obj.modal.form_data={action:"delete",delete:"ip_ban",deleting:{id:e}},!0},complete:{success:function(e){PF.fn.growl.expirable(PF.fn._s("IP ban successfully deleted."));var t=e.responseJSON.request.deleting.id;$("[data-content=ip_ban][data-ip_ban-id="+t+"]").remove(),delete CHV.obj.ip_bans[t]}}}},CHV.fn.storage={formFields:["id","name","api_id","bucket","server","service","capacity","region","key","secret","url","account_id","account_name"],calling:!1,validateForm:function(){var e=PF.obj.modal.selectors.root,t=$("[name=form-storage-id]",e).val(),a=!0;if($.each($(":input",e),function(e,t){$(this).is(":hidden")?$(this).attr("required")&&$(this).removeAttr("required").attr("data-required",1):1==$(this).attr("data-required")&&$(this).attr("required","required"),$(this).is(":visible")&&""==$(this).val()&&$(this).attr("required")&&($(this).highlight(),a=!1)}),!a)return PF.fn.growl.call(PF.fn._s("Please fill all the required fields.")),!1;var o,i=$("[name=form-storage-capacity]",e),n=i.val();return""!==n&&(0==/^[\d\.]+\s*[A-Za-z]{2}$/.test(n)||void 0===n.getBytes()?o=PF.fn._s("Invalid storage capacity value. Make sure to use a valid format."):void 0!==CHV.obj.storages[t]&&n.getBytes()0&&(t=String(t).formatBytes(2)),r.attr("value",t))}),$("[data-combo-value]").addClass("soft-hidden"),$(n).removeClass("soft-hidden")},submit:function(){var e=PF.obj.modal.selectors.root;$("[name=form-storage-id]",e).val();return!!CHV.fn.storage.validateForm()&&(PF.obj.modal.form_data={action:"edit",edit:"storage",editing:{}},$.each(CHV.fn.storage.formFields,function(t,a){var o;o="[name=form-storage-"+a+"]","hidden"!==$(o,e).attr("type")&&(o+=":visible"),PF.obj.modal.form_data.editing[a]=$(o,e).val()}),!0)},complete:{success:function(e){var t=e.responseJSON.storage,a="[data-content=storage][data-storage-id="+t.id+"]",o=$("[data-action=toggle-storage-https]",a);$.each(t,function(e,t){$("[data-content=storage-"+e+"]",a).html(PF.fn.htmlEncode(t))}),CHV.obj.storages[t.id]=t,CHV.fn.storage.toggleBoolDisplay(o,1==t.is_https)},error:function(e){var t=e.responseJSON,a=t.error.message;PF.fn.growl.call(a)}}},add:{submit:function(){if(!CHV.fn.storage.validateForm())return!1;var e=PF.obj.modal.selectors.root;return PF.obj.modal.form_data={action:"add-storage",storage:{}},$.each(CHV.fn.storage.formFields,function(t,a){var o;"id"!=a&&(o="[name=form-storage-"+a+"]","hidden"!==$(o,e).attr("type")&&(o+=":visible"),PF.obj.modal.form_data.storage[a]=$(o,e).val())}),!0},complete:{success:function(e){var t=e.responseJSON.storage,a="[data-content=dashboard-storages-list]",o=$("[data-content=storage-dashboard-template]").html();$.each(t,function(e,t){var a=e.toUpperCase();if("is_https"==e||"is_active"==e)t=CHV.obj.storageTemplate.icon.replace("%TITLE%",CHV.obj.storageTemplate.messages[e]).replace("%ICON%",CHV.obj.storageTemplate.checkboxes[t]).replace("%PROP%",e.replace("is_",""));o=o.replace(new RegExp("%"+a+"%","g"),t||"")}),$(a).append(o),PF.fn.bindtipTip($("[data-storage-id="+t.id+"]")),0==CHV.obj.storages.length&&(CHV.obj.storages={}),CHV.obj.storages[t.id]=t},error:function(e){var t=e.responseJSON,a=t.error.message;PF.fn.growl.call(a)}}},toggleBoolDisplay:function(e,t){var a={0:e.data("unchecked-icon"),1:e.data("checked-icon")};e.removeClass(a[0]+" "+a[1]).addClass(a[t?1:0])}},CHV.fn.common={validateForm:function(e){if(void 0===e)e=PF.obj.modal.selectors.root;var t=!0;return $.each($(":input:visible",e),function(e,a){""==$(this).val()&&$(this).attr("required")&&($(this).highlight(),t=!1)}),!!t||(PF.fn.growl.call(PF.fn._s("Please fill all the required fields.")),!1)},updateDoctitle:function(e){void 0!==CHV.obj.page_info&&(CHV.obj.page_info.pre_doctitle=e,CHV.obj.page_info.doctitle=CHV.obj.page_info.pre_doctitle+CHV.obj.page_info.pos_doctitle,document.title=CHV.obj.page_info.doctitle)}},CHV.fn.user={add:{submit:function(){var e=$(PF.obj.modal.selectors.root),t=!0;return $.each($(":input",e),function(e,a){""==$(this).val()&&$(this).attr("required")&&($(this).highlight(),t=!1)}),t?(PF.obj.modal.form_data={action:"add-user",user:{username:$("[name=form-username]",e).val(),email:$("[name=form-email]",e).val(),password:$("[name=form-password]",e).val(),role:$("[name=form-role]",e).val()}},!0):(PF.fn.growl.call(PF.fn._s("Please fill all the required fields.")),!1)},complete:{success:function(e){e.responseJSON;PF.fn.growl.expirable(PF.fn._s("%s added successfully.",PF.fn._n("User","Users",1)))},error:function(e){var t=e.responseJSON;PF.fn.growl.call(PF.fn._s(t.error.message))}}},delete:{submit:function(){return PF.obj.modal.form_data={action:"delete",delete:"user",owner:CHV.obj.resource.user.id,deleting:CHV.obj.resource.user},!0}},ban:{submit:function(){return PF.obj.modal.form_data={action:"ban",ban:"user",banning:CHV.obj.resource.user.id},!0},success:function(){}}},CHV.fn.submit_resource_approve=function(){return PF.obj.modal.form_data={action:"approve",approve:CHV.obj.resource.type,from:"resource",owner:void 0!==CHV.obj.resource.user?CHV.obj.resource.user.id:null,approving:CHV.obj.resource},!0},CHV.fn.complete_resource_approve={success:function(e){e.responseJSON;$("body").fadeOut("normal",function(){redir=CHV.obj.resource.url,window.location=redir})}},CHV.fn.submit_resource_delete=function(){return PF.obj.modal.form_data={action:"delete",delete:CHV.obj.resource.type,from:"resource",owner:void 0!==CHV.obj.resource.user?CHV.obj.resource.user.id:null,deleting:CHV.obj.resource},!0},CHV.fn.complete_resource_delete={success:function(e){e.responseJSON;$("body").fadeOut("normal",function(){var e;e="album"==CHV.obj.resource.type||"image"==CHV.obj.resource.type?CHV.obj.resource.parent_url:CHV.obj.resource.user?CHV.obj.resource.user.url:CHV.obj.resource.url,void 0!==e&&(window.location=e.replace(/\/?$/,"/")+"?deleted")})}},CHV.fn.list_editor={blink:function(e){e.addClass("ui-selecting"),setTimeout(function(){e.removeClass("ui-selecting")},200)},selectionCount:function(){var e=$(PF.obj.listing.selectors.content_listing);e.each(function(){var t=$("[data-content=pop-selection]","[data-content=list-selection][data-tab="+$(this).attr("id")+"]"),a=$(PF.obj.listing.selectors.list_item+".selected",this).length;if(all_count=$(PF.obj.listing.selectors.list_item,this).length,t.toggleClass("disabled",0==a),$("[data-text=selection-count]",t).text(a>0?a:""),"images"==e.data("list")&&a>0){var o=$(PF.obj.listing.selectors.list_item+".selected[data-flag=safe]",this).length>0,i=$(PF.obj.listing.selectors.list_item+".selected[data-flag=unsafe]",this).length>0;$("[data-action=flag-safe]",t)[(i?"remove":"add")+"Class"]("hidden"),$("[data-action=flag-unsafe]",t)[(o?"remove":"add")+"Class"]("hidden")}$(this).is(":visible")&&($("body").toggleClass("--has-selection",a>0),CHV.fn.list_editor.listMassActionSet(all_count==a?"clear":"select"))})},removeFromList:function(e,t){if(void 0!==e){e=e instanceof jQuery==0?$(e):e;var a=$(PF.obj.listing.selectors.content_listing_visible),o=e.length;e.fadeOut("fast");var i=e.first().data("type"),n=parseInt($("[data-text="+i+"-count]").text())-o;CHV.fn.list_editor.updateUserCounters(e.first().data("type"),o,"-"),e.promise().done(function(){$(document).removeClass(CHV.fn.listingViewer.selectors.bodyShown.substr(1));var i={};if(e.each(function(){$("[data-id="+$(this).data("id")+"]").each(function(){var e=$(this).closest(PF.obj.listing.selectors.content_listing).attr("id");i[e]||(i[e]=0),i[e]+=1})}),1==o?$("[data-id="+$(this).data("id")+"]").remove():e.each(function(){$("[data-id="+$(this).data("id")+"]").remove()}),PF.fn.listing.columnizerQueue(),PF.fn.listing.refresh(),CHV.fn.list_editor.selectionCount(),void 0!==t&&"string"==typeof t&&PF.fn.growl.expirable(t),$(PF.obj.listing.selectors.content_listing_pagination,a).exists()||0!=$(PF.obj.listing.selectors.list_item,a).length||(n=0),0==n)a.html(PF.obj.listing.template.empty),$(PF.obj.listing.selectors.content_listing+":not("+PF.obj.listing.selectors.content_listing_visible+")").data({empty:null,load:"ajax"}),$("[data-content=list-selection][data-tab="+a.attr("id")+"]").addClass("disabled");else if(0==$(PF.obj.listing.selectors.list_item,a).length){if($(PF.obj.listing.selectors.pad_content).height(0),$("[data-action=load-more]",a).exists())return $(PF.obj.listing.selectors.content_listing_visible).data("page",0),$("[data-action=load-more]",a).click(),void(PF.obj.listing.recolumnize=!0);var s=$("[data-pagination=next]",a);if(s.exists()){var r=s.attr("href"),l=PF.fn.deparam(r);return"page"in l&&l.page>1&&(r=r.changeURLParameterValue("page",l.page-1)),void(window.location=r)}}})}},deleteFromList:function(e){if(void 0===t)var t=!0;e=e instanceof jQuery==0?$(e):e;this.removeFromList(e,t?PF.fn._s("The content has been deleted."):null)},moveFromList:function(e,t){if(void 0===t)t=!0;e=e instanceof jQuery==0?$(e):e;this.removeFromList(e,t?PF.fn._s("The content has been moved."):null)},toggleSelectItem:function(e,t){if("boolean"!=typeof t)t=!e.hasClass("selected");var a,o,i,n=$(".viewer").is(":visible")?$("[data-type=image][data-id="+e.attr("data-id")+"]"):e,s=$("[data-action=select] .btn-icon",n);n.hasClass("unselect")||(n.addClass("unselect"),t?(Boolean(window.navigator.vibrate)&&window.navigator.vibrate([15,125,25]),n.addClass("selected"),a=s.data("icon-selected"),o=s.data("icon-unselected"),i=PF.fn._s("Unselect")):(n.removeClass("selected ui-selected"),a=s.data("icon-unselected"),o=s.data("icon-selected"),i=PF.fn._s("Select")),s.removeClass(o).addClass(a),setTimeout(function(){n.removeClass("unselect")},350),$("[data-action=select] .label",n).text(i),CHV.fn.list_editor.selectionCount())},selectItem:function(e){this.toggleSelectItem(e,!0)},unselectItem:function(e){this.toggleSelectItem(e,!1),e.removeClass("selected")},selectAll:function(e){this.selectItem($(PF.obj.listing.selectors.list_item+":visible:not(.selected)")),this.listMassActionSet("clear"),e.stopPropagation()},clearSelection:function(e){var t=$(PF.obj.listing.selectors.list_item+".selected",PF.obj.listing.selectors[e?"content_listing":"content_listing_visible"]);this.unselectItem(t),this.listMassActionSet("select")},listMassActionSet:function(e){var t="select"==e?"clear":"select",a=$("[data-text-select-all][data-action=list-"+t+"-all]:visible"),o=a.data("text-"+e+"-all");a.text(o).attr("data-action","list-"+e+"-all"),PF.fn.close_pops()},updateItem:function(e,t,a,o){if(e instanceof jQuery==0)e=$(e);var i=e.data("type"),n="image"==i?t.album:t;if(this.addAlbumtoModals(n),$("option[value="+n.id_encoded+"]","[name=form-album-id]").html(PF.fn.htmlEncode(n.name_with_privacy_readable_html)),void 0===a)a="edit";if("edit"==a||"move"==a){if("move"==a&&"album"==CHV.obj.resource.type)return void CHV.fn.list_editor.moveFromList(e,o);e.attr("data-description",t.description),"image"==i?(void 0!==t.title&&(e.attr("data-title",t.title),e.find("[title]").attr("title",t.title),$("[data-text=image-title]",e).text(PF.fn.htmlEncode(t.title))),void 0!==t.title_truncated&&$("[data-text=image-title-truncated]",e).html(PF.fn.htmlEncode(t.title_truncated)),void 0!==t.category_id&&e.attr("data-category-id",t.category_id),e.attr({"data-album-id":n.id_encoded,"data-flag":1==t.nsfw?"unsafe":"safe"}),$("[data-content=album-link]",e).attr("href",n.url)):e.attr({"data-privacy":n.privacy,"data-password":n.password,"data-name":n.name}),e.attr("data-privacy",n.privacy),$("[data-text=album-name]",e).html(PF.fn.htmlEncode(n.name)),PF.fn.growl.expirable("edit"==a?PF.fn._s("The content has been edited."):PF.fn._s("The content has been moved."))}},addAlbumtoModals:function(e){var t=!1;$("[name=form-album-id]","[data-modal]").each(function(){e.id_encoded&&!$("option[value="+e.id_encoded+"]",this).exists()&&($(this).append(''+e.name_with_privacy_readable_html+" "),t=!0)}),t&&CHV.fn.list_editor.updateUserCounters("album",1,"+")},updateAlbum:function(e){$("[data-id="+e.id_encoded+"]").each(function(){""!==e.html&&($(this).after(e.html),$(this).remove())})},updateUserCounters:function(e,t,a){if(void 0===a)a="+";var o,i,n=$("[data-text="+e+"-count]"),s=$("[data-text="+e+"-label]"),r=(t=parseInt(t),parseInt(n.html()));switch(a){case"+":o=r+t;break;case"-":o=r-t;break;case"=":o=t}i=o-r;var l=$("[data-text=total-"+n.data("text")+"]"),d=$("[data-text="+l.data("text")+"-label]"),c=parseInt(l.html()),u=c+i;n.text(o),l.text(u),s.text(s.data(1==o?"label-single":"label-plural")),d.text(s.data(1==u?"label-single":"label-plural"))},updateMoveItemLists:function(e,t,a){if(CHV.fn.list_editor.clearSelection(),/image/.test(t))"image"==t?CHV.fn.list_editor.updateItem("[data-type=image][data-id="+a.data("id")+"]",e.image,"move"):(a.each(function(){CHV.fn.list_editor.updateItem("[data-type=image][data-id="+$(this).data("id")+"]",e,"move",!1)}),PF.fn.growl.expirable(PF.fn._s("The content has been moved.")));else{if(CHV.fn.list_editor.moveFromList(a,!1),PF.fn.growl.expirable(PF.fn._s("The content has been moved.")),e.album)if(void 0!==e.albums_old?"true"==e.request.album.new:"true"==e.request.editing.new_album){CHV.fn.list_editor.addAlbumtoModals(e.album);var o=parseInt($("[data-text=album-count]").text())-1;$(PF.obj.listing.selectors.pad_content).each(function(){var t=$(this).find(PF.obj.listing.selectors.list_item).length;if(0!=t){var a=PF.fn.deparam($(this).closest(PF.obj.listing.selectors.content_listing).data("params"));"date_desc"!=a.sort&&o!=t||$(this)["date_desc"==a.sort?"prepend":"append"](e.album.html)}})}else CHV.fn.list_editor.updateAlbum(e.album);PF.fn.listing.columnizerQueue(),PF.fn.listing.refresh(0)}}},CHV.fn.import={errorHandler:function(e){PF.fn.growl.call(e.error.message)},reset:function(e){e=parseInt(e);CHV.obj.import.working[e].stats=$.ajax({type:"POST",data:{action:"importReset",id:e}}),CHV.obj.import.working[e].stats.complete(function(t){var a=t.responseJSON;if(a){var o=CHV.fn.import.parseTemplate(a.import);$("[data-id="+a.import.id+"]",CHV.obj.import.sel.root).replaceWith(o),"working"!=a.import.status&&clearInterval(CHV.obj.import.working[e].interval)}})},updateStats:function(e){e=parseInt(e);"readyState"in CHV.obj.import.working[e].stats&&4!=CHV.obj.import.working[e].stats.readyState?console.log("Aborting stats timeout call (previous call is still not ready)"):(CHV.obj.import.working[e].stats=$.ajax({type:"POST",data:{action:"importStats",id:e}}),CHV.obj.import.working[e].stats.complete(function(t){var a=t.responseJSON;if(a){var o=CHV.fn.import.parseTemplate(a.import);$("[data-id="+a.import.id+"]",CHV.obj.import.sel.root).replaceWith(o),"working"!=a.import.status&&clearInterval(CHV.obj.import.working[e].interval)}}))},delete:{submit:function(e){return PF.obj.modal.form_data={action:"importDelete",id:e},!0},deferred:{success:function(e){var t=e.responseJSON;PF.fn.growl.call(PF.fn._s("Import ID %s removed",t.import.id)),$("[data-id="+t.import.id+"]",CHV.obj.import.sel.root).remove(),1==$("li",CHV.obj.import.sel.root).size()&&$(CHV.obj.import.sel.root).addClass("hidden")},error:function(e){CHV.fn.import.errorHandler(e.responseJSON)}}},parseTemplate:function(e,t){var a=CHV.obj.import.rowTpl;for(var o in CHV.obj.import.importTr)void 0!==e[o]&&(a=a.replaceAll("%"+o+"%",e[o]));a=a.replaceAll("%parse%",e.options.root),a=a.replaceAll("%shortParse%",e.options.root.charAt(0)),a=a.replaceAll("%displayStatus%",CHV.obj.import.statusesDisplay[e.status]);var i=$($.parseHTML(a)).attr("data-object",JSON.stringify(e));return i}},CHV.fn.Palettes={timeout:{},get:function(){return($("html").get(0).className.match(/(^|\s)palette-\S+/g)||[]).join(" ")},set:function(e){$("html").attr("data-palette",e).removeClass(this.get()).addClass("palette-"+e)},preview:function(e){$("html").removeClass(this.get()).addClass("palette-"+e)},save:function(){clearTimeout(this.timeout),this.timeout=setTimeout(function(){$.ajax({type:"POST",data:{action:"paletteSet",palette_id:CHV.obj.config.palettesId[$("html").attr("data-palette")]},cache:!1})},400)}};
\ No newline at end of file
+$(".default-user-image",e).addClass("hidden")},hide_default(a),$(".btn-alt",a).closest("div").show(),change_avatar(a),CHV.obj.logged_user.id==CHV.obj.resource.user.id&&(change_avatar(i),hide_default(i)),PF.fn.growl.expirable(PF.fn._s("Profile image updated."))):PF.fn.growl.expirable(PF.fn._s("An error occurred. Please try again later.")),t.data("uploading",!1)}}}else PF.fn.growl.call(PF.fn._s("Please select a valid image file type."))}),$(document).on("change","[data-content=user-background-upload-input]",function(e){e.preventDefault(),e.stopPropagation();var t=$(this),a=$("[data-content=user-background-cover]"),o=$("[data-content=user-background-cover-src]"),i=$(".loading-placeholder",a),n=($("#top-bar"),$(this)[0].files[0]);if(!t.data("uploading"))if(0!=/^image\/.*$/.test(n.type))if(n.size>CHV.obj.config.user.background_max_filesize.getBytes())PF.fn.growl.call(PF.fn._s("Please select a picture of at most %s size.",CHV.obj.config.user.background_max_filesize));else{i.removeClass("hidden"),PF.fn.loading.inline(i,{center:!0,size:"big",color:"#FFF"}),t.data("uploading",!0);var s=new FormData;s.append("source",n),s.append("action","upload"),s.append("type","file"),s.append("what","background"),s.append("owner",CHV.obj.resource.user.id),s.append("auth_token",PF.obj.config.auth_token),avatarXHR=new XMLHttpRequest,avatarXHR.open("POST",PF.obj.config.json_api,!0),avatarXHR.send(s),avatarXHR.onreadystatechange=function(){if(4==this.readyState){var e="json"!==this.responseType?JSON.parse(this.response):this.response,n=e.success.image;if(200==this.status){var s=$(" ");s.attr("src",n.url).imagesLoaded(function(){i.addClass("hidden").empty(),o.css("background-image","url("+n.url+")").hide().fadeIn(),$("[data-content=user-change-background]",a).removeClass("hidden"),$(a).removeClass("no-background"),$(".top-user").removeClass("no-background"),$("[data-content=user-upload-background]").hide(),$("[data-content=user-change-background]").show(),PF.fn.growl.expirable(PF.fn._s("Profile background image updated.")),s.remove()})}else i.addClass("hidden").empty(),PF.fn.growl.expirable(PF.fn._s("An error occurred. Please try again later."));t.data("uploading",!1)}}}else PF.fn.growl.call(PF.fn._s("Please select a valid image file type."))}),CHV.fn.user_background={delete:{submit:function(){return PF.obj.modal.form_data={action:"delete",delete:"background",owner:CHV.obj.resource.user.id},!0},deferred:{success:{before:function(e){$("[data-content=user-background-cover-src]").css("background-image","none"),$("[data-content=user-background-cover], .top-user").addClass("no-background"),$("[data-content=user-background-cover]").height(""),$("[data-content=user-upload-background]").removeClass("hidden").show(),$("[data-content=user-change-background]").hide()},done:function(e){PF.fn.modal.close(function(){PF.fn.growl.expirable(PF.fn._s("Profile background image deleted."))})}},error:function(e){PF.fn.growl.expirable(PF.fn._s("Error deleting profile background image."))}}}},CHV.fn.user_api={delete:{submit:function(){return PF.obj.modal.form_data={action:"delete",delete:"api_key",owner:CHV.obj.resource.user.id},!0},deferred:{success:{before:function(e){},done:function(e){PF.fn.modal.close(function(){location.reload()})}},error:function(e){PF.fn.growl.expirable(e.responseJSON.error.message)}}}},CHV.fn.user_two_factor={delete:{submit:function(){return PF.obj.modal.form_data={action:"delete",delete:"two_factor",owner:CHV.obj.resource.user.id},!0},deferred:{success:{before:function(e){},done:function(e){PF.fn.modal.close(function(){location.reload()})}},error:function(e){PF.fn.growl.expirable(e.responseJSON.error.message)}}}},CHV.str.mainform="[data-content=main-form]",CHV.obj.timezone={selector:"[data-content=timezone]",input:"#timezone-region"},$(document).on("keyup change",CHV.str.mainform+" :input",function(){$(this).is("[name=username]")&&$("[data-text=username]").text($(this).val())}),$(document).on("change",CHV.obj.timezone.input,function(){var e=$(this).val(),t=$("#timezone-combo-"+e);t.find("option:first").prop("selected",!0),$(CHV.obj.timezone.selector).val(t.val()).change()}),$(document).on("change","[id^=timezone-combo-]",function(){var e=$(this).val();$(CHV.obj.timezone.selector).val(e).change()}),$(document).on("keyup change blur","[name^=new-password]",function(){var e=$("[name=new-password]"),t=$("[name=new-password-confirm]"),a=e.val()==t.val(),o=t.closest(".input-password").find(".input-warning");0==o.exists()&&(o=$("[data-message=new-password-confirm]")),$(this).is(t)&&t.data("touched",!0),t.data("touched")&&o.text(a?"":o.data("text"))[a?"addClass":"removeClass"]("hidden-visibility")}),$(document).on("submit",CHV.obj.mainform,function(){switch($(this).data("type")){case"password":var e=$("[name=new-password]",this),t=$("[name=new-password-confirm]",this);if((""!==e.val()||""!==t.val())&&e.val()!==t.val())return e.highlight(),t.highlight(),PF.fn.growl.expirable(PF.fn._s("Passwords don't match")),!1}}),$(document).on("click","[data-action=check-for-updates]",function(){PF.fn.loading.fullscreen(),CHV.fn.system.checkUpdates(function(e){if(PF.fn.loading.destroy("fullscreen"),200===e.status){var t=e.responseJSON.software;-1==PF.fn.versionCompare(CHV.obj.system_info.version,t.current_version)?PF.fn.modal.simple({title:' '+PF.fn._s("Chevereto v%s available",t.current_version),message:""+PF.fn._s("There is a new Chevereto version available with the following release notes.")+" "+PF.fn._s("Check %s for a complete changelog since you last upgrade.",''+CHV.obj.system_info.version+' ')+'
"+PF.fn._s("Check the %s for alternative update methods.",''+PF.fn._s("documentation")+" ")+'
",html:!0}):PF.fn.growl.call(PF.fn._s("This website is running latest %s version",CHEVERETO.edition))}else PF.fn.growl.call(PF.fn._s("An error occurred. Please try again later."))})}),void 0!==PF.fn.get_url_var("checkUpdates")&&$("[data-action=check-for-updates]").trigger("click"),void 0!==PF.fn.get_url_var("upgrade")&&$("[data-action=upgrade]").trigger("click"),void 0!==PF.fn.get_url_var("license")&&$("[data-action='license']").trigger("click"),void 0!==PF.fn.get_url_var("installed")&&PF.fn.modal.simple({title:' '+PF.fn._s("Chevereto v%s installed",CHV.obj.system_info.version),message:""+PF.fn._s('Usage of Chevereto Software must be in compliance with the software license terms known as "The Chevereto License".')+'
",html:!0}),$(document).on("click","[data-action=system-update]",function(e){if(!$("input#system-update").prop("checked"))return PF.fn.growl.call(PF.fn._s("Please review the system requirements before proceeding")),void e.preventDefault()}),$(document).on("click","[data-action=toggle-storage-https]",function(){CHV.fn.storage.toggleHttps($(this).closest("[data-content=storage]").data("storage-id"))}),$(document).on("click","[data-action=toggle-storage-active]",function(){CHV.fn.storage.toggleActive($(this).closest("[data-content=storage]").data("storage-id"))}),$(CHV.fn.uploader.selectors.root).exists()&&(CHV.fn.uploader.$pasteCatcher=$("
",{contenteditable:"true",id:CHV.fn.uploader.selectors.paste.replace(/#/,"")}),$("body").append(CHV.fn.uploader.$pasteCatcher),$(document).on("keydown",function(e){!e.ctrlKey&&!e.metaKey||"KeyV"!=e.originalEvent.code||$(e.target).is(":input")||(PF.fn.keyFeedback.spawn(e),CHV.fn.uploader.$pasteCatcher.focus(e))}),document.addEventListener("dragover",function(e){e.preventDefault()}),document.addEventListener("drop",function(e){if(CHV.obj.config.upload.url){e.preventDefault();var t,a=e.dataTransfer.getData("text/html"),o=/src="?([^"\s]+)"?\s*/;t=o.exec(a),t&&(CHV.fn.uploader.toggle({show:!0}),CHV.fn.uploader.add({},t[1]))}}),window.addEventListener("paste",CHV.fn.uploader.pasteImageHandler)),$(document).on("click","[data-action=like]",function(){if(PF.fn.is_user_logged()){var e=$(this);if(!e.data("XHR")){e.data("XHR",!0);var t=$(this).is("[data-liked]")?$(this):$(this).closest("[data-liked]"),a=!t.closest("[data-list], .viewer").exists()&&void 0!==CHV.obj.resource,o=t.is("[data-liked=1]"),i=o?"dislike":"like",n={id:a?CHV.obj.resource.id:$(this).closest("[data-id]").attr("data-id"),type:a?CHV.obj.resource.type:$(this).closest("[data-type]").attr("data-type")},s=a?e:$("[data-type="+n.type+"][data-id="+n.id+"]"),r={type:"POST",data:{action:i},cache:!1};r.data[i]={object:n.type,id:n.id},$.ajax(r).complete(function(t){var i=t.responseJSON;e.data("XHR",!1),200===i.status_code?(a&&void 0!==i.content&&$("[data-text=likes-count]").html(i.content.likes),s.closest("[data-liked]").attr("data-liked",o?0:1)):PF.fn.growl.expirable(PF.fn._s("An error occurred. Please try again later."))})}}else window.location.href=CHV.obj.vars.urls.login}),$(document).on("click","[data-action=album-cover]",function(){var e=$(this);if(!e.data("XHR")){e.data("XHR",!0);var t=$(this).is("[data-cover]")?$(this):$(this).closest("[data-cover]"),a=t.is("[data-cover=1]"),o=a?"album-cover-unset":"album-cover-set",i=(CHV.obj.resource.id,e.closest("[data-cover]")),n={type:"POST",data:{action:o},cache:!1};n.data[o]={album_id:i.data("album-id"),image_id:i.data("id")},$.ajax(n).complete(function(t){var o=t.responseJSON;e.data("XHR",!1),200===o.status_code?i.attr("data-cover",a?0:1):PF.fn.growl.expirable(PF.fn._s("An error occurred. Please try again later."))})}}),$(document).on("click","[data-action=follow]",function(){if(PF.fn.is_user_logged()){var e=$(this);if(!e.data("XHR")){e.data("XHR",!0);var t=$(this).is("[data-followed]")?$(this):$(this).closest("[data-followed]"),a=void 0!==CHV.obj.resource,o=t.is("[data-followed=1]"),i=o?"unfollow":"follow",n={id:a?CHV.obj.resource.id:$(this).closest("[data-id]").data("id"),type:a?CHV.obj.resource.type:$(this).closest("[data-type]").data("type")},s={type:"POST",data:{action:i},cache:!1};s.data[i]={object:n.type,id:n.id},$.ajax(s).complete(function(i){var n=i.responseJSON;if(e.data("XHR",!1),200===n.status_code){if(a&&void 0!==n.user_followed){var s=$("[data-text=followers-label]"),r={single:s.data("label-single"),plural:s.data("label-plural")};$("[data-text=followers-count]").html(n.user_followed.followers),s.html(PF.fn._n(r.single,r.plural,n.user_followed.followers))}t.attr("data-followed",o?0:1)}else PF.fn.growl.expirable(PF.fn._s("An error occurred. Please try again later."))})}}else PF.fn.modal.call({type:"login"})}),$(document).on("click","[data-action=user_ban],[data-action=user_unban]",function(){var e=$(this);if(!e.data("XHR")){e.data("XHR",!0);var t=$(this).closest("[data-banned]"),a=!0,o=t.is("[data-banned=1]"),i=e.attr("data-action"),n={id:a?CHV.obj.resource.id:$(this).closest("[data-id]").data("id"),type:a?CHV.obj.resource.type:$(this).closest("[data-type]").data("type")},s={type:"POST",data:{action:i},cache:!1};s.data[i]={user_id:n.id},$.ajax(s).complete(function(a){var i=a.responseJSON;e.data("XHR",!1),200===i.status_code?t.attr("data-banned",o?0:1):PF.fn.growl.expirable(PF.fn._s("An error occurred. Please try again later."))})}}),$(document).on("click","[data-action=top-bar-notifications]",function(e){var a=this,o=$(this),i=$(".top-bar-notifications-container",o),n=$(".top-bar-notifications-list",o),s=$("ul",n),r=$(".loading",i);o.data("XHR")||(r.removeClass("hidden"),PF.fn.loading.inline(r,{size:"small",message:PF.fn._s("loading")}),$.ajax({type:"POST",data:{action:"notifications"},cache:!1}).complete(function(e){var l=e.responseJSON;if(200!==l.status_code)return PF.fn.growl.expirable(PF.fn._s("An error occurred. Please try again later.")),o.data("XHR",!1),void r.addClass("hidden").html("");if(o.data("XHR",!0),r.remove(),l.html){n.removeClass("hidden"),s.html(l.html),t();var d=$("li.new",s);d.addClass("transition"),setTimeout(function(){d.removeClass("new"),$("[data-content=notifications-counter]",a).removeClass("on").html("0"),setTimeout(function(){d.removeClass("transition")},150)},1500)}else $(".empty",i).removeClass("hidden")}))}),$("#g-recaptcha").is(":empty")&&CHV.obj.config.captcha.enabled&&CHV.obj.config.captcha.sitekey&&("3"!=CHV.obj.config.captcha.version&&CHV.obj.config.captcha.isNeeded||$('label[for="recaptcha_response_field"]').remove()),$(document).on("click",PF.obj.listing.selectors.list_item+" a.image-container",function(e){var t=$(this).closest(PF.obj.listing.selectors.list_item),o=t.find("[data-action=load-image]");o.length>0&&(a(o),e.preventDefault())}),$(document).on("click",PF.obj.listing.selectors.list_item+" [data-action=load-image]",function(e){a($(this)),e.preventDefault(),e.stopPropagation()}),$(document).on("click","#album [data-tab=tab-embeds]",function(e){e.preventDefault,CHV.fn.album.showEmbedCodes()}),$("body").is("#upload")&&CHV.fn.uploader.toggle({show:!0}),$(document).on("keyup",function(e){if(!($(e.target).is(":input")||e.ctrlKey||e.metaKey||e.altKey)){var t=$("#fullscreen-modal:visible").exists(),a=$(".viewer"),o=$(".list-selection:visible"),i=o.find("[data-content=pop-selection]:visible:not(.disabled)"),n=$("body").hasClass("--viewer-shown"),s=$(CHV.fn.uploader.selectors.root+CHV.fn.uploader.selectors.show).exists(),r=e.originalEvent.code;if("Escape"===e.originalEvent.code){if(t)return;s&&CHV.fn.uploader.toggle({reset:!1})}if(a.exists()&&n){if(r in CHV.fn.listingViewer.keys){var l=["KeyW","Escape","ArrowLeft","ArrowRight"],d=CHV.fn.listingViewer.keys[r];-1==l.indexOf(r)?$("[data-action="+d+"]",CHV.fn.listingViewer.selectors.root).click():d in CHV.fn.listingViewer&&CHV.fn.listingViewer[d](),PF.fn.keyFeedback.spawn(e)}}else{var c,u={Period:"list-select-all",KeyK:"get-embed-codes",KeyZ:"clear",KeyA:"create-album",KeyM:"move",KeyO:"approve",Delete:"delete",KeyC:"assign-category",KeyV:"flag-safe",KeyF:"flag-unsafe",KeyH:"album-cover"},m={KeyE:"edit",KeyL:"like",KeyS:"share",KeyJ:"sub-album",KeyP:"upload-to-album"};d=u[r]||m[r];void 0!==d&&(o.exists()&&(n||t||parseInt($("[data-text=selection-count]:visible",i).text())>0&&(c=$("[data-action="+d+"]",o.closest(".list-selection")))),void 0===c&&(c=$("[data-action="+d+"]:visible").not("#content-listing-tabs *")),c instanceof jQuery&&c.length>0&&(c.first().trigger("click"),PF.fn.keyFeedback.spawn(e)))}}}),$(document).on("click",CHV.fn.listingViewer.selectors.root+" [data-action^=viewer-]",function(){var e=$(this).data("action").substring("viewer-".length);e in CHV.fn.listingViewer&&CHV.fn.listingViewer[e]()}),$(document).on("click","a[data-href]:not([rel=popup-link]):not(.popup-link)",function(){var e=$(this).attr("data-href"),t=$(this).attr("href");(e||t)&&(location.href=t||e)});var b,v=PF.obj.listing.selectors.list_item+", .image-container";($(document).on("contextmenu click",v,function(e){$(".list-selection:visible").exists()&&!$(this).closest(CHV.fn.listingViewer.selectors.root).exists()&&("click"!=e.type||e.ctrlKey||e.metaKey)&&o(this,e)}),navigator.userAgent.match(/(iPad|iPhone|iPod)/i))&&$(document).on("mouseup mousemove",v,function(e){return clearTimeout(b),!1}).on("mousedown",v,function(e){var t=this,a=e;return b=window.setTimeout(function(){$(".list-selection:visible").exists()&&!$(t).closest(CHV.fn.listingViewer.selectors.root).exists()&&o(t,a)},500),!1});void 0!==CHV.obj.config&&CHV.obj.config.listing.viewer&&$(document).on("click",PF.obj.listing.selectors.list_item+"[data-type=image] .image-container",function(e){if(e.preventDefault(),e.stopPropagation(),0!==e.clientX||0!==e.clientY){var t=$(this).closest(PF.obj.listing.selectors.list_item);t.exists()&&(e.ctrlKey||e.metaKey||CHV.fn.listingViewer.open(t))}else PF.fn.keyFeedback.spawn(e)}),$(document).on("contextmenu",CHV.fn.listingViewer.selectors.root,function(e){return e.preventDefault(),CHV.fn.listingViewer.zoom(),PF.fn.keyFeedback.spawn(e),!1});var _,w=PF.fn.deparam(window.location.search);if(w&&"viewer"in w){var C=$(PF.obj.listing.selectors.content_listing_visible);if("images"==C.data("list")){var P=$(PF.obj.listing.selectors.list_item,C)["next"==w.viewer?"first":"last"]();CHV.fn.listingViewer.open(P)}}$(window).on("DOMContentLoaded load resize scroll",function(){clearTimeout(_),_=setTimeout(function(){$(PF.obj.listing.selectors.list_item+":visible").each(function(){var e=$(this).find('[data-action="load-image"]').first(),t=PF.fn.deparam($(PF.obj.listing.selectors.list_item+"[data-id="+$(this).attr("data-id")+"]").closest(".content-listing").data("params-hidden")),o=t&&"is_animated"in t?t.is_animated:$(this).data("size")<=CHV.obj.config.image.load_max_filesize.getBytes();e.exists()&&o&&$(this).is_within_viewport(50)&&a(e)})},1e3)}),$(document).on("click","[data-action=logout]",function(){let e=$("form#form-logout");e.submit()}),Boolean(window.navigator.vibrate)&&$(document).on("click","button, .btn, .pop-btn, .top-btn-el, [data-action], .content-tabs a, .top-bar-logo a, .login-provider-button, .panel-share-networks li a, #image-viewer-loader",function(e){$(this).is("[data-action=top-bar-menu-full]")||(window.navigator.vibrate(0),window.navigator.vibrate(15))}),$(document).on("change keyup",CHV.fn.ctaForm.selectors.rows+" input[name^='cta-']",function(){CHV.fn.ctaForm.update($(this))}),$(document).on("click",CHV.fn.ctaForm.selectors.rows+" [data-action=cta-add]",function(){CHV.fn.ctaForm.insert($(this))}),$(document).on("click",CHV.fn.ctaForm.selectors.rows+" [data-action=cta-remove]",function(){CHV.fn.ctaForm.remove($(this)),0==CHV.fn.ctaForm.array.length&&$(CHV.fn.ctaForm.selectors.root+" "+CHV.fn.ctaForm.selectors.enable).prop("checked",!1).trigger("change")}),$(document).on("change",CHV.fn.ctaForm.selectors.root+" "+CHV.fn.ctaForm.selectors.enable,function(){let e=$(CHV.fn.ctaForm.selectors.combo,CHV.fn.ctaForm.selectors.root),t=$(this).is(":checked");e.toggleClass("soft-hidden",!t),t&&(0==CHV.fn.ctaForm.array.length&&CHV.fn.ctaForm.add(),CHV.fn.ctaForm.render()),CHV.fn.ctaForm.setEnable(t?1:0)}),$(document).on("change keyup",CHV.fn.ctaForm.selectors.root+" input[name^='cta-icon_']",function(){let e=CHV.fn.ctaForm.getRow($(this)),t=e.find("label[for^='cta-icon_'] [data-content=icon]");t.removeClass();let a=CHV.fn.ctaForm.getIconClass($(this).val());t.addClass(a)}),$(document).on("click","[href^='https://chevereto.com/']",function(e){let t=$(this).find(".badge--paid").exists();if(!t)return;let a=$(this).attr("href"),o=PF.fn._s("Get a license from %s to unlock all features and support.",'chevereto.com '),i=PF.fn._s("You can enter your license key in the dashboard panel.");e.preventDefault(),e.stopPropagation(),PF.fn.modal.simple({html:!0,title:' Upgrade Chevereto',message:""+o+" "+i+'
"})})}),"undefined"==typeof CHV&&(CHV={obj:{},fn:{},str:{}}),window.opener&&(CHV.obj.opener={uploadPlugin:{}}),CHV.fn.ctaButtons={selectors:{container:"[data-contains=cta-album]"},render:function(e=""){$(this.selectors.container).each(function(){$(this).html(e)})}},CHV.fn.ctaForm={enable:0,array:[],selectors:{root:"#cta-form",rows:"#cta-rows",enable:"#cta-enable",template:"#cta-row-template",combo:"#cta-combo",row:".cta-row"},update:function(e){let t=this.getPos(e),a=e.attr("name").match(/cta-(.*)?_\d+/)[1];this.array[t-1][a]=e.val()},add:function(e="",t="",a=""){this.array.push(this.getRowObject(e,t,a)),this.render()},insert:function(e){let t=this.getPos(e);this.array.splice(t,0,this.getRowObject()),this.render()},remove:function(e){let t=this.getPos(e);this.array.splice(t-1,1),this.render()},getRowObject:function(e="",t="",a=""){return{label:e,icon:t,href:a}},getIconClass:function(e){return/\s/g.test(e)?e:"fa-solid fa-"+e},getRow:function(e){return e.closest(this.selectors.row)},getPos:function(e){return this.getRow(e).data("pos")},getTemplateHtml:function(){return $(this.selectors.template).html()},getRowHtml:function(e,t){return this.getTemplateHtml().replaceAll(/%pos%/g,e).replaceAll(/%label%/g,t.label).replaceAll(/%href%/g,t.href).replaceAll(/%icon%/g,t.icon).replaceAll(/%iconClass%/g,this.getIconClass(t.icon))},render:function(){let e=$(this.selectors.root),t=e.find(this.selectors.rows),a=this;this.destroy(),$.each(this.array,function(e,o){t.append(a.getRowHtml(e+1,o))}),this.setEnable(this.enable),t.sortable({cursor:"grabbing",axis:"y",update:function(){let e=[];$(this).find(a.selectors.row).each(function(){let t=a.getPos($(this));e.push(a.array[t-1])}),a.array=e,a.render()}})},setEnable:function(e){let t=$(this.selectors.rows,this.selectors.root);this.enable=e;let a=1===this.enable;$("input[data-required]",t).each(function(){$(this).attr("required",a)})},destroy:function(){let e=$(this.selectors.root),t=e.find(this.selectors.rows);try{t.sortable("destroy")}catch(e){}t.empty()}},CHV.fn.album={showEmbedCodes:function(){var e=$(".content-listing-loading","#tab-embeds");if(e.exists()){var t=$("#embed-codes");$.ajax({url:PF.obj.config.json_api,type:"POST",dataType:"json",data:{action:"get-album-contents",albumid:CHV.obj.resource.id,auth_token:PF.obj.config.auth_token},cache:!1}).always(function(a){PF.fn.loading.destroy(e),200==a.status_code&&(CHV.fn.fillEmbedCodes(a.contents,"#tab-embeds"),$("#tab-embeds").addClass("visible"),t.removeClass("soft-hidden"))})}}},CHV.fn.modal={getTemplateWithPreview:function(e,t){var a=$(e).html(),o=$("
"),i="",n=t.find(".image-container img").attr("src");return void 0!==n&&(i+=' ';var e=$(this).find(".image-container img");e.exists()?n+=' ':(n+=' ',n+=' '),n+=" ",s++}),i.html(o).find(".image-preview").html(n),i.html()}},CHV.fn.listingViewer={selectors:{bodyShown:".--viewer-shown",content:".viewer-content",template:"#viewer-template",root:".viewer",rootShow:".viewer--show",rootHide:".viewer--hide",rootZero:".viewer--zero",rootNavPrev:".viewer--nav-prev",rootNavNext:".viewer--nav-next",src:".viewer-src",tools:".viewer-tools",loader:".viewer-loader",owner:".viewer-owner",ownerGuest:".viewer-owner--guest",ownerUser:".viewer-owner--user",inputMap:".viewer-kb-input"},keys:{ArrowLeft:"prev",ArrowRight:"next",Delete:"delete",Escape:"close",KeyA:"create-album",KeyE:"edit",KeyF:"flag",KeyL:"like",KeyM:"move",KeyO:"approve",KeyS:"share",KeyW:"zoom",Period:"select"},keymap:{"create-album":["A",PF.fn._s("Create album")],approve:["O",PF.fn._s("Approve")],close:["Esc",PF.fn._s("Close")],delete:["Del",PF.fn._s("Delete")],edit:["E",PF.fn._s("Edit")],flag:["F",PF.fn._s("Toggle flag")],like:["L",PF.fn._s("Like")],move:["M",PF.fn._n("Move")],next:["►",PF.fn._s("Next")],prev:["◄",PF.fn._s("Previous")],select:[".",PF.fn._s("Toggle select")],share:["S",PF.fn._s("Share")],zoom:["W",PF.fn._s("Zoom")]},loading:null,idleTimer:0,$item:null,show:function(){PF.fn.deparam(this.$item.closest(PF.obj.listing.selectors.content_listing_visible).data("params-hidden"));this.getEl("root").removeClass(this.selectors.rootHide.substring(1)).addClass(this.selectors.rootShow.substring(1)),$("body").addClass(this.selectors.bodyShown.substring(1));var e=new Hammer($(CHV.fn.listingViewer.selectors.root).get(0),{direction:Hammer.DIRECTION_VERTICAL});e.on("swipeleft swiperight",function(e){var t="left"==e.type.substring("swipe".length)?"next":"prev";CHV.fn.listingViewer[t]()}),this.getEl("root")[(PF.fn.isDevice(["phone","phablet"])?"add":"remove")+"Class"]("--over")},getItem:function(){return this.$item},getEl:function(e){var t=!e.startsWith("template")&&!e.startsWith("root")&&this.selectors.root;return t?$(this.selectors[e],t):$(this.selectors[e])},getObject:function(e){if(e||void 0===this.object){var t=decodeURIComponent(this.getItem().attr("data-object"));this.object=JSON&&JSON.parse(t)||$.parseJSON(t)}return this.object},placeholderSizing:function(){if(this.getEl("root").exists()){var e=Math.max(document.documentElement.clientWidth,window.innerWidth||0),t=Math.max(document.documentElement.clientHeight,window.innerHeight||0),a=e/t,o=this.getEl("src")[0],i=o.getAttribute("width"),n=o.getAttribute("height"),s=i/n,r=a0?"add":t.getItem()[o]().exists()?"add":"remove";a[n+"Class"](i.substring(1))}),$.each(this.getItem().get(0).attributes,function(e,t){if(!t.name.startsWith("data-"))return!0;a.attr(t.name,t.value)});var n=void 0===this.object.user?"user":"guest";n="owner"+(n.charAt(0).toUpperCase()+n.slice(1).toLowerCase()),this.getEl(n).remove(),void 0!==this.object.user&&$(this.object.user.avatar?".default-user-image":"img.user-image",this.getEl("ownerUser")).remove();var s=this.getItem().find(".list-item-image-tools[data-action='list-tools']");this.getEl("tools").append(s.html());let r=this;this.getEl("tools").find(".list-tool[data-action]").each(function(){$(this).attr("title",$(this).attr("title")+" ("+r.keymap[$(this).attr("data-action")][0]+")")}),this.placeholderSizing(),this.trickyLoad()},zoom:function(){this.getEl("root").attr("data-cover","1"==this.getEl("root").attr("data-cover")?"0":"1")},remove:function(){this.getEl("root").remove()},getParsedTemplate:function(){var e=this.getObject(!0),t=this.getEl("template").html(),a=t.match(/%(\S+)%/g);return a&&$.each(a,function(a,o){var i,n=o.slice(1,-1).split(".");n.map(function(t){var a=i||e;t in a&&(i=a[t])});var s=new RegExp(o,"g");i=void 0===i?"":i,t=t.replace(s,i)}),t},insertEl:function(){var e=this.getParsedTemplate();this.getEl("rootZero").remove(),$(e).appendTo("body")},toggleIdle:function(e,t){var a=this;t=void 0===t||t;$("html")[(e?"add":"remove")+"Class"]("--idle"),e||(clearTimeout(a.idleTimer),t&&(a.idleTimer=setTimeout(function(){var e=$(".fullscreen"),t=a.getEl("root");a.toggleIdle(t.length>0&&0==e.length)},5e3)))},open:function(e){if(e.exists()){this.setItem(e),this.insertEl(),this.filler(),this.show(),this.toggleIdle(!1);var t=this;this.getEl("root").on("mousemove mouseout",function(){t.toggleIdle(!1)})}else this.getEl("rootZero").remove()},setItem:function(e){this.$item=e},trickyLoad:function(){if(this.object.image.url!=this.object.display_url){var e=this.getEl("src").parent().html(),t=$(e).attr("src",this.object.image.url);t.insertBefore(this.getEl("src")),t.imagesLoaded(function(){t.next().remove()})}},close:function(){var e=this;$(this.selectors.root).removeClass(this.selectors.rootShow.substring(1)).addClass(this.selectors.rootHide.substring(1)),$("body").removeClass(this.selectors.bodyShown.substring(1)),this.toggleIdle(!1,!1),null!==this.getItem()&&$(window).scrollTop(this.getItem().offset().top);var t=$("#top-bar, .follow-scroll");t.attr("data-scroll-lock","1"),setTimeout(function(){e.remove()},250),setTimeout(function(){t.removeAttr("data-scroll-lock")},300)},browse:function(e){var t=this.getItem()[e]();if(t.exists()){this.setItem(t),this.filler(!0);var a=$(PF.obj.listing.selectors.content_listing_visible).find("[data-action=load-more]"),o=t[e+"All"]().length;a.length>0&&o<=5&&!PF.obj.listing.calling&&"next"==e&&$("[data-action=load-more]").click()}else{var i=$("[data-pagination="+e+"]",PF.obj.listing.selectors.content_listing_pagination+":visible"),n=i.attr("href");if(!n)return;PF.fn.deparam(window.location.search);window.location.href=n+"&viewer="+e}},prev:function(){this.browse("prev")},next:function(){this.browse("next")}},CHV.obj.image_viewer={selector:"#image-viewer",container:"#image-viewer-container",navigation:".image-viewer-navigation",loading:"#image-viewer-loading",loader:"#image-viewer-loader"},CHV.obj.image_viewer.$container=$(CHV.obj.image_viewer.container),CHV.obj.image_viewer.$navigation=$(CHV.obj.image_viewer.navigation),CHV.obj.image_viewer.$loading=$(CHV.obj.image_viewer.loading),CHV.fn.system={checkUpdates:function(e){$.ajax({url:CHEVERETO.api.get.info+"/",data:{id:CHEVERETO.id},cache:!1}).always(function(t,a,o){"function"==typeof e&&e(o)})}},("MacIntel"===navigator.platform&&navigator.maxTouchPoints>0||"iPad"===navigator.platform)&&$("html").removeClass("device-nonmobile"),CHV.fn.bindSelectableItems=function(){var e="content-listing-wrapper",t="#"+e;$(t).exists()?$(t).hasClass("ui-selectable")&&$(t).selectable("destroy"):$("#content-listing-tabs").wrap("
"),$("[data-content=list-selection]").exists()&&$("html.device-nonmobile "+t).selectable({delay:150,filter:PF.obj.listing.selectors.list_item,cancel:".content-empty, .header, #tab-share, #tab-info, .viewer-title, .header-link, .top-bar, .content-listing-pagination *, #fullscreen-modal, #top-user, #background-cover, .list-item-desc, .list-item-image-tools, [data-action=load-image], #tab-embeds",classes:{"ui-selected":"selected"},selected:function(e,t){$(t.selected).removeClass("ui-selected")},selecting:function(e,t){var a=$(t.selecting),o=a.hasClass("selected");CHV.fn.list_editor[(o?"unselect":"select")+"Item"](a)},unselecting:function(e,t){CHV.fn.list_editor.unselectItem($(t.unselecting))}})},CHV.fn.isCachedImage=function(e){var t=new Image;return t.src=e,t.complete||t.width+t.height>0},CHV.fn.viewerLoadImage=function(){if(CHV.obj.image_viewer.$loading.exists()&&(CHV.obj.image_viewer.$loading.removeClass("soft-hidden").css({zIndex:2}),PF.fn.loading.inline(CHV.obj.image_viewer.$loading,{color:"white",size:"small",center:!0,valign:!0}),CHV.obj.image_viewer.$loading.hide().fadeIn("slow")),$(CHV.obj.image_viewer.loader).remove(),CHV.obj.image_viewer.image.is_360)return PF.fn.loading.destroy(CHV.obj.image_viewer.$loading),pannellum.viewer("image-viewer-360",{autoLoad:!0,type:"equirectangular",panorama:CHV.obj.image_viewer.image.url,preview:CHV.obj.image_viewer.$container.find("img").eq(0).attr("src"),pitch:2.3,yaw:-135.4,hfov:120}),$("#image-viewer-360").removeClass("soft-hidden"),void CHV.obj.image_viewer.$container.find("img").eq(0).remove();CHV.obj.image_viewer.image.html=CHV.obj.image_viewer.$container.html(),CHV.obj.image_viewer.$container.prepend($(CHV.obj.image_viewer.image.html).css({top:0,zIndex:0,opacity:0,position:"absolute"})),CHV.obj.image_viewer.$container.find("img").eq(0).css("zIndex",1),CHV.obj.image_viewer.$container.find("img").eq(1).attr("src",CHV.obj.image_viewer.image.url),
+CHV.obj.image_viewer.$container.find("img").eq(1).imagesLoaded(function(){CHV.obj.image_viewer.$container.find("img").eq(1).css({position:"",display:""}),CHV.obj.image_viewer.$container.find("img").eq(0).remove(),PF.fn.loading.destroy(CHV.obj.image_viewer.$loading)})},CHV.obj.embed_share_tpl={},CHV.obj.embed_upload_tpl={},CHV.obj.topBar={transparencyScrollToggle:function(){var e=$(window).scrollTop();$("#top-bar")[(e>0?"remove":"add")+"Class"]("transparent")}},CHV.obj.uploaderReset={isUploading:!1,canAdd:!0,queueStatus:"ready",uploadThreads:0,uploadParsedIds:[],uploadProcessedIds:[],files:{},results:{success:{},error:{}},toggleWorking:0,filesAddId:0,clipboardImages:[]},CHV.fn.uploader={files:{},selectors:{root:"#anywhere-upload",show:".upload-box--show",queue:"#anywhere-upload-queue",queue_complete:".queue-complete",queue_item:".queue-item",close_cancel:"[data-button=close-cancel]",file:"#anywhere-upload-input",camera:"#anywhere-upload-input-camera",upload_item_template:"#anywhere-upload-item-template",item_progress_bar:"[data-content=progress-bar]",failed_result:"[data-content=failed-upload-result]",fullscreen_mask:"#fullscreen-uploader-mask",dropzone:"#uploader-dropzone",paste:"#anywhere-upload-paste",input:"[data-action=anywhere-upload-input]"},toggle:function(e,t){this.queueSize();var a=$("[data-action=top-bar-upload]",".top-bar"),o=!$(CHV.fn.uploader.selectors.root).data("shown");e=$.extend({callback:null,reset:!0},e);if(void 0!==e.show&&e.show&&(o=!0),PF.fn.growl.close(!0),PF.fn.close_pops(),!(1==this.toggleWorking||$(CHV.fn.uploader.selectors.root).is(":animated")||CHV.fn.uploader.isUploading||a.data("login-needed")&&!PF.fn.is_user_logged())){this.toggleWorking=1;var i={time:500,easing:null},n=function(){!o&&e.reset&&CHV.fn.uploader.reset(),PF.fn.topMenu.hide(),"function"==typeof e.callback&&e.callback(t),CHV.fn.uploader.boxSizer(),CHV.fn.uploader.toggleWorking=0};if($(CHV.fn.uploader.selectors.root)[(o?"add":"remove")+"Class"](this.selectors.show.substring(1)),o){if($("html").data({"followed-scroll":$("html").hasClass("followed-scroll"),"top-bar-box-shadow-prevent":!0}).removeClass("followed-scroll").addClass("overflow-hidden top-bar-box-shadow-none"),$("#top-bar").data({stock_classes:$("#top-bar").attr("class")}).addClass("scroll-up"),$(".current[data-nav]",".top-bar").each(function(){$(this).is("[data-action=top-bar-menu-full]")||$(this).removeClass("current").attr("data-current",1)}),PF.fn.isDevice("mobile")){var s=$(".upload-box-heading",$(CHV.fn.uploader.selectors.root));s.css({position:"relative",top:.5*($(window).height()-s.height())+"px"})}CHV.fn.uploader.focus(function(){setTimeout(function(){n()},i.time)})}else{$("#top-bar")[0].className=$("#top-bar").data("stock_classes"),$("[data-nav][data-current=1]",".top-bar").each(function(){$(this).addClass("current")}),setTimeout(function(){$(CHV.fn.uploader.selectors.fullscreen_mask).css({opacity:0})},.1*i.time),setTimeout(function(){$(CHV.fn.uploader.selectors.fullscreen_mask).remove()},i.time);var r=$(CHV.fn.uploader.selectors.root).outerHeight(),l=r-parseInt($(CHV.fn.uploader.selectors.root).data("initial-height"))+"px";$(CHV.fn.uploader.selectors.root).css({transform:"translate(0,-"+l+")"}),setTimeout(function(){$(CHV.fn.uploader.selectors.root).css({top:""}),n(),$("html,body").removeClass("overflow-hidden").data({"top-bar-box-shadow-prevent":!1}),$("#top-bar *").trigger("blur")},i.time)}$(CHV.fn.uploader.selectors.root).data("shown",o),a.toggleClass("current").removeClass("opened")}},reset:function(){$.extend(this,$.extend(!0,{},CHV.obj.uploaderReset)),$("li",this.selectors.queue).remove(),$(this.selectors.root).height("").css({"overflow-y":"","overflow-x":""}),$(this.selectors.queue).addClass("queueEmpty").removeClass(this.selectors.queue_complete.substring(1)),$(this.selectors.input,this.selectors.root).each(function(){$(this).prop("value",null)}),$("[data-group=upload-result] textarea",this.selectors.root).prop("value",""),$.each(["upload-queue-ready","uploading","upload-result","upload-queue-ready","upload-queue"],function(e,t){$("[data-group="+t+"]").hide()}),$("[data-group=upload]",this.selectors.root).show(),$("[name=upload-album-id]",this.selectors.root).prop("value",function(){var e=$("option[selected]",this);if(e.exists())return e.attr("value")}),$(this.selectors.root).removeClass("queueCompleted queueReady queueHasResults").addClass("queueEmpty").attr("data-queue-size",0),$("[name=upload-category-id]",this.selectors.root).prop("value",""),$("[name=upload-nsfw]",this.selectors.root).prop("checked",this.defaultChecked),this.boxSizer(!0)},focus:function(e){$(this.selectors.fullscreen_mask).exists()||($("body").is("#upload")||$("body").append($("
",{id:this.selectors.fullscreen_mask.replace("#",""),class:"fullscreen black"}).css({top:PF.fn.isDevice("phone")?0:$(CHV.fn.uploader.selectors.root).data("top")})),setTimeout(function(){$("body").is("#upload")||$(CHV.fn.uploader.selectors.fullscreen_mask).css({opacity:1}),setTimeout(function(){"function"==typeof e&&e()},PF.fn.isDevice(["phone","phablet"])?0:250)},1))},boxSizer:function(e){var t=$(this.selectors.root).is(this.selectors.show),a=t||e;t&&$("html").addClass("overflow-hidden"),a&&($(this.selectors.root).height(""),!$("body").is("#upload")&&$(this.selectors.root).height()>$(window).height()?($(this.selectors.root).height($(window).height()-$("#top-bar").height()).css({"overflow-y":"scroll","overflow-x":"auto"}),$("body").addClass("overflow-hidden")):$(this.selectors.root).css("overflow-y",""))},pasteURL:function(){var e=$("[name=urls]",PF.obj.modal.selectors.root),t=e.val();t&&(CHV.fn.uploader.toggle({show:!0}),CHV.fn.uploader.add({},t))},pasteImageHandler:function(e){if(!$(e.target).is(":input")){if(void 0!==e.clipboardData&&e.clipboardData.items)var t=e.clipboardData.items;else setTimeout(function(){return e.clipboardData={},e.clipboardData.items=[],$.each($("img",CHV.fn.uploader.$pasteCatcher),function(t,a){e.clipboardData.items.push(PF.fn.dataURItoBlob($(this).attr("src")))}),$(CHV.fn.uploader.selectors.paste).html(""),CHV.fn.uploader.pasteImageHandler(e)},1);if(t){const e=new Array,i=new Array;let n=$(CHV.fn.uploader.selectors.root).data("shown");for(var a=0;ap||f==p){var h=pp&&$img.height(h).width(h*g)}if(f0){var v="";for(l=0;l"+PF.fn.htmlEncode(m[l].name)+"",delete CHV.fn.uploader.files[m[l].uid],$("li[data-id="+m[l].uid+"]",CHV.fn.uploader.selectors.queue).find("[data-action=cancel]").click();PF.fn.modal.simple({title:PF.fn._s("Some files couldn't be added"),message:""})}else CHV.fn.uploader.focus();CHV.fn.uploader.boxSizer()}},$.extend({},C,{orientation:a.exif?a.exif.get("Orientation"):1})),setTimeout(function(){o(e+1)},25)}))}else PF.fn.loading.destroy("fullscreen")}var i;if(!this.canAdd){e=e.originalEvent;return e.preventDefault(),e.stopPropagation(),!1}$fileinput=$(this.selectors.file),$fileinput.replaceWith($fileinput=$fileinput.clone(!0));var n=$(this.selectors.upload_item_template).html();let s=[],r=[];if(void 0===t){e=e.originalEvent;e.preventDefault(),e.stopPropagation();var l=e.dataTransfer||e.target;if("items"in l)for(var d=l.items,c=0;cCHV.obj.config.image.max_filesize.getBytes()?m.push({uid:c,name:p.name.truncate_middle()+" - "+PF.fn._s("File too big.")}):-1!=CHV.obj.config.upload.image_types.indexOf(f)||0!=/android/i.test(navigator.userAgent)?(i&&(p.md5=i),p.fromClipboard=1==e.clipboard,p.uid=c):m.push({uid:c,name:p.name.truncate_middle()+" - "+PF.fn._s("Invalid or unsupported file format.")})}for(c=0;c0&&0==s.length){var h="";for(c=0;c"+PF.fn.htmlEncode(m[c].name)+"";return void PF.fn.modal.simple({title:PF.fn._s("Some files couldn't be added"),message:""})}if(0==s.length)return}else{if(t=t.replace(/(<([^>]+)>)/g,"").replace(/(\[([^\]]+)\])/g,""),s=t.match_urls(),!s)return;s=s.array_unique(),s=$.map(s,function(e,t){return{uid:t,name:e,url:e}})}if($.isEmptyObject(this.files))for(c=0;c0){var i=[];for(var o in this.results.error)"object"==typeof this.results.error[o]&&(i[o]=this.results.error[o].error.message);i.length>0&&$(this.selectors.failed_result).html(""+i.join(" ")+" ")}else $(a.error,this.selectors.root).hide();if(!window.opener&&0==CHV.obj.config.upload.moderation&&CHV.obj.config.upload.redirect_single_upload&&1==Object.size(this.results.success)&&0==Object.size(this.results.error))return window.location.href=this.results.success[Object.keys(this.results.success)[0]].image.path_viewer,!1;if($("[data-text=queue-progress]",this.selectors.root).text(100),$("[data-group=uploading]",this.selectors.root).hide(),$(this.selectors.root).removeClass("queueUploading queueHasResults").addClass("queueCompleted"),$(this.selectors.queue).addClass(this.selectors.queue_complete.substring(1)),Object.size(this.results.success)>0&&$("[data-group=upload-result] textarea",this.selectors.root).exists()&&CHV.fn.fillEmbedCodes(this.results.success,CHV.fn.uploader.selectors.root,"val"),Object.size(this.results.success)>0&&Object.size(this.results.error)>0?$(a.mixed+", "+a.success,this.selectors.root).show():Object.size(this.results.success)>0?$(a.success,this.selectors.root).show():Object.size(this.results.error)>0&&$(a.error,this.selectors.root).show(),$(a.success,this.selectors.root).is(":visible")){$(a.success,this.selectors.root).find("[data-group^=user], [data-group=guest]").hide(),$(a.success,this.selectors.root).find("[data-group="+(PF.fn.is_user_logged()?"user":"guest")+"]").show();var n=Object.keys(this.results.success)[0];if(void 0!==this.results.success[n].image.album){var s=[];for(var r in this.results.success){var l=this.results.success[r].image;l.album&&l.album.id_encoded&&-1==s.indexOf(l.album.id_encoded)&&s.push(l.album.id_encoded)}var d={link:null,text:null};if(s.length<=1?(d.link=this.results.success[n].image.album.url,d.text=this.results.success[n].image.album.name):(d.link=this.results.success[n].image.user.url_albums,d.text=PF.fn._s("%s's Albums",this.results.success[n].image.user.name_short_html)),$("[data-text=upload-target]",this.selectors.root).text(d.text),$("[data-link=upload-target]",this.selectors.root).attr("href",d.link),PF.fn.is_user_logged()){var c=s.length>0?"album":"stream";$("[data-group=user-"+c+"]",this.selectors.root).show()}}}if(this.boxSizer(),this.queueStatus="done",window.opener&&void 0!==CHV.obj.opener.uploadPlugin[window.name]){if($('[data-action="copy"]',this.selectors.root).remove(),CHV.obj.opener.uploadPlugin[window.name].hasOwnProperty("autoInsert")&&CHV.obj.opener.uploadPlugin[window.name].autoInsert){var u=$(':input[name="'+CHV.obj.opener.uploadPlugin[window.name].autoInsert+'"]',CHV.fn.uploader.selectors.root),m=u.val();if(m)return window.opener.postMessage({id:window.name,message:m},"*"),void window.close()}}else $('[data-action="openerPostMessage"]',this.selectors.root).remove()}},$.extend(CHV.fn.uploader,$.extend(!0,{},CHV.obj.uploaderReset)),CHV.fn.fillEmbedCodes=function(e,t,a){void 0===a&&(a="val");var o=CHV.fn.uploader.selectors.root==t?"embed_upload_tpl":"embed_share_tpl";$.each(e,function(e,i){if(void 0!==i){var n="id_encoded"in i?i:i.image;if(!n.medium){n.medium={};for(var s=["filename","name","width","height","extension","size","size_formatted","url"],r=0;r0&&$.each(CHV.obj.categories,function(o,i){return void 0!==e&&i.id==e||(i.url_key==$("[name=form-category-url_key]",t).val()?(a=!0,!1):void 0)}),!a||(PF.fn.growl.call(PF.fn._s("Category URL key already being used.")),$("[name=form-category-url_key]",t).highlight(),!1)))},edit:{before:function(e){var t=$(e.target),a=t.data("category-id"),o=CHV.obj.categories[a],i="[data-modal="+t.data("target")+"]";$.each(CHV.fn.category.formFields,function(e,t){e="form-category-"+t,t=o[t];var a=$("[name="+e+"]",i);a.is("textarea")?a.html(PF.fn.htmlEncode(t)):a.attr("value",t)})},submit:function(){var e=PF.obj.modal.selectors.root,t=$("[name=form-category-id]",e).val();return!!CHV.fn.category.validateForm(t)&&(PF.obj.modal.form_data={action:"edit",edit:"category",editing:{}},$.each(CHV.fn.category.formFields,function(t,a){PF.obj.modal.form_data.editing[a]=$("[name=form-category-"+a+"]",e).val()}),!0)},complete:{success:function(e){var t=e.responseJSON.category,a="[data-content=category][data-category-id="+t.id+"]";$.each(t,function(e,t){$("[data-content=category-"+e+"]",a).html(PF.fn.htmlEncode(t))}),$("[data-link=category-url]").attr("href",t.url),CHV.obj.categories[t.id]=t,PF.fn.growl.expirable(PF.fn._s("The content has been edited."))}}},delete:{before:function(e){var t=$(e.target),a=t.data("category-id"),o=CHV.obj.categories[a];t.attr("data-confirm",t.attr("data-confirm").replace("%s",'"'+o.name+'"'))},submit:function(e){return PF.obj.modal.form_data={action:"delete",delete:"category",deleting:{id:e}},!0},complete:{success:function(e){PF.fn.growl.expirable(PF.fn._s("Category successfully deleted."));var t=e.responseJSON.request.deleting.id;$("[data-content=category][data-category-id="+t+"]").remove(),delete CHV.obj.categories[t]}}},add:{submit:function(){var e=PF.obj.modal.selectors.root;return!!CHV.fn.category.validateForm()&&(PF.obj.modal.form_data={action:"add-category",category:{}},$.each(CHV.fn.category.formFields,function(t,a){"id"!=a&&(PF.obj.modal.form_data.category[a]=$("[name=form-category-"+a+"]",e).val())}),!0)},complete:{success:function(e){var t=e.responseJSON.category,a="[data-content=dashboard-categories-list]",o=$("[data-content=category-dashboard-template]").html();$.each(t,function(e,t){o=o.replace(new RegExp("%"+e.toUpperCase()+"%","g"),t||"")}),$(a).append(o),0==Object.size(CHV.obj.categories)&&(CHV.obj.categories={}),CHV.obj.categories[t.id]=t,PF.fn.growl.call(PF.fn._s("Category %s added.",'"'+t.name+'"'))}}}},CHV.fn.ip_ban={formFields:["id","ip","expires","message"],validateForm:function(e){var t=PF.obj.modal.selectors.root,a=!1,o=$("[name=form-ip_ban-ip]",t).val();return!!CHV.fn.common.validateForm(t)&&(""!==$("[name=form-ip_ban-expires]",t).val()&&0==/^\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2}$/.test($("[name=form-ip_ban-expires]",t).val())?(PF.fn.growl.call(PF.fn._s("Invalid expiration date.")),$("[name=form-ip_ban-expires]",t).highlight(),!1):(Object.size(CHV.obj.ip_bans)>0&&$.each(CHV.obj.ip_bans,function(t,i){return void 0!==e&&i.id==e||(i.ip==o?(a=!0,!1):void 0)}),!a||(PF.fn.growl.call(PF.fn._s("IP %s already banned.",o)),$("[name=form-ip_ban-ip]",t).highlight(),!1)))},add:{submit:function(){var e=PF.obj.modal.selectors.root;return!!CHV.fn.ip_ban.validateForm()&&(PF.obj.modal.form_data={action:"add-ip_ban",ip_ban:{}},$.each(CHV.fn.ip_ban.formFields,function(t,a){"id"!=a&&(PF.obj.modal.form_data.ip_ban[a]=$("[name=form-ip_ban-"+a+"]",e).val())}),!0)},complete:{success:function(e){var t=e.responseJSON.ip_ban,a="[data-content=dashboard-ip_bans-list]",o=$("[data-content=ip_ban-dashboard-template]").html();void 0!==o&&($.each(t,function(e,t){o=o.replace(new RegExp("%"+e.toUpperCase()+"%","g"),t||"")}),$(a).append(o)),0==Object.size(CHV.obj.ip_bans)&&(CHV.obj.ip_bans={}),CHV.obj.ip_bans[t.id]=t,$("[data-content=ban_ip]").addClass("hidden"),$("[data-content=banned_ip]").removeClass("hidden"),PF.fn.growl.call(PF.fn._s("IP %s banned.",t.ip))},error:function(e){var t=e.responseJSON.error;PF.fn.growl.call(PF.fn._s(t.message))}}},edit:{before:function(e){var t=$(e.target),a=t.data("ip_ban-id"),o=CHV.obj.ip_bans[a],i="[data-modal="+t.data("target")+"]";$.each(CHV.fn.ip_ban.formFields,function(e,t){e="form-ip_ban-"+t,t=o[t];var a=$("[name="+e+"]",i);a.is("textarea")?a.html(PF.fn.htmlEncode(t)):a.attr("value",t)})},submit:function(){var e=PF.obj.modal.selectors.root,t=$("[name=form-ip_ban-id]",e).val();return!!CHV.fn.ip_ban.validateForm(t)&&(PF.obj.modal.form_data={action:"edit",edit:"ip_ban",editing:{}},$.each(CHV.fn.ip_ban.formFields,function(t,a){PF.obj.modal.form_data.editing[a]=$("[name=form-ip_ban-"+a+"]",e).val()}),!0)},complete:{success:function(e){
+var t=e.responseJSON.ip_ban,a="[data-content=ip_ban][data-ip_ban-id="+t.id+"]";$.each(t,function(e,t){$("[data-content=ip_ban-"+e+"]",a).html(PF.fn.htmlEncode(t))}),CHV.obj.ip_bans[t.id]=t},error:function(e){var t=e.responseJSON.error;PF.fn.growl.call(PF.fn._s(t.message))}}},delete:{before:function(e){var t=$(e.target),a=t.data("ip_ban-id"),o=CHV.obj.ip_bans[a];t.attr("data-confirm",t.attr("data-confirm").replace("%s",o.ip))},submit:function(e){return PF.obj.modal.form_data={action:"delete",delete:"ip_ban",deleting:{id:e}},!0},complete:{success:function(e){PF.fn.growl.expirable(PF.fn._s("IP ban successfully deleted."));var t=e.responseJSON.request.deleting.id;$("[data-content=ip_ban][data-ip_ban-id="+t+"]").remove(),delete CHV.obj.ip_bans[t]}}}},CHV.fn.storage={formFields:["id","name","api_id","bucket","server","service","capacity","region","key","secret","url","account_id","account_name"],calling:!1,validateForm:function(){var e=PF.obj.modal.selectors.root,t=$("[name=form-storage-id]",e).val(),a=!0;if($.each($(":input",e),function(e,t){$(this).is(":hidden")?$(this).attr("required")&&$(this).removeAttr("required").attr("data-required",1):1==$(this).attr("data-required")&&$(this).attr("required","required"),$(this).is(":visible")&&""==$(this).val()&&$(this).attr("required")&&($(this).highlight(),a=!1)}),!a)return PF.fn.growl.call(PF.fn._s("Please fill all the required fields.")),!1;var o,i=$("[name=form-storage-capacity]",e),n=i.val();return""!==n&&(0==/^[\d\.]+\s*[A-Za-z]{2}$/.test(n)||void 0===n.getBytes()?o=PF.fn._s("Invalid storage capacity value. Make sure to use a valid format."):void 0!==CHV.obj.storages[t]&&n.getBytes()0&&(t=String(t).formatBytes(2)),r.attr("value",t))}),$("[data-combo-value]").addClass("soft-hidden"),$(n).removeClass("soft-hidden")},submit:function(){var e=PF.obj.modal.selectors.root;$("[name=form-storage-id]",e).val();return!!CHV.fn.storage.validateForm()&&(PF.obj.modal.form_data={action:"edit",edit:"storage",editing:{}},$.each(CHV.fn.storage.formFields,function(t,a){var o;o="[name=form-storage-"+a+"]","hidden"!==$(o,e).attr("type")&&(o+=":visible"),PF.obj.modal.form_data.editing[a]=$(o,e).val()}),!0)},complete:{success:function(e){var t=e.responseJSON.storage,a="[data-content=storage][data-storage-id="+t.id+"]",o=$("[data-action=toggle-storage-https]",a);$.each(t,function(e,t){$("[data-content=storage-"+e+"]",a).html(PF.fn.htmlEncode(t))}),CHV.obj.storages[t.id]=t,CHV.fn.storage.toggleBoolDisplay(o,1==t.is_https)},error:function(e){var t=e.responseJSON,a=t.error.message;PF.fn.growl.call(a)}}},add:{submit:function(){if(!CHV.fn.storage.validateForm())return!1;var e=PF.obj.modal.selectors.root;return PF.obj.modal.form_data={action:"add-storage",storage:{}},$.each(CHV.fn.storage.formFields,function(t,a){var o;"id"!=a&&(o="[name=form-storage-"+a+"]","hidden"!==$(o,e).attr("type")&&(o+=":visible"),PF.obj.modal.form_data.storage[a]=$(o,e).val())}),!0},complete:{success:function(e){var t=e.responseJSON.storage,a="[data-content=dashboard-storages-list]",o=$("[data-content=storage-dashboard-template]").html();$.each(t,function(e,t){var a=e.toUpperCase();if("is_https"==e||"is_active"==e)t=CHV.obj.storageTemplate.icon.replace("%TITLE%",CHV.obj.storageTemplate.messages[e]).replace("%ICON%",CHV.obj.storageTemplate.checkboxes[t]).replace("%PROP%",e.replace("is_",""));o=o.replace(new RegExp("%"+a+"%","g"),t||"")}),$(a).append(o),PF.fn.bindtipTip($("[data-storage-id="+t.id+"]")),0==CHV.obj.storages.length&&(CHV.obj.storages={}),CHV.obj.storages[t.id]=t},error:function(e){var t=e.responseJSON,a=t.error.message;PF.fn.growl.call(a)}}},toggleBoolDisplay:function(e,t){var a={0:e.data("unchecked-icon"),1:e.data("checked-icon")};e.removeClass(a[0]+" "+a[1]).addClass(a[t?1:0])}},CHV.fn.common={validateForm:function(e){if(void 0===e)e=PF.obj.modal.selectors.root;var t=!0;return $.each($(":input:visible",e),function(e,a){""==$(this).val()&&$(this).attr("required")&&($(this).highlight(),t=!1)}),!!t||(PF.fn.growl.call(PF.fn._s("Please fill all the required fields.")),!1)},updateDoctitle:function(e){void 0!==CHV.obj.page_info&&(CHV.obj.page_info.pre_doctitle=e,CHV.obj.page_info.doctitle=CHV.obj.page_info.pre_doctitle+CHV.obj.page_info.pos_doctitle,document.title=CHV.obj.page_info.doctitle)}},CHV.fn.user={add:{submit:function(){var e=$(PF.obj.modal.selectors.root),t=!0;return $.each($(":input",e),function(e,a){""==$(this).val()&&$(this).attr("required")&&($(this).highlight(),t=!1)}),t?(PF.obj.modal.form_data={action:"add-user",user:{username:$("[name=form-username]",e).val(),email:$("[name=form-email]",e).val(),password:$("[name=form-password]",e).val(),role:$("[name=form-role]",e).val()}},!0):(PF.fn.growl.call(PF.fn._s("Please fill all the required fields.")),!1)},complete:{success:function(e){e.responseJSON;PF.fn.growl.expirable(PF.fn._s("%s added successfully.",PF.fn._n("User","Users",1)))},error:function(e){var t=e.responseJSON;PF.fn.growl.call(PF.fn._s(t.error.message))}}},delete:{submit:function(){return PF.obj.modal.form_data={action:"delete",delete:"user",owner:CHV.obj.resource.user.id,deleting:CHV.obj.resource.user},!0}},ban:{submit:function(){return PF.obj.modal.form_data={action:"ban",ban:"user",banning:CHV.obj.resource.user.id},!0},success:function(){}}},CHV.fn.submit_resource_approve=function(){return PF.obj.modal.form_data={action:"approve",approve:CHV.obj.resource.type,from:"resource",owner:void 0!==CHV.obj.resource.user?CHV.obj.resource.user.id:null,approving:CHV.obj.resource},!0},CHV.fn.complete_resource_approve={success:function(e){e.responseJSON;$("body").fadeOut("normal",function(){redir=CHV.obj.resource.url,window.location=redir})}},CHV.fn.submit_resource_delete=function(){return PF.obj.modal.form_data={action:"delete",delete:CHV.obj.resource.type,from:"resource",owner:void 0!==CHV.obj.resource.user?CHV.obj.resource.user.id:null,deleting:CHV.obj.resource},!0},CHV.fn.complete_resource_delete={success:function(e){e.responseJSON;$("body").fadeOut("normal",function(){var e;e="album"==CHV.obj.resource.type||"image"==CHV.obj.resource.type?CHV.obj.resource.parent_url:CHV.obj.resource.user?CHV.obj.resource.user.url:CHV.obj.resource.url,void 0!==e&&(window.location=e.replace(/\/?$/,"/")+"?deleted")})}},CHV.fn.list_editor={blink:function(e){e.addClass("ui-selecting"),setTimeout(function(){e.removeClass("ui-selecting")},200)},selectionCount:function(){var e=$(PF.obj.listing.selectors.content_listing);e.each(function(){var t=$("[data-content=pop-selection]","[data-content=list-selection][data-tab="+$(this).attr("id")+"]"),a=$(PF.obj.listing.selectors.list_item+".selected",this).length;if(all_count=$(PF.obj.listing.selectors.list_item,this).length,t.toggleClass("disabled",0==a),$("[data-text=selection-count]",t).text(a>0?a:""),"images"==e.data("list")&&a>0){var o=$(PF.obj.listing.selectors.list_item+".selected[data-flag=safe]",this).length>0,i=$(PF.obj.listing.selectors.list_item+".selected[data-flag=unsafe]",this).length>0;$("[data-action=flag-safe]",t)[(i?"remove":"add")+"Class"]("hidden"),$("[data-action=flag-unsafe]",t)[(o?"remove":"add")+"Class"]("hidden")}$(this).is(":visible")&&($("body").toggleClass("--has-selection",a>0),CHV.fn.list_editor.listMassActionSet(all_count==a?"clear":"select"))})},removeFromList:function(e,t){if(void 0!==e){e=e instanceof jQuery==0?$(e):e;var a=$(PF.obj.listing.selectors.content_listing_visible),o=e.length;e.fadeOut("fast");var i=e.first().data("type"),n=parseInt($("[data-text="+i+"-count]").text())-o;CHV.fn.list_editor.updateUserCounters(e.first().data("type"),o,"-"),e.promise().done(function(){$(document).removeClass(CHV.fn.listingViewer.selectors.bodyShown.substr(1));var i={};if(e.each(function(){$("[data-id="+$(this).data("id")+"]").each(function(){var e=$(this).closest(PF.obj.listing.selectors.content_listing).attr("id");i[e]||(i[e]=0),i[e]+=1})}),1==o?$("[data-id="+$(this).data("id")+"]").remove():e.each(function(){$("[data-id="+$(this).data("id")+"]").remove()}),PF.fn.listing.columnizerQueue(),PF.fn.listing.refresh(),CHV.fn.list_editor.selectionCount(),void 0!==t&&"string"==typeof t&&PF.fn.growl.expirable(t),$(PF.obj.listing.selectors.content_listing_pagination,a).exists()||0!=$(PF.obj.listing.selectors.list_item,a).length||(n=0),0==n)a.html(PF.obj.listing.template.empty),$(PF.obj.listing.selectors.content_listing+":not("+PF.obj.listing.selectors.content_listing_visible+")").data({empty:null,load:"ajax"}),$("[data-content=list-selection][data-tab="+a.attr("id")+"]").addClass("disabled");else if(0==$(PF.obj.listing.selectors.list_item,a).length){if($(PF.obj.listing.selectors.pad_content).height(0),$("[data-action=load-more]",a).exists())return $(PF.obj.listing.selectors.content_listing_visible).data("page",0),$("[data-action=load-more]",a).click(),void(PF.obj.listing.recolumnize=!0);var s=$("[data-pagination=next]",a);if(s.exists()){var r=s.attr("href"),l=PF.fn.deparam(r);return"page"in l&&l.page>1&&(r=r.changeURLParameterValue("page",l.page-1)),void(window.location=r)}}})}},deleteFromList:function(e){if(void 0===t)var t=!0;e=e instanceof jQuery==0?$(e):e;this.removeFromList(e,t?PF.fn._s("The content has been deleted."):null)},moveFromList:function(e,t){if(void 0===t)t=!0;e=e instanceof jQuery==0?$(e):e;this.removeFromList(e,t?PF.fn._s("The content has been moved."):null)},toggleSelectItem:function(e,t){if("boolean"!=typeof t)t=!e.hasClass("selected");var a,o,i,n=$(".viewer").is(":visible")?$("[data-type=image][data-id="+e.attr("data-id")+"]"):e,s=$("[data-action=select] .btn-icon",n);n.hasClass("unselect")||(n.addClass("unselect"),t?(Boolean(window.navigator.vibrate)&&window.navigator.vibrate([15,125,25]),n.addClass("selected"),a=s.data("icon-selected"),o=s.data("icon-unselected"),i=PF.fn._s("Unselect")):(n.removeClass("selected ui-selected"),a=s.data("icon-unselected"),o=s.data("icon-selected"),i=PF.fn._s("Select")),s.removeClass(o).addClass(a),setTimeout(function(){n.removeClass("unselect")},350),$("[data-action=select] .label",n).text(i),CHV.fn.list_editor.selectionCount())},selectItem:function(e){this.toggleSelectItem(e,!0)},unselectItem:function(e){this.toggleSelectItem(e,!1),e.removeClass("selected")},selectAll:function(e){this.selectItem($(PF.obj.listing.selectors.list_item+":visible:not(.selected)")),this.listMassActionSet("clear"),e.stopPropagation()},clearSelection:function(e){var t=$(PF.obj.listing.selectors.list_item+".selected",PF.obj.listing.selectors[e?"content_listing":"content_listing_visible"]);this.unselectItem(t),this.listMassActionSet("select")},listMassActionSet:function(e){var t="select"==e?"clear":"select",a=$("[data-text-select-all][data-action=list-"+t+"-all]:visible"),o=a.data("text-"+e+"-all");a.text(o).attr("data-action","list-"+e+"-all"),PF.fn.close_pops()},updateItem:function(e,t,a,o){if(e instanceof jQuery==0)e=$(e);var i=e.data("type"),n="image"==i?t.album:t;if(this.addAlbumtoModals(n),$("option[value="+n.id_encoded+"]","[name=form-album-id]").html(PF.fn.htmlEncode(n.name_with_privacy_readable_html)),void 0===a)a="edit";if("edit"==a||"move"==a){if("move"==a&&"album"==CHV.obj.resource.type)return void CHV.fn.list_editor.moveFromList(e,o);e.attr("data-description",t.description),"image"==i?(void 0!==t.title&&(e.attr("data-title",t.title),e.find("[title]").attr("title",t.title),$("[data-text=image-title]",e).text(PF.fn.htmlEncode(t.title))),void 0!==t.title_truncated&&$("[data-text=image-title-truncated]",e).html(PF.fn.htmlEncode(t.title_truncated)),void 0!==t.category_id&&e.attr("data-category-id",t.category_id),e.attr({"data-album-id":n.id_encoded,"data-flag":1==t.nsfw?"unsafe":"safe"}),$("[data-content=album-link]",e).attr("href",n.url)):e.attr({"data-privacy":n.privacy,"data-password":n.password,"data-name":n.name}),e.attr("data-privacy",n.privacy),$("[data-text=album-name]",e).html(PF.fn.htmlEncode(n.name)),PF.fn.growl.expirable("edit"==a?PF.fn._s("The content has been edited."):PF.fn._s("The content has been moved."))}},addAlbumtoModals:function(e){var t=!1;$("[name=form-album-id]","[data-modal]").each(function(){e.id_encoded&&!$("option[value="+e.id_encoded+"]",this).exists()&&($(this).append(''+e.name_with_privacy_readable_html+" "),t=!0)}),t&&CHV.fn.list_editor.updateUserCounters("album",1,"+")},updateAlbum:function(e){$("[data-id="+e.id_encoded+"]").each(function(){""!==e.html&&($(this).after(e.html),$(this).remove())})},updateUserCounters:function(e,t,a){if(void 0===a)a="+";var o,i,n=$("[data-text="+e+"-count]"),s=$("[data-text="+e+"-label]"),r=(t=parseInt(t),parseInt(n.html()));switch(a){case"+":o=r+t;break;case"-":o=r-t;break;case"=":o=t}i=o-r;var l=$("[data-text=total-"+n.data("text")+"]"),d=$("[data-text="+l.data("text")+"-label]"),c=parseInt(l.html()),u=c+i;n.text(o),l.text(u),s.text(s.data(1==o?"label-single":"label-plural")),d.text(s.data(1==u?"label-single":"label-plural"))},updateMoveItemLists:function(e,t,a){if(CHV.fn.list_editor.clearSelection(),/image/.test(t))"image"==t?CHV.fn.list_editor.updateItem("[data-type=image][data-id="+a.data("id")+"]",e.image,"move"):(a.each(function(){CHV.fn.list_editor.updateItem("[data-type=image][data-id="+$(this).data("id")+"]",e,"move",!1)}),PF.fn.growl.expirable(PF.fn._s("The content has been moved.")));else{if(CHV.fn.list_editor.moveFromList(a,!1),PF.fn.growl.expirable(PF.fn._s("The content has been moved.")),e.album)if(void 0!==e.albums_old?"true"==e.request.album.new:"true"==e.request.editing.new_album){CHV.fn.list_editor.addAlbumtoModals(e.album);var o=parseInt($("[data-text=album-count]").text())-1;$(PF.obj.listing.selectors.pad_content).each(function(){var t=$(this).find(PF.obj.listing.selectors.list_item).length;if(0!=t){var a=PF.fn.deparam($(this).closest(PF.obj.listing.selectors.content_listing).data("params"));"date_desc"!=a.sort&&o!=t||$(this)["date_desc"==a.sort?"prepend":"append"](e.album.html)}})}else CHV.fn.list_editor.updateAlbum(e.album);PF.fn.listing.columnizerQueue(),PF.fn.listing.refresh(0)}}},CHV.fn.import={errorHandler:function(e){PF.fn.growl.call(e.error.message)},reset:function(e){e=parseInt(e);CHV.obj.import.working[e].stats=$.ajax({type:"POST",data:{action:"importReset",id:e}}),CHV.obj.import.working[e].stats.complete(function(t){var a=t.responseJSON;if(a){var o=CHV.fn.import.parseTemplate(a.import);$("[data-id="+a.import.id+"]",CHV.obj.import.sel.root).replaceWith(o),"working"!=a.import.status&&clearInterval(CHV.obj.import.working[e].interval)}})},updateStats:function(e){e=parseInt(e);"readyState"in CHV.obj.import.working[e].stats&&4!=CHV.obj.import.working[e].stats.readyState?console.log("Aborting stats timeout call (previous call is still not ready)"):(CHV.obj.import.working[e].stats=$.ajax({type:"POST",data:{action:"importStats",id:e}}),CHV.obj.import.working[e].stats.complete(function(t){var a=t.responseJSON;if(a){var o=CHV.fn.import.parseTemplate(a.import);$("[data-id="+a.import.id+"]",CHV.obj.import.sel.root).replaceWith(o),"working"!=a.import.status&&clearInterval(CHV.obj.import.working[e].interval)}}))},delete:{submit:function(e){return PF.obj.modal.form_data={action:"importDelete",id:e},!0},deferred:{success:function(e){var t=e.responseJSON;PF.fn.growl.call(PF.fn._s("Import ID %s removed",t.import.id)),$("[data-id="+t.import.id+"]",CHV.obj.import.sel.root).remove(),1==$("li",CHV.obj.import.sel.root).size()&&$(CHV.obj.import.sel.root).addClass("hidden")},error:function(e){CHV.fn.import.errorHandler(e.responseJSON)}}},parseTemplate:function(e,t){var a=CHV.obj.import.rowTpl;for(var o in CHV.obj.import.importTr)void 0!==e[o]&&(a=a.replaceAll("%"+o+"%",e[o]));a=a.replaceAll("%parse%",e.options.root),a=a.replaceAll("%shortParse%",e.options.root.charAt(0)),a=a.replaceAll("%displayStatus%",CHV.obj.import.statusesDisplay[e.status]);var i=$($.parseHTML(a)).attr("data-object",JSON.stringify(e));return i}},CHV.fn.Palettes={timeout:{},get:function(){return($("html").get(0).className.match(/(^|\s)palette-\S+/g)||[]).join(" ")},set:function(e){$("html").attr("data-palette",e).removeClass(this.get()).addClass("palette-"+e)},preview:function(e){$("html").removeClass(this.get()).addClass("palette-"+e)},save:function(){clearTimeout(this.timeout),this.timeout=setTimeout(function(){$.ajax({type:"POST",data:{action:"paletteSet",palette_id:CHV.obj.config.palettesId[$("html").attr("data-palette")]},cache:!1})},400)}},CHV.fn.license={set:{submit:function(){var e=$(PF.obj.modal.selectors.root),t=!0;return $.each($(":input",e),function(e,a){""==$(this).val()&&$(this).attr("required")&&($(this).highlight(),t=!1)}),t?(PF.obj.modal.form_data={action:"set-license-key",key:$("[name=chevereto-license-key]",e).val()},!0):(PF.fn.growl.call(PF.fn._s("Please fill all the required fields.")),!1)},complete:{success:function(e){let t=e.responseJSON,a=$("[data-action=upgrade]");if("free"===CHV.obj.system_info.edition)return a.removeClass("hidden"),void a.trigger("click");PF.fn.growl.call(PF.fn._s(t.success.message))},error:function(e){var t=e.responseJSON;PF.fn.growl.call(PF.fn._s(t.error.message))}}}};
\ No newline at end of file
diff --git a/content/legacy/themes/Peafowl/lib/peafowl.js b/content/legacy/themes/Peafowl/lib/peafowl.js
index 5651961..9186f7e 100644
--- a/content/legacy/themes/Peafowl/lib/peafowl.js
+++ b/content/legacy/themes/Peafowl/lib/peafowl.js
@@ -454,7 +454,6 @@ $(function () {
deferred: window[$target.data("ajax-deferred")]
};
- // Window functions failed? Maybe those are named fn...
if (typeof submit_function !== "function" && $target.data("submit-fn")) {
var submit_fn_split = $target.data("submit-fn").split(".");
submit_function = window;
diff --git a/content/legacy/themes/Peafowl/snippets/footer.js.php b/content/legacy/themes/Peafowl/snippets/footer.js.php
index 564bd57..c25e63f 100644
--- a/content/legacy/themes/Peafowl/snippets/footer.js.php
+++ b/content/legacy/themes/Peafowl/snippets/footer.js.php
@@ -15,6 +15,7 @@ use function Chevereto\Legacy\get_captcha_invisible_html;
use function Chevereto\Legacy\get_translation_table;
use function Chevereto\Legacy\getSetting;
use function Chevereto\Legacy\getSettings;
+use function Chevereto\Vars\env;
// @phpstan-ignore-next-line
if (!defined('ACCESS') || !ACCESS) {
@@ -116,7 +117,10 @@ if (Handler::cond('captcha_needed') && getSetting('captcha_api') == '3') {
CHV.obj.logged_user = ;
- CHV.obj.system_info = get_app_version()]); ?>;
+ CHV.obj.system_info = get_app_version(),
+ 'edition' => env()['CHEVERETO_EDITION'],
+ ]); ?>;
div{margin:0;cursor:pointer;position:relative;font-size:1em;inset-inline-end:0;margin-inline-start:auto}.list-item-buttons>div,.list-item-image-tools>div,html.--idle .list-item-image-tools>div[data-action=viewer-close]{opacity:.5}.list-item .hover-display.list-item-image-tools,.list-item-image-tools>div:hover,.list-item.selected div.tool-select{opacity:1}.list-item.--over .list-item-image-tools>div{opacity:.5}.list-item-image-tools>div{float:right}[dir=rtl] .list-item-image-tools>div{float:left}.list-item-image-tools>div,.list-item-image-tools>div *{display:block;color:var(--listItemText)}.list-item-image-tools>div span{float:right}[dir=rtl] .list-item-image-tools>div span{float:left}.list-item-image-tools>div .label{font-size:.86em}.list-item-image-tools>div .btn-icon{font-size:1em}.phone .list-item:not(.selected):not(.viewer) .tool-select{display:none}.list-item-image-tools>div .label{text-transform:uppercase;padding-inline-start:1em;padding-inline-end:0;display:none;height:100%}.list-item-image-tools>div:hover .label{display:block}.small-cols .list-item-image-tools>div:hover .label{display:none}[data-flag=safe] .label-flag-safe.btn-icon,[data-flag=safe] .list-item-image-tools>div:hover .label.label-flag-safe,[data-flag=unsafe] .label-flag-unsafe.btn-icon,[data-flag=unsafe] .list-item-image-tools>div:hover .label.label-flag-unsafe{display:none}.unsafe-blur-on .list-item .list-item-thumbs div[data-flag=unsafe] a,.unsafe-blur-on [data-flag=unsafe]:not(.current) .image-container{filter:blur(8px);-webkit-filter:blur(8px)}.unsafe-blur-on .list-item .list-item-thumbs div[data-flag=unsafe]:not(.selected):not(.ui-selecting) a,.unsafe-blur-on [data-flag=unsafe]:not(.selected):not(.ui-selecting):not(.current) .image-container{transform:scale(1.2)}.unsafe-blur-on .list-item:hover .list-item-thumbs div[data-flag=unsafe] a,.unsafe-blur-on [data-flag=unsafe]:hover:not(.selected):not(.ui-selecting):not(.current) .image-container{filter:none;-webkit-filter:none;transform:scale(1)}.list-item-buttons>div,.list-item-image-tools>div,.list-item-image-tools>div .btn-icon{width:2.2em;height:2.2em;line-height:2.2em}.list-item-image-tools>div .btn-icon{color:inherit;text-align:center}.list-item-album .tool-flag{display:none}.list-item .list-item-avatar-cover,.list-item .list-item-avatar-cover>*{border-radius:100%}.list-item .image-container.--bodyEmpty .empty,.list-item .list-item-avatar-cover{position:absolute;border:0;left:50%;top:50%;transform:translate(-50%,-50%)}.list-item .list-item-avatar-cover{height:60%;width:60%;max-height:160px;max-width:160px;background:var(--backgroundLightAlpha);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.list-item .list-item-avatar-cover>*{width:100px;height:100px}.list-item .list-item-avatar-cover img{height:auto;box-shadow:2px 2px 2px rgba(0,0,0,.3)}.selected .list-item-image,.ui-selecting .list-item-image,.unselect .list-item-image{background:var(--viewerBackground)}body#moderate .list-item-like,body#moderate .viewer-kb-key[data-key="L"]{display:none}.list-item-buttons{color:#fff;position:absolute;inset-inline-end:0;bottom:0}.list-item-buttons>div{padding:10px;cursor:pointer;float:left;font-size:1em;margin-inline-start:-5px}[dir=rtl] .list-item-buttons>div{float:right}.list-item .list-item-buttons>div:hover{opacity:1}.list-item-like .btn-like{display:none}.list-item-like .btn-like.btn-liked,.list-item-like .btn-like:hover{opacity:1}[data-liked="0"] .list-item-like .btn-like.btn-unliked{display:block}[data-liked="1"] .list-item-like .btn-like.btn-liked{display:block}.list-item-play-gif,.list-item-play-gif *{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEgAAACdCAMAAAAgwM7pAAAAAXNSR0IB2cksfwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAcVQTFRFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA///9///+///+///+///+///+///9///8///1///5///9///9///u///f///+///+///+///9///q///z///9///+///9///8///9///+///+///+///+///8///w///9///+///3///8///9///2///9///7///t///+///8///b///9///9///M///+///y//+A///9///r///7///+///7///3///+///8//+////8//+q///8///+///z///+///+///9///6///m///7///j///7///9///+///+///9///9///6///+///+///+///7///V///+///9///5///9///+///+///8///9///6///8///+///9///4///+///+///+///+///4///9///5///+///v///7///9///8///o///9///9///8///6///y///9///0///+///x///+///6////////////vBUIqgAAAJd0Uk5TABQmNkZSWF5iCipmAiRKZAQuXCwYVDoMUBpgIiil+enVw7GJUBoujZkOCPf/45sMFnDPbEqhtcfZ714Qi9EgWI8adDgO21oGbmoEyxICcgw87Toe+1QEVgJg/RTru344CkIIRnrx55VmMNf1wT4GyaMoh+HlTJcyYt+pJrfTzd0ipyqtEECTXAp8aGQ2FIMWxRKzLrhG/4D2XIEAAAQlSURBVHiczZjnWxNBEMYPCCThgNC7IIKCyaCIdJCmgIooYkFCEwsqTRRQQREb9l7u7/UuuZhccm1vX5+H99Ne2d/d7uzOzowgmCgpOcWVmub2eNxpqa6U5CSzdw3lTXe5xTi5XeleNkpGZpYvnhKWLyszwzYmOydXnxJWbk62PU5ewpAShphnA5NfYIVRVJBvgckoNJibhLkqNJ2qomJ7GEXFRcacklL7HFEsLTHilHlYOKLoKdPnlNucnqh85br/w8yRSTr/VMI4rrA8CfNUxDTPUZXG2S6Dwe5aFWvXU6FTjigWxnLyHUx0RL7Y3WJrfxmpIMrJ4+GI4j9fkG3pN8zljvinHD6OKOaopjf1h3aUG14CmbwcUcwMgbL4QVkKx8uxhiLyefltH5ayAlwIkEsGcS6isNzy+Y7giGKSkIwBJQspGFAKZq6V2U7FgFKFNAwoDWN9xf6OTqFEeXAg2NBgkw0zP2xBwrYIbNPC3AjMseFcLcT5pyOPI9gBiTuyYUEELKzBBVqw0A8XjOLCY1jAjkshYEkNLs3CJX64VBSXHOPSdVwBAVfSEGBFFkWgso+AK0QJsNJYSN48RLFOFaR8CNe+isr9VQeqaw46636otu5wqOEPkKr6I0dZKQ3HGuWOx8MXTc0trW3tIVQHG6azK/QTJ7pjb3b39La29rFg/P3K19vrTrJ9PUGnBmTMwOCQySunB/ptgE4SVZ45a/rKMFHLOUvQSP/5CxavjF6ULThm46csdamV6PIVBOlql0waN3x8jQE1ETQkTZ6Y6tZ/YkQK6q6QkWmiJgaQ0BGMLH2tZoiqWMYmCLPnr+vcnQvSFNMGMNCNegreBHCEW0TVCM7kbZpn9jV6ukN011nPe1pLX6YFNotFdHSRJmKvlwLLzn5oZZHua26YuR9TrRI9cNpXozmihxCQsEbrGFA1amwbzIeUgSaJHqnNx0tPeEib1Ki2tmiNB7RKU2priTZ5QE+fRQa0Tc95QFGt0zQGFKCtPQaCDW2bhjGgJdrh6f5ia1BtvaQ2HlAzVaqtV683eEDRLcKnmE3LJ5gbkR3bUwgI5WrntGe9/41TkPY4WlkI7DrjDGkPSL/jI/twgDR++q3jIGLsneZSCWveOyPFCRVoCdfriSChn7ArB6MOc804fZDD4xGmHrMf/Xq3lYB9lIUjB+yfdB80VC10MnCUFOIzy4eNOSbpkW1ZpFm2ZSvx889YpqLLchpeb2mYGqIpi+R421Zy/GUnlK7rLhFVX+ftpOvCkFpAmLXzsrk6ayuUksbwt9ib3eO935/9YEVNhoosql16mn9GiixOLP6r9m14nvroX9mnjstnjUxXzPMUovaIfv8BgSQJhJIkEEqSQChJAqEkCYSSJBBKkkCo/wICDQ002SDzgxYkaIuANi0X5i8hpIpr8W0lCwAAAABJRU5ErkJggg==);position:absolute;top:50%;inset-inline-start:50%}.list-item-play-gif{scale:.6;width:72px;height:72px;margin-inline-start:-36px;margin-top:-36px;background-position:0 0;cursor:pointer;transition:all 350ms}@media (min-width:320px){.list-item-play-gif{scale:.8}}@media (min-width:480px){.list-item-play-gif{scale:1}}.list-item-play-gif>span{width:66px;height:66px;margin-inline-start:-33px;margin-top:-33px;background-position:0 -73px}.list-item-play-gif--loading>span,.list-item-play-gif:hover>span{-webkit-animation:spin 2s linear infinite;animation:spin 2s linear infinite}.list-item-play-gif>i{width:32px;height:17px;margin-inline-start:-16px;margin-top:-9px;background-position:0 -140px}@-webkit-keyframes spin{from{-webkit-transform:rotate(0)}to{-webkit-transform:rotate(360deg)}}@keyframes spin{from{transform:rotate(0)}to{transform:rotate(360deg)}}.settings-group{display:none}.settings-group-isolated{display:block}.stats-block,a.stats-block{text-decoration:none;color:inherit;padding:10px;border-radius:4px}a.stats-block:hover{color:var(--linkText);background:var(--bodyEmpty)}.tone-dark a.stats-block:hover{background:#222}.text-align-center .stats-big-number{text-align:center}.stats-big-number .number{font-size:44px;font-weight:400}.stats-big-number .number span{font-size:24px}.stats-big-number .label{display:block}.tone-dark .text-content code{border-color:#222;background:#111}#home-top-bar-placeholder{margin-top:-65px}#home-cover{width:100%;background-position:center center;background-color:#333;background-size:cover;color:#fff;position:relative}body.landing #home-cover,body.split #home-cover{margin:0;padding:0;height:100vh;height:100dvh}body.split #home-cover{margin:0;height:500px}#home-cover-content{position:relative;text-align:center;height:100%;top:50px}body.landing #home-cover-content,body.split #home-cover-content{height:calc(100% - 50px);position:relative;display:flex;align-items:center;justify-content:center;flex-direction:column}#home-cover-content>*{margin:10px 0}#home-cover-content h1,#home-cover-content p{text-shadow:2px 2px 8px rgba(0,0,0,.25)}#home-cover-content h1{font-size:2.4em;line-height:120%;font-weight:600}@media (min-width:768px){#home-cover-content h1{font-size:2.7em}}@media (min-width:992px){#home-cover-content h1{font-size:3em}}#home-cover-content p{font-size:22px}.home-buttons{text-align:center}.home-buttons a{font-size:16px;text-transform:uppercase;min-height:50px;line-height:1.5;height:auto;text-align:center;letter-spacing:2px;padding:12px 30px}#home-pics-feature{height:700px;overflow:hidden;position:relative;margin:10px 0}#home-pics-feature.empty{height:auto}#home-pics-feature-overlay{background:linear-gradient(to bottom,rgba(255,255,255,0) 0,rgba(255,255,255,1) 100%);width:100%;height:200px;position:absolute;bottom:0;z-index:1}.tone-dark #home-pics-feature-overlay{background:linear-gradient(to bottom,rgba(0,0,0,0) 0,#000 100%)}#home-pics-feature.empty #home-pics-overlay{display:none}#home-join{margin:40px 0;padding-bottom:40px}#home-join h2{font-size:38px}#home-join p{margin:20px 0;font-size:18px}.ad-banner{margin:10px;text-align:center}.ad-banner:empty{margin:0;height:0}.ad-banner img{display:block;margin:0 auto}.ad-banner-size-300x250{width:300px;height:250px}.ad-banner-size-336x280{width:336px;height:280px}.ad-banner-size-728x90{width:728px;height:90px}.ad-banner-size-300x600{width:300px;height:600px}.ad-banner-size-320x100{width:320px;height:100px}.ad-banner-size-320x50{width:320px;height:50px}.ad-banner-size-468x60{width:468px;height:60px}.ad-banner-size-234x60{width:234px;height:60px}.ad-banner-size-120x600{width:120px;height:600px}.ad-banner-size-120x240{width:120px;height:240px}.ad-banner-size-160x600{width:160px;height:600px}.ad-banner-size-300x1050{width:300px;height:1050px}.ad-banner-size-970x90{width:970px;height:90px}.ad-banner-size-970x250{width:970px;height:250px}.ad-banner-size-250x250{width:250px;height:250px}.ad-banner-size-200x200{width:200px;height:200px}.ad-banner-size-180x150{width:180px;height:150px}.ad-banner-size-125x125{width:125px;height:125px}#banner_before_home_cover{margin:0;padding:10px;background:#000}#banner_image_image-viewer_foot,#banner_image_image-viewer_top{height:90px;margin-inline-start:auto;margin-inline-end:auto}body#consent-screen,body#maintenance{padding:0;margin:0;width:100%;height:100%}#consent-screen-cover,#maintenance-cover{height:100%;background-position:center center;background-color:#333;background-size:cover}#consent-screen-cover-inner,#maintenance-cover-inner{background:rgba(0,0,0,.25);width:100%;height:100vh;height:100dvh}#consent-screen-cover-content,#maintenance-cover-content{color:#fff;padding:40px;text-align:center;position:relative;top:50%;transform:translateY(-50%)}#maintenance-cover-content .logo{display:inline-block;margin-bottom:20px;color:#fff;text-decoration:none;font-size:2.5em}#maintenance-cover-content .logo img{height:30px}#maintenance-cover-content h1{font-size:2.5em;margin-bottom:20px}#maintenance-cover-content p{font-size:1.2em}#consent-screen-cover-inner{background:0 0}#consent-screen-cover-src{width:100%;height:100%;position:absolute;top:0;inset-inline-start:0;background-position:center;background-size:cover}#consent-screen-content{background:var(--menuBackground);color:var(--menuItemText);margin:0 auto;padding:30px;box-shadow:0 0 50px 6px rgba(0,0,0,.25);top:50%;position:relative;transform:translateY(-50%);border-radius:10px;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px)}#consent-screen-content h1{line-height:2em}#consent-screen-content .logo-consent{width:2em;height:auto;display:inline-block;margin-inline-end:10px;vertical-align:top}#fullscreen-modal-box .image-preview{margin-bottom:20px;overflow:auto;text-align:center}.image-preview-container{position:relative;display:block;float:left;width:20%}[dir=rtl] .image-preview-container{float:right}.image-preview-container .empty{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:3em}#fullscreen-modal-box .image-preview:empty{display:none}#fullscreen-modal-box .image-preview .canvas{border:0;display:inline-block;margin:0 auto;max-width:100%;max-height:500px}#fullscreen-modal-box .image-preview .thumb{font-size:0;border:0;display:block;background-size:cover;background-position:center;width:100%}.content-password-gate{background:#f9f9f9;border-radius:10px;padding:30px;font-size:16px;text-align:center}.tone-dark .content-password-gate{background:0 0}.content-password-gate h1{font-size:30px;margin-bottom:10px}.content-password-gate h1 .icon{display:block;font-size:60px;margin-bottom:10px}.content-password-gate .g-captcha>div{margin-inline-end:auto;margin-inline-start:auto}#home-cover-slideshow{position:absolute;top:0;inset-inline-end:0;bottom:0;inset-inline-start:0;overflow:hidden}.home-cover-img{position:absolute;inset-inline-start:0;top:0;width:100%;height:100%;background-size:cover;background-repeat:no-repeat;background-position:center center;display:block;opacity:0;transform:translateZ(0);-webkit-transform:translateZ(0);-webkit-backface-visibility:hidden;backface-visibility:hidden}.home-cover-img.animate-in,.home-cover-img.animate-in--alt{-webkit-animation-name:slideshow;animation-name:slideshow;-webkit-animation-duration:10s;animation-duration:10s;-webkit-animation-timing-function:linear;animation-timing-function:linear;-webkit-animation-fill-mode:forwards;animation-fill-mode:forwards}.home-cover-img.animate-in--alt{opacity:1;-webkit-animation-name:slideshow--alt;animation-name:slideshow--alt}.home-cover-img.animate-end{opacity:1;transform:scale(1.1);-webkit-animation:none;animation:none}@-webkit-keyframes slideshow{0%{opacity:0}20%{opacity:1}100%{opacity:1;transform:scale(1.1)}}@keyframes slideshow{0%{opacity:0}20%{opacity:1}100%{opacity:1;transform:scale(1.1)}}@-webkit-keyframes slideshow--alt{100%{transform:scale(1.1)}}@keyframes slideshow--alt{100%{transform:scale(1.1)}}@supports (-ms-accelerator:true){.home-cover-img.animate-end{transform:scale(1)}@-webkit-keyframes slideshow{0%{opacity:0}20%{opacity:1}}@keyframes slideshow{0%{opacity:0}20%{opacity:1}}@-webkit-keyframes slideshow--alt{100%{transform:scale(1)}}@keyframes slideshow--alt{100%{transform:scale(1)}}}#home-cover-slideshow::after{content:"";z-index:1;height:50px;position:absolute;top:0;left:0;right:0;background:linear-gradient(to bottom,rgba(0,0,0,.1) 0,rgba(0,0,0,0) 100%)}#dashboard-settings{min-height:400px}#dashboard .form-content,#settings .form-content{padding-bottom:60px}.footer{color:var(--bodyTextDisabled);font-size:10px;line-height:20px;text-align:center;width:100%;position:absolute;bottom:0;z-index:900;padding:5px;line-height:1}body#upload .footer{background:var(--bodyBackground)}.footer a{color:inherit}body.--viewer-shown{overflow:hidden}.viewer{background:#000;position:fixed;top:0;right:0;bottom:0;left:0;z-index:999}.viewer .list-tool{display:initial!important}.js .viewer{display:block;touch-action:pinch-zoom!important}.viewer--hide{opacity:0}.viewer--show{opacity:1}.viewer.viewer--no-cursor,.viewer.viewer--no-cursor *{cursor:none}.viewer-content{position:relative;top:0;inset-inline-start:0;width:100%;height:100%}.viewer-content img{position:absolute;max-height:100vh;max-height:100dvh;max-width:100vw;max-width:100dvw;transform:translate(-50%,-50%);top:50%;left:50%}.viewer[data-cover="1"] .viewer-content img{width:100vw;width:100dvw;height:100vh;height:100dvh;-o-object-fit:cover;object-fit:contain}.viewer-close,.viewer-wheel>div{color:#fff;top:0;font-size:1em;text-shadow:1px 1px 0 rgba(0,0,0,.5);text-align:center}.viewer-close{position:absolute;width:2.4em;height:2.4em;line-height:2.4em;cursor:pointer;inset-inline-end:-2.4em;z-index:500}.viewer:hover .hover-display.viewer-close{inset-inline-end:2px}.viewer-wheel>div{position:fixed;bottom:0;width:calc(1em + 20px);cursor:pointer;padding:10px;opacity:.7;display:none}.viewer-wheel>div:hover{opacity:1}.viewer--nav-prev .viewer-wheel-prev{inset-inline-start:0;display:block}.viewer--nav-next .viewer-wheel-next{inset-inline-end:0;display:block}.viewer-wheel>div>.icon{position:absolute;top:50%;transform:translateY(-50%);display:block;font-size:1.5em}.viewer-foot{padding:10px;position:absolute;left:0;right:0;bottom:0;height:60px;background:linear-gradient(to bottom,transparent 0,rgba(0,0,0,.6) 100%);display:flex;flex-wrap:wrap;flex-flow:row}.viewer-owner{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#fff;float:left}.viewer-owner .btn{background:rgba(0,0,0,.3);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:inherit;border-color:#fff;opacity:.8}.viewer-owner .btn.btn-cta:hover{background:#fff;color:#000;border-color:transparent;opacity:1}.viewer-owner .user-image{font-size:40px;width:1em;height:1em;vertical-align:bottom;color:#fff}.viewer-owner .user-name{font-size:initial;text-decoration:none;vertical-align:middle;line-height:40px;color:inherit}.viewer-owner a.user-name:hover{color:var(--backgroundLightAlpha)}.viewer-owner{order:1}.viewer-kb{font-size:.86em;flex-grow:1;order:2;text-align:center}.viewer .viewer-kb{padding-inline-end:190px}.device-mobile .viewer-kb{display:none}.viewer-kb-input{display:inline-block}.viewer .viewer-kb-input{color:#fff}.viewer-kb-key{display:inline-block;margin:10px;margin-inline-start:0}.viewer-kb-key:first-child{margin-inline-start:10px}.viewer-kb-key kbd{border:1px solid rgba(0,0,0,.5);background:rgba(120,120,120,.5);-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);padding:4px 6px;border-radius:2px;display:inline-block;margin-inline-end:5px;line-height:1}.viewer-like{transform:none;top:auto;bottom:20px;inset-inline-end:20px;position:absolute}.viewer:hover .hover-display--flex{display:flex}.--width-auto{width:auto}.--height-auto{height:auto}html.--idle .viewer,html.--idle .viewer *{cursor:none!important}html .fullscreen-show{display:none}:-webkit-full-screen .fullscreen-hide{display:none}:-ms-fullscreen .fullscreen-hide{display:none}:fullscreen .fullscreen-hide{display:none}:-webkit-full-screen .fullscreen-show{display:block}:-ms-fullscreen .fullscreen-show{display:block}:fullscreen .fullscreen-show{display:block}a.image-container{-webkit-tap-highlight-color:transparent}a{color:var(--linkText);outline:0;text-decoration:none}.content-section,.input-label{margin-top:20px;margin-bottom:20px;position:relative}.content-section:first-child,.input-label:first-child{margin-top:0}.input-label .input{width:100%;margin-bottom:0}.input-label .input+.input{margin-top:5px}.input-label .input-label{margin-bottom:10px}.input-label .input-label .label{font-weight:400}.input-label label .caption,.input-label label .optional{font-weight:400;font-size:.92em}.input-label label .caption:before,.input-label label .optional:before{content:"("}.input-label label .caption:after,.input-label label .optional:after{content:")"}.input-label-below{margin-top:5px;clear:both}.background-cover{position:fixed;top:0;right:0;bottom:0;left:0;background-position:center center;background-size:cover}.input-with-button{position:relative}.input-with-button input::-webkit-inner-spin-button,.input-with-button input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.input-with-button input[type=number]{-moz-appearance:textfield}.input-with-button button{background:0 0;position:absolute;inset-inline-end:0;top:50%;transform:translateY(-50%);border:none;font-size:22px;width:1em;height:1em;outline:0;color:var(--colorAccent)}.input-with-button button:focus,.input-with-button button:hover{color:var(--colorAccentStrong)}#top-left{position:fixed;padding:5px;inset-inline-start:0;top:0}.top-button{padding:5px}.top-button .menu-box{margin-top:5px}.top-button-icon{font-size:16px;color:#fff;cursor:pointer;text-shadow:1px 1px 0 rgba(0,0,0,.15)}.background-default{background:#2ecc71;background:linear-gradient(to bottom,#2ecc71 0,#3498db 100%)}.content-box{position:relative;margin:20px}.content-box-text :first-child{margin-top:0}.content-box-text :last-child{margin-bottom:0}.logo{max-height:50px;max-width:220px;margin-bottom:20px}.card-box{min-width:270px;width:calc(100vw - 40px)}.access-box-content{background:var(--bodyBackground)}.fancy-box-heading{font-size:22px;margin:20px 0 30px 0}.fancy-fieldset{border:0;padding:0;margin:0}.fancy-fieldset input:not([type=checkbox]),.fancy-fieldset input[type=text],.fancy-fieldset select,.fancy-fieldset textarea{outline:0;padding:10px 0;width:100%;border-radius:0;border-color:transparent;background:0 0;box-shadow:none}.fancy-fieldset .checkbox-label input[type=checkbox]{width:auto;vertical-align:middle;margin:0 0 0 -20px}.fancy-fieldset select{-webkit-appearance:none;-moz-appearance:none;appearance:none}.fancy-fieldset input,.fancy-fieldset select{padding:10px 0;border-top:transparent;border-inline-start:transparent;border-inline-end:transparent}.fancy-fieldset input:focus,.fancy-fieldset input:focus[type=text],.fancy-fieldset select:focus,.fancy-fieldset textarea:focus{border-color:var(--colorAccent)}.fancy-fieldset .input-with-button input[type=password]{padding-inline-end:30px}.fancy-fieldset>div:last-child{margin-bottom:inherit}.fancy-fieldset .label{line-height:1.5}.fancy-fieldset .input-label:last-child{margin-bottom:0}.fancy-fieldset .checkbox-label{margin:0}a.login-provider-button{position:relative;text-decoration:none;display:inline-block;font-size:1em;margin:10px 0;background:#d9d9d9;padding:8px;text-decoration:none;display:block;color:#fff;border-radius:3px;text-align:center}a.login-provider-button .text{margin-inline-start:5px}a.login-provider-button--facebook{background-color:#4267b2}a.login-provider-button--twitter{background-color:#1da1f2}a.login-provider-button--google{background-color:#ea4335}a.login-provider-button--vkontakte{background-color:#45668e}a.login-provider-button--apple{background-color:#000}a.login-provider-button--amazon{background-color:#f90}a.login-provider-button--bitbucket{background-color:#2684ff}a.login-provider-button--discord{background-color:#738adb}a.login-provider-button--dribbble{background-color:#e94c88}a.login-provider-button--dropbox{background-color:#007ee5}a.login-provider-button--github{background-color:#333}a.login-provider-button--gitlab{background-color:#fc6d26}a.login-provider-button--instagram{background-color:#e1306c}a.login-provider-button--linkedin{background-color:#006192}a.login-provider-button--mailru{background-color:#168de2}a.login-provider-button--medium{background-color:#00ab6c}a.login-provider-button--odnoklassniki{background-color:#ed812b}a.login-provider-button--orcid{background-color:#a5ce37}a.login-provider-button--reddit{background-color:#ff4500}a.login-provider-button--spotify{background-color:#1db954}a.login-provider-button--stackexchange{background-color:#1e5397}a.login-provider-button--steam{background-color:#00adee}a.login-provider-button--strava{background-color:#fc4c02}a.login-provider-button--telegram{background-color:#08c}a.login-provider-button--tumblr{background-color:#35465c}a.login-provider-button--twitchtv{background-color:#9146ff}a.login-provider-button--wechat{background-color:#7bb32e}a.login-provider-button--windowslive{background-color:#107c10}a.login-provider-button--wordpress{background-color:#21759b}a.login-provider-button--yandex{background-color:#fc0}a.login-provider-button--yahoo{background-color:#410093}a.login-provider-button--qq{background-color:#121214}.login-provider-button-outline{position:relative;text-decoration:none;width:32px;height:32px;display:inline-block;border-radius:50%;border-width:1px;border-style:solid;font-size:16px;margin:5px}.login-provider-button-outline .icon{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.login-provider-button-outline.border-color-facebook:focus,.login-provider-button-outline.border-color-facebook:hover{background-color:#3b5998}.login-provider-button-outline.border-color-twitter:focus,.login-provider-button-outline.border-color-twitter:hover{background-color:#1da1f2}.login-provider-button-outline.border-color-google:focus,.login-provider-button-outline.border-color-google:hover{background-color:#ea4335}.login-provider-button-outline.border-color-vk:focus,.login-provider-button-outline.border-color-vk:hover{background-color:#45668e}.login-provider-button-outline:focus .icon,.login-provider-button-outline:hover .icon{color:#fff}#login{padding:0;margin:0}.content-section--captcha-fix #g-recaptcha,.content-section--captcha-fix .h-captcha{min-height:78px;transform:scale(.89);transform-origin:left}#login .input{margin:0}.btn-container--fixed{position:fixed;left:0;right:0;bottom:0;background:rgba(0,0,0,.05);padding:10px 0;margin:0;border:0;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);text-align:start}.phablet .btn-container--fixed,.phone .btn-container--fixed{text-align:center}body.full--wh{height:100vh;height:100dvh;width:100vw;width:100dvw}.display-flex #home-cover-slideshow{position:fixed}[data-content=dashboard-imports] [data-action=resume],[data-content=dashboard-imports] [data-errors="0"] [data-content=log-errors],[data-content=dashboard-imports] [data-result],[data-content=dashboard-imports] [data-started="0"] [data-content^=log]{display:none}[data-content=dashboard-imports] [data-errors="1"] [data-content=log-process],[data-content=dashboard-imports] [data-status=completed] [data-action=pause],[data-content=dashboard-imports] [data-status=completed][data-errors="0"] [data-result=success],[data-content=dashboard-imports] [data-status=paused] [data-action=resume],[data-content=dashboard-imports] [data-status][data-errors="1"] [data-result=error]{display:initial}[data-content=dashboard-imports] [data-status=canceled] [data-action=cancel],[data-content=dashboard-imports] [data-status=canceled] [data-action=pause],[data-content=dashboard-imports] [data-status=canceled] [data-target=modal-process-import],[data-content=dashboard-imports] [data-status=completed] [data-action=cancel],[data-content=dashboard-imports] [data-status=completed] [data-action=pause],[data-content=dashboard-imports] [data-status=completed] [data-target=modal-process-import],[data-content=dashboard-imports] [data-status=paused] [data-action=pause],[data-content=dashboard-imports] [data-status=queued] [data-action=pause],[data-content=dashboard-imports] [data-status=working] [data-target=modal-process-import]{display:none!important}.connecting-ip{font-family:monospace;font-size:27px}.code{padding:.05em}.code--command{border-radius:.2em;padding:.5em;padding-inline-end:.7em;border-inline-start:.2em solid var(--colorAccent);background-color:var(--bodyEmpty)}.code--command::before{content:"$ ";color:var(--colorAccent)}.importing{background:var(--bodyEmpty);padding:10px;position:relative}.importing:nth-child(even){margin:0 10px}.phablet .importing:nth-child(even),.phone .importing:nth-child(even){margin:10px 0}.importing-stats{margin:10px 0}.importing-stats .figure{display:inline-block;padding:5px;background:var(--buttonAccentBackground);color:var(--buttonAccentText)}.apexcharts-menu-icon,.apexcharts-pan-icon,.apexcharts-reset-icon,.apexcharts-selection-icon,.apexcharts-theme-light .apexcharts-legend-text,.apexcharts-toolbar-custom-icon,.apexcharts-zoom-icon,.apexcharts-zoomin-icon,.apexcharts-zoomout-icon{color:var(--bodyText)!important}.apexcharts-menu-icon svg,.apexcharts-reset-icon svg,.apexcharts-zoom-icon svg,.apexcharts-zoomin-icon svg,.apexcharts-zoomout-icon svg{fill:var(--bodyText)!important}.apexcharts-theme-dark .apexcharts-legend-text{color:var(--bodyTextSubtle)!important}.apexcharts-theme-light svg text{fill:var(--bodyText)}.apexcharts-theme-dark svg text{fill:var(--bodyTextSubtle)}.apexcharts-toolbar{z-index:0!important}.apexcharts-canvas>svg{background:0 0!important}#dashboard-chart{margin:35px auto;overflow:hidden}#dashboard-chart .toolbar{margin-inline-start:45px}#dashboard-chart button{background:var(--bodyBackground);color:var(--bodyText);border:1px solid var(--bodySeparator);border-bottom:2px solid var(--bodySeparator);border-radius:2px;padding:4px 17px}#dashboard-chart button.active{color:var(--buttonAccentText);background:var(--buttonAccentBackground);border:1px solid var(--buttonAccentBackground);border-bottom:2px solid var(--buttonAccentBackground)}#dashboard-chart button:focus{outline:0}.corazoncito{width:1em;height:1em;font-size:290px;color:rgb(255,0,0,.6);z-index:1;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) scale(.4);transition:all .5s ease}.corazoncito.--show{opacity:1;transform:translate(-50%,-50%) scale(1)}.corazoncito span{font-size:.25em;top:50%;left:50%;display:block;position:absolute;color:#fff;transform:translate(-50%,-50%);line-height:1;font-family:sans-serif;margin-top:-.1em;font-weight:400}.card-wrapper{height:175px;overflow-y:hidden;overflow-x:auto;-ms-scroll-snap-type:x mandatory;scroll-snap-type:x mandatory}.card-wrapper::-webkit-scrollbar{width:10px;height:3px}.card-wrapper::-webkit-scrollbar-track{background:var(--bodyEmpty)}.card-wrapper::-webkit-scrollbar-thumb{background:var(--colorAccent)}.card-wrapper::-webkit-scrollbar-thumb:hover{background:var(--colorAccentStrong)}.card-slider{width:calc(310px * 8 - 10px)}.card-container{width:300px;height:200px;display:block;float:left;margin-inline-end:10px;scroll-snap-align:start}[dir=rtl] .card-container{float:right}.card-container:first-child{margin-inline-start:0}.card-container:last-child{margin-inline-end:0}.card{width:100%;position:relative}.card a{text-decoration:none}.card-header-image{width:100%;height:150px;overflow:hidden;border-radius:1em;display:block;background-size:cover;background-position:center}.card-header-image-mask{width:100%;height:100%;display:block;background-color:rgba(0,0,0,0)}.card-header-image:hover .card-header-image-mask{background-color:var(--buttonAccentBackground)}.card-text{color:#fff;text-align:center;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:80%;text-shadow:2px 2px 8px rgba(0,0,0,.35)}.card-header-image:hover .card-text{color:var(--buttonAccentText)}.card-text h3{font-weight:700;font-size:1.6em;margin-bottom:5px}.powered-by--provider a.logo{font-size:5em;text-decoration:none}[data-banned="0"] [data-action=user_unban],[data-banned="1"] [data-action=user_ban]{display:none}.captcha.captcha--3 [data-content=captcha]{display:none}.cta-row{border:1px solid var(--bodySeparator);border-right:0;border-left:0;padding-top:20px;padding-bottom:20px;margin:0;cursor:grab;margin-bottom:-1px}.cta-row.ui-sortable-helper{background:var(--modalBackground)}.phablet .btn-cta .btn-text,.phone .btn-cta .btn-text{display:none}.btn-cta{background-color:var(--bodyBackground);color:var(--bodyText);border-color:var(--bodyText)}.btn-cta:hover{background-color:var(--colorAccent);color:var(--buttonAccentText);border-color:transparent}.btn-cta:hover .btn-icon{color:inherit}
\ No newline at end of file
+body{min-height:100%;background:var(--bodyBackground);position:relative;font-family:Helvetica,Arial,sans-serif;font-size:14px}html.powered-by-footer body{padding-bottom:22px}html.powered-by-footer .upload-box-inner{padding-bottom:35px}body.landing{min-height:500px;height:100%;height:100vh;height:100dvh;padding:0;margin:0}.phone body.landing{min-height:auto}.js body.landing{overflow:hidden;opacity:0}.js body.landing.load{transition:transform .6s ease,opacity 350ms linear;opacity:1}#home-cover-content,#index .flex-center{opacity:0}.js body#index.load .flex-center,.js body.load #home-cover-content{transition:all .6s ease;transition-delay:150ms;opacity:1}.js body.loaded{overflow:auto}body.split{margin-top:0;padding-top:0}.content-width.fluid,.fluid .content-width{width:100%}@media (min-width:992px){.content-width.wide{max-width:none}}html.device-mobile .device-mobile--hide{display:none!important}html.device-nonmobile .device-nonmobile--hide{display:none!important}body#upload{background-color:transparent}.software-version-name{font-family:'Brush Script MT',cursive,serif;font-size:1.1em;text-transform:capitalize}.image-viewer{text-align:center;position:relative;min-height:72px;overflow:hidden;background:var(--viewerBackground)}.image-viewer-main{display:inline-block;vertical-align:middle}.image-viewer-container{display:grid;margin:0 auto;position:relative;min-height:calc(100% - 50px)}.image-viewer-container.--thumbs{min-height:calc(100% - 100px)}.image-viewer-container img{display:block;margin:auto;max-width:100vw!important;width:auto}#image-viewer-360{width:100vw;height:calc(100vh - 50px);background:0 0!important}.image-viewer-container img[data-is360="1"]{max-height:calc(100vh - 50px)}.image-viewer .btn-download{position:absolute;top:20px;inset-inline-end:20px}#image-viewer-loading,.viewer-loader{width:30px;height:30px;position:absolute;inset-inline-start:50%;top:50%;margin-inline-start:-15px;margin-top:-15px;border-radius:100%;background:rgba(17,17,17,.9)}#image-viewer-loader{line-height:1;position:absolute;background:rgba(0,0,0,.6);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);color:#fff;font-size:1em;left:50%;top:50%;padding:8px 14px;border-radius:100px;transform:translate(-50%,-50%);cursor:pointer;display:none}#image-viewer-loader:hover{background:rgba(0,0,0,.6);color:#fff}#image-viewer-loader .btn-icon{position:relative;top:0;font-size:12px}.btn-like .btn.btn-liked,.btn-like .btn.btn-unliked{display:none}.btn-like[data-liked="0"] .btn-unliked{display:inline-block}.btn-like[data-liked="1"] .btn-liked{display:inline-block}.btn-album-cover .btn.btn-album-is-cover,.btn-album-cover .btn.btn-album-not-cover{display:none}.btn-album-cover[data-cover="0"] .btn-album-not-cover{display:inline-block}.btn-album-cover[data-cover="1"] .btn-album-is-cover{display:inline-block}.btn-follow .btn.btn-followed,.btn-follow .btn.btn-unfollowed{display:none}.btn-follow[data-followed="0"] .btn-unfollowed{display:inline-block}.btn-follow[data-followed="1"] .btn-followed{display:inline-block}#fullscreen-uploader-mask{z-index:99}.phone #fullscreen-uploader-mask{z-index:400}#anywhere-upload{z-index:900;scroll:auto;-webkit-overflow-scrolling:touch;transition:transform .3s ease}#anywhere-upload.hidden-visibility iframe{visibility:hidden}.phone #anywhere-upload{z-index:500;height:100vh!important}#upload #anywhere-upload{display:grid;align-items:center;position:fixed;padding-top:50px;bottom:0;overflow:auto}#upload .upload-box .upload-box-allowed-files,.phone .upload-box .upload-box-allowed-files{display:none}#upload .upload-box[data-queue-size="0"] .upload-box-allowed-files,.phone .upload-box[data-queue-size="0"] .upload-box-allowed-files{display:block}#anywhere-upload-paste{height:0;opacity:0;font-size:0}#anywhere-upload-paste *{display:none}.upload-box-queue{text-align:center;font-size:0;margin-top:35px;margin-bottom:35px}.upload-box-queue li{position:relative;text-align:center;display:inline-block;margin:5px}.upload-box-queue .block,.upload-box-queue li{border-radius:.5em;-webkit-transform:translateZ(0)}.upload-box-queue li,.upload-box-queue li.normal{width:110px;height:110px;font-size:14px;font-size:1rem}.upload-box-queue li.small{width:77px;height:77px;font-size:9px;font-size:.643rem}.upload-box-queue li.tiny{width:54px;height:54px;font-size:7px;font-size:.5rem}.upload-box-queue .block{width:100%;height:100%;top:0;inset-inline-start:0;overflow:hidden;position:absolute}.upload-box-queue a.image-link{display:none}.upload-box-queue .completed a.image-link{display:block;position:absolute;overflow:hidden;z-index:1;-webkit-transform:rotate(.000001deg)}.upload-box-queue .queue-item .block.edit,.upload-box-queue .queue-item .queue-item-button{display:block;position:absolute;cursor:pointer;z-index:1}.upload-box-queue .queue-item .queue-item-button .icon{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.upload-box-queue .queue-item.completed:hover .queue-item-button{display:none}.upload-box-queue .queue-item .queue-item-button{font-size:10px;width:21px;height:21px;line-height:23px;background:var(--buttonDefaultBackground);color:var(--buttonDefaultText);border-radius:200px;inset-inline-start:-5px;box-shadow:1px 1px 4px 0 rgba(0,0,0,.5)}.upload-box-queue .queue-item .queue-item-button:hover{background:var(--buttonDefaultHoverBackground);color:var(--buttonDefaultHoverText)}.upload-box-queue .queue-item .queue-item-button.cancel{top:-7px}.upload-box-queue .queue-item .queue-item-button.edit{top:16px;font-size:9px;opacity:0}.upload-box-queue .big-icon{position:absolute;color:#dadada;font-size:5.36em;width:1em;height:1em;inset-inline-start:50%;top:50%;margin-inline-start:-.5em;margin-top:-.5em}.tone-dark .upload-box-queue .big-icon{color:#444;text-shadow:1px 1px 0 rgba(0,0,0,.9)}.upload-box-queue .done,.upload-box-queue .preview{position:relative;overflow:hidden}.upload-box-queue .preview .canvas{position:absolute;top:50%;inset-inline-start:50%}.upload-box-queue .progress{position:absolute}.queue-item.uploading .block.edit,.queue-item.uploading .queue-item-button.edit{display:none}.upload-box-queue .progress-bar{height:100%;float:right;width:100%;display:none}[dir=rtl] .upload-box-queue .progress-bar{float:left}.upload-box-queue .failed .result,.upload-box-queue .progress-bar{-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);transform:all .3s}.upload-box-queue .uploading .progress-bar{display:block}.upload-box-queue .completed .result.done,.upload-box-queue .failed .result.failed{display:block}.upload-box-queue .result{position:absolute;z-index:1;display:none}.tone-dark .upload-box-queue .failed .result,.tone-dark .upload-box-queue .progress-bar{background:rgba(0,0,0,.65)}.upload-box-queue .result .icon{position:absolute;width:100%;font-size:3.429em;top:50%;inset-inline-start:0;margin-top:-.5em;text-shadow:none}.upload-box-queue .done .result .icon{text-shadow:2px 2px 6px rgba(0,0,0,.2)}.upload-box-queue .failed .result .icon{font-size:3.429em}.upload-box-queue.queue-complete .cancel,.upload-box-queue.queue-complete .edit{display:none}#form-embed-toggle-combo,#uploaded-embed-toggle-combo{position:relative}#upload .top-bar{box-shadow:none;border-bottom-color:transparent}#upload .upload-box{transform:none;position:static}body#upload [data-action=close-upload]{display:none!important}.upload-box.queueHasResults [data-action=cancel-upload],.upload-box.queueReady [data-action=close-upload],.upload-box.queueUploading [data-action=close-upload],.upload-box:not(.queueHasResults) [data-action=cancel-upload-remaining],.upload-box:not(.queueReady):not(.queueCompleted) [data-action=reset-upload],.upload-box:not(.queueUploading) [data-action^=cancel-upload],.upload-box:not([data-queue-size="0"]) [data-action=close-upload]{display:none}#background-cover{height:260px;background-color:#000;position:relative}.phone #background-cover:not(.no-background){height:20vh;max-height:260px;min-height:90px}#background-cover.no-background{background-color:var(--bodyEmpty);background-image:none!important;height:auto}.tone-dark #background-cover.no-background{background:#2f2f2f}#background-cover-wrap{height:100%;overflow:hidden;position:relative;padding:10px}#background-cover .content-width{text-align:center}#change-background-cover{position:absolute;inset-inline-end:0;top:0;z-index:500}#user-background-upload{top:0;inset-inline-start:0;width:1px;height:1px}#background-cover-src{overflow:hidden;background-position:center center;background-size:cover}#background-cover .loading-placeholder,#background-cover-src{position:absolute;top:0;inset-inline-start:0;width:100%;height:100%}#background-cover.no-background #background-cover-src{height:0}#background-cover .loading-placeholder{background:rgba(0,0,0,.8)}[data-privacy=public] .list-item-privacy{display:none}.list-item-thumbs li,.list-item-thumbs li a{display:block;height:auto;overflow:hidden}.list-item-thumbs li a{height:100%;background-size:cover;background-position:center center}.list-item-thumbs li img{width:100%;display:block}.input-copy{position:relative}.list-item-image-tools{overflow:hidden;position:absolute;inset-inline-end:0;top:0;transition:all .2s ease-in-out;text-shadow:1px 1px 5px rgba(0,0,0,.5)}.list-item-image-tools.--top{bottom:auto;top:0}.list-item-image-tools.--right{inset-inline-start:auto;inset-inline-end:0}.list-item-image-tools.--bottom{top:auto;bottom:0}.list-item-image-tools.--left{inset-inline-end:auto;inset-inline-start:0}.list-item-image-tools>div{margin:0;cursor:pointer;position:relative;font-size:1em;inset-inline-end:0;margin-inline-start:auto}.list-item-buttons>div,.list-item-image-tools>div,html.--idle .list-item-image-tools>div[data-action=viewer-close]{opacity:.5}.list-item .hover-display.list-item-image-tools,.list-item-image-tools>div:hover,.list-item.selected div.tool-select{opacity:1}.list-item.--over .list-item-image-tools>div{opacity:.5}.list-item-image-tools>div{float:right}[dir=rtl] .list-item-image-tools>div{float:left}.list-item-image-tools>div,.list-item-image-tools>div *{display:block;color:var(--listItemText)}.list-item-image-tools>div span{float:right}[dir=rtl] .list-item-image-tools>div span{float:left}.list-item-image-tools>div .label{font-size:.86em}.list-item-image-tools>div .btn-icon{font-size:1em}.phone .list-item:not(.selected):not(.viewer) .tool-select{display:none}.list-item-image-tools>div .label{text-transform:uppercase;padding-inline-start:1em;padding-inline-end:0;display:none;height:100%}.list-item-image-tools>div:hover .label{display:block}.small-cols .list-item-image-tools>div:hover .label{display:none}[data-flag=safe] .label-flag-safe.btn-icon,[data-flag=safe] .list-item-image-tools>div:hover .label.label-flag-safe,[data-flag=unsafe] .label-flag-unsafe.btn-icon,[data-flag=unsafe] .list-item-image-tools>div:hover .label.label-flag-unsafe{display:none}.unsafe-blur-on .list-item .list-item-thumbs div[data-flag=unsafe] a,.unsafe-blur-on [data-flag=unsafe]:not(.current) .image-container{filter:blur(8px);-webkit-filter:blur(8px)}.unsafe-blur-on .list-item .list-item-thumbs div[data-flag=unsafe]:not(.selected):not(.ui-selecting) a,.unsafe-blur-on [data-flag=unsafe]:not(.selected):not(.ui-selecting):not(.current) .image-container{transform:scale(1.2)}.unsafe-blur-on .list-item:hover .list-item-thumbs div[data-flag=unsafe] a,.unsafe-blur-on [data-flag=unsafe]:hover:not(.selected):not(.ui-selecting):not(.current) .image-container{filter:none;-webkit-filter:none;transform:scale(1)}.list-item-buttons>div,.list-item-image-tools>div,.list-item-image-tools>div .btn-icon{width:2.2em;height:2.2em;line-height:2.2em}.list-item-image-tools>div .btn-icon{color:inherit;text-align:center}.list-item-album .tool-flag{display:none}.list-item .list-item-avatar-cover,.list-item .list-item-avatar-cover>*{border-radius:100%}.list-item .image-container.--bodyEmpty .empty,.list-item .list-item-avatar-cover{position:absolute;border:0;left:50%;top:50%;transform:translate(-50%,-50%)}.list-item .list-item-avatar-cover{height:60%;width:60%;max-height:160px;max-width:160px;background:var(--backgroundLightAlpha);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.list-item .list-item-avatar-cover>*{width:100px;height:100px}.list-item .list-item-avatar-cover img{height:auto;box-shadow:2px 2px 2px rgba(0,0,0,.3)}.selected .list-item-image,.ui-selecting .list-item-image,.unselect .list-item-image{background:var(--viewerBackground)}body#moderate .list-item-like,body#moderate .viewer-kb-key[data-key="L"]{display:none}.list-item-buttons{color:#fff;position:absolute;inset-inline-end:0;bottom:0}.list-item-buttons>div{padding:10px;cursor:pointer;float:left;font-size:1em;margin-inline-start:-5px}[dir=rtl] .list-item-buttons>div{float:right}.list-item .list-item-buttons>div:hover{opacity:1}.list-item-like .btn-like{display:none}.list-item-like .btn-like.btn-liked,.list-item-like .btn-like:hover{opacity:1}[data-liked="0"] .list-item-like .btn-like.btn-unliked{display:block}[data-liked="1"] .list-item-like .btn-like.btn-liked{display:block}.list-item-play-gif,.list-item-play-gif *{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEgAAACdCAMAAAAgwM7pAAAAAXNSR0IB2cksfwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAcVQTFRFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA///9///+///+///+///+///+///9///8///1///5///9///9///u///f///+///+///+///9///q///z///9///+///9///8///9///+///+///+///+///8///w///9///+///3///8///9///2///9///7///t///+///8///b///9///9///M///+///y//+A///9///r///7///+///7///3///+///8//+////8//+q///8///+///z///+///+///9///6///m///7///j///7///9///+///+///9///9///6///+///+///+///7///V///+///9///5///9///+///+///8///9///6///8///+///9///4///+///+///+///+///4///9///5///+///v///7///9///8///o///9///9///8///6///y///9///0///+///x///+///6////////////vBUIqgAAAJd0Uk5TABQmNkZSWF5iCipmAiRKZAQuXCwYVDoMUBpgIiil+enVw7GJUBoujZkOCPf/45sMFnDPbEqhtcfZ714Qi9EgWI8adDgO21oGbmoEyxICcgw87Toe+1QEVgJg/RTru344CkIIRnrx55VmMNf1wT4GyaMoh+HlTJcyYt+pJrfTzd0ipyqtEECTXAp8aGQ2FIMWxRKzLrhG/4D2XIEAAAQlSURBVHiczZjnWxNBEMYPCCThgNC7IIKCyaCIdJCmgIooYkFCEwsqTRRQQREb9l7u7/UuuZhccm1vX5+H99Ne2d/d7uzOzowgmCgpOcWVmub2eNxpqa6U5CSzdw3lTXe5xTi5XeleNkpGZpYvnhKWLyszwzYmOydXnxJWbk62PU5ewpAShphnA5NfYIVRVJBvgckoNJibhLkqNJ2qomJ7GEXFRcacklL7HFEsLTHilHlYOKLoKdPnlNucnqh85br/w8yRSTr/VMI4rrA8CfNUxDTPUZXG2S6Dwe5aFWvXU6FTjigWxnLyHUx0RL7Y3WJrfxmpIMrJ4+GI4j9fkG3pN8zljvinHD6OKOaopjf1h3aUG14CmbwcUcwMgbL4QVkKx8uxhiLyefltH5ayAlwIkEsGcS6isNzy+Y7giGKSkIwBJQspGFAKZq6V2U7FgFKFNAwoDWN9xf6OTqFEeXAg2NBgkw0zP2xBwrYIbNPC3AjMseFcLcT5pyOPI9gBiTuyYUEELKzBBVqw0A8XjOLCY1jAjkshYEkNLs3CJX64VBSXHOPSdVwBAVfSEGBFFkWgso+AK0QJsNJYSN48RLFOFaR8CNe+isr9VQeqaw46636otu5wqOEPkKr6I0dZKQ3HGuWOx8MXTc0trW3tIVQHG6azK/QTJ7pjb3b39La29rFg/P3K19vrTrJ9PUGnBmTMwOCQySunB/ptgE4SVZ45a/rKMFHLOUvQSP/5CxavjF6ULThm46csdamV6PIVBOlql0waN3x8jQE1ETQkTZ6Y6tZ/YkQK6q6QkWmiJgaQ0BGMLH2tZoiqWMYmCLPnr+vcnQvSFNMGMNCNegreBHCEW0TVCM7kbZpn9jV6ukN011nPe1pLX6YFNotFdHSRJmKvlwLLzn5oZZHua26YuR9TrRI9cNpXozmihxCQsEbrGFA1amwbzIeUgSaJHqnNx0tPeEib1Ki2tmiNB7RKU2priTZ5QE+fRQa0Tc95QFGt0zQGFKCtPQaCDW2bhjGgJdrh6f5ia1BtvaQ2HlAzVaqtV683eEDRLcKnmE3LJ5gbkR3bUwgI5WrntGe9/41TkPY4WlkI7DrjDGkPSL/jI/twgDR++q3jIGLsneZSCWveOyPFCRVoCdfriSChn7ArB6MOc804fZDD4xGmHrMf/Xq3lYB9lIUjB+yfdB80VC10MnCUFOIzy4eNOSbpkW1ZpFm2ZSvx889YpqLLchpeb2mYGqIpi+R421Zy/GUnlK7rLhFVX+ftpOvCkFpAmLXzsrk6ayuUksbwt9ib3eO935/9YEVNhoosql16mn9GiixOLP6r9m14nvroX9mnjstnjUxXzPMUovaIfv8BgSQJhJIkEEqSQChJAqEkCYSSJBBKkkCo/wICDQ002SDzgxYkaIuANi0X5i8hpIpr8W0lCwAAAABJRU5ErkJggg==);position:absolute;top:50%;inset-inline-start:50%}.list-item-play-gif{scale:.6;width:72px;height:72px;margin-inline-start:-36px;margin-top:-36px;background-position:0 0;cursor:pointer;transition:all 350ms}@media (min-width:320px){.list-item-play-gif{scale:.8}}@media (min-width:480px){.list-item-play-gif{scale:1}}.list-item-play-gif>span{width:66px;height:66px;margin-inline-start:-33px;margin-top:-33px;background-position:0 -73px}.list-item-play-gif--loading>span,.list-item-play-gif:hover>span{-webkit-animation:spin 2s linear infinite;animation:spin 2s linear infinite}.list-item-play-gif>i{width:32px;height:17px;margin-inline-start:-16px;margin-top:-9px;background-position:0 -140px}@-webkit-keyframes spin{from{-webkit-transform:rotate(0)}to{-webkit-transform:rotate(360deg)}}@keyframes spin{from{transform:rotate(0)}to{transform:rotate(360deg)}}.settings-group{display:none}.settings-group-isolated{display:block}.stats-block,a.stats-block{text-decoration:none;color:inherit;padding:10px;border-radius:4px}a.stats-block:hover{color:var(--linkText);background:var(--bodyEmpty)}.tone-dark a.stats-block:hover{background:#222}.text-align-center .stats-big-number{text-align:center}.stats-big-number .number{font-size:44px;font-weight:400}.stats-big-number .number span{font-size:24px}.stats-big-number .label{display:block}.tone-dark .text-content code{border-color:#222;background:#111}#home-top-bar-placeholder{margin-top:-65px}#home-cover{width:100%;background-position:center center;background-color:#333;background-size:cover;color:#fff;position:relative}body.landing #home-cover,body.split #home-cover{margin:0;padding:0;height:100vh;height:100dvh}body.split #home-cover{margin:0;height:500px}#home-cover-content{position:relative;text-align:center;height:100%;top:50px}body.landing #home-cover-content,body.split #home-cover-content{height:calc(100% - 50px);position:relative;display:flex;align-items:center;justify-content:center;flex-direction:column}#home-cover-content>*{margin:10px 0}#home-cover-content h1,#home-cover-content p{text-shadow:2px 2px 8px rgba(0,0,0,.25)}#home-cover-content h1{font-size:2.4em;line-height:120%;font-weight:600}@media (min-width:768px){#home-cover-content h1{font-size:2.7em}}@media (min-width:992px){#home-cover-content h1{font-size:3em}}#home-cover-content p{font-size:22px}.home-buttons{text-align:center}.home-buttons a{font-size:16px;text-transform:uppercase;min-height:50px;line-height:1.5;height:auto;text-align:center;letter-spacing:2px;padding:12px 30px}#home-pics-feature{height:700px;overflow:hidden;position:relative;margin:10px 0}#home-pics-feature.empty{height:auto}#home-pics-feature-overlay{background:linear-gradient(to bottom,rgba(255,255,255,0) 0,rgba(255,255,255,1) 100%);width:100%;height:200px;position:absolute;bottom:0;z-index:1}.tone-dark #home-pics-feature-overlay{background:linear-gradient(to bottom,rgba(0,0,0,0) 0,#000 100%)}#home-pics-feature.empty #home-pics-overlay{display:none}#home-join{margin:40px 0;padding-bottom:40px}#home-join h2{font-size:38px}#home-join p{margin:20px 0;font-size:18px}.ad-banner{margin:10px;text-align:center}.ad-banner:empty{margin:0;height:0}.ad-banner img{display:block;margin:0 auto}.ad-banner-size-300x250{width:300px;height:250px}.ad-banner-size-336x280{width:336px;height:280px}.ad-banner-size-728x90{width:728px;height:90px}.ad-banner-size-300x600{width:300px;height:600px}.ad-banner-size-320x100{width:320px;height:100px}.ad-banner-size-320x50{width:320px;height:50px}.ad-banner-size-468x60{width:468px;height:60px}.ad-banner-size-234x60{width:234px;height:60px}.ad-banner-size-120x600{width:120px;height:600px}.ad-banner-size-120x240{width:120px;height:240px}.ad-banner-size-160x600{width:160px;height:600px}.ad-banner-size-300x1050{width:300px;height:1050px}.ad-banner-size-970x90{width:970px;height:90px}.ad-banner-size-970x250{width:970px;height:250px}.ad-banner-size-250x250{width:250px;height:250px}.ad-banner-size-200x200{width:200px;height:200px}.ad-banner-size-180x150{width:180px;height:150px}.ad-banner-size-125x125{width:125px;height:125px}#banner_before_home_cover{margin:0;padding:10px;background:#000}#banner_image_image-viewer_foot,#banner_image_image-viewer_top{height:90px;margin-inline-start:auto;margin-inline-end:auto}body#consent-screen,body#maintenance{padding:0;margin:0;width:100%;height:100%}#consent-screen-cover,#maintenance-cover{height:100%;background-position:center center;background-color:#333;background-size:cover}#consent-screen-cover-inner,#maintenance-cover-inner{background:rgba(0,0,0,.25);width:100%;height:100vh;height:100dvh}#consent-screen-cover-content,#maintenance-cover-content{color:#fff;padding:40px;text-align:center;position:relative;top:50%;transform:translateY(-50%)}#maintenance-cover-content .logo{display:inline-block;margin-bottom:20px;color:#fff;text-decoration:none;font-size:2.5em}#maintenance-cover-content .logo img{height:30px}#maintenance-cover-content h1{font-size:2.5em;margin-bottom:20px}#maintenance-cover-content p{font-size:1.2em}#consent-screen-cover-inner{background:0 0}#consent-screen-cover-src{width:100%;height:100%;position:absolute;top:0;inset-inline-start:0;background-position:center;background-size:cover}#consent-screen-content{background:var(--menuBackground);color:var(--menuItemText);margin:0 auto;padding:30px;box-shadow:0 0 50px 6px rgba(0,0,0,.25);top:50%;position:relative;transform:translateY(-50%);border-radius:10px;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px)}#consent-screen-content h1{line-height:2em}#consent-screen-content .logo-consent{width:2em;height:auto;display:inline-block;margin-inline-end:10px;vertical-align:top}#fullscreen-modal-box .image-preview{margin-bottom:20px;overflow:auto;text-align:center}.image-preview-container{position:relative;display:block;float:left;width:20%}[dir=rtl] .image-preview-container{float:right}.image-preview-container .empty{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:3em}#fullscreen-modal-box .image-preview:empty{display:none}#fullscreen-modal-box .image-preview .canvas{border:0;display:inline-block;margin:0 auto;max-width:100%;max-height:500px}#fullscreen-modal-box .image-preview .thumb{font-size:0;border:0;display:block;background-size:cover;background-position:center;width:100%}.content-password-gate{background:#f9f9f9;border-radius:10px;padding:30px;font-size:16px;text-align:center}.tone-dark .content-password-gate{background:0 0}.content-password-gate h1{font-size:30px;margin-bottom:10px}.content-password-gate h1 .icon{display:block;font-size:60px;margin-bottom:10px}.content-password-gate .g-captcha>div{margin-inline-end:auto;margin-inline-start:auto}#home-cover-slideshow{position:absolute;top:0;inset-inline-end:0;bottom:0;inset-inline-start:0;overflow:hidden}.home-cover-img{position:absolute;inset-inline-start:0;top:0;width:100%;height:100%;background-size:cover;background-repeat:no-repeat;background-position:center center;display:block;opacity:0;transform:translateZ(0);-webkit-transform:translateZ(0);-webkit-backface-visibility:hidden;backface-visibility:hidden}.home-cover-img.animate-in,.home-cover-img.animate-in--alt{-webkit-animation-name:slideshow;animation-name:slideshow;-webkit-animation-duration:10s;animation-duration:10s;-webkit-animation-timing-function:linear;animation-timing-function:linear;-webkit-animation-fill-mode:forwards;animation-fill-mode:forwards}.home-cover-img.animate-in--alt{opacity:1;-webkit-animation-name:slideshow--alt;animation-name:slideshow--alt}.home-cover-img.animate-end{opacity:1;transform:scale(1.1);-webkit-animation:none;animation:none}@-webkit-keyframes slideshow{0%{opacity:0}20%{opacity:1}100%{opacity:1;transform:scale(1.1)}}@keyframes slideshow{0%{opacity:0}20%{opacity:1}100%{opacity:1;transform:scale(1.1)}}@-webkit-keyframes slideshow--alt{100%{transform:scale(1.1)}}@keyframes slideshow--alt{100%{transform:scale(1.1)}}@supports (-ms-accelerator:true){.home-cover-img.animate-end{transform:scale(1)}@-webkit-keyframes slideshow{0%{opacity:0}20%{opacity:1}}@keyframes slideshow{0%{opacity:0}20%{opacity:1}}@-webkit-keyframes slideshow--alt{100%{transform:scale(1)}}@keyframes slideshow--alt{100%{transform:scale(1)}}}#home-cover-slideshow::after{content:"";z-index:1;height:50px;position:absolute;top:0;left:0;right:0;background:linear-gradient(to bottom,rgba(0,0,0,.1) 0,rgba(0,0,0,0) 100%)}#dashboard-settings{min-height:400px}#dashboard .form-content,#settings .form-content{padding-bottom:60px}.footer{color:var(--bodyTextDisabled);font-size:10px;line-height:20px;text-align:center;width:100%;position:absolute;bottom:0;z-index:900;padding:5px;line-height:1}body#upload .footer{background:var(--bodyBackground)}.footer a{color:inherit}body.--viewer-shown{overflow:hidden}.viewer{background:#000;position:fixed;top:0;right:0;bottom:0;left:0;z-index:999}.viewer .list-tool{display:initial!important}.js .viewer{display:block;touch-action:pinch-zoom!important}.viewer--hide{opacity:0}.viewer--show{opacity:1}.viewer.viewer--no-cursor,.viewer.viewer--no-cursor *{cursor:none}.viewer-content{position:relative;top:0;inset-inline-start:0;width:100%;height:100%}.viewer-content img{position:absolute;max-height:100vh;max-height:100dvh;max-width:100vw;max-width:100dvw;transform:translate(-50%,-50%);top:50%;left:50%}.viewer[data-cover="1"] .viewer-content img{width:100vw;width:100dvw;height:100vh;height:100dvh;-o-object-fit:cover;object-fit:contain}.viewer-close,.viewer-wheel>div{color:#fff;top:0;font-size:1em;text-shadow:1px 1px 0 rgba(0,0,0,.5);text-align:center}.viewer-close{position:absolute;width:2.4em;height:2.4em;line-height:2.4em;cursor:pointer;inset-inline-end:-2.4em;z-index:500}.viewer:hover .hover-display.viewer-close{inset-inline-end:2px}.viewer-wheel>div{position:fixed;bottom:0;width:calc(1em + 20px);cursor:pointer;padding:10px;opacity:.7;display:none}.viewer-wheel>div:hover{opacity:1}.viewer--nav-prev .viewer-wheel-prev{inset-inline-start:0;display:block}.viewer--nav-next .viewer-wheel-next{inset-inline-end:0;display:block}.viewer-wheel>div>.icon{position:absolute;top:50%;transform:translateY(-50%);display:block;font-size:1.5em}.viewer-foot{padding:10px;position:absolute;left:0;right:0;bottom:0;height:60px;background:linear-gradient(to bottom,transparent 0,rgba(0,0,0,.6) 100%);display:flex;flex-wrap:wrap;flex-flow:row}.viewer-owner{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#fff;float:left}.viewer-owner .btn{background:rgba(0,0,0,.3);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:inherit;border-color:#fff;opacity:.8}.viewer-owner .btn.btn-cta:hover{background:#fff;color:#000;border-color:transparent;opacity:1}.viewer-owner .user-image{font-size:40px;width:1em;height:1em;vertical-align:bottom;color:#fff}.viewer-owner .user-name{font-size:initial;text-decoration:none;vertical-align:middle;line-height:40px;color:inherit}.viewer-owner a.user-name:hover{color:var(--backgroundLightAlpha)}.viewer-owner{order:1}.viewer-kb{font-size:.86em;flex-grow:1;order:2;text-align:center}.viewer .viewer-kb{padding-inline-end:190px}.device-mobile .viewer-kb{display:none}.viewer-kb-input{display:inline-block}.viewer .viewer-kb-input{color:#fff}.viewer-kb-key{display:inline-block;margin:10px;margin-inline-start:0}.viewer-kb-key:first-child{margin-inline-start:10px}.viewer-kb-key kbd{border:1px solid rgba(0,0,0,.5);background:rgba(120,120,120,.5);-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);padding:4px 6px;border-radius:2px;display:inline-block;margin-inline-end:5px;line-height:1}.viewer-like{transform:none;top:auto;bottom:20px;inset-inline-end:20px;position:absolute}.viewer:hover .hover-display--flex{display:flex}.--width-auto{width:auto}.--height-auto{height:auto}html.--idle .viewer,html.--idle .viewer *{cursor:none!important}html .fullscreen-show{display:none}:-webkit-full-screen .fullscreen-hide{display:none}:-ms-fullscreen .fullscreen-hide{display:none}:fullscreen .fullscreen-hide{display:none}:-webkit-full-screen .fullscreen-show{display:block}:-ms-fullscreen .fullscreen-show{display:block}:fullscreen .fullscreen-show{display:block}a.image-container{-webkit-tap-highlight-color:transparent}a{color:var(--linkText);outline:0;text-decoration:none}.content-section,.input-label{margin-top:20px;margin-bottom:20px;position:relative}.content-section:first-child,.input-label:first-child{margin-top:0}.input-label .input{width:100%;margin-bottom:0}.input-label .input+.input{margin-top:5px}.input-label .input-label{margin-bottom:10px}.input-label .input-label .label{font-weight:400}.input-label label .caption,.input-label label .optional{font-weight:400;font-size:.92em}.input-label label .caption:before,.input-label label .optional:before{content:"("}.input-label label .caption:after,.input-label label .optional:after{content:")"}.input-label-below{margin-top:5px;clear:both}.background-cover{position:fixed;top:0;right:0;bottom:0;left:0;background-position:center center;background-size:cover}.input-with-button{position:relative}.input-with-button input::-webkit-inner-spin-button,.input-with-button input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.input-with-button input[type=number]{-moz-appearance:textfield}.input-with-button button{background:0 0;position:absolute;inset-inline-end:0;top:50%;transform:translateY(-50%);border:none;font-size:22px;width:1em;height:1em;outline:0;color:var(--colorAccent)}.input-with-button button:focus,.input-with-button button:hover{color:var(--colorAccentStrong)}#top-left{position:fixed;padding:5px;inset-inline-start:0;top:0}.top-button{padding:5px}.top-button .menu-box{margin-top:5px}.top-button-icon{font-size:16px;color:#fff;cursor:pointer;text-shadow:1px 1px 0 rgba(0,0,0,.15)}.background-default{background:#2ecc71;background:linear-gradient(to bottom,#2ecc71 0,#3498db 100%)}.content-box{position:relative;margin:20px}.content-box-text :first-child{margin-top:0}.content-box-text :last-child{margin-bottom:0}.logo{max-height:50px;max-width:220px;margin-bottom:20px}.card-box{min-width:270px;width:calc(100vw - 40px)}.access-box-content{background:var(--bodyBackground)}.fancy-box-heading{font-size:22px;margin:20px 0 30px 0}.fancy-fieldset{border:0;padding:0;margin:0}.fancy-fieldset input:not([type=checkbox]),.fancy-fieldset input[type=text],.fancy-fieldset select,.fancy-fieldset textarea{outline:0;padding:10px 0;width:100%;border-radius:0;border-color:transparent;background:0 0;box-shadow:none}.fancy-fieldset .checkbox-label input[type=checkbox]{width:auto;vertical-align:middle;margin:0 0 0 -20px}.fancy-fieldset select{-webkit-appearance:none;-moz-appearance:none;appearance:none}.fancy-fieldset input,.fancy-fieldset select{padding:10px 0;border-top:transparent;border-inline-start:transparent;border-inline-end:transparent}.fancy-fieldset input:focus,.fancy-fieldset input:focus[type=text],.fancy-fieldset select:focus,.fancy-fieldset textarea:focus{border-color:var(--colorAccent)}.fancy-fieldset .input-with-button input[type=password]{padding-inline-end:30px}.fancy-fieldset>div:last-child{margin-bottom:inherit}.fancy-fieldset .label{line-height:1.5}.fancy-fieldset .input-label:last-child{margin-bottom:0}.fancy-fieldset .checkbox-label{margin:0}a.login-provider-button{position:relative;text-decoration:none;display:inline-block;font-size:1em;margin:10px 0;background:#d9d9d9;padding:8px;text-decoration:none;display:block;color:#fff;border-radius:3px;text-align:center}a.login-provider-button .text{margin-inline-start:5px}a.login-provider-button--facebook{background-color:#4267b2}a.login-provider-button--twitter{background-color:#1da1f2}a.login-provider-button--google{background-color:#ea4335}a.login-provider-button--vkontakte{background-color:#45668e}a.login-provider-button--apple{background-color:#000}a.login-provider-button--amazon{background-color:#f90}a.login-provider-button--bitbucket{background-color:#2684ff}a.login-provider-button--discord{background-color:#738adb}a.login-provider-button--dribbble{background-color:#e94c88}a.login-provider-button--dropbox{background-color:#007ee5}a.login-provider-button--github{background-color:#333}a.login-provider-button--gitlab{background-color:#fc6d26}a.login-provider-button--instagram{background-color:#e1306c}a.login-provider-button--linkedin{background-color:#006192}a.login-provider-button--mailru{background-color:#168de2}a.login-provider-button--medium{background-color:#00ab6c}a.login-provider-button--odnoklassniki{background-color:#ed812b}a.login-provider-button--orcid{background-color:#a5ce37}a.login-provider-button--reddit{background-color:#ff4500}a.login-provider-button--spotify{background-color:#1db954}a.login-provider-button--stackexchange{background-color:#1e5397}a.login-provider-button--steam{background-color:#00adee}a.login-provider-button--strava{background-color:#fc4c02}a.login-provider-button--telegram{background-color:#08c}a.login-provider-button--tumblr{background-color:#35465c}a.login-provider-button--twitchtv{background-color:#9146ff}a.login-provider-button--wechat{background-color:#7bb32e}a.login-provider-button--windowslive{background-color:#107c10}a.login-provider-button--wordpress{background-color:#21759b}a.login-provider-button--yandex{background-color:#fc0}a.login-provider-button--yahoo{background-color:#410093}a.login-provider-button--qq{background-color:#121214}.login-provider-button-outline{position:relative;text-decoration:none;width:32px;height:32px;display:inline-block;border-radius:50%;border-width:1px;border-style:solid;font-size:16px;margin:5px}.login-provider-button-outline .icon{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.login-provider-button-outline.border-color-facebook:focus,.login-provider-button-outline.border-color-facebook:hover{background-color:#3b5998}.login-provider-button-outline.border-color-twitter:focus,.login-provider-button-outline.border-color-twitter:hover{background-color:#1da1f2}.login-provider-button-outline.border-color-google:focus,.login-provider-button-outline.border-color-google:hover{background-color:#ea4335}.login-provider-button-outline.border-color-vk:focus,.login-provider-button-outline.border-color-vk:hover{background-color:#45668e}.login-provider-button-outline:focus .icon,.login-provider-button-outline:hover .icon{color:#fff}#login{padding:0;margin:0}.content-section--captcha-fix #g-recaptcha,.content-section--captcha-fix .h-captcha{min-height:78px;transform:scale(.89);transform-origin:left}#login .input{margin:0}.btn-container--fixed{position:fixed;left:0;right:0;bottom:0;background:rgba(0,0,0,.05);padding:10px 0;margin:0;border:0;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);text-align:start}.phablet .btn-container--fixed,.phone .btn-container--fixed{text-align:center}body.full--wh{height:100vh;height:100dvh;width:100vw;width:100dvw}.display-flex #home-cover-slideshow{position:fixed}[data-content=dashboard-imports] [data-action=resume],[data-content=dashboard-imports] [data-errors="0"] [data-content=log-errors],[data-content=dashboard-imports] [data-result],[data-content=dashboard-imports] [data-started="0"] [data-content^=log]{display:none}[data-content=dashboard-imports] [data-errors="1"] [data-content=log-process],[data-content=dashboard-imports] [data-status=completed] [data-action=pause],[data-content=dashboard-imports] [data-status=completed][data-errors="0"] [data-result=success],[data-content=dashboard-imports] [data-status=paused] [data-action=resume],[data-content=dashboard-imports] [data-status][data-errors="1"] [data-result=error]{display:initial}[data-content=dashboard-imports] [data-status=canceled] [data-action=cancel],[data-content=dashboard-imports] [data-status=canceled] [data-action=pause],[data-content=dashboard-imports] [data-status=canceled] [data-target=modal-process-import],[data-content=dashboard-imports] [data-status=completed] [data-action=cancel],[data-content=dashboard-imports] [data-status=completed] [data-action=pause],[data-content=dashboard-imports] [data-status=completed] [data-target=modal-process-import],[data-content=dashboard-imports] [data-status=paused] [data-action=pause],[data-content=dashboard-imports] [data-status=queued] [data-action=pause],[data-content=dashboard-imports] [data-status=working] [data-target=modal-process-import]{display:none!important}.connecting-ip{font-family:monospace;font-size:27px}.code{padding:.05em}.code--command{border-radius:.2em;padding:.5em;padding-inline-end:.7em;border-inline-start:.2em solid var(--colorAccent);background-color:var(--bodyEmpty)}.code--command::before{content:"$ ";color:var(--colorAccent)}.importing{background:var(--bodyEmpty);padding:10px;position:relative}.importing:nth-child(even){margin:0 10px}.phablet .importing:nth-child(even),.phone .importing:nth-child(even){margin:10px 0}.importing-stats{margin:10px 0}.importing-stats .figure{display:inline-block;padding:5px;background:var(--buttonAccentBackground);color:var(--buttonAccentText)}.apexcharts-menu-icon,.apexcharts-pan-icon,.apexcharts-reset-icon,.apexcharts-selection-icon,.apexcharts-theme-light .apexcharts-legend-text,.apexcharts-toolbar-custom-icon,.apexcharts-zoom-icon,.apexcharts-zoomin-icon,.apexcharts-zoomout-icon{color:var(--bodyText)!important}.apexcharts-menu-icon svg,.apexcharts-reset-icon svg,.apexcharts-zoom-icon svg,.apexcharts-zoomin-icon svg,.apexcharts-zoomout-icon svg{fill:var(--bodyText)!important}.apexcharts-theme-dark .apexcharts-legend-text{color:var(--bodyTextSubtle)!important}.apexcharts-theme-light svg text{fill:var(--bodyText)}.apexcharts-theme-dark svg text{fill:var(--bodyTextSubtle)}.apexcharts-toolbar{z-index:0!important}.apexcharts-canvas>svg{background:0 0!important}#dashboard-chart{margin:35px auto;overflow:hidden}#dashboard-chart .toolbar{margin-inline-start:45px}#dashboard-chart button{background:var(--bodyBackground);color:var(--bodyText);border:1px solid var(--bodySeparator);border-bottom:2px solid var(--bodySeparator);border-radius:2px;padding:4px 17px}#dashboard-chart button.active{color:var(--buttonAccentText);background:var(--buttonAccentBackground);border:1px solid var(--buttonAccentBackground);border-bottom:2px solid var(--buttonAccentBackground)}#dashboard-chart button:focus{outline:0}.corazoncito{width:1em;height:1em;font-size:290px;color:rgb(255,0,0,.6);z-index:1;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) scale(.4);transition:all .5s ease}.corazoncito.--show{opacity:1;transform:translate(-50%,-50%) scale(1)}.corazoncito span{font-size:.25em;top:50%;left:50%;display:block;position:absolute;color:#fff;transform:translate(-50%,-50%);line-height:1;font-family:sans-serif;margin-top:-.1em;font-weight:400}.card-wrapper{height:175px;overflow-y:hidden;overflow-x:auto;-ms-scroll-snap-type:x mandatory;scroll-snap-type:x mandatory}.card-wrapper::-webkit-scrollbar{width:10px;height:3px}.card-wrapper::-webkit-scrollbar-track{background:var(--bodyEmpty)}.card-wrapper::-webkit-scrollbar-thumb{background:var(--colorAccent)}.card-wrapper::-webkit-scrollbar-thumb:hover{background:var(--colorAccentStrong)}.card-slider{width:calc(310px * 8 - 10px)}.card-container{width:300px;height:200px;display:block;float:left;margin-inline-end:10px;scroll-snap-align:start}[dir=rtl] .card-container{float:right}.card-container:first-child{margin-inline-start:0}.card-container:last-child{margin-inline-end:0}.card{width:100%;position:relative}.card a{text-decoration:none}.card-header-image{width:100%;height:150px;overflow:hidden;border-radius:1em;display:block;background-size:cover;background-position:center}.card-header-image-mask{width:100%;height:100%;display:block;background-color:rgba(0,0,0,0)}.card-header-image:hover .card-header-image-mask{background-color:var(--buttonAccentBackground)}.card-text{color:#fff;text-align:center;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:80%;text-shadow:2px 2px 8px rgba(0,0,0,.35)}.card-header-image:hover .card-text{color:var(--buttonAccentText)}.card-text h3{font-weight:700;font-size:1.6em;margin-bottom:5px}.powered-by--provider a.logo{font-size:5em;text-decoration:none}[data-banned="0"] [data-action=user_unban],[data-banned="1"] [data-action=user_ban]{display:none}.captcha.captcha--3 [data-content=captcha]{display:none}.cta-row{border:1px solid var(--bodySeparator);border-right:0;border-left:0;padding-top:20px;padding-bottom:20px;margin:0;cursor:grab;margin-bottom:-1px}.cta-row.ui-sortable-helper{background:var(--modalBackground)}.phablet .btn-cta .btn-text,.phone .btn-cta .btn-text{display:none}.btn-cta{background-color:var(--bodyBackground);color:var(--bodyText);border-color:var(--bodyText)}.btn-cta:hover{background-color:var(--colorAccent);color:var(--buttonAccentText);border-color:transparent}.btn-cta:hover .btn-icon{color:inherit}.version-display{font-size:1.4em}
\ No newline at end of file
diff --git a/content/legacy/themes/Peafowl/views/dashboard/stats.php b/content/legacy/themes/Peafowl/views/dashboard/stats.php
index 1caa711..5abbb35 100644
--- a/content/legacy/themes/Peafowl/views/dashboard/stats.php
+++ b/content/legacy/themes/Peafowl/views/dashboard/stats.php
@@ -2,6 +2,7 @@
use Chevereto\Legacy\Classes\Stat;
use function Chevereto\Legacy\G\bytes_to_mb;
+use function Chevereto\Legacy\G\get_base_url;
use function Chevereto\Legacy\G\get_client_ip;
use Chevereto\Legacy\G\Handler;
use function Chevereto\Legacy\get_static_url;
@@ -12,6 +13,24 @@ if (!defined('ACCESS') || !ACCESS) {
die('This file cannot be directly accessed.');
}
?>
+
+
+
'CHEVERETO_LICENSE_KEY',
+ '%file%' => '' . PATH_APP . 'CHEVERETO_LICENSE_KEY',
+ ]
+); ?>
+
+
+