From e4fec69b0cec43613609334140fae60bc251e2fe Mon Sep 17 00:00:00 2001 From: nuxsmin Date: Tue, 7 Feb 2017 21:26:13 +0100 Subject: [PATCH] * [MOD] Improved logout behavior. Now an sticky message is shown and when hidding, it redirects to the login page. --- inc/SP/Util/Util.class.php | 2 +- inc/themes/material-blue/views/main/login.inc | 2 - js/app-actions.js | 6 +- js/app-actions.min.js | 80 +++++++++---------- js/app-main.js | 24 ++++-- js/app-main.min.js | 42 +++++----- js/app-triggers.js | 4 - js/app-triggers.min.js | 20 ++--- js/strings.js.php | 3 +- 9 files changed, 93 insertions(+), 90 deletions(-) diff --git a/inc/SP/Util/Util.class.php b/inc/SP/Util/Util.class.php index b9fbdbb5..0a332e10 100644 --- a/inc/SP/Util/Util.class.php +++ b/inc/SP/Util/Util.class.php @@ -368,7 +368,7 @@ class Util */ public static function getVersion($retBuild = false) { - $build = '17020701'; + $build = '17020702'; $version = [2, 0, 0]; if ($retBuild) { diff --git a/inc/themes/material-blue/views/main/login.inc b/inc/themes/material-blue/views/main/login.inc index 2e7682ba..f15b2877 100644 --- a/inc/themes/material-blue/views/main/login.inc +++ b/inc/themes/material-blue/views/main/login.inc @@ -74,8 +74,6 @@ - -
diff --git a/js/app-actions.js b/js/app-actions.js index ebe0f19c..b5482440 100644 --- a/js/app-actions.js +++ b/js/app-actions.js @@ -336,6 +336,8 @@ sysPass.Actions = function (Common) { opts.data = $obj.serialize(); Common.appRequests().getActionCall(opts, function (json) { + var $extra = $(".extra-hidden"); + switch (json.status) { case 0: Common.redirect(json.data.url); @@ -346,8 +348,6 @@ sysPass.Actions = function (Common) { $obj.find("input[type='text'],input[type='password']").val(""); $obj.find("input:first").focus(); - var $extra = $(".extra-hidden"); - if ($extra.length > 0) { $extra.hide(); } @@ -361,8 +361,6 @@ sysPass.Actions = function (Common) { $obj.find("input[type='text'],input[type='password']").val(""); $obj.find("input:first").focus(); - var $extra = $(".extra-hidden"); - if ($extra.length > 0) { $extra.hide(); } diff --git a/js/app-actions.min.js b/js/app-actions.min.js index 07301f3c..8c7be38e 100644 --- a/js/app-actions.min.js +++ b/js/app-actions.min.js @@ -1,42 +1,42 @@ -var $jscomp={scope:{},findInternal:function(c,d,k){c instanceof String&&(c=String(c));for(var e=c.length,g=0;g'+b+""),h=f.find("img");if(0===h.length)return l(a,b);h.hide();$.magnificPopup.open({items:{src:f,type:"inline"},callbacks:{open:function(){var a=this;h.on("click",function(){a.close()});setTimeout(function(){var a=c.resizeImage(h);f.css({backgroundColor:"#fff", -width:a.width,height:"auto"});h.show("slow")},500)}}})},p={get:function(a){d.info("items:get");var b=a[0].selectize;b.clearOptions();b.load(function(f){var h=c.appRequests().getRequestOpts();h.url=e.updateItems;h.method="get";h.cache=!0;h.data={sk:a.data("sk"),itemType:a.data("item-type"),itemId:a.data("item-id")};c.appRequests().getActionCall(h,function(h){f(h.data);b.setValue(a.data("selected-id"),!0);c.appTriggers().updateFormHash()})})},update:function(a){d.info("items:update");var b=$("#"+a.data("item-dst"))[0].selectize; -b.clearOptions();b.load(function(b){var f=c.appRequests().getRequestOpts();f.url=e.updateItems;f.method="get";f.data={sk:c.sk.get(),itemType:a.data("item-type")};c.appRequests().getActionCall(f,function(a){b(a.data)})})}},q={logout:function(){var a=window.location.search;c.redirect(0";showDialog({text:b,negative:{title:c.config().LANG[44],onClick:function(b){b.preventDefault();c.msg.error(c.config().LANG[44]);a.find(":input[type=password]").val("")}},positive:{title:c.config().LANG[43],onClick:function(c){r.save(a);a.find(":input[type=password]").val("")}}})}, -backup:function(a){d.info("config:backup");var b=c.appRequests().getRequestOpts();b.url=e.config["export"];b.method="post";b.data=a.serialize();c.appRequests().getActionCall(b,function(b){c.msg.out(b);0===b.status&&void 0!==a.data("nextaction-id")&&g({actionId:a.data("nextaction-id"),itemId:a.data("activetab")})})},"export":function(a){d.info("config:export");var b=c.appRequests().getRequestOpts();b.url=e.config["export"];b.data=a.serialize();c.appRequests().getActionCall(b,function(b){c.msg.out(b); -0===b.status&&void 0!==a.data("nextaction-id")&&g({actionId:a.data("nextaction-id"),itemId:a.data("activetab")})})},"import":function(a){d.info("config:import");var b=c.appRequests().getRequestOpts();b.url=e.config["import"];b.data=a.serialize();c.appRequests().getActionCall(b,function(b){c.msg.out(b);0===b.status&&void 0!==a.data("nextaction-id")&&g({actionId:a.data("nextaction-id"),itemId:a.data("activetab")})})},refreshMpass:function(a){d.info("config:import");var b=c.appRequests().getRequestOpts(); -b.url=e.config.save;b.data={actionId:a.data("action-id"),itemId:a.data("item-id"),sk:a.data("sk"),isAjax:1};c.appRequests().getActionCall(b,function(a){c.msg.out(a)})}},m={show:function(a){d.info("account:show");g({actionId:a.data("action-id"),itemId:a.data("item-id")},"account")},showHistory:function(a){d.info("account:showHistory");g({actionId:a.data("action-id"),itemId:a.val()},"account")},edit:function(a){d.info("account:edit");g({actionId:a.data("action-id"),itemId:a.data("item-id")},"account")}, -"delete":function(a){d.info("account:delete");var b='

'+c.config().LANG[3]+"

";showDialog({text:b,negative:{title:c.config().LANG[44],onClick:function(a){a.preventDefault();c.msg.error(c.config().LANG[44])}},positive:{title:c.config().LANG[43],onClick:function(b){b=c.appRequests().getRequestOpts();b.url=e.account.save;b.data={itemId:a.data("item-id"),actionId:a.data("action-id"),sk:c.sk.get()};c.appRequests().getActionCall(b,function(a){c.msg.out(a);m.search()})}}})}, -showpass:function(a){d.info("account:showpass");var b=a.data("parent-id"),f=c.appRequests().getRequestOpts();f.url=e.appMgmt.show;f.method="get";f.data={itemId:0==b?a.data("item-id"):b,actionId:a.data("action-id"),isHistory:a.data("history"),isLinked:0",f=a.data("selection"),h=[];if(f&&($(f).find(".is-selected").each(function(a,c){var b=$(this);h.push(b.data("item-id"))}),0===h.length))return;showDialog({text:b,negative:{title:c.config().LANG[44],onClick:function(a){a.preventDefault();c.msg.error(c.config().LANG[44])}},positive:{title:c.config().LANG[43],onClick:function(b){b.preventDefault();b=c.appRequests().getRequestOpts(); -b.url=e.appMgmt.save;b.data={itemId:f?h:a.data("item-id"),actionId:a.data("action-id"),sk:c.sk.get(),isAjax:1};c.appRequests().getActionCall(b,function(b){c.msg.out(b);a.data("nextaction-id")&&g({actionId:a.data("nextaction-id"),itemId:a.data("activetab")})})}}})},save:function(a){d.info("appMgmt:save");var b=c.appRequests().getRequestOpts();b.url=e.appMgmt.save;b.data=a.serialize();c.appRequests().getActionCall(b,function(b){c.msg.out(b);0===b.status&&(b=a.data("activetab"),!0===n.refreshTab&&void 0!== -b&&g({actionId:a.data("nextaction-id"),itemId:b}),$.magnificPopup.close())})},search:function(a){d.info("appMgmt:search");var b=$(a.data("target")),f=c.appRequests().getRequestOpts();f.url=e.appMgmt.search;f.method="get";f.data=a.serialize();c.appRequests().getActionCall(f,function(a){0===a.status?b.html(a.data.html):b.html(c.msg.html.error(a.description));c.sk.set(a.csrf)})},nav:function(a){d.info("appMgmt:nav");var b=$("#"+a.data("action-form"));b.find("[name='start']").val(a.data("start"));b.find("[name='count']").val(a.data("count")); -b.find("[name='sk']").val(c.sk.get());n.search(b)},ldapSync:function(a){d.info("appMgmt:ldapSync");var b='

'+c.config().LANG[57]+"

";showDialog({text:b,negative:{title:c.config().LANG[44],onClick:function(a){a.preventDefault();c.msg.error(c.config().LANG[44])}},positive:{title:c.config().LANG[43],onClick:function(b){b=c.appRequests().getRequestOpts();b.url=e.appMgmt.save;b.data={actionId:a.data("action-id"),sk:c.sk.get(),isAjax:1};c.appRequests().getActionCall(b, -function(a){c.msg.out(a)})}}})}};return{doAction:g,appMgmt:n,account:m,file:{view:function(a){d.info("file:view");var b=c.appRequests().getRequestOpts();b.url=e.file;b.type="html";b.data={fileId:a.data("item-id"),sk:c.sk.get(),actionId:a.data("action-id")};c.appRequests().getActionCall(b,function(b){void 0!==b.status&&1===b.status?c.msg.out(b):b?t(a,b):c.msg.error(c.config().LANG[14])})},download:function(a){d.info("file:download");a={fileId:a.data("item-id"),sk:c.sk.get(),actionId:a.data("action-id")}; -$.fileDownload(c.config().APP_ROOT+e.file,{httpMethod:"POST",data:a})},"delete":function(a){d.info("file:delete");var b='

'+c.config().LANG[15]+"

";showDialog({text:b,negative:{title:c.config().LANG[44],onClick:function(a){a.preventDefault();c.msg.error(c.config().LANG[44])}},positive:{title:c.config().LANG[43],onClick:function(b){b=c.appRequests().getRequestOpts();b.url=e.file;b.data={fileId:a.data("item-id"),actionId:a.data("action-id"),sk:c.sk.get()}; -c.appRequests().getActionCall(b,function(a){c.msg.out(a);0===a.status&&(a=$("#list-account-files"),m.getfiles(a))})}}})}},checks:{ldap:function(a){d.info("checks:ldap");a=$(a.data("src"));a.find("[name='sk']").val(c.sk.get());var b=c.appRequests().getRequestOpts();b.url=e.checks;b.data=a.serialize();c.appRequests().getActionCall(b,function(a){c.msg.out(a);var b=$("#ldap-results");b.find(".list-wrap").html(c.appTheme().html.getList(a.data));b.show("slow")})},wiki:function(a){d.info("checks:wiki"); -a=$(a.data("src"));a.find("[name='sk']").val(c.sk.get());var b=c.appRequests().getRequestOpts();b.url=e.checks;b.data=a.serialize();c.appRequests().getActionCall(b,function(a){c.msg.out(a);0===a.status&&$("#dokuWikiResCheck").html(a.data)})}},config:r,main:q,user:{savePreferences:function(a){d.info("user:savePreferences");var b=c.appRequests().getRequestOpts();b.url=e.user.savePreferences;b.data=a.serialize();c.appRequests().getActionCall(b,function(a){c.msg.out(a);setTimeout(function(){c.redirect("index.php")}, -2E3)})},saveSecurity:function(a){d.info("user:saveSecurity");var b=c.appRequests().getRequestOpts();b.url=e.user.savePreferences;b.data=a.serialize();c.appRequests().getActionCall(b,function(b){c.msg.out(b);g({actionId:a.data("nextaction-id"),itemId:a.data("activetab")})})},password:function(a){d.info("user:password");var b=c.appRequests().getRequestOpts();b.type="html";b.method="get";b.url=e.user.password;b.data={actionId:a.data("action-id"),itemId:a.data("item-id"),sk:a.data("sk"),isAjax:1};c.appRequests().getActionCall(b, -function(b){0===b.length?q.logout():l(a,b)})},passreset:function(a){d.info("user:passreset");var b=c.appRequests().getRequestOpts();b.url=e.user.passreset;b.data=a.serialize();c.appRequests().getActionCall(b,function(a){c.msg.out(a)})}},link:{save:function(a){d.info("link:save");var b=c.appRequests().getRequestOpts();b.url=e.link;b.data={itemId:a.data("item-id"),actionId:a.data("action-id"),sk:c.sk.get(),isAjax:1};var f='

'+c.config().LANG[48]+"

";showDialog({text:f, -negative:{title:c.config().LANG[44],onClick:function(a){a.preventDefault();c.appRequests().getActionCall(b,function(a){c.msg.out(a)})}},positive:{title:c.config().LANG[43],onClick:function(f){f.preventDefault();b.data.notify=1;c.appRequests().getActionCall(b,function(b){c.msg.out(b);g({actionId:a.data("nextaction-id"),itemId:a.data("item-id")})})}}})},refresh:function(a){d.info("link:refresh");var b={itemId:a.data("item-id"),actionId:a.data("action-id"),sk:c.sk.get(),activeTab:a.data("activetab")}, -f=c.appRequests().getRequestOpts();f.url=e.link;f.data=b;c.appRequests().getActionCall(f,function(b){c.msg.out(b);0===b.status&&g({actionId:a.data("nextaction-id"),itemId:a.data("activetab")})})}},eventlog:{nav:function(a){if(void 0===a.data("start"))return!1;var b=c.appRequests().getRequestOpts();b.url=e.eventlog;b.method="get";b.type="html";b.data={actionId:a.data("action-id"),sk:c.sk.get(),isAjax:1,start:a.data("start"),count:a.data("count"),current:a.data("current")};c.appRequests().getActionCall(b, -function(a){$("#content").html(a);c.scrollUp()})},clear:function(a){var b='

'+c.config().LANG[20]+"

";showDialog({text:b,negative:{title:c.config().LANG[44],onClick:function(a){a.preventDefault();c.msg.error(c.config().LANG[44])}},positive:{title:c.config().LANG[43],onClick:function(b){b.preventDefault();b=c.appRequests().getRequestOpts();b.url=e.eventlog;b.method="get";b.data={clear:1,sk:c.sk.get(),isAjax:1};c.appRequests().getActionCall(b,function(b){c.msg.out(b); -0==b.status&&g({actionId:a.data("nextaction-id")})})}}})}},ajaxUrl:e,plugin:{toggle:function(a){d.info("plugin:enable");a={itemId:a.data("item-id"),actionId:a.data("action-id"),sk:c.sk.get(),activeTab:a.data("activetab")};var b=c.appRequests().getRequestOpts();b.url=e.appMgmt.save;b.data=a;c.appRequests().getActionCall(b,function(a){c.msg.out(a);0===a.status&&setTimeout(function(){c.redirect("index.php")},2E3)})},reset:function(a){d.info("plugin:reset");var b='

'+ -c.config().LANG[58]+"

";showDialog({text:b,negative:{title:c.config().LANG[44],onClick:function(a){a.preventDefault();c.msg.error(c.config().LANG[44])}},positive:{title:c.config().LANG[43],onClick:function(b){b.preventDefault();b={itemId:a.data("item-id"),actionId:a.data("action-id"),sk:c.sk.get(),activeTab:a.data("activetab")};var d=c.appRequests().getRequestOpts();d.url=e.appMgmt.save;d.data=b;c.appRequests().getActionCall(d,function(a){c.msg.out(a)})}}})}},notice:{check:function(a){d.info("notice:check"); -var b={itemId:a.data("item-id"),actionId:a.data("action-id"),sk:c.sk.get()},f=c.appRequests().getRequestOpts();f.url=e.appMgmt.save;f.data=b;c.appRequests().getActionCall(f,function(b){c.msg.out(b);0===b.status&&g({actionId:a.data("nextaction-id"),itemId:a.data("activetab")})})},search:function(a){d.info("notice:search");var b=$(a.data("target")),f=c.appRequests().getRequestOpts();f.url=e.notice.search;f.method="get";f.data=a.serialize();c.appRequests().getActionCall(f,function(a){0===a.status?b.html(a.data.html): -b.html(c.msg.html.error(a.description));c.sk.set(a.csrf)})},show:function(a){d.info("notice:show");var b=c.appRequests().getRequestOpts();b.url=e.notice.show;b.method="get";b.data={itemId:a.data("item-id"),actionId:a.data("action-id"),activeTab:a.data("activetab"),sk:c.sk.get(),isAjax:1};c.appRequests().getActionCall(b,function(b){0!==b.status?c.msg.out(b):l(a,b.data.html)})}},wiki:{show:function(a){d.info("wiki:show");var b=c.appRequests().getRequestOpts();b.url=e.wiki.show;b.method="get";b.data= -{pageName:a.data("pagename"),actionId:a.data("action-id"),sk:c.sk.get(),isAjax:1};c.appRequests().getActionCall(b,function(b){0!==b.status?c.msg.out(b):l(a,b.data.html)})}},items:p}}; +g=function(a,b){var d={actionId:a.actionId,itemId:"undefined"!==a.itemId?a.itemId:0,isAjax:1},h=c.appRequests().getRequestOpts();h.url=f.doAction;h.method="get";h.type="html";h.addHistory=!0;h.data=d;c.appRequests().getActionCall(h,function(a){var c=$("#content");c.empty().html(a);a=sysPassApp.triggers().views;a.common(c);if(void 0!==b&&"function"===typeof a[b])a[b]();c=$(".mdl-layout__content");0'+b+""),h=d.find("img");if(0===h.length)return l(a,b);h.hide();$.magnificPopup.open({items:{src:d,type:"inline"},callbacks:{open:function(){var a=this;h.on("click",function(){a.close()});setTimeout(function(){var a=c.resizeImage(h);d.css({backgroundColor:"#fff", +width:a.width,height:"auto"});h.show("slow")},500)}}})},p={get:function(a){e.info("items:get");var b=a[0].selectize;b.clearOptions();b.load(function(d){var h=c.appRequests().getRequestOpts();h.url=f.updateItems;h.method="get";h.cache=!0;h.data={sk:a.data("sk"),itemType:a.data("item-type"),itemId:a.data("item-id")};c.appRequests().getActionCall(h,function(h){d(h.data);b.setValue(a.data("selected-id"),!0);c.appTriggers().updateFormHash()})})},update:function(a){e.info("items:update");var b=$("#"+a.data("item-dst"))[0].selectize; +b.clearOptions();b.load(function(b){var d=c.appRequests().getRequestOpts();d.url=f.updateItems;d.method="get";d.data={sk:c.sk.get(),itemType:a.data("item-type")};c.appRequests().getActionCall(d,function(a){b(a.data)})})}},q={logout:function(){var a=window.location.search;c.redirect(0";showDialog({text:b,negative:{title:c.config().LANG[44],onClick:function(b){b.preventDefault();c.msg.error(c.config().LANG[44]);a.find(":input[type=password]").val("")}},positive:{title:c.config().LANG[43],onClick:function(c){r.save(a);a.find(":input[type=password]").val("")}}})},backup:function(a){e.info("config:backup"); +var b=c.appRequests().getRequestOpts();b.url=f.config["export"];b.method="post";b.data=a.serialize();c.appRequests().getActionCall(b,function(b){c.msg.out(b);0===b.status&&void 0!==a.data("nextaction-id")&&g({actionId:a.data("nextaction-id"),itemId:a.data("activetab")})})},"export":function(a){e.info("config:export");var b=c.appRequests().getRequestOpts();b.url=f.config["export"];b.data=a.serialize();c.appRequests().getActionCall(b,function(b){c.msg.out(b);0===b.status&&void 0!==a.data("nextaction-id")&& +g({actionId:a.data("nextaction-id"),itemId:a.data("activetab")})})},"import":function(a){e.info("config:import");var b=c.appRequests().getRequestOpts();b.url=f.config["import"];b.data=a.serialize();c.appRequests().getActionCall(b,function(b){c.msg.out(b);0===b.status&&void 0!==a.data("nextaction-id")&&g({actionId:a.data("nextaction-id"),itemId:a.data("activetab")})})},refreshMpass:function(a){e.info("config:import");var b=c.appRequests().getRequestOpts();b.url=f.config.save;b.data={actionId:a.data("action-id"), +itemId:a.data("item-id"),sk:a.data("sk"),isAjax:1};c.appRequests().getActionCall(b,function(a){c.msg.out(a)})}},m={show:function(a){e.info("account:show");g({actionId:a.data("action-id"),itemId:a.data("item-id")},"account")},showHistory:function(a){e.info("account:showHistory");g({actionId:a.data("action-id"),itemId:a.val()},"account")},edit:function(a){e.info("account:edit");g({actionId:a.data("action-id"),itemId:a.data("item-id")},"account")},"delete":function(a){e.info("account:delete");var b= +'

'+c.config().LANG[3]+"

";showDialog({text:b,negative:{title:c.config().LANG[44],onClick:function(a){a.preventDefault();c.msg.error(c.config().LANG[44])}},positive:{title:c.config().LANG[43],onClick:function(b){b=c.appRequests().getRequestOpts();b.url=f.account.save;b.data={itemId:a.data("item-id"),actionId:a.data("action-id"),sk:c.sk.get()};c.appRequests().getActionCall(b,function(a){c.msg.out(a);m.search()})}}})},showpass:function(a){e.info("account:showpass"); +var b=a.data("parent-id"),d=c.appRequests().getRequestOpts();d.url=f.appMgmt.show;d.method="get";d.data={itemId:0==b?a.data("item-id"):b,actionId:a.data("action-id"),isHistory:a.data("history"),isLinked:0

'+c.config().LANG[12]+"

",d=a.data("selection"),h=[];if(d&&($(d).find(".is-selected").each(function(a,c){var b=$(this);h.push(b.data("item-id"))}),0===h.length))return;showDialog({text:b,negative:{title:c.config().LANG[44],onClick:function(a){a.preventDefault();c.msg.error(c.config().LANG[44])}},positive:{title:c.config().LANG[43],onClick:function(b){b.preventDefault();b=c.appRequests().getRequestOpts();b.url=f.appMgmt.save;b.data={itemId:d?h:a.data("item-id"), +actionId:a.data("action-id"),sk:c.sk.get(),isAjax:1};c.appRequests().getActionCall(b,function(b){c.msg.out(b);a.data("nextaction-id")&&g({actionId:a.data("nextaction-id"),itemId:a.data("activetab")})})}}})},save:function(a){e.info("appMgmt:save");var b=c.appRequests().getRequestOpts();b.url=f.appMgmt.save;b.data=a.serialize();c.appRequests().getActionCall(b,function(b){c.msg.out(b);0===b.status&&(b=a.data("activetab"),!0===n.refreshTab&&void 0!==b&&g({actionId:a.data("nextaction-id"),itemId:b}),$.magnificPopup.close())})}, +search:function(a){e.info("appMgmt:search");var b=$(a.data("target")),d=c.appRequests().getRequestOpts();d.url=f.appMgmt.search;d.method="get";d.data=a.serialize();c.appRequests().getActionCall(d,function(a){0===a.status?b.html(a.data.html):b.html(c.msg.html.error(a.description));c.sk.set(a.csrf)})},nav:function(a){e.info("appMgmt:nav");var b=$("#"+a.data("action-form"));b.find("[name='start']").val(a.data("start"));b.find("[name='count']").val(a.data("count"));b.find("[name='sk']").val(c.sk.get()); +n.search(b)},ldapSync:function(a){e.info("appMgmt:ldapSync");var b='

'+c.config().LANG[57]+"

";showDialog({text:b,negative:{title:c.config().LANG[44],onClick:function(a){a.preventDefault();c.msg.error(c.config().LANG[44])}},positive:{title:c.config().LANG[43],onClick:function(b){b=c.appRequests().getRequestOpts();b.url=f.appMgmt.save;b.data={actionId:a.data("action-id"),sk:c.sk.get(),isAjax:1};c.appRequests().getActionCall(b,function(a){c.msg.out(a)})}}})}}; +return{doAction:g,appMgmt:n,account:m,file:{view:function(a){e.info("file:view");var b=c.appRequests().getRequestOpts();b.url=f.file;b.type="html";b.data={fileId:a.data("item-id"),sk:c.sk.get(),actionId:a.data("action-id")};c.appRequests().getActionCall(b,function(b){void 0!==b.status&&1===b.status?c.msg.out(b):b?t(a,b):c.msg.error(c.config().LANG[14])})},download:function(a){e.info("file:download");a={fileId:a.data("item-id"),sk:c.sk.get(),actionId:a.data("action-id")};$.fileDownload(c.config().APP_ROOT+ +f.file,{httpMethod:"POST",data:a})},"delete":function(a){e.info("file:delete");var b='

'+c.config().LANG[15]+"

";showDialog({text:b,negative:{title:c.config().LANG[44],onClick:function(a){a.preventDefault();c.msg.error(c.config().LANG[44])}},positive:{title:c.config().LANG[43],onClick:function(b){b=c.appRequests().getRequestOpts();b.url=f.file;b.data={fileId:a.data("item-id"),actionId:a.data("action-id"),sk:c.sk.get()};c.appRequests().getActionCall(b,function(a){c.msg.out(a); +0===a.status&&(a=$("#list-account-files"),m.getfiles(a))})}}})}},checks:{ldap:function(a){e.info("checks:ldap");a=$(a.data("src"));a.find("[name='sk']").val(c.sk.get());var b=c.appRequests().getRequestOpts();b.url=f.checks;b.data=a.serialize();c.appRequests().getActionCall(b,function(a){c.msg.out(a);var b=$("#ldap-results");b.find(".list-wrap").html(c.appTheme().html.getList(a.data));b.show("slow")})},wiki:function(a){e.info("checks:wiki");a=$(a.data("src"));a.find("[name='sk']").val(c.sk.get()); +var b=c.appRequests().getRequestOpts();b.url=f.checks;b.data=a.serialize();c.appRequests().getActionCall(b,function(a){c.msg.out(a);0===a.status&&$("#dokuWikiResCheck").html(a.data)})}},config:r,main:q,user:{savePreferences:function(a){e.info("user:savePreferences");var b=c.appRequests().getRequestOpts();b.url=f.user.savePreferences;b.data=a.serialize();c.appRequests().getActionCall(b,function(a){c.msg.out(a);setTimeout(function(){c.redirect("index.php")},2E3)})},saveSecurity:function(a){e.info("user:saveSecurity"); +var b=c.appRequests().getRequestOpts();b.url=f.user.savePreferences;b.data=a.serialize();c.appRequests().getActionCall(b,function(b){c.msg.out(b);g({actionId:a.data("nextaction-id"),itemId:a.data("activetab")})})},password:function(a){e.info("user:password");var b=c.appRequests().getRequestOpts();b.type="html";b.method="get";b.url=f.user.password;b.data={actionId:a.data("action-id"),itemId:a.data("item-id"),sk:a.data("sk"),isAjax:1};c.appRequests().getActionCall(b,function(c){0===c.length?q.logout(): +l(a,c)})},passreset:function(a){e.info("user:passreset");var b=c.appRequests().getRequestOpts();b.url=f.user.passreset;b.data=a.serialize();c.appRequests().getActionCall(b,function(a){c.msg.out(a)})}},link:{save:function(a){e.info("link:save");var b=c.appRequests().getRequestOpts();b.url=f.link;b.data={itemId:a.data("item-id"),actionId:a.data("action-id"),sk:c.sk.get(),isAjax:1};var d='

'+c.config().LANG[48]+"

";showDialog({text:d,negative:{title:c.config().LANG[44], +onClick:function(a){a.preventDefault();c.appRequests().getActionCall(b,function(a){c.msg.out(a)})}},positive:{title:c.config().LANG[43],onClick:function(d){d.preventDefault();b.data.notify=1;c.appRequests().getActionCall(b,function(b){c.msg.out(b);g({actionId:a.data("nextaction-id"),itemId:a.data("item-id")})})}}})},refresh:function(a){e.info("link:refresh");var b={itemId:a.data("item-id"),actionId:a.data("action-id"),sk:c.sk.get(),activeTab:a.data("activetab")},d=c.appRequests().getRequestOpts(); +d.url=f.link;d.data=b;c.appRequests().getActionCall(d,function(b){c.msg.out(b);0===b.status&&g({actionId:a.data("nextaction-id"),itemId:a.data("activetab")})})}},eventlog:{nav:function(a){if(void 0===a.data("start"))return!1;var b=c.appRequests().getRequestOpts();b.url=f.eventlog;b.method="get";b.type="html";b.data={actionId:a.data("action-id"),sk:c.sk.get(),isAjax:1,start:a.data("start"),count:a.data("count"),current:a.data("current")};c.appRequests().getActionCall(b,function(a){$("#content").html(a); +c.scrollUp()})},clear:function(a){var b='

'+c.config().LANG[20]+"

";showDialog({text:b,negative:{title:c.config().LANG[44],onClick:function(a){a.preventDefault();c.msg.error(c.config().LANG[44])}},positive:{title:c.config().LANG[43],onClick:function(b){b.preventDefault();b=c.appRequests().getRequestOpts();b.url=f.eventlog;b.method="get";b.data={clear:1,sk:c.sk.get(),isAjax:1};c.appRequests().getActionCall(b,function(b){c.msg.out(b);0==b.status&&g({actionId:a.data("nextaction-id")})})}}})}}, +ajaxUrl:f,plugin:{toggle:function(a){e.info("plugin:enable");a={itemId:a.data("item-id"),actionId:a.data("action-id"),sk:c.sk.get(),activeTab:a.data("activetab")};var b=c.appRequests().getRequestOpts();b.url=f.appMgmt.save;b.data=a;c.appRequests().getActionCall(b,function(a){c.msg.out(a);0===a.status&&setTimeout(function(){c.redirect("index.php")},2E3)})},reset:function(a){e.info("plugin:reset");var b='

'+c.config().LANG[58]+"

";showDialog({text:b,negative:{title:c.config().LANG[44], +onClick:function(a){a.preventDefault();c.msg.error(c.config().LANG[44])}},positive:{title:c.config().LANG[43],onClick:function(b){b.preventDefault();b={itemId:a.data("item-id"),actionId:a.data("action-id"),sk:c.sk.get(),activeTab:a.data("activetab")};var d=c.appRequests().getRequestOpts();d.url=f.appMgmt.save;d.data=b;c.appRequests().getActionCall(d,function(a){c.msg.out(a)})}}})}},notice:{check:function(a){e.info("notice:check");var b={itemId:a.data("item-id"),actionId:a.data("action-id"),sk:c.sk.get()}, +d=c.appRequests().getRequestOpts();d.url=f.appMgmt.save;d.data=b;c.appRequests().getActionCall(d,function(b){c.msg.out(b);0===b.status&&g({actionId:a.data("nextaction-id"),itemId:a.data("activetab")})})},search:function(a){e.info("notice:search");var b=$(a.data("target")),d=c.appRequests().getRequestOpts();d.url=f.notice.search;d.method="get";d.data=a.serialize();c.appRequests().getActionCall(d,function(a){0===a.status?b.html(a.data.html):b.html(c.msg.html.error(a.description));c.sk.set(a.csrf)})}, +show:function(a){e.info("notice:show");var b=c.appRequests().getRequestOpts();b.url=f.notice.show;b.method="get";b.data={itemId:a.data("item-id"),actionId:a.data("action-id"),activeTab:a.data("activetab"),sk:c.sk.get(),isAjax:1};c.appRequests().getActionCall(b,function(b){0!==b.status?c.msg.out(b):l(a,b.data.html)})}},wiki:{show:function(a){e.info("wiki:show");var b=c.appRequests().getRequestOpts();b.url=f.wiki.show;b.method="get";b.data={pageName:a.data("pagename"),actionId:a.data("action-id"),sk:c.sk.get(), +isAjax:1};c.appRequests().getActionCall(b,function(b){0!==b.status?c.msg.out(b):l(a,b.data.html)})}},items:p}}; diff --git a/js/app-main.js b/js/app-main.js index ebb22b8c..a3453d8e 100644 --- a/js/app-main.js +++ b/js/app-main.js @@ -146,8 +146,14 @@ sysPass.Main = function () { info: function (msg) { toastr.info(msg); }, - sticky: function (msg) { - toastr.warning(msg, config.LANG[60], {timeOut: 0}); + sticky: function (msg, callback) { + var opts = {timeOut: 0}; + + if (typeof callback === "function") { + opts.onHidden = callback; + } + + toastr.warning(msg, config.LANG[60], opts); }, out: function (data) { if (typeof data === "object") { @@ -217,6 +223,7 @@ sysPass.Main = function () { initializeClipboard(); setupCallbacks(); + checkLogout(); }); }; @@ -298,7 +305,7 @@ sysPass.Main = function () { // Función para obtener las variables de la URL y parsearlas a un array. - var getUrlVars = function () { + var getUrlVars = function (param) { var vars = [], hash; var hashes = window.location.href.slice(window.location.href.indexOf("?") + 1).split("&"); for (var i = 0; i < hashes.length; i++) { @@ -306,15 +313,18 @@ sysPass.Main = function () { vars.push(hash[0]); vars[hash[0]] = hash[1]; } - return vars; + + return param !== undefined && vars[param] !== undefined ? vars[param] : vars; }; // Función para comprobar si se ha salido de la sesión var checkLogout = function () { - var session = getUrlVars()["session"]; + log.info("checkLogout"); - if (session === 0) { - resMsg("warn", config.LANG[2], "", "location.search = ''"); + if (parseInt(getUrlVars("logout")) === 1) { + msg.sticky(config.LANG[61], function () { + redirect("index.php"); + }); } }; diff --git a/js/app-main.min.js b/js/app-main.min.js index dd8530b3..aa75f1ae 100644 --- a/js/app-main.min.js +++ b/js/app-main.min.js @@ -1,22 +1,22 @@ -var $jscomp={scope:{}};$jscomp.defineProperty="function"==typeof Object.defineProperties?Object.defineProperty:function(a,f,c){if(c.get||c.set)throw new TypeError("ES3 does not support getters and setters.");a!=Array.prototype&&a!=Object.prototype&&(a[f]=c.value)};$jscomp.getGlobal=function(a){return"undefined"!=typeof window&&window===a?a:"undefined"!=typeof global?global:a};$jscomp.global=$jscomp.getGlobal(this);$jscomp.SYMBOL_PREFIX="jscomp_symbol_"; +var $jscomp={scope:{}};$jscomp.defineProperty="function"==typeof Object.defineProperties?Object.defineProperty:function(a,g,f){if(f.get||f.set)throw new TypeError("ES3 does not support getters and setters.");a!=Array.prototype&&a!=Object.prototype&&(a[g]=f.value)};$jscomp.getGlobal=function(a){return"undefined"!=typeof window&&window===a?a:"undefined"!=typeof global?global:a};$jscomp.global=$jscomp.getGlobal(this);$jscomp.SYMBOL_PREFIX="jscomp_symbol_"; $jscomp.initSymbol=function(){$jscomp.initSymbol=function(){};$jscomp.global.Symbol||($jscomp.global.Symbol=$jscomp.Symbol)};$jscomp.symbolCounter_=0;$jscomp.Symbol=function(a){return $jscomp.SYMBOL_PREFIX+(a||"")+$jscomp.symbolCounter_++}; -$jscomp.initSymbolIterator=function(){$jscomp.initSymbol();var a=$jscomp.global.Symbol.iterator;a||(a=$jscomp.global.Symbol.iterator=$jscomp.global.Symbol("iterator"));"function"!=typeof Array.prototype[a]&&$jscomp.defineProperty(Array.prototype,a,{configurable:!0,writable:!0,value:function(){return $jscomp.arrayIterator(this)}});$jscomp.initSymbolIterator=function(){}};$jscomp.arrayIterator=function(a){var f=0;return $jscomp.iteratorPrototype(function(){return f"+b.messages.join("
"));switch(a){case 0:l.ok(d);break;case 1:case 2:case 4:l.error(d);break;case 3:l.warn(d);break;case 10:e.main.logout();break;case 100:l.ok(d),l.sticky(d)}}},html:{error:function(b){return'

Oops...
'+ -a.LANG[1]+"
"+b+"

"}}},x=function(b){h.info("getEnvironment");var k=window.location.pathname.split("/");a.APP_ROOT=window.location.protocol+"//"+window.location.host+function(){for(var a="",b=1;b<=k.length-2;b++)a+="/"+k[b];return a}();var d=m.getRequestOpts();d.url="/ajax/ajax_getEnvironment.php";d.method="get";d.async=!1;d.useLoading=!1;d.data={isAjax:1};m.getActionCall(d,function(d){a.LANG=d.lang;a.PK=d.pk;a.CHECK_UPDATES=d.check_updates;a.CRYPT.setPublicKey(d.pk);a.TIMEZONE=d.timezone;a.LOCALE= -d.locale;a.DEBUG=d.debug;"function"===typeof b&&b()})},r={get:function(){h.info("sk:get");return $("#container").attr("data-sk")},set:function(a){h.info("sk:set");$("#container").attr("data-sk",a)}},y=function(){var a=$("#container");if(!a.hasClass("content-no-auto-resize")){var k=$("#content").height()+200;a.css("height",k)}},z=function(){$("html, body").animate({scrollTop:0},"slow")},u=function(a){window.location.replace(a)},A=function(b){var k={actionId:b.data("action-id"),itemId:b.data("item-id"), -sk:r.get()},d={requestDoneAction:"",setRequestData:function(a){$.extend(k,a)},getRequestData:function(){return k},beforeSendAction:"",url:""},g=function(a){if(void 0===d.url||""===d.url)return!1;var b=new FormData;b.append("inFile",a);b.append("isAjax",1);k.sk=r.get();Object.keys(k).forEach(function(a){b.append(a,k[a])});a=m.getRequestOpts();a.url=d.url;a.processData=!1;a.contentType=!1;a.data=b;m.getActionCall(a,function(a){var b=a.status;a=a.description;0===b?("function"===typeof d.requestDoneAction&& -d.requestDoneAction(),l.ok(a)):10===b?e.main.logout():l.error(a)})},c=function(d){if(5a.MAX_FILE_SIZE)l.error(a.LANG[18]+"
"+p.name+" (Max: "+a.MAX_FILE_SIZE+")");else{var c;a:{c=p.name;for(var f=b.data("files-ext").toLowerCase().split(","),e=0;e<=f.length;e++)if(-1!==c.indexOf(f[e])){c=!0;break a}c=!1}c?g(d[k]):l.error(a.LANG[19]+"
"+p.name)}}},f=function(a){var b=$("#fileUploadForm");!1===a&& -b.hide();a=b.find("input[type='file']");a.on("change",function(){"function"===typeof d.beforeSendAction&&d.beforeSendAction();c(this.files)});return a};window.File&&window.FileList&&window.FileReader?function(){h.info("fileUpload:init");var a=f(!1);b.on("dragover dragenter",function(a){h.info("fileUpload:drag");a.stopPropagation();a.preventDefault()});b.on("drop",function(a){h.info("fileUpload:drop");a.stopPropagation();a.preventDefault();"function"===typeof d.beforeSendAction&&d.beforeSendAction(); -c(a.originalEvent.dataTransfer.files)});b.on("click",function(){a.click()})}():f(!0);return d},B=function(a){h.info("checkPassLevel");f.passLength=a.val().length;v(zxcvbn(a.val()),a)},v=function(b,k){h.info("outputResult");var d=$(".passLevel-"+k.attr("id")),c=b.score;d.show();d.removeClass("weak good strong strongest");0===f.passLength?d.attr("title","").empty():f.passLengtha.secondary?a.calc=a.main/a.rel:a.maina.secondary&& -(a.main*=a.factor,g(a));return a},e=function(){f.main=b;f.secondary=d;var e=g(f);a.css({width:e.main,height:e.calc});c.width=e.main;c.height=e.calc},l=function(){f.main=d;f.secondary=b;var e=g(f);a.css({width:e.calc,height:e.main});c.width=e.calc;c.height=e.main};c.width>b?e():c.height>d&&(h.info("height"),l());return c},H=function(){return $.extend({log:h,config:function(){return a},appTheme:function(){return c},appActions:function(){return e},appTriggers:function(){return g},appRequests:function(){return m}, -evalAction:F,resizeImage:G},q)},I=function(){return{actions:function(){return e},triggers:function(){return g},theme:function(){return c},sk:r,msg:l,log:h,passToClip:0,passwordData:f,outputResult:v,checkboxDetect:C,checkPassLevel:B,encryptFormValue:t,fileUpload:A,redirect:u,scrollUp:z,setContentSize:y}};(function(){h.info("init");q=I();n=H();g=sysPass.Triggers(n);e=sysPass.Actions(n);m=sysPass.Requests(n);x(function(){""!==a.PK&&E();"function"===typeof sysPass.Theme&&(c=sysPass.Theme(n));!0===a.CHECK_UPDATES&& -e.main.getUpdates();D();w()})})();return q}; +$jscomp.initSymbolIterator=function(){$jscomp.initSymbol();var a=$jscomp.global.Symbol.iterator;a||(a=$jscomp.global.Symbol.iterator=$jscomp.global.Symbol("iterator"));"function"!=typeof Array.prototype[a]&&$jscomp.defineProperty(Array.prototype,a,{configurable:!0,writable:!0,value:function(){return $jscomp.arrayIterator(this)}});$jscomp.initSymbolIterator=function(){}};$jscomp.arrayIterator=function(a){var g=0;return $jscomp.iteratorPrototype(function(){return g"+b.messages.join("
"));switch(a){case 0:l.ok(d);break;case 1:case 2:case 4:l.error(d);break;case 3:l.warn(d);break;case 10:e.main.logout();break;case 100:l.ok(d),l.sticky(d)}}},html:{error:function(b){return'

Oops...
'+ +a.LANG[1]+"
"+b+"

"}}},x=function(b){h.info("getEnvironment");var k=window.location.pathname.split("/");a.APP_ROOT=window.location.protocol+"//"+window.location.host+function(){for(var b="",a=1;a<=k.length-2;a++)b+="/"+k[a];return b}();var d=m.getRequestOpts();d.url="/ajax/ajax_getEnvironment.php";d.method="get";d.async=!1;d.useLoading=!1;d.data={isAjax:1};m.getActionCall(d,function(d){a.LANG=d.lang;a.PK=d.pk;a.CHECK_UPDATES=d.check_updates;a.CRYPT.setPublicKey(d.pk);a.TIMEZONE=d.timezone;a.LOCALE= +d.locale;a.DEBUG=d.debug;"function"===typeof b&&b()})},t={get:function(){h.info("sk:get");return $("#container").attr("data-sk")},set:function(b){h.info("sk:set");$("#container").attr("data-sk",b)}},y=function(){var b=$("#container");if(!b.hasClass("content-no-auto-resize")){var a=$("#content").height()+200;b.css("height",a)}},z=function(){$("html, body").animate({scrollTop:0},"slow")},A=function(a){for(var b=[],d,c=window.location.href.slice(window.location.href.indexOf("?")+1).split("&"),f=0;f< +c.length;f++)d=c[f].split("="),b.push(d[0]),b[d[0]]=d[1];return void 0!==a&&void 0!==b[a]?b[a]:b},B=function(){h.info("checkLogout");1===parseInt(A("logout"))&&l.sticky(a.LANG[61],function(){r("index.php")})},r=function(a){window.location.replace(a)},C=function(b){var k={actionId:b.data("action-id"),itemId:b.data("item-id"),sk:t.get()},d={requestDoneAction:"",setRequestData:function(a){$.extend(k,a)},getRequestData:function(){return k},beforeSendAction:"",url:""},f=function(a){if(void 0===d.url|| +""===d.url)return!1;var b=new FormData;b.append("inFile",a);b.append("isAjax",1);k.sk=t.get();Object.keys(k).forEach(function(a){b.append(a,k[a])});a=m.getRequestOpts();a.url=d.url;a.processData=!1;a.contentType=!1;a.data=b;m.getActionCall(a,function(a){var b=a.status;a=a.description;0===b?("function"===typeof d.requestDoneAction&&d.requestDoneAction(),l.ok(a)):10===b?e.main.logout():l.error(a)})},c=function(d){if(5a.MAX_FILE_SIZE)l.error(a.LANG[18]+"
"+p.name+" (Max: "+a.MAX_FILE_SIZE+")");else{var c;a:{c=p.name;for(var g=b.data("files-ext").toLowerCase().split(","),e=0;e<=g.length;e++)if(-1!==c.indexOf(g[e])){c=!0;break a}c=!1}c?f(d[k]):l.error(a.LANG[19]+"
"+p.name)}}},g=function(a){var b=$("#fileUploadForm");!1===a&&b.hide();a=b.find("input[type='file']");a.on("change",function(){"function"===typeof d.beforeSendAction&&d.beforeSendAction();c(this.files)});return a};window.File&&window.FileList&& +window.FileReader?function(){h.info("fileUpload:init");var a=g(!1);b.on("dragover dragenter",function(a){h.info("fileUpload:drag");a.stopPropagation();a.preventDefault()});b.on("drop",function(a){h.info("fileUpload:drop");a.stopPropagation();a.preventDefault();"function"===typeof d.beforeSendAction&&d.beforeSendAction();c(a.originalEvent.dataTransfer.files)});b.on("click",function(){a.click()})}():g(!0);return d},D=function(a){h.info("checkPassLevel");g.passLength=a.val().length;v(zxcvbn(a.val()), +a)},v=function(b,k){h.info("outputResult");var d=$(".passLevel-"+k.attr("id")),c=b.score;d.show();d.removeClass("weak good strong strongest");0===g.passLength?d.attr("title","").empty():g.passLengtha.secondary?a.calc=a.main/a.rel:a.maina.secondary&&(a.main*=a.factor,g(a));return a},e=function(){f.main=b;f.secondary=d;var e=g(f);a.css({width:e.main,height:e.calc});c.width=e.main;c.height=e.calc},l=function(){f.main=d;f.secondary=b;var e=g(f);a.css({width:e.calc,height:e.main});c.width=e.calc;c.height=e.main}; +c.width>b?e():c.height>d&&(h.info("height"),l());return c},J=function(){return $.extend({log:h,config:function(){return a},appTheme:function(){return f},appActions:function(){return e},appTriggers:function(){return c},appRequests:function(){return m},evalAction:H,resizeImage:I},q)},K=function(){return{actions:function(){return e},triggers:function(){return c},theme:function(){return f},sk:t,msg:l,log:h,passToClip:0,passwordData:g,outputResult:v,checkboxDetect:E,checkPassLevel:D,encryptFormValue:u, +fileUpload:C,redirect:r,scrollUp:z,setContentSize:y}};(function(){h.info("init");q=K();n=J();c=sysPass.Triggers(n);e=sysPass.Actions(n);m=sysPass.Requests(n);x(function(){""!==a.PK&&G();"function"===typeof sysPass.Theme&&(f=sysPass.Theme(n));!0===a.CHECK_UPDATES&&e.main.getUpdates();F();w();B()})})();return q}; diff --git a/js/app-triggers.js b/js/app-triggers.js index 422c2a5c..e8967865 100644 --- a/js/app-triggers.js +++ b/js/app-triggers.js @@ -232,10 +232,6 @@ sysPass.Triggers = function (Common) { }, login: function () { log.info("views:login"); - - $("#boxLogout").fadeOut(1500, function () { - location.href = Common.config().APP_ROOT + "/index.php"; - }); }, passreset: function () { log.info("views:passreset"); diff --git a/js/app-triggers.min.js b/js/app-triggers.min.js index 8f195f8e..390ff130 100644 --- a/js/app-triggers.min.js +++ b/js/app-triggers.min.js @@ -1,14 +1,14 @@ var $jscomp={scope:{},findInternal:function(b,d,e){b instanceof String&&(b=String(b));for(var a=b.length,c=0;cform").each(function(){var a=$(this);a.find("button.btn-clear").on("click",function(b){b.preventDefault();a.trigger("reset")})})},config:function(){d.info("views:config");var a=$("#drop-import-files");if(0form").each(function(){var a=$(this);a.find("button.btn-clear").on("click",function(b){b.preventDefault();a.trigger("reset")})})},config:function(){d.info("views:config");var a=$("#drop-import-files");if(0 __('Este proceso importará los usuarios de LDAP detectados. Desea continuar?'), 58 => __('Esta acción restablecerá todos los datos del plugin. Desea continuar?'), 59 => __('Este proceso puede durar algo de tiempo. Desea continuar?'), - 60 => __('Aviso') + 60 => __('Aviso'), + 61 => __('Sesión finalizada') ]; \ No newline at end of file