Viewing File: /usr/local/cpanel/whostmgr/docroot/templates/displayeximconfforedit.tmpl
[% USE CPScalar -%]
[% USE JSON -%]
[% USE Encoder -%]
[% USE Whostmgr -%]
[% WRAPPER 'master_templates/master.tmpl' theme="yui"
app_key='exim_configuration_manager'
warn_linked_nodes=1
stylesheets = [
Whostmgr.find_file_url('css/tweaksettings_optimized.css'),
Whostmgr.find_file_url('yui/tabview/assets/skins/sam/tabview.css')
]
scripts = [
Whostmgr.find_file_url('/js/exim_tabs_optimized.js')
Whostmgr.find_file_url('yui/tabview/tabview-min.js')
]
extrastyle = '
.confeditbox {
overflow: hidden;
}
.brickliststart li {
list-style: none;
}
.floatright {
float: right;
}
#rbl_table {
width: 100%;
}
#rbl_table th,
#rbl_table td {
text-align: center;
}
tr.delete_rbl td {
font-style: italic;
color: graytext;
}
.CONFIG_autocompleter {
width: 280px;
}
.CONFIG_autocompleter input {
width: 256px;
}
.yui-skin-sam .yui-navset .yui-content,
.yui-skin-sam .yui-navset .yui-navset-top .yui-content {
padding: 0;
background-color: #fff;
}
.yui-skin-sam .yui-ac-input {
position: static;
width: 20em;
vertical-align: middle;
}
.yui-skin-sam .yui-ac-container {
width: 20em;
left: 0px;
}
.yui-ac .yui-button {
vertical-align: middle;
}
.yui-ac .yui-button button {
background: url(/yui-gen/autocomplete/assets/img/ac-arrow-rt.png) center center no-repeat
}
.yui-ac .open .yui-button button {
background: url(/yui-gen/autocomplete/assets/img/ac-arrow-dn.png) center center no-repeat
}
.tabiframe {
min-height: 500px;
height: 50vh;
width: 100%;
border: 0;
}
.yui-content {
padding: 0px;
margin: -10px 0 0;
}
.yui-nav {
margin: 10px 0px;
}
*, ::before, ::after {
box-sizing: content-box;
}
.selected .warningtab a em,
.selected .warningtab em {
background-color: #FFFC57;
color: #000;
}
.warningtab em,
.warningtab a em {
background-color: #FFFEC2;
color: #000;
}
'
-%]
<div id="container"></div>
<div id="bottom"></div>
<script>
var tabView = new YAHOO.widget.TabView();
var active_submit = {};
var submit_timeout;
var last_submit_tabid;
var hasnotifytab;
var loadingliEl;
function load_tab_content(tabindex) {
var taburiinfo = taburis[tabindex];
if (!taburiinfo) { return; }
var tabiframeid = taburiinfo[0];
var tabiframeuri = taburiinfo[1];
var hasbeenloaded = taburiinfo[2];
var thisIframeEl = document.getElementById(tabiframeid);
var matchuri = tabiframeuri.split('/');
matchuri = matchuri[matchuri.length-1];
matchuri = matchuri.split('?');
matchuri = matchuri[0];
if (!hasbeenloaded) {
set_iframe_url( thisIframeEl, tabiframeuri );
taburis[tabindex][2] = 1; //hasbeenloaded
}
}
function notify_submit_complete(tabid) {
clearTimeout(submit_timeout);
if ( tabid == "advanced" || tabid == "reset" || tabid == "basic" || tabid == "install") { //install is a pseudo tab for config restores
reload_tab('basic', {}, 1); //changes in advanced can change basic
reload_tab('advanced', {}, 1); //changes in basic can change advanced
update_exim_configuration_check_tab();
reset_tabs();
}
if (tabid =="install" || !active_submit[tabid]) {
return;
}
active_submit[tabid]=0;
reset_tabs();
}
function reset_tabs() {
var tabs = tabView.get('tabs');
for(var i=0;i<actiontabindex;i++) {
tabs[i].set('disabled',false);
}
tabs[actiontabindex].set('disabled',true);
tabs[actiontabindex].removeClass('selected');
tabs[actiontabindex].setStyle('display','none');
}
function set_action_tab_to_loading() {
var thisIframeEl = document.getElementById('tabaction');
set_iframe_url( thisIframeEl, CPANEL.icons.ajax_src );
}
function update_exim_configuration_check_tab (skip_tab_switch) {
if ( hasnotifytab ) {
var tabs = tabView.get('tabs');
var notifytabindex = tabs.length-1;
tabs[notifytabindex].setStyle('display','none');
}
YAHOO.util.Connect.asyncRequest('GET', '[% cp_security_token %]/json-api/exim_configuration_check', {
'success': function(o) {
var config_check_results = YAHOO.lang.JSON.parse( o.responseText );
if (!config_check_results['status']) {
if (!hasnotifytab) {
tabView.addTab( new YAHOO.widget.Tab({
label: config_check_results['statusmsg'],
cacheData: true,
content: "<div style='margin: 5px;'>" + config_check_results['message'] + "</div>"
}));
}
var tabs = tabView.get('tabs');
var notifytabindex = tabs.length-1;
tabs[notifytabindex].setStyle('display','');
YAHOO.util.Dom.addClass( (tabs[notifytabindex].getElementsByTagName('a'))[0], "warningtab" );
YAHOO.util.Dom.addClass( (tabs[notifytabindex].getElementsByTagName('em'))[0], "warningtab" );
if ( !skip_tab_switch) { tabView.selectTab(notifytabindex); }
hasnotifytab = 1;
}
}
}, '');
}
function notify_submit(tabid,message) {
clearTimeout(submit_timeout);
active_submit[tabid]=1;
var tabs = tabView.get('tabs');
var actionTab = tabs[actiontabindex];
var labelEl = tabs[actiontabindex].get('labelEl');
labelEl.innerHTML=(message ? message : "In Progress...") + " <img border='0' align='absmiddle' src='" + CPANEL.icons.ajax_src + "'>";
actionTab.setStyle('display','');
actionTab.set('disabled',false);
tabView.selectTab(actiontabindex);
var tabs = tabView.get('tabs');
for(var i=0;i<actiontabindex;i++) {
tabs[i].set('disabled',true);
}
last_submit_tabid = tabid;
submit_timeout = setTimeout(function() {
alert("Operation timed out");
notify_submit_complete(tabid);
}, 35000);
}
function notify_service_restart(tabid,timeout) {
clearTimeout(submit_timeout);
submit_timeout = setTimeout(function() {
alert("Service restart operation timed out");
notify_submit_complete(last_submit_tabid);
}, timeout * 1000);
}
function safe_reload_tab(tabid,thisEl) {
for(var i in active_submit) {
if(active_submit[i]) {
alert("This tab cannot be reloaded until the operation is complete");
return false;
}
}
reload_tab(taburis[tabid][0], {}, 1);
}
function add_reload_to_tab(tab, tabid, display) {
var labelEl = tab.get('labelEl');
if (!labelEl.innerHTML.match(/_reload/)) {
var spanEl = document.createElement('span');
spanEl.id='tab_' + String(tabid) + '_reload';
spanEl.innerHTML += "<a onClick='safe_reload_tab(" + tabid + ",this); return false;' style='border:0;' href='#'><img style='height: 16px; width:16px; border:0;' width='16' height='16' border='0' id='reload_image_" + String(tabid) + "' align='absmiddle' src='/images/reload.png'></a>";
labelEl.appendChild(spanEl);
}
}
(function() {
var Dom = YAHOO.util.Dom,
Event = YAHOO.util.Event;
Event.onDOMReady(function() {
tabView.on('beforeActiveIndexChange', function(e) {
if (e.newValue != actiontabindex) {
load_tab_content(e.newValue);
set_action_tab_to_loading();
}
var tabs = tabView.get('tabs');
var imageIds = [];
for(var i=0;i<actiontabindex;i++) {
add_reload_to_tab(tabs[i],i, 'none');
var imgId = YAHOO.util.Dom.get('reload_image_' + String(i));
if (imgId) {
imageIds.push(imgId);
}
try {
document.getElementById( taburis[i][0] ).contentDocument.body.scrollLeft = 0;
} catch (e) {
}
}
for( var i=0;i<imageIds.length;i++) {
if (i != e.newValue) {
imageIds[i].style.display='none';
}
}
for( var i=0;i<imageIds.length;i++) {
if (i == e.newValue) {
imageIds[i].style.display='';
}
}
});
var basicTab = new YAHOO.widget.Tab({
label: 'Basic Editor',
active: true,
cacheData: true,
content: '<iframe frameborder="0" border="0" name="basic" id="basic" class="tabiframe" src="' + CPANEL.icons.ajax_src + '"></iframe>'
});
tabView.addTab(basicTab);
add_reload_to_tab(basicTab, 0, '');
/* XXX: If any of the following labels get translated, then the labels in
* etc/icontact_templates/Check/includes/EximConfig.UpdateSteps.html.tmpl
* should also be updated.
*/
tabView.addTab( new YAHOO.widget.Tab({
label: 'Advanced Editor',
cacheData: true,
content: '<iframe frameborder="0" border="0" name="advanced" id="advanced" class="tabiframe" src="' + CPANEL.icons.ajax_src + '"></iframe>'
}));
tabView.addTab( new YAHOO.widget.Tab({
label: 'Backup',
cacheData: true,
content: '<iframe frameborder="0" border="0" name="backup" id="backup-exim-config" class="tabiframe" src="' + CPANEL.icons.ajax_src + '"></iframe>'
}));
tabView.addTab( new YAHOO.widget.Tab({
label: 'Restore',
cacheData: true,
content: '<iframe frameborder="0" border="0" name="restore" id="restore" class="tabiframe" src="' + CPANEL.icons.ajax_src + '"></iframe>'
}));
tabView.addTab( new YAHOO.widget.Tab({
label: 'Reset',
cacheData: true,
content: '<iframe frameborder="0" border="0" name="reset" id="reset" class="tabiframe" src="' + CPANEL.icons.ajax_src + '"></iframe>'
}));
var actionTab = new YAHOO.widget.Tab({
label: 'Actions',
disabled: true,
cacheData: false,
content: '<iframe frameborder="0" border="0" class="tabiframe" src="' + CPANEL.icons.ajax_src + '" name="tabaction" id="tabaction"></iframe>'
});
actionTab.addClass('floatright');
actionTab.setStyle('display','none');
tabView.addTab( actionTab );
tabView.appendTo('container');
update_exim_configuration_check_tab();
window.setTimeout( function () { reload_tab('basic') }, 100 ); // give the loading 100ms to render first
});
})();
</script>
[% END #wrapper -%]
Back to Directory
File Manager