ElixirVault/www/system-brs-core/cms/cmsPubUsers/js/cmsPubUsers.js

151 lines
5.1 KiB
JavaScript

var CmsPubUsers = (function() {
function CmsPubUsers(){
var _this = this;
_this.oTable = new CTable("data");
_this.oTable.loadTableData();
}
CTable.prototype.tableObjectCallback = function(oTable){
var _this = this;
// Clone blank action
oTable.find("a#iclone").click(function(){
CBase.message.hide(true, false);
_this.loadRecord(false, $(".dxr:not(.head) li.first div.chked").closest("ul").find("#ledit").attr("href") + "/clone:1");
});
};
CBlank.prototype.addAdditionalSaveData = function(){
var oData = {},
jqCompanies = $("#user_companies"),
jqReports = $("#reports");
if(jqCompanies.find("div.selector").length){
oData['user_sel_cp'] = {};
jqCompanies.find("div.selector").find("div.chosen option").each(function(){
oData['user_sel_cp'][$(this).val()] = 1;
});
}
if(jqReports.find("div.selector").length){
oData['reports'] = {};
jqReports.find("div.selector").find("div.chosen option").each(function(){
oData['reports'][$(this).val()] = 1;
});
}
return oData;
};
// Rewrite CBase form callback
CBlank.prototype.viewCallback = function(jqObj){
var _this = this;
jqObj.find("#psettings, #userlinks, #user_groups, #user_permissions, #ppasschange, #user_companies, .settings").find("h3").click(function(){
var jqParent = $(this).parent();
if(jqParent.hasClass("load")){
_this.loadBlankBlockSubContent(jqParent, function(html, d){
CBase.jsModule.bindSelectorControls(html, d);
});
}else{
_this.showHideSubContentPanel(jqParent);
}
});
_this.oBtnPan.find("#fcancel").click(function(){
CBase.message.hide();
if(_this.isModiffied){
CBase.oTable.filterTableData(true);
}else{
CBase.oTable.show();
}
});
_this.oBtnPan.find("#fsave").click(function(){
_this.saveBlankView();
});
// Auto pass gen switch
jqObj.find("#user_passgen").change(function(){
var jqPsCnt = $("#ppasschange");
var noSkip = jqPsCnt.hasClass("noskip") ? true : false
var jqObj = $(this);
if(jqObj.val()){
CBase.ajax({action: "genRandomPwd"}, false, function(d){
jqPsCnt.find("#auto-gen-pwd").fadeIn("fast");
jqPsCnt.find("input, textarea").removeClass("skip");
if(!jqPsCnt.find("> div").is(":visible"))
jqPsCnt.find("> h3").click();
jqPsCnt.find("#auto-gen-pwd").find("b").html(d.key);
jqPsCnt.find("input:password").val(d.key);
});
}else{
jqPsCnt.find("#auto-gen-pwd").fadeOut("fast");
if(!noSkip) jqPsCnt.find("input, textarea").addClass("skip");
jqPsCnt.find("input:password").val("");
if(jqPsCnt.find("> div").is(":visible"))
jqPsCnt.find("> h3").click();
}
});
jqObj.find("#copy_code").bind({
click : function(){
if(CBase.copyToClipboard($(this).parent().find("b").html())){
var jqNode = $(this).find(".errMsg");
jqNode.html(jqNode.attr("data-ok-msg"));
}
},
mouseenter : function(){
var jqNode = $(this).find(".errMsg");
jqNode.html(jqNode.attr("data-base-msg"));
}
});
// Add simple filter
_this.bindSearch(jqObj);
// Continue blank form event binds
_this.bindBlankActions(jqObj);
};
// Bind selector controls
CmsPubUsers.prototype.bindSelectorControls = function(jqObj, d){
var _this = this;
jqObj.find("select option.img").click(function(){
//alert($(this).attr("data"));
});
// Bind count classification
if($("#add-count").length){
jqObj.find("#ft, #fts").change(function(){
var optGr = $(this).closest(".class-144");
if(optGr.length){ }
var gr = $(this).closest("ul").find("select").not($(this).closest("select"));
gr.find("optgroup:disabled").attr("disabled", false);
if(v = $(this).val())
gr.find("option[value="+v+"]").parent().attr("disabled", true);
});
_this.setupDivisionData(d);
CBase.oForm.validator.bindSubs("#count_classificators");
jqObj.find("#add-count").click(function(){
// _this.addNewCountClassification(true);
});
jqObj.find("a.del-btn").click(function(){
$(this).closest("ul").slideUp("fast", function(){
$(this).next().remove();
$(this).remove();
});
});
}
};
return CmsPubUsers;
})();