public static function adminPopupPosts($editor = '') { if (empty($editor) || $editor != 'dcCKEditor') { return; } return dcPage::jsLoad(self::$p_url . '/js/popup_posts.js'); }
public function beginPage($breadcrumb = '', $head = '') { if ($this->in_plugin) { echo '<html><head><title>' . __('Comments') . '</title>' . dcPage::jsLoad('js/_comments_actions.js') . $head . '</script></head><body>' . $breadcrumb; } else { dcPage::open(__('Comments'), dcPage::jsLoad('js/_comments_actions.js') . $head, $breadcrumb); } echo '<p><a class="back" href="' . $this->getRedirection(true) . '">' . __('Back to comments list') . '</a></p>'; }
protected static function jsToolBar() { $res = dcPage::cssLoad(dcPage::getPF('dcLegacyEditor/css/jsToolBar/jsToolBar.css')) . dcPage::jsLoad(dcPage::getPF('dcLegacyEditor/js/jsToolBar/jsToolBar.js')); if (isset($GLOBALS['core']->auth) && $GLOBALS['core']->auth->getOption('enable_wysiwyg')) { $res .= dcPage::jsLoad(dcPage::getPF('dcLegacyEditor/js/jsToolBar/jsToolBar.wysiwyg.js')); } $res .= dcPage::jsLoad(dcPage::getPF('dcLegacyEditor/js/jsToolBar/jsToolBar.dotclear.js')) . '<script type="text/javascript">' . "\n" . "//<![CDATA[\n" . "jsToolBar.prototype.dialog_url = 'popup.php'; " . "jsToolBar.prototype.iframe_css = '" . 'body{' . 'font: 12px "DejaVu Sans","Lucida Grande","Lucida Sans Unicode",Arial,sans-serif;' . 'color : #000;' . 'background: #f9f9f9;' . 'margin: 0;' . 'padding : 2px;' . 'border: none;' . (l10n::getTextDirection($GLOBALS['_lang']) == 'rtl' ? 'direction:rtl;' : '') . '}' . 'pre, code, kbd, samp {' . 'font-family:"Courier New",Courier,monospace;' . 'font-size : 1.1em;' . '}' . 'code {' . 'color : #666;' . 'font-weight : bold;' . '}' . 'body > p:first-child {' . 'margin-top: 0;' . '}' . "'; " . "jsToolBar.prototype.base_url = '" . html::escapeJS($GLOBALS['core']->blog->host) . "'; " . "jsToolBar.prototype.switcher_visual_title = '" . html::escapeJS(__('visual')) . "'; " . "jsToolBar.prototype.switcher_source_title = '" . html::escapeJS(__('source')) . "'; " . "jsToolBar.prototype.legend_msg = '" . html::escapeJS(__('You can use the following shortcuts to format your text.')) . "'; " . "jsToolBar.prototype.elements.blocks.options.none = '" . html::escapeJS(__('-- none --')) . "'; " . "jsToolBar.prototype.elements.blocks.options.nonebis = '" . html::escapeJS(__('-- block format --')) . "'; " . "jsToolBar.prototype.elements.blocks.options.p = '" . html::escapeJS(__('Paragraph')) . "'; " . "jsToolBar.prototype.elements.blocks.options.h1 = '" . html::escapeJS(__('Level 1 header')) . "'; " . "jsToolBar.prototype.elements.blocks.options.h2 = '" . html::escapeJS(__('Level 2 header')) . "'; " . "jsToolBar.prototype.elements.blocks.options.h3 = '" . html::escapeJS(__('Level 3 header')) . "'; " . "jsToolBar.prototype.elements.blocks.options.h4 = '" . html::escapeJS(__('Level 4 header')) . "'; " . "jsToolBar.prototype.elements.blocks.options.h5 = '" . html::escapeJS(__('Level 5 header')) . "'; " . "jsToolBar.prototype.elements.blocks.options.h6 = '" . html::escapeJS(__('Level 6 header')) . "'; " . "jsToolBar.prototype.elements.strong.title = '" . html::escapeJS(__('Strong emphasis')) . "'; " . "jsToolBar.prototype.elements.em.title = '" . html::escapeJS(__('Emphasis')) . "'; " . "jsToolBar.prototype.elements.ins.title = '" . html::escapeJS(__('Inserted')) . "'; " . "jsToolBar.prototype.elements.del.title = '" . html::escapeJS(__('Deleted')) . "'; " . "jsToolBar.prototype.elements.quote.title = '" . html::escapeJS(__('Inline quote')) . "'; " . "jsToolBar.prototype.elements.code.title = '" . html::escapeJS(__('Code')) . "'; " . "jsToolBar.prototype.elements.br.title = '" . html::escapeJS(__('Line break')) . "'; " . "jsToolBar.prototype.elements.blockquote.title = '" . html::escapeJS(__('Blockquote')) . "'; " . "jsToolBar.prototype.elements.pre.title = '" . html::escapeJS(__('Preformated text')) . "'; " . "jsToolBar.prototype.elements.ul.title = '" . html::escapeJS(__('Unordered list')) . "'; " . "jsToolBar.prototype.elements.ol.title = '" . html::escapeJS(__('Ordered list')) . "'; " . "jsToolBar.prototype.elements.link.title = '" . html::escapeJS(__('Link')) . "'; " . "jsToolBar.prototype.elements.link.href_prompt = '" . html::escapeJS(__('URL?')) . "'; " . "jsToolBar.prototype.elements.link.hreflang_prompt = '" . html::escapeJS(__('Language?')) . "'; " . "jsToolBar.prototype.elements.img.title = '" . html::escapeJS(__('External image')) . "'; " . "jsToolBar.prototype.elements.img.src_prompt = '" . html::escapeJS(__('URL?')) . "'; " . "jsToolBar.prototype.elements.img_select.title = '" . html::escapeJS(__('Media chooser')) . "'; " . "jsToolBar.prototype.elements.post_link.title = '" . html::escapeJS(__('Link to an entry')) . "'; " . "jsToolBar.prototype.elements.removeFormat = jsToolBar.prototype.elements.removeFormat || {}; " . "jsToolBar.prototype.elements.removeFormat.title = '" . html::escapeJS(__('Remove text formating')) . "'; "; if (!$GLOBALS['core']->auth->check('media,media_admin', $GLOBALS['core']->blog->id)) { $res .= "jsToolBar.prototype.elements.img_select.disabled = true;\n"; } $res .= "jsToolBar.prototype.toolbar_bottom = " . (isset($GLOBALS['core']->auth) && $GLOBALS['core']->auth->getOption('toolbar_bottom') ? 'true' : 'false') . ";\n"; $res .= "\n//]]>\n" . "</script>\n"; return $res; }
public static function adminPageHTMLHead() { global $core; if ($core->blog->settings->system->theme != 'ductile') { return; } echo "\n" . '<!-- Header directives for Ductile configuration -->' . "\n"; $core->auth->user_prefs->addWorkspace('accessibility'); if (!$core->auth->user_prefs->accessibility->nodragdrop) { echo dcPage::jsLoad('js/jquery/jquery-ui.custom.js') . dcPage::jsLoad('js/jquery/jquery.ui.touch-punch.js'); echo <<<EOT <script type="text/javascript"> //<![CDATA[ \$(function() { \t\$("#stickerslist").sortable({'cursor':'move'}); \t\$("#stickerslist tr").hover(function () { \t\t\$(this).css({'cursor':'move'}); \t}, function () { \t\t\$(this).css({'cursor':'auto'}); \t}); \t\$('#theme_config').submit(function() { \t\tvar order=[]; \t\t\$("#stickerslist tr td input.position").each(function() { \t\t\torder.push(this.name.replace(/^order\\[([^\\]]+)\\]\$/,'\$1')); \t\t}); \t\t\$("input[name=ds_order]")[0].value = order.join(','); \t\treturn true; \t}); \t\$("#stickerslist tr td input.position").hide(); \t\$("#stickerslist tr td.handle").addClass('handler'); }); //]]> </script> EOT; } }
public static function onActionLegacy($core, dcPagesActionsPage $as, $post) { $core->callBehavior('adminPostsActions', $core, $as->getRS(), $as->getAction(), $as->getRedirection()); $as->beginPage('', dcPage::jsLoad('js/jquery/jquery.autocomplete.js') . dcPage::jsMetaEditor() . $core->callBehavior('adminPostsActionsHeaders'), ''); ob_start(); $core->callBehavior('adminPostsActionsContent', $core, $as->getAction(), $as->getHiddenFields(true)); $res = ob_get_contents(); ob_end_clean(); $res = str_replace("posts_actions.php", "plugin.php", $res); echo $res; $as->endPage(); }
$core->callBehavior('adminDashboardContents', $core, $__dashboard_contents); # Editor stuff $admin_post_behavior = ''; if ($core->auth->user_prefs->dashboard->quickentry) { if ($core->auth->check('usage,contentadmin', $core->blog->id)) { $post_format = $core->auth->getOption('post_format'); $post_editor = $core->auth->getOption('editor'); if ($post_editor && !empty($post_editor[$post_format])) { // context is not post because of tags not available $admin_post_behavior = $core->callBehavior('adminPostEditor', $post_editor[$post_format], 'quickentry', array('#post_content'), $post_format); } } } /* DISPLAY -------------------------------------------------------- */ dcPage::open(__('Dashboard'), dcPage::jsLoad('js/_index.js') . $admin_post_behavior . $core->callBehavior('adminDashboardHeaders'), dcPage::breadcrumb(array(__('Dashboard') . ' : ' . html::escapeHTML($core->blog->name) => ''), array('home_link' => false))); # Dotclear updates notifications if ($core->auth->isSuperAdmin() && is_readable(DC_DIGESTS)) { $updater = new dcUpdate(DC_UPDATE_URL, 'dotclear', DC_UPDATE_VERSION, DC_TPL_CACHE . '/versions'); $new_v = $updater->check(DC_VERSION); $version_info = $new_v ? $updater->getInfoURL() : ''; if ($updater->getNotify() && $new_v) { echo '<div class="dc-update"><h3>' . sprintf(__('Dotclear %s is available!'), $new_v) . '</h3> ' . '<p><a class="button submit" href="' . $core->adminurl->get("admin.update") . '">' . sprintf(__('Upgrade now'), $new_v) . '</a> ' . '<a class="button" href="' . $core->adminurl->get("admin.update", array('hide_msg' => 1)) . '">' . __('Remind me later') . '</a>' . ($version_info ? ' </p>' . '<p class="updt-info"><a href="' . $version_info . '">' . __('Information about this version') . '</a>' : '') . '</p>' . '</div>'; } } if ($core->auth->getInfo('user_default_blog') != $core->blog->id && $core->auth->getBlogCount() > 1) { echo '<p><a href="' . $core->adminurl->get("admin.home", array('default_blog' => 1)) . '" class="button">' . __('Make this blog my default blog') . '</a></p>'; } if ($core->blog->status == 0) { echo '<p class="static-msg">' . __('This blog is offline') . '.</p>'; } elseif ($core->blog->status == -1) {
} } } # Display ?> <html> <head> <title><?php echo $page_title; ?> </title> <?php $core->auth->user_prefs->addWorkspace('accessibility'); if (!$core->auth->user_prefs->accessibility->nodragdrop) { echo dcPage::jsLoad('js/jquery/jquery-ui.custom.js') . dcPage::jsLoad('js/jquery/jquery.ui.touch-punch.js') . dcPage::jsLoad(dcPage::getPF('simpleMenu/simplemenu.js')); } echo dcPage::jsConfirmClose('settings', 'menuitemsappend', 'additem', 'menuitems'); ?> </head> <body> <?php if ($step) { switch ($step) { case 1: $step_label = __('Step #1'); break; case 2: if ($items[$item_type][1]) {
$post_title = html::escapeHTML(trim(html::clean($post_title))); foreach (explode("\n", $tb_urls) as $tb_url) { try { $TB->ping($tb_url, $id, $post_title, $tb_excerpt, $post_url); } catch (Exception $e) { $core->error->add($e->getMessage()); } } if (!$core->error->flag()) { http::redirect('trackbacks.php?id=' . $id . '&sent=1'); } } $page_title = __('Ping blogs'); /* DISPLAY -------------------------------------------------------- */ dcPage::open($page_title, dcPage::jsLoad('js/_trackbacks.js')); # Exit if we cannot view page if (!$can_view_page) { dcPage::close(); exit; } if (!empty($_GET['sent'])) { echo '<p class="message">' . __('All pings sent.') . '</p>'; } echo '<h2>' . html::escapeHTML($core->blog->name) . ' › ' . $page_title . '</h2>'; echo '<p><a href="' . $core->getPostAdminURL($post->post_type, $id) . '">« ' . sprintf(__('Back to "%s"'), html::escapeHTML($post->post_title)) . '</a></p>'; echo '<h3 id="entry-preview-title">' . html::escapeHTML($post->post_title) . '</h3>' . '<div class="frame-shrink" id="entry-preview">' . ($post->post_excerpt_xhtml ? $post->post_excerpt_xhtml . '<hr />' : '') . $post->post_content_xhtml . '</div>'; if (!empty($_GET['auto'])) { flush(); $tb_urls = implode("\n", $TB->discover($post->post_excerpt_xhtml . ' ' . $post->post_content_xhtml)); } else {
} $core->blog->settings->maintenance->put('ts_' . $t->id(), abs((int) $ts), 'integer', sprintf('Recall time for task %s', $t->id()), true, $t->blog()); } dcPage::addSuccessNotice(__('Maintenance plugin has been successfully configured.')); http::redirect($p_url . '&tab=' . $tab . '#' . $tab); } catch (Exception $e) { $core->error->add($e->getMessage()); } } // Combos $combo_ts = array(__('Never') => 0, __('Every week') => 604800, __('Every two weeks') => 1209600, __('Every month') => 2592000, __('Every two months') => 5184000); // Display page echo '<html><head> <title>' . __('Maintenance') . '</title>' . dcPage::jsPageTabs($tab) . dcPage::jsLoad(dcPage::getPF('maintenance/js/settings.js')); if ($task && $task->ajax()) { echo '<script type="text/javascript">' . "\n" . "//<![CDATA[\n" . dcPage::jsVar('dotclear.msg.wait', __('Please wait...')) . "//]]>\n" . '</script>' . dcPage::jsLoad(dcPage::getPF('maintenance/js/dc.maintenance.js')); } echo $maintenance->getHeaders() . ' </head> <body>'; // Check if there is somthing to display according to user permissions if (empty($tasks)) { echo dcPage::breadcrumb(array(__('Plugins') => '', __('Maintenance') => '')) . '<p class="warn">' . __('You have not sufficient permissions to view this page.') . '</p>' . '</body></html>'; return null; } if ($task && ($res = $task->step()) !== null) { // Page title echo dcPage::breadcrumb(array(__('Plugins') => '', '<a href="' . $p_url . '">' . __('Maintenance') . '</a>' => '', html::escapeHTML($task->name()) => '')) . dcPage::notices(); // content if (substr($res, 0, 1) != '<') { $res = sprintf('<p class="step-msg">%s</p>', $res);
} catch (Exception $e) { $core->error->add($e->getMessage()); } } # Reset order if (!empty($_POST['reset'])) { try { $core->blog->resetCategoriesOrder(); http::redirect('categories.php?reord=1'); } catch (Exception $e) { $core->error->add($e->getMessage()); } } /* Display -------------------------------------------------------- */ dcPage::open(__('Categories'), dcPage::jsToolMan() . "\n" . dcPage::jsLoad('js/_categories.js')); if (!empty($_GET['add'])) { echo '<p class="message">' . __('The category has been successfully created.') . '</p>'; } if (!empty($_GET['del'])) { echo '<p class="message">' . __('The category has been successfully removed.') . '</p>'; } if (!empty($_GET['reord'])) { echo '<p class="message">' . __('Categories have been successfully reordered.') . '</p>'; } if (!empty($_GET['moved'])) { echo '<p class="message">' . __('The category has been successfully moved.') . '</p>'; } echo '<h2>' . html::escapeHTML($core->blog->name) . ' › ' . __('Categories') . '</h2>'; $rs = $core->blog->getCategories(array('post_type' => 'post')); echo '<div class="two-cols">' . '<div class="col">';
public static function pingJS() { global $core; $res = "<script type=\"text/javascript\">\n//<![CDATA[\n" . dcPage::jsVar('dotclear.msg.check_all', __('Check all')) . "\n" . "</script>\n" . dcPage::jsLoad(dcPage::getPF('pings/post.js')); return $res; }
} catch (Exception $e) { $core->error->add($e->getMessage()); } } /* Display -------------------------------------------------------- */ $rs = $core->blog->getCategories(array('post_type' => 'post')); $starting_script = ""; $core->auth->user_prefs->addWorkspace('accessibility'); if (!$core->auth->user_prefs->accessibility->nodragdrop && $core->auth->check('categories', $core->blog->id) && $rs->count() > 1) { $starting_script .= dcPage::jsLoad('js/jquery/jquery-ui.custom.js'); $starting_script .= dcPage::jsLoad('js/jquery/jquery.ui.touch-punch.js'); $starting_script .= dcPage::jsLoad('js/jquery/jquery.mjs.nestedSortable.js'); } $starting_script .= dcPage::jsConfirmClose('form-categories'); $starting_script .= dcPage::jsLoad('js/_categories.js'); dcPage::open(__('Categories'), $starting_script, dcPage::breadcrumb(array(html::escapeHTML($core->blog->name) => '', __('Categories') => ''))); if (!empty($_GET['del'])) { dcPage::success(__('The category has been successfully removed.')); } if (!empty($_GET['reord'])) { dcPage::success(__('Categories have been successfully reordered.')); } if (!empty($_GET['move'])) { dcPage::success(__('Entries have been successfully moved to the category you choose.')); } $categories_combo = dcAdminCombos::getCategoriesCombo($rs); echo '<p class="top-add"><a class="button add" href="' . $core->adminurl->get("admin.category") . '">' . __('New category') . '</a></p>'; echo '<div class="col">'; if ($rs->isEmpty()) { echo '<p>' . __('No category so far.') . '</p>';
$core->blog->settings->put('blowup_style', serialize($blowup_user)); $core->blog->triggerBlog(); http::redirect($p_url . '&upd=1'); } catch (Exception $e) { $core->error->add($e->getMessage()); } } ?> <html> <head> <title><?php echo __('Blowup configuration'); ?> </title> <?php echo dcPage::jsLoad('index.php?pf=blowupConfig/config.js'); ?> <?php echo dcPage::jsColorPicker(); ?> <script type="text/javascript"> //<![CDATA[ <?php echo dcPage::jsVar('dotclear.blowup_public_url', blowupConfig::imagesURL()); echo dcPage::jsVar('dotclear.msg.predefined_styles', __('Predefined styles')); echo dcPage::jsVar('dotclear.msg.apply_code', __('Apply code')); ?> //]]> </script> </head>
$msg = __('The following files of your Dotclear installation ' . 'have been modified so we won\'t try to update your installation. ' . 'Please try to <a href="http://dotclear.org/download">update manually</a>.'); } elseif ($e->getCode() == dcUpdate::ERR_FILES_UNREADABLE) { $msg = sprintf(__('The following files of your Dotclear installation are not readable. ' . 'Please fix this or try to make a backup file named %s manually.'), '<strong>backup-' . DC_VERSION . '.zip</strong>'); } elseif ($e->getCode() == dcUpdate::ERR_FILES_UNWRITALBE) { $msg = __('The following files of your Dotclear installation cannot be written. ' . 'Please fix this or try to <a href="http://dotclear.org/download">update manually</a>.'); } if (isset($e->bad_files)) { $msg .= '<ul><li><strong>' . implode('</strong></li><li><strong>', $e->bad_files) . '</strong></li></ul>'; } $core->error->add($msg); $core->callBehavior('adminDCUpdateException', $e); } } /* DISPLAY Main page -------------------------------------------------------- */ dcPage::open(__('Dotclear update'), !$step ? dcPage::jsPageTabs($default_tab) . dcPage::jsLoad('js/_update.js') : '', dcPage::breadcrumb(array(__('System') => '', __('Dotclear update') => ''))); if (!$core->error->flag()) { if (!empty($_GET['nocache'])) { dcPage::success(__('Manual checking of update done successfully.')); } } if (!$step) { echo '<div class="multi-part" id="update" title="' . __('Dotclear update') . '">'; if (empty($new_v)) { echo '<p><strong>' . __('No newer Dotclear version available.') . '</strong></p>' . '<form action="' . $p_url . '" method="get">' . '<p><input type="hidden" name="nocache" value="1" />' . '<input type="submit" value="' . __('Force checking update Dotclear') . '" /></p>' . '</form>'; } else { echo '<p class="static-msg">' . sprintf(__('Dotclear %s is available.'), $new_v) . ($version_info ? ' <a href="' . $version_info . '" class="outgoing" title="' . __('Information about this version') . '">(' . __('Information about this version') . ') <img src="images/outgoing.png" alt=""/></a>' : '') . '</p>' . '<p>' . __('To upgrade your Dotclear installation simply click on the following button. ' . 'A backup file of your current installation will be created in your root directory.') . '</p>' . '<form action="' . $p_url . '" method="get">' . '<p><input type="hidden" name="step" value="check" />' . '<input type="submit" value="' . __('Update Dotclear') . '" /></p>' . '</form>'; } echo '</div>'; if (!empty($archives)) { echo '<div class="multi-part" id="files" title="' . __('Manage backup files') . '">';
dcPage::open(__('Blog appearance'), dcPage::jsPageTabs() . dcPage::jsColorPicker() . $core->callBehavior('themesToolsHeaders', $core, true), dcPage::breadcrumb(array(html::escapeHTML($core->blog->name) => '', __('Blog appearance') => $list->getURL('', false), '<span class="page-title">' . __('Theme configuration') . '</span>' => ''))); # Display previously gathered content $list->displayConfiguration(); dcPage::helpBlock('core_blog_theme_conf'); dcPage::close(); # Stop reading code here return; } # -- Execute actions -- try { $list->doActions(); } catch (Exception $e) { $core->error->add($e->getMessage()); } # -- Page header -- dcPage::open(__('Themes management'), dcPage::jsLoad('js/_blog_theme.js') . dcPage::jsPageTabs() . dcPage::jsColorPicker() . $core->callBehavior('themesToolsHeaders', $core, false), dcPage::breadcrumb(array(html::escapeHTML($core->blog->name) => '', '<span class="page-title">' . __('Blog appearance') . '</span>' => ''))); # -- Display modules lists -- if ($core->auth->isSuperAdmin()) { # Updated modules from repo $modules = $list->store->get(true); if (!empty($modules)) { echo '<div class="multi-part" id="update" title="' . html::escapeHTML(__('Update themes')) . '">' . '<h3>' . html::escapeHTML(__('Update themes')) . '</h3>' . '<p>' . sprintf(__('There is one theme to update available from repository.', 'There are %s themes to update available from repository.', count($modules)), count($modules)) . '</p>'; $list->setList('theme-update')->setTab('themes')->setModules($modules)->displayModules(array('checkbox', 'name', 'sshot', 'desc', 'author', 'version', 'current_version', 'parent'), array('update', 'delete')); echo '<p class="info vertical-separator">' . sprintf(__("Visit %s repository, the resources center for Dotclear."), '<a href="http://themes.dotaddict.org/galerie-dc2/">Dotaddict</a>') . '</p>' . '</div>'; } } # Activated modules $modules = $list->modules->getModules(); if (!empty($modules)) { echo '<div class="multi-part" id="themes" title="' . __('Installed themes') . '">' . '<h3>' . __('Installed themes') . '</h3>' . '<p>' . __('You can configure and manage installed themes from this list.') . '</p>'; $list->setList('theme-activate')->setTab('themes')->setModules($modules)->displayModules(array('sshot', 'distrib', 'name', 'config', 'desc', 'author', 'version', 'parent'), array('select', 'behavior', 'deactivate', 'delete'));
$core->callBehavior('adminAfterCategoryUpdate', $cur, $cat_id); http::redirect('category.php?id=' . $_POST['id'] . '&upd=1'); } else { # --BEHAVIOR-- adminBeforeCategoryCreate $core->callBehavior('adminBeforeCategoryCreate', $cur); $id = $core->blog->addCategory($cur, (int) $_POST['new_cat_parent']); # --BEHAVIOR-- adminAfterCategoryCreate $core->callBehavior('adminAfterCategoryCreate', $cur, $id); http::redirect('categories.php?add=1'); } } catch (Exception $e) { $core->error->add($e->getMessage()); } } $title = $cat_id ? html::escapeHTML($cat_title) : __('New category'); dcPage::open($title, dcPage::jsConfirmClose('category-form') . dcPage::jsToolBar() . dcPage::jsLoad('js/_category.js')); if (!empty($_GET['upd'])) { echo '<p class="message">' . __('Category has been successfully updated.') . '</p>'; } echo '<h2>' . html::escapeHTML($core->blog->name) . ' › <a href="categories.php">' . __('Categories') . '</a> › '; if ($cat_id) { while ($parents->fetch()) { echo '<a href="category.php?id=' . $parents->cat_id . '">' . html::escapeHTML($parents->cat_title) . '</a>'; echo " › "; } } echo $title . '</h2>'; echo '<form action="category.php" method="post" id="category-form">' . '<fieldset><legend>' . __('Category information') . '</legend>' . '<p><label class="required" title="' . __('Required field') . '">' . __('Title:') . ' ' . form::field('cat_title', 40, 255, html::escapeHTML($cat_title), '', 2) . '</label></p>'; if (!$cat_id) { $rs = $core->blog->getCategories(array('post_type' => 'post')); echo '<p><label>' . __('Parent:') . ' ' . '<select id="new_cat_parent" name="new_cat_parent" tabindex="3">' . '<option value="0">' . __('Top level') . '</option>';
# http://www.gnu.org/licenses/old-licenses/gpl-2.0.html # # -- END LICENSE BLOCK ------------------------------------ require dirname(__FILE__) . '/../inc/admin/prepend.php'; dcPage::check('usage,contentadmin'); $q = !empty($_GET['q']) ? $_GET['q'] : null; $page = !empty($_GET['page']) ? (int) $_GET['page'] : 1; $nb_per_page = 10; $params = array(); $params['limit'] = array(($page - 1) * $nb_per_page, $nb_per_page); $params['no_content'] = true; $params['order'] = 'post_dt DESC'; if ($q) { $params['search'] = $q; } dcPage::openPopup(__('Add a link to an entry'), dcPage::jsLoad('js/_posts_list.js') . dcPage::jsLoad('js/jsToolBar/popup_posts.js')); echo '<h2>' . __('Add a link to an entry') . '</h2>'; echo '<form action="popup_posts.php" method="get">' . '<p><label class="classic">' . __('Search entry:') . ' ' . form::field('q', 30, 255, html::escapeHTML($q)) . '</label> ' . ' <input type="submit" value="' . __('ok') . '" /></p>' . '</form>'; try { $posts = $core->blog->getPosts($params); $counter = $core->blog->getPosts($params, true); $post_list = new adminPostMiniList($core, $posts, $counter->f(0)); } catch (Exception $e) { $core->error->add($e->getMessage()); } echo '<div id="form-entries">'; # I know it's not a form but we just need the ID $post_list->display($page, $nb_per_page); echo '</div>'; echo '<p><a class="button" href="#" id="link-insert-cancel">' . __('cancel') . '</a></p>'; dcPage::closePopup();
# Get posts if ($qtype == 'p') { $starting_scripts .= dcPage::jsLoad('js/_posts_list.js'); $params['search'] = $q; $params['limit'] = array(($page - 1) * $nb_per_page, $nb_per_page); $params['no_content'] = true; $params['order'] = 'post_dt DESC'; try { $posts = $core->blog->getPosts($params); $counter = $core->blog->getPosts($params, true); $post_list = new adminPostList($core, $posts, $counter->f(0)); } catch (Exception $e) { $core->error->add($e->getMessage()); } } elseif ($qtype == 'c') { $starting_scripts .= dcPage::jsLoad('js/_comments.js'); $params['search'] = $q; $params['limit'] = array(($page - 1) * $nb_per_page, $nb_per_page); $params['no_content'] = true; $params['order'] = 'comment_dt DESC'; try { $comments = $core->blog->getComments($params); $counter = $core->blog->getComments($params, true); $comment_list = new adminCommentList($core, $comments, $counter->f(0)); } catch (Exception $e) { $core->error->add($e->getMessage()); } } } if ($qtype == 'p') { $posts_actions_page = new dcPostsActionsPage($core, $core->adminurl->get("admin.search"), array('q' => $q, 'qtype' => $qtype));
$core->blog->triggerBlog(); dcPage::addSuccessNotice(__('Theme configuration has been successfully updated.')); http::redirect($p_url); } catch (Exception $e) { $core->error->add($e->getMessage()); } } ?> <html> <head> <title><?php echo __('Blowup configuration'); ?> </title> <?php echo dcPage::jsLoad(dcPage::getPF('blowupConfig/config.js')); ?> <?php echo dcPage::jsColorPicker(); ?> <script type="text/javascript"> //<![CDATA[ <?php echo dcPage::jsVar('dotclear.blowup_public_url', blowupConfig::imagesURL()); echo dcPage::jsVar('dotclear.msg.predefined_styles', __('Predefined styles')); echo dcPage::jsVar('dotclear.msg.apply_code', __('Apply code')); echo dcPage::jsVar('dotclear.msg.predefined_style_title', __('Choose a predefined style')); ?> //]]> </script> </head>
dcPage::addSuccessNotice(__('Favorites have been successfully updated.')); $core->adminurl->redirect("admin.user.preferences", array(), '#user-favorites'); } } # Replace default favorites by current set (super admin only) if (!empty($_POST['replace']) && $core->auth->isSuperAdmin()) { $user_favs = $core->favs->getFavoriteIDs(false); $core->favs->setFavoriteIDs($user_favs, true); if (!$core->error->flag()) { dcPage::addSuccessNotice(__('Default favorites have been successfully updated.')); $core->adminurl->redirect("admin.user.preferences", array(), '#user-favorites'); } } /* DISPLAY -------------------------------------------------------- */ dcPage::open($page_title, dcPage::jsLoad('js/_preferences.js') . ($user_acc_nodragdrop ? '' : dcPage::jsLoad('js/_preferences-dragdrop.js')) . dcPage::jsLoad('js/jquery/jquery-ui.custom.js') . dcPage::jsLoad('js/jquery/jquery.ui.touch-punch.js') . dcPage::jsLoad('js/jquery/jquery.pwstrength.js') . '<script type="text/javascript">' . "\n" . "//<![CDATA[\n" . "\$(function() {\n" . "\t\$('#new_pwd').pwstrength({texts: ['" . sprintf(__('Password strength: %s'), __('very weak')) . "', '" . sprintf(__('Password strength: %s'), __('weak')) . "', '" . sprintf(__('Password strength: %s'), __('mediocre')) . "', '" . sprintf(__('Password strength: %s'), __('strong')) . "', '" . sprintf(__('Password strength: %s'), __('very strong')) . "']});\n" . "});" . "\n//]]>\n" . "</script>\n" . dcPage::jsPageTabs($default_tab) . dcPage::jsConfirmClose('user-form') . $core->callBehavior('adminPreferencesHeaders'), dcPage::breadcrumb(array(html::escapeHTML($core->auth->userID()) => '', $page_title => ''))); # User profile echo '<div class="multi-part" id="user-profile" title="' . __('My profile') . '">'; echo '<h3>' . __('My profile') . '</h3>' . '<form action="' . $core->adminurl->get("admin.user.preferences") . '" method="post" id="user-form">' . '<p><label for="user_name">' . __('Last Name:') . '</label>' . form::field('user_name', 20, 255, html::escapeHTML($user_name)) . '</p>' . '<p><label for="user_firstname">' . __('First Name:') . '</label>' . form::field('user_firstname', 20, 255, html::escapeHTML($user_firstname)) . '</p>' . '<p><label for="user_displayname">' . __('Display name:') . '</label>' . form::field('user_displayname', 20, 255, html::escapeHTML($user_displayname)) . '</p>' . '<p><label for="user_email">' . __('Email:') . '</label>' . form::field('user_email', 20, 255, html::escapeHTML($user_email)) . '</p>' . '<p><label for="user_url">' . __('URL:') . '</label>' . form::field('user_url', 30, 255, html::escapeHTML($user_url)) . '</p>' . '<p><label for="user_lang">' . __('Language for my interface:') . '</label>' . form::combo('user_lang', $lang_combo, $user_lang, 'l10n') . '</p>' . '<p><label for="user_tz">' . __('My timezone:') . '</label>' . form::combo('user_tz', dt::getZones(true, true), $user_tz) . '</p>'; if ($core->auth->allowPassChange()) { echo '<h4 class="vertical-separator pretty-title">' . __('Change my password') . '</h4>' . '<div class="pw-table">' . '<p class="pw-cell"><label for="new_pwd">' . __('New password:'******'</label>' . form::password('new_pwd', 20, 255, '', '', '', false, ' data-indicator="pwindicator" ') . '</p>' . '<div id="pwindicator">' . ' <div class="bar"></div>' . ' <p class="label no-margin"></p>' . '</div>' . '</div>' . '<p><label for="new_pwd_c">' . __('Confirm new password:'******'</label>' . form::password('new_pwd_c', 20, 255) . '</p>' . '<p><label for="cur_pwd">' . __('Your current password:'******'</label>' . form::password('cur_pwd', 20, 255) . '</p>' . '<p class="form-note warn">' . __('If you have changed your email or password you must provide your current password to save these modifications.') . '</p>'; } echo '<p class="clear vertical-separator">' . $core->formNonce() . '<input type="submit" accesskey="s" value="' . __('Update my profile') . '" /></p>' . '</form>' . '</div>'; # User options : some from actual user profile, dashboard modules, ... echo '<div class="multi-part" id="user-options" title="' . __('My options') . '">'; echo '<form action="' . $core->adminurl->get("admin.user.preferences") . '#user-options" method="post" id="opts-forms">' . '<h3>' . __('My options') . '</h3>'; echo '<div class="fieldset">' . '<h4>' . __('Interface') . '</h4>' . '<p><label for="user_ui_enhanceduploader" class="classic">' . form::checkbox('user_ui_enhanceduploader', 1, $user_ui_enhanceduploader) . ' ' . __('Activate enhanced uploader in media manager') . '</label></p>' . '<p><label for="user_acc_nodragdrop" class="classic">' . form::checkbox('user_acc_nodragdrop', 1, $user_acc_nodragdrop) . ' ' . __('Disable javascript powered drag and drop for ordering items') . '</label></p>' . '<p class="clear form-note">' . __('If checked, numeric fields will allow to type the elements\' ordering number.') . '</p>'; echo '<p><label for="user_ui_media_by_page" class="classic">' . __('Number of elements displayed per page in media manager:') . '</label> ' . form::field('user_ui_media_by_page', 5, 3, (int) $user_ui_media_by_page) . '</p>'; echo '<p><label for="user_ui_media_nb_last_dirs" class="classic">' . __('Number of recent folders proposed in media manager:') . '</label> ' . form::field('user_ui_media_nb_last_dirs', 5, 3, (int) $user_ui_media_nb_last_dirs) . '</p>' . '<p class="clear form-note">' . __('Leave empty to ignore, displayed only if Javascript is enabled in your browser.') . '</p>'; if ($core->auth->isSuperAdmin()) { echo '<p><label for="user_ui_hide_std_favicon" class="classic">' . form::checkbox('user_ui_hide_std_favicon', 1, $user_ui_hide_std_favicon) . ' ' . __('Do not use standard favicon') . '</label> ' . '<span class="clear form-note warn">' . __('This will be applied for all users') . '.</span>' . '</p>';
throw new Exception(__("Passwords don't match")); } $cur->user_pwd = $_POST['new_pwd']; } # --BEHAVIOR-- adminBeforeUserUpdate $core->callBehavior('adminBeforeUserUpdate', $cur, $core->auth->userID()); # Udate user $core->updUser($core->auth->userID(), $cur); # --BEHAVIOR-- adminAfterUserUpdate $core->callBehavior('adminAfterUserUpdate', $cur, $core->auth->userID()); http::redirect('preferences.php?upd=1'); } catch (Exception $e) { $core->error->add($e->getMessage()); } } /* DISPLAY -------------------------------------------------------- */ dcPage::open($page_title, dcPage::jsLoad('js/_preferences.js') . dcPage::jsConfirmClose('user-form') . $core->callBehavior('adminPreferencesHeaders')); if (!empty($_GET['upd'])) { echo '<p class="message">' . __('Personal information has been successfully updated.') . '</p>'; } echo '<h2>' . $page_title . '</h2>'; echo '<form action="preferences.php" method="post" id="user-form">' . '<fieldset><legend>' . __('User preferences') . '</legend>' . '<div class="two-cols">' . '<div class="col">' . '<p><label>' . __('Last Name:') . form::field('user_name', 20, 255, html::escapeHTML($user_name), '', 2) . '</label></p>' . '<p><label>' . __('First Name:') . form::field('user_firstname', 20, 255, html::escapeHTML($user_firstname), '', 3) . '</label></p>' . '<p><label>' . __('Display name:') . form::field('user_displayname', 20, 255, html::escapeHTML($user_displayname), '', 4) . '</label></p>' . '<p><label>' . __('Email:') . form::field('user_email', 20, 255, html::escapeHTML($user_email), '', 5) . '</label></p>' . '<p><label>' . __('URL:') . form::field('user_url', 30, 255, html::escapeHTML($user_url), '', 6) . '</label></p>' . '</div>' . '<div class="col">' . '<p><label>' . __('Preferred format:') . form::combo('user_post_format', $formaters_combo, $user_options['post_format'], '', 7) . '</label></p>' . '<p><label>' . __('Default entry status:') . form::combo('user_post_status', $status_combo, $user_post_status, '', 8) . '</label></p>' . '<p><label>' . __('Entry edit field height:') . form::field('user_edit_size', 5, 4, (int) $user_options['edit_size'], '', 9) . '</label></p>' . '<p><label>' . __('User language:') . form::combo('user_lang', $lang_combo, $user_lang, 'l10n', 10) . '</label></p>' . '<p><label>' . __('User timezone:') . form::combo('user_tz', dt::getZones(true, true), $user_tz, '', 11) . '</label></p>' . '<p><label class="classic">' . form::checkbox('user_wysiwyg', 1, $user_options['enable_wysiwyg'], '', 12) . ' ' . __('Enable WYSIWYG mode') . '</label></p>' . '</div>' . '</div>' . '<br class="clear" />' . '</fieldset>'; # --BEHAVIOR-- adminPreferencesForm $core->callBehavior('adminPreferencesForm', $core); if ($core->auth->allowPassChange()) { echo '<fieldset>' . '<legend>' . __('Change your password') . '</legend>' . '<p><label>' . __('New password:'******'new_pwd', 20, 255, '', '', 30) . '</label></p>' . '<p><label>' . __('Confirm password:'******'new_pwd_c', 20, 255, '', '', 31) . '</label></p>' . '</fieldset>' . '<fieldset>' . '<p>' . __('If you want to change your email or password you must provide your current password.') . '</p>' . '<p><label>' . __('Your password:'******'cur_pwd', 20, 255, '', '', 32) . '</label></p>' . '</fieldset>'; } echo '<p class="clear">' . $core->formNonce() . '<input type="submit" accesskey="s" value="' . __('Save') . '" tabindex="33" /></p>' . '</form>'; dcPage::helpBlock('core_user_pref'); dcPage::close();
public static function pingJS() { return dcPage::jsLoad('index.php?pf=pings/post.js'); }
function pages_users_actions_headers() { return dcPage::jsLoad('index.php?pf=pages/_users_actions.js'); }
function blogroll_users_actions_headers() { global $core; return dcPage::jsLoad(dcPage::getPF('blogroll/_users_actions.js')); }
} if (!empty($_POST['delete']) && $can_delete) { try { $core->blog->delComment($comment_id); http::redirect($core->getPostAdminURL($rs->post_type, $rs->post_id) . '&co=1#c' . $comment_id, false); } catch (Exception $e) { $core->error->add($e->getMessage()); } } if (!$can_edit) { $core->error->add(__("You can't edit this comment.")); } } /* DISPLAY -------------------------------------------------------- */ dcPage::open(__('Edit comment'), dcPage::jsConfirmClose('comment-form') . dcPage::jsToolBar() . dcPage::jsLoad('js/_comment.js')); if ($comment_id) { if (!empty($_GET['upd'])) { echo '<p class="message">' . __('Comment has been successfully updated.') . '</p>'; } $comment_mailto = ''; if ($comment_email) { $comment_mailto = '<a href="mailto:' . html::escapeHTML($comment_email) . '?subject=' . rawurlencode(sprintf(__('Your comment on my blog %s'), $core->blog->name)) . '&body=' . rawurlencode(sprintf(__("Hi!\n\nYou wrote a comment on:\n%s\n\n\n"), $rs->getPostURL())) . '">' . __('Send an e-mail') . '</a>'; } echo '<h2>' . html::escapeHTML($core->blog->name) . ' › ' . __('Edit comment') . '</h2>'; echo '<p><a class="back" href="' . $core->getPostAdminURL($post_type, $post_id) . '&co=1#c' . $comment_id . '"> ' . sprintf(__('Back to "%s"'), $post_title) . '</a></p>'; echo '<form action="comment.php" method="post" id="comment-form">' . '<p><label>' . __('IP address:') . '</label> ' . '<a href="comments.php?ip=' . $comment_ip . '">' . $comment_ip . '</a></p>' . '<p><label>' . __('Date:') . '</label> ' . dt::dt2str(__('%Y-%m-%d %H:%M'), $comment_dt) . '</p>' . '<p><label class="required" title="' . __('Required field') . '">' . __('Author:') . form::field('comment_author', 30, 255, html::escapeHTML($comment_author)) . '</label></p>' . '<p><label>' . __('Email:') . form::field('comment_email', 30, 255, html::escapeHTML($comment_email)) . $comment_mailto . '</label></p>' . '<p><label>' . __('Web site:') . form::field('comment_site', 30, 255, html::escapeHTML($comment_site)) . '</label></p>' . '<p><label>' . __('Status:') . form::combo('comment_status', $status_combo, $comment_status, '', '', !$can_publish) . '</label></p>' . $core->callBehavior('adminAfterCommentDesc', $rs) . '<p class="area"><label for="comment_content">' . __('Comment:') . '</label> ' . form::textarea('comment_content', 50, 10, html::escapeHTML($comment_content)) . '</p>' . '<p>' . form::hidden('id', $comment_id) . $core->formNonce() . '<input type="submit" accesskey="s" name="update" value="' . __('save') . '" /> '; if ($can_delete) { echo '<input type="submit" name="delete" value="' . __('delete') . '" />'; } echo '</p>' . '</form>';
/** * Add javascript for plugin configuration. * * @param $core <b>dcCore</b> dcCore instance * @param $module <b>mixed</b> Module ID or false if none * @return <b>string</b> Header code for js inclusion */ public static function pluginsToolsHeaders($core, $module) { if ($module == 'maintenance') { return dcPage::jsLoad(dcPage::getPF('maintenance/js/settings.js')); } }
} try { $ret_code = dc_lang_install($dest); } catch (Exception $e) { @unlink($dest); throw $e; } @unlink($dest); http::redirect('langs.php?added=' . $ret_code); } catch (Exception $e) { $core->error->add($e->getMessage()); } } /* DISPLAY Main page -------------------------------------------------------- */ dcPage::open(__('Languages management'), dcPage::jsLoad('js/_langs.js')); echo '<h2>' . __('Languages management') . '</h2>'; if (!empty($_GET['removed'])) { echo '<p class="message">' . __('Language has been successfully deleted.') . '</p>'; } if (!empty($_GET['added'])) { echo '<p class="message">' . ($_GET['added'] == 2 ? __('Language has been successfully upgraded') : __('Language has been successfully installed.')) . '</p>'; } echo '<p>' . __('Here you can install, upgrade or remove languages for your Dotclear ' . 'installation.') . '</p>' . '<p>' . sprintf(__('You can change your user language in your <a href="%1$s">preferences</a> or ' . 'change your blog\'s main language in your <a href="%2$s">blog settings</a>.'), 'preferences.php', 'blog_pref.php') . '</p>'; echo '<h3>' . __('Installed languages') . '</h3>'; $locales_content = scandir(DC_L10N_ROOT); $tmp = array(); foreach ($locales_content as $v) { $c = $v == '.' || $v == '..' || $v == 'en' || !is_dir(DC_L10N_ROOT . '/' . $v) || !isset($iso_codes[$v]); if (!$c) { $tmp[$v] = DC_L10N_ROOT . '/' . $v;
$core->blog->delPost($post_id); http::redirect('posts.php'); } catch (Exception $e) { $core->error->add($e->getMessage()); } } /* DISPLAY -------------------------------------------------------- */ $default_tab = 'edit-entry'; if (!$can_edit_post) { $default_tab = ''; } if (!empty($_GET['co'])) { $default_tab = 'comments'; } dcPage::open($page_title, dcPage::jsDatePicker() . dcPage::jsToolBar() . dcPage::jsModal() . dcPage::jsLoad('js/_post.js') . dcPage::jsConfirmClose('entry-form', 'comment-form') . $core->callBehavior('adminPostHeaders') . dcPage::jsPageTabs($default_tab) . $next_headlink . "\n" . $prev_headlink); if (!empty($_GET['upd'])) { echo '<p class="message">' . __('Entry has been successfully updated.') . '</p>'; } elseif (!empty($_GET['crea'])) { echo '<p class="message">' . __('Entry has been successfully created.') . '</p>'; } elseif (!empty($_GET['attached'])) { echo '<p class="message">' . __('File has been successfully attached.') . '</p>'; } elseif (!empty($_GET['rmattach'])) { echo '<p class="message">' . __('Attachment has been successfully removed.') . '</p>'; } if (!empty($_GET['creaco'])) { echo '<p class="message">' . __('Comment has been successfully created.') . '</p>'; } # XHTML conversion if (!empty($_GET['xconv'])) { $post_excerpt = $post_excerpt_xhtml;
return; } /* Get comments -------------------------------------------------------- */ try { $comments = $core->blog->getComments($params); $counter = $core->blog->getComments($params, true); $comment_list = new adminCommentList($core, $comments, $counter->f(0)); } catch (Exception $e) { $core->error->add($e->getMessage()); } /* DISPLAY -------------------------------------------------------- */ $form_filter_title = __('Show filters and display options'); $starting_script = dcPage::jsLoad('js/_comments.js'); $starting_script .= dcPage::jsLoad('js/filter-controls.js'); $starting_script .= '<script type="text/javascript">' . "\n" . "//<![CDATA[" . "\n" . dcPage::jsVar('dotclear.msg.show_filters', $show_filters ? 'true' : 'false') . "\n" . dcPage::jsVar('dotclear.msg.filter_posts_list', $form_filter_title) . "\n" . dcPage::jsVar('dotclear.msg.cancel_the_filter', __('Cancel filters and display options')) . "\n" . "//]]>" . "</script>"; dcPage::open(__('Comments and trackbacks'), $starting_script, dcPage::breadcrumb(array(html::escapeHTML($core->blog->name) => '', __('Comments and trackbacks') => ''))); if (!empty($_GET['upd'])) { dcPage::success(__('Selected comments have been successfully updated.')); } elseif (!empty($_GET['del'])) { dcPage::success(__('Selected comments have been successfully deleted.')); } if (!$core->error->flag()) { if (isset($_SESSION['comments_del_spam'])) { dcPage::message(__('Spam comments have been successfully deleted.')); unset($_SESSION['comments_del_spam']); } $spam_count = $core->blog->getComments(array('comment_status' => -2), true)->f(0); if ($spam_count > 0) { echo '<form action="' . $core->adminurl->get("admin.comments") . '" method="post" class="fieldset">';
# --BEHAVIOR-- adminAfterUserCreate $core->callBehavior('adminAfterUserCreate', $cur, $new_id); dcPage::addSuccessNotice(__('User has been successfully created.')); if (!empty($_POST['saveplus'])) { $core->adminurl->redirect("admin.user"); } else { $core->adminurl->redirect("admin.user", array('id' => $new_id)); } } } catch (Exception $e) { $core->error->add($e->getMessage()); } } /* DISPLAY -------------------------------------------------------- */ dcPage::open($page_title, dcPage::jsConfirmClose('user-form') . dcPage::jsLoad('js/jquery/jquery.pwstrength.js') . '<script type="text/javascript">' . "\n" . "//<![CDATA[\n" . "\$(function() {\n" . "\t\$('#new_pwd').pwstrength({texts: ['" . sprintf(__('Password strength: %s'), __('very weak')) . "', '" . sprintf(__('Password strength: %s'), __('weak')) . "', '" . sprintf(__('Password strength: %s'), __('mediocre')) . "', '" . sprintf(__('Password strength: %s'), __('strong')) . "', '" . sprintf(__('Password strength: %s'), __('very strong')) . "']});\n" . "});\n" . "\n//]]>\n" . "</script>\n" . $core->callBehavior('adminUserHeaders'), dcPage::breadcrumb(array(__('System') => '', __('Users') => $core->adminurl->get("admin.users"), $page_title => ''))); if (!empty($_GET['upd'])) { dcPage::success(__('User has been successfully updated.')); } if (!empty($_GET['add'])) { dcPage::success(__('User has been successfully created.')); } echo '<form action="' . $core->adminurl->get("admin.user") . '" method="post" id="user-form">' . '<div class="two-cols">' . '<div class="col">' . '<h3>' . __('User profile') . '</h3>' . '<p><label for="user_id" class="required"><abbr title="' . __('Required field') . '">*</abbr> ' . __('User ID:') . '</label> ' . form::field('user_id', 20, 255, html::escapeHTML($user_id)) . '</p>' . '<p class="form-note">' . __('At least 2 characters using letters, numbers or symbols.') . '</p>'; if ($user_id == $core->auth->userID()) { echo '<p class="warning">' . __('Warning:') . ' ' . __('If you change your username, you will have to log in again.') . '</p>'; } echo '<div class="pw-table">' . '<p class="pw-cell">' . '<label for="new_pwd" ' . ($user_id != '' ? '' : 'class="required"') . '>' . ($user_id != '' ? '' : '<abbr title="' . __('Required field') . '">*</abbr> ') . ($user_id != '' ? __('New password:'******'Password:'******'</label>' . form::password('new_pwd', 20, 255, '', '', '', false, ' data-indicator="pwindicator" ') . '</p>' . '<div id="pwindicator">' . ' <div class="bar"></div>' . ' <p class="label no-margin"></p>' . '</div>' . '</div>' . '<p class="form-note">' . __('Password must contain at least 6 characters.') . '</p>' . '<p><label for="new_pwd_c" ' . ($user_id != '' ? '' : 'class="required"') . '>' . ($user_id != '' ? '' : '<abbr title="' . __('Required field') . '">*</abbr> ') . __('Confirm password:'******'</label> ' . form::password('new_pwd_c', 20, 255) . '</p>'; if ($core->auth->allowPassChange()) { echo '<p><label for="user_change_pwd" class="classic">' . form::checkbox('user_change_pwd', '1', $user_change_pwd) . ' ' . __('Password change required to connect') . '</label></p>'; } $super_disabled = $user_super && $user_id == $core->auth->userID();