Exemplo n.º 1
0
/**
 * Generates databases list
 *
 * @param iMSCP_pTemplate $tpl Template engine
 * @param int $dmnId Domain unique identifier
 * @return void
 */
function client_databasesList($tpl, $dmnId)
{
    $stmt = exec_query('SELECT sqld_id, sqld_name FROM sql_database WHERE domain_id = ? ORDER BY sqld_name ', $dmnId);
    if (!$stmt->rowCount()) {
        set_page_message(tr('You do not have databases.'), 'static_info');
        $tpl->assign('SQL_DATABASES_USERS_LIST', '');
    } else {
        while ($row = $stmt->fetchRow(PDO::FETCH_ASSOC)) {
            $tpl->assign(array('DB_ID' => $row['sqld_id'], 'DB_NAME' => tohtml($row['sqld_name']), 'DB_NAME_JS' => tojs($row['sqld_name'])));
            _client_generateDatabaseSqlUserList($tpl, $row['sqld_id']);
            $tpl->parse('SQL_DATABASES_LIST', '.sql_databases_list');
        }
    }
}
Exemplo n.º 2
0
/**
 * @param EasySCP_TemplateEngine $tpl
 * @param EasySCP_Database $sql
 * @param int $user_id
 */
function gen_db_list($tpl, $sql, $user_id)
{
    $dmn_id = get_user_domain_id($user_id);
    $query = "\n\t\tSELECT\n\t\t\t`sqld_id`, `sqld_name`\n\t\tFROM\n\t\t\t`sql_database`\n\t\tWHERE\n\t\t\t`domain_id` = ?\n\t\tORDER BY\n\t\t\t`sqld_name`\n\t";
    $rs = exec_query($sql, $query, $dmn_id);
    if ($rs->recordCount() == 0) {
        set_page_message(tr('Database list is empty!'), 'info');
        $tpl->assign('DB_LIST', '');
    } else {
        while (!$rs->EOF) {
            $db_id = $rs->fields['sqld_id'];
            $db_name = $rs->fields['sqld_name'];
            $num = gen_db_user_list($tpl, $sql, $db_id);
            $tpl->append(array('DB_ID' => $db_id, 'DB_NAME' => tohtml($db_name), 'DB_NAME_JS' => tojs($db_name), 'DB_MSG' => $num ? '' : tr('Database user list is empty!')));
            $rs->moveNext();
        }
    }
}
Exemplo n.º 3
0
/***********************************************************************************************************************
 * Main
 */
iMSCP_Events_Aggregator::getInstance()->dispatch(iMSCP_Events::onClientScriptStart);
check_login('user');
customerHasFeature('ftp') or showBadRequestErrorPage();
if (isset($_GET['id'])) {
    $userid = clean_input($_GET['id']);
    if (who_owns_this($userid, 'ftpuser') != $_SESSION['user_id']) {
        showBadRequestErrorPage();
    }
    $stmt = exec_query("SELECT `domain_name` FROM `domain` WHERE`domain_admin_id` = ?", $_SESSION['user_id']);
    $mainDomainName = $stmt->fields['domain_name'];
    if (!empty($_POST)) {
        if (updateFtpAccount($userid, $mainDomainName)) {
            redirectTo('ftp_accounts.php');
        }
    }
    $tpl = new iMSCP_pTemplate();
    $tpl->define_dynamic(array('layout' => 'shared/layouts/ui.tpl', 'page' => 'client/ftp_edit.tpl', 'page_message' => 'layout'));
    $tpl->assign(array('TR_PAGE_TITLE' => tr('Client / FTP / Overview / Edit FTP Account'), 'TR_FTP_DIRECTORIES' => tojs('Ftp directories'), 'TR_CLOSE' => tojs(tr('Close')), 'TR_FTP_USER_DATA' => tr('Ftp account data'), 'TR_USERNAME' => tr('Username'), 'TR_PASSWORD' => tr('Password'), 'TR_PASSWORD_REPEAT' => tr('Repeat password'), 'TR_HOME_DIR' => tr('Home directory'), 'CHOOSE_DIR' => tr('Choose dir'), 'TR_CHANGE' => tr('Update'), 'TR_CANCEL' => tr('Cancel')));
    generatePageData($tpl, $userid, $mainDomainName);
    generateNavigation($tpl);
    generatePageMessage($tpl);
    $tpl->parse('LAYOUT_CONTENT', 'page');
    iMSCP_Events_Aggregator::getInstance()->dispatch(iMSCP_Events::onClientScriptEnd, array('templateEngine' => $tpl));
    $tpl->prnt();
    unsetMessages();
} else {
    showBadRequestErrorPage();
}
Exemplo n.º 4
0
/**
 * Helper function to generate a user list
 *
 * @param iMSCP_pTemplate $tpl iMSCP_pTemplate instance
 * @return void
 */
