151 lines
5.1 KiB
JavaScript
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;
|
|
})();
|
|
|