function gen_user_list($tpl)
{
    /** @var $cfg iMSCP_Config_Handler_File */
    $cfg = iMSCP_Registry::get('config');
    $startIndex = 0;
    $rowsPerPage = $cfg['DOMAIN_ROWS_PER_PAGE'];
    if (isset($_GET['psi']) && $_GET['psi'] == 'last') {
        if (isset($_SESSION['search_page'])) {
            $_GET['psi'] = $_SESSION['search_page'];
        } else {
            unset($_GET['psi']);
        }
    }
    if (isset($_GET['psi'])) {
        $startIndex = $_GET['psi'];
    }
    // Search request generated ?
    if (isset($_POST['uaction']) && !empty($_POST['uaction'])) {
        $_SESSION['search_for'] = clean_input($_POST['search_for']);
        $_SESSION['search_common'] = $_POST['search_common'];
        $_SESSION['search_status'] = $_POST['search_status'];
        $startIndex = 0;
    } elseif (isset($_SESSION['search_for']) && !isset($_GET['psi'])) {
        // He have not got scroll through patient records
        unset($_SESSION['search_for']);
        unset($_SESSION['search_common']);
        unset($_SESSION['search_status']);
    }
    $searchQuery = $countQuery = '';
    if (isset($_SESSION['search_for'])) {
        gen_admin_domain_query($searchQuery, $countQuery, $startIndex, $rowsPerPage, $_SESSION['search_for'], $_SESSION['search_common'], $_SESSION['search_status']);
        gen_admin_domain_search_options($tpl, $_SESSION['search_for'], $_SESSION['search_common'], $_SESSION['search_status']);
        $stmt = exec_query($countQuery);
    } else {
        gen_admin_domain_query($searchQuery, $countQuery, $startIndex, $rowsPerPage, 'n/a', 'n/a', 'n/a');
        gen_admin_domain_search_options($tpl, 'n/a', 'n/a', 'n/a');
        $stmt = exec_query($countQuery);
    }
    $recordCount = $stmt->fields['cnt'];
    $stmt = execute_query($searchQuery);
    if (!$stmt->rowCount()) {
        if (isset($_SESSION['search_for'])) {
            $tpl->assign(array('USR_MESSAGE' => tr('No records found matching the search criteria.'), 'USR_LIST' => '', 'SCROLL_PREV' => '', 'SCROLL_NEXT' => '', 'TR_VIEW_DETAILS' => tr('view aliases'), 'SHOW_DETAILS' => 'show'));
            unset($_SESSION['search_for']);
            unset($_SESSION['search_common']);
            unset($_SESSION['search_status']);
        } else {
            $tpl->assign(array('SEARCH_FORM' => '', 'USR_MESSAGE' => tr('No customer accounts found.'), 'USR_LIST' => '', 'SCROLL_PREV' => '', 'SCROLL_NEXT' => '', 'TR_VIEW_DETAILS' => tr('view aliases'), 'SHOW_DETAILS' => 'show'));
        }
        $tpl->parse('USR_MESSAGE', 'usr_message');
    } else {
        $prevSi = $startIndex - $rowsPerPage;
        if ($startIndex == 0) {
            $tpl->assign('SCROLL_PREV', '');
        } else {
            $tpl->assign(array('SCROLL_PREV_GRAY' => '', 'PREV_PSI' => $prevSi));
        }
        $nextSi = $startIndex + $rowsPerPage;
        if ($nextSi + 1 > $recordCount) {
            $tpl->assign('SCROLL_NEXT', '');
        } else {
            $tpl->assign(array('SCROLL_NEXT_GRAY' => '', 'NEXT_PSI' => $nextSi));
        }
        $tpl->assign(array('TR_USR_USERNAME' => tr('Username'), 'TR_USR_CREATED_BY' => tr('Created by'), 'TR_USR_ACTIONS' => tr('Actions'), 'TR_USER_STATUS' => tr('Status'), 'TR_DETAILS' => tr('Details')));
        while ($row = $stmt->fetchRow(PDO::FETCH_ASSOC)) {
            // user status icon
            $domainCreatedBy = $row['created_by'];
            $stmt2 = exec_query('SELECT admin_name, admin_status FROM admin WHERE admin_id = ?', $domainCreatedBy);
            if (!isset($stmt2->fields['admin_name'])) {
                $createdByName = tr('N/A');
            } else {
                $createdByName = $stmt2->fields['admin_name'];
            }
            $tpl->assign(array('USR_DELETE_SHOW' => '', 'USER_ID' => $row['admin_id'], 'DOMAIN_ID' => $row['domain_id'], 'TR_DELETE' => tr('Delete'), 'URL_DELETE_USR' => 'user_delete.php?domain_id=' . $row['domain_id'], 'TR_CHANGE_USER_INTERFACE' => tr('Switch to user interface'), 'GO_TO_USER_INTERFACE' => tr('Switch'), 'URL_CHANGE_INTERFACE' => 'change_user_interface.php?to_id=' . $row['domain_admin_id'], 'USR_USERNAME' => tohtml($row['domain_name']), 'TR_EDIT_DOMAIN' => tr('Edit domain'), 'TR_EDIT_USR' => tr('Edit user')));
            $tpl->parse('USR_DELETE_LINK', 'usr_delete_link');
            if ($row['admin_status'] == 'ok' && $row['domain_status'] == 'ok') {
                $status = 'ok';
                $statusTooltip = tr('Click to deactivate');
                $statusTxt = translate_dmn_status($row['domain_status']);
                $statusBool = true;
                $canChange = true;
            } elseif ($row['domain_status'] == 'disabled') {
                $status = 'disabled';
                $statusTooltip = tr('Click to activate');
                $statusTxt = translate_dmn_status($row['domain_status']);
                $statusBool = false;
                $canChange = true;
            } elseif ($row['domain_status'] == 'toadd' || $row['domain_status'] == 'torestore' || $row['domain_status'] == 'tochange' || $row['domain_status'] == 'toenable' || $row['domain_status'] == 'todisable' || $row['domain_status'] == 'todelete') {
                $status = 'reload';
                $statusTxt = $statusTooltip = translate_dmn_status($row['admin_status'] != 'ok' ? $row['admin_status'] : $row['domain_status']);
                $statusBool = false;
                $canChange = false;
            } else {
                $status = 'error';
                $statusTooltip = tr('An unexpected error occurred. Go to the debugger interface for more details.');
                $statusTxt = translate_dmn_status($row['admin_status'] != 'ok' ? $row['admin_status'] : $row['domain_status']);
                $statusBool = false;
                $canChange = false;
            }
            $tpl->assign(array('STATUS' => $status, 'STATUS_TOOLTIP' => $statusTooltip, 'TR_STATUS' => $statusTxt));
            if ($canChange) {
                $tpl->assign('DOMAIN_STATUS_NOCHANGE', '');
                $tpl->parse('DOMAIN_STATUS_CHANGE', 'domain_status_change');
            } else {
                $tpl->assign('DOMAIN_STATUS_CHANGE', '');
                $tpl->parse('DOMAIN_STATUS_NOCHANGE', 'domain_status_nochange');
            }
            $adminName = decode_idna($row['domain_name']);
            $domainCreated = $row['domain_created'];
            if ($domainCreated == 0) {
                $domainCreated = tr('N/A');
            } else {
                $date_formt = $cfg['DATE_FORMAT'];
                $domainCreated = date($date_formt, $domainCreated);
            }
            $domainExpires = $row['domain_expires'];
            if ($domainExpires == 0) {
                $domainExpires = tr('Not Set');
            } else {
                $date_formt = $cfg['DATE_FORMAT'];
                $domainExpires = date($date_formt, $domainExpires);
            }
            if ($statusBool == false) {
                // reload
                $tpl->assign('USR_STATUS_RELOAD_TRUE', '');
                $tpl->assign('USR_USERNAME', tohtml($adminName));
                $tpl->parse('USR_STATUS_RELOAD_FALSE', 'usr_status_reload_false');
            } else {
                $tpl->assign('USR_STATUS_RELOAD_FALSE', '');
                $tpl->assign('USR_USERNAME', tohtml($adminName));
                $tpl->parse('USR_STATUS_RELOAD_TRUE', 'usr_status_reload_true');
            }
            $tpl->assign(array('USER_CREATED_ON' => tohtml($domainCreated), 'USER_EXPIRES_ON' => $domainExpires, 'USR_CREATED_BY' => tohtml($createdByName), 'USR_OPTIONS' => '', 'URL_EDIT_USR' => 'admin_edit.php?edit_id=' . $row['domain_admin_id'], 'TR_MESSAGE_DELETE' => tojs(tr('Are you sure you want to delete %s?', '%s'))));
            gen_domain_details($tpl, $row['domain_id']);
            $tpl->parse('USR_ITEM', '.usr_item');
        }
        $tpl->parse('USR_LIST', 'usr_list');
        $tpl->assign('USR_MESSAGE', '');
    }
}
Exemplo n.º 5
0
    if (isset($_REQUEST['action'])) {
        $action = clean_input($_REQUEST['action']);
        if (isset($_REQUEST['admin_id']) && $_REQUEST['admin_id'] != '') {
            $customerId = intval($_REQUEST['admin_id']);
            switch ($action) {
                case 'activate':
                    opendkim_activate($customerId);
                    break;
                case 'deactivate':
                    opendkim_deactivate($customerId);
                    break;
                default:
                    showBadRequestErrorPage();
            }
            redirectTo('opendkim.php');
        } else {
            showBadRequestErrorPage();
        }
    }
    $tpl = new TemplateEngine();
    $tpl->define_dynamic(array('layout' => 'shared/layouts/ui.tpl', 'page' => '../../plugins/OpenDKIM/themes/default/view/reseller/opendkim.tpl', 'page_message' => 'layout', 'select_list' => 'page', 'select_item' => 'select_list', 'customer_list' => 'page', 'customer_item' => 'customer_list', 'key_item' => 'customer_item', 'scroll_prev_gray' => 'customer_list', 'scroll_prev' => 'customer_list', 'scroll_next_gray', 'customer_list', 'scroll_next' => 'customer_list'));
    $tpl->assign(array('TR_PAGE_TITLE' => tr('Customers / OpenDKIM'), 'TR_SELECT_NAME' => tr('Select a customer'), 'TR_ACTIVATE_ACTION' => tr('Activate OpenDKIM for this customer'), 'TR_DOMAIN_NAME' => tr('Domain Name'), 'TR_DOMAIN_KEY' => tr('OpenDKIM domain key'), 'TR_STATUS' => tr('Status'), 'TR_DNS_NAME' => tr('Name'), 'DEACTIVATE_DOMAIN_ALERT' => tojs(tr('Are you sure you want to deactivate OpenDKIM for this customer?')), 'TR_PREVIOUS' => tr('Previous'), 'TR_NEXT' => tr('Next')));
    generateNavigation($tpl);
    opendkim_generatePage($tpl);
    generatePageMessage($tpl);
    $tpl->parse('LAYOUT_CONTENT', 'page');
    EventManager::getInstance()->dispatch(Events::onResellerScriptEnd, array('templateEngine' => $tpl));
    $tpl->prnt();
} else {
    showBadRequestErrorPage();
}
Exemplo n.º 6
0
                    $grp_selected = '';
                }
            }
            $tpl->assign(array('GROUP_VALUE' => $rs->fields['id'], 'GROUP_LABEL' => tohtml($rs->fields['ugroup']), 'GROUP_SELECTED' => $grp_selected));
            $tpl->parse('GROUP_ITEM', '.group_item');
            $rs->moveNext();
        }
    }
}
/*************************************************************************
 * Main script
 */
// Include core library
require_once 'imscp-lib.php';
iMSCP_Events_Aggregator::getInstance()->dispatch(iMSCP_Events::onClientScriptStart);
check_login('user');
customerHasFeature('protected_areas') or showBadRequestErrorPage();
/** @var $cfg iMSCP_Config_Handler_File */
$cfg = iMSCP_Registry::get('config');
$tpl = new iMSCP_pTemplate();
$tpl->define_dynamic(array('layout' => 'shared/layouts/ui.tpl', 'page' => 'client/protect_it.tpl', 'page_message' => 'layout', 'group_item' => 'page', 'user_item' => 'page', 'unprotect_it' => 'page'));
$tpl->assign(array('TR_PAGE_TITLE' => tr('Client / Webtools / Protected Areas / {TR_DYNAMIC_TITLE}'), 'TR_FTP_DIRECTORIES' => tojs('Ftp directories'), 'TR_CLOSE' => tojs(tr('Close')), 'TR_DYNAMIC_TITLE' => isset($_GET['id']) ? tr('Edit protected area') : tr('Add protected area'), 'TR_PROTECTED_AREA' => tr('Protected areas'), 'TR_AREA_NAME' => tr('Area name'), 'TR_PATH' => tr('Path'), 'CHOOSE_DIR' => tr('Choose dir'), 'TR_USER' => tr('Users'), 'TR_GROUPS' => tr('Groups'), 'TR_USER_AUTH' => tr('User auth'), 'TR_GROUP_AUTH' => tr('Group auth'), 'TR_PROTECT_IT' => tr('Protect it'), 'TR_UNPROTECT_IT' => tr('Unprotect it'), 'TR_CANCEL' => tr('Cancel'), 'TR_MANAGE_USERS_AND_GROUPS' => tr('Users and groups')));
generateNavigation($tpl);
$domainId = get_user_domain_id($_SESSION['user_id']);
protect_area($domainId);
gen_protect_it($tpl, get_user_domain_id($domainId));
generatePageMessage($tpl);
$tpl->parse('LAYOUT_CONTENT', 'page');
iMSCP_Events_Aggregator::getInstance()->dispatch(iMSCP_Events::onClientScriptEnd, array('templateEngine' => $tpl));
$tpl->prnt();
unsetMessages();
Exemplo n.º 7
0
                    }
                } else {
                    showBadRequestErrorPage();
                    exit;
                }
            } else {
                showBadRequestErrorPage();
                exit;
            }
        } else {
            showBadRequestErrorPage();
            exit;
        }
    } else {
        $otherDir = '/htdocs';
        $appLoginName = '';
        $appLoginName = '';
        $appPassword = '';
        $appEmail = '';
    }
    $tpl->assign(array('TR_PAGE_TITLE' => tr('Client / Webtools / Software / Software Installation'), 'SOFTWARE_ID' => tohtml($softwareId), 'TR_NAME' => tr('Software'), 'TR_TYPE' => tr('Type'), 'TR_DB' => tr('Database required'), 'TR_SELECT_DOMAIN' => tr('Target domain'), 'TR_CANCEL' => tr('Cancel'), 'TR_INSTALL' => tr('Install'), 'TR_PATH' => tr('Installation path'), 'TR_FTP_DIRECTORIES' => tojs('Ftp directories'), 'TR_CLOSE' => tojs(tr('Close')), 'TR_CHOOSE_DIR' => tr('Choose dir'), 'TR_SELECT_DB' => tr('Database'), 'TR_SQL_USER' => tr('SQL user'), 'TR_SQL_PWD' => tr('Password'), 'TR_SOFTWARE_MENU' => tr('Software installation'), 'TR_INSTALLATION' => tr('Installation details'), 'TR_INSTALLATION_INFORMATION' => tr('Username and password for application login'), 'TR_INSTALL_USER' => tr('Login username'), 'TR_INSTALL_PWD' => tr('Login password'), 'TR_INSTALL_EMAIL' => tr('Email address'), 'VAL_OTHER_DIR' => tohtml($otherDir), 'VAL_INSTALL_USERNAME' => tohtml($appLoginName), 'VAL_INSTALL_EMAIL' => tohtml($appEmail)));
    client_generatePage($tpl, $softwareId);
    generateNavigation($tpl);
    generatePageMessage($tpl);
    $tpl->parse('LAYOUT_CONTENT', 'page');
    iMSCP_Events_Aggregator::getInstance()->dispatch(iMSCP_Events::onClientScriptEnd, array('templateEngine' => $tpl));
    $tpl->prnt();
    unsetMessages();
} else {
    showBadRequestErrorPage();
}
Exemplo n.º 8
0
$mainDmnProps = get_domain_default_props($_SESSION['user_id']);
$mainDmnId = $mainDmnProps['domain_id'];
$mainDmnName = $mainDmnProps['domain_name'];
$ftpAccountLimit = $mainDmnProps['domain_ftpacc_limit'];
if (is_xhr() && isset($_POST['domain_type'])) {
    echo json_encode(ftp_getDomainList($mainDmnName, $mainDmnId, clean_input($_POST['domain_type'])));
    exit;
} elseif (!empty($_POST)) {
    // Check for ftp account limit (only on new account submission to avoid too many query each time the page
    // is displayed
    $nbFtpAccounts = get_customer_running_ftp_acc_cnt($_SESSION['user_id']);
    if ($ftpAccountLimit && $nbFtpAccounts >= $ftpAccountLimit) {
        set_page_message(tr('FTP account limit reached.'), 'error');
        redirectTo('ftp_accounts.php');
    }
    if (ftp_addAccount($mainDmnName)) {
        redirectTo('ftp_accounts.php');
    }
}
/** @var $cfg iMSCP_Config_Handler_File */
$cfg = iMSCP_Registry::get('config');
$tpl = new iMSCP_pTemplate();
$tpl->define_dynamic(array('layout' => 'shared/layouts/ui.tpl', 'page' => 'client/ftp_add.tpl', 'page_message' => 'layout', 'domain_list' => 'page', 'domain_types' => 'page'));
$tpl->assign(array('TR_PAGE_TITLE' => tr('Client / FTP / Add FTP Account'), 'TR_FTP_DIRECTORIES' => tojs('Ftp directories'), 'TR_CLOSE' => tojs(tr('Close')), 'TR_FTP_ACCOUNT_DATA' => tr('Ftp account data'), 'TR_DOMAIN_TYPE_LABEL' => tr('Domain type'), 'TR_USERNAME' => tr('Username'), 'TR_PASSWORD' => tr('Password'), 'TR_PASSWORD_REPEAT' => tr('Repeat password'), 'TR_HOME_DIR' => tr('Home directory'), 'TR_CHOOSE_DIR' => tr('Choose dir'), 'TR_ADD' => tr('Add'), 'TR_CANCEL' => tr('Cancel')));
ftp_generatePageData($mainDmnName, $mainDmnId, $tpl);
generateNavigation($tpl);
generatePageMessage($tpl);
$tpl->parse('LAYOUT_CONTENT', 'page');
iMSCP_Events_Aggregator::getInstance()->dispatch(iMSCP_Events::onClientScriptEnd, array('templateEngine' => $tpl));
$tpl->prnt();
unsetMessages();
Exemplo n.º 9
0
EventManager::getInstance()->dispatch(Events::onClientScriptStart);
check_login('user');
if (isset($_REQUEST['action'])) {
    $action = clean_input($_REQUEST['action']);
    if ($action === 'add') {
        if (addList()) {
            set_page_message(tr('Mailing list successfully scheduled for creation.'), 'success');
            redirectTo('mailman.php');
        }
    } elseif ($action === 'edit') {
        if (!empty($_POST) && addList()) {
            set_page_message(tr('Mailing list successfully scheduled for update'), 'success');
            redirectTo('mailman.php');
        }
    } elseif ($action === 'delete' && isset($_REQUEST['list_id'])) {
        deleteList(clean_input($_REQUEST['list_id']));
        set_page_message(tr('Mailing list successfully scheduled for deletion.'), 'success');
        redirectTo('mailman.php');
    } else {
        showBadRequestErrorPage();
    }
}
$tpl = new TemplateEngine();
$tpl->define_dynamic(array('layout' => 'shared/layouts/ui.tpl', 'page' => '../../plugins/Mailman/themes/default/view/client/mailman.tpl', 'page_message' => 'layout', 'email_lists' => 'page', 'email_list' => 'email_lists'));
$tpl->assign(array('TR_PAGE_TITLE' => tr('Client / Email / Mailman'), 'ISP_LOGO' => layout_getUserLogo(), 'DATATABLE_TRANSLATIONS' => getDataTablesPluginTranslations(), 'TR_MAIL_LISTS' => tojs(tr('Mailing List', false)), 'TR_EDIT' => tr('Edit'), 'TR_DELETE' => tr('Delete'), 'TR_ADD_LIST' => tr('Add mailing list'), 'TR_MAIL_LIST' => tr('Mailing List'), 'TR_LIST_NAME' => tr('List name'), 'TR_LIST_URL' => tr('List URL'), 'TR_STATUS' => tr('Status'), 'TR_ACTIONS' => tr('Actions'), 'TR_ADMIN_EMAIL' => tr('Admin email'), 'TR_ADMIN_PASSWORD' => tr('Password'), 'TR_ADMIN_PASSWORD_CONFIRM' => tr('Password confirmation'), 'TR_URL' => tr('Url'), 'TR_CONFIRM_DELETION' => tr('Please, confirm the deletion of the %s mailing list.', false, '%s'), 'TR_SAVE' => tojs(tr('Save', false)), 'TR_CANCEL' => tojs(tr('Cancel', false))));
generateNavigation($tpl);
generatePage($tpl);
$tpl->parse('LAYOUT_CONTENT', 'page');
EventManager::getInstance()->dispatch(Events::onClientScriptEnd, array('templateEngine' => $tpl));
$tpl->prnt();
unsetMessages();