public static function breadcrumb($elements = null, $options = array()) { if (method_exists('dcPage', 'breadcrumb')) { return dcPage::breadcrumb($elements, $options); } else { $with_home_link = isset($options['home_link']) ? $options['home_link'] : true; $hl = isset($options['hl']) ? $options['hl'] : true; $hl_pos = isset($options['hl_pos']) ? $options['hl_pos'] : -1; // First item of array elements should be blog's name, System or Plugins $res = '<h2>'; $index = 0; if ($hl_pos < 0) { $hl_pos = count($elements) + $hl_pos; } foreach ($elements as $element => $url) { if ($hl && $index == $hl_pos) { $element = sprintf('<span class="page-title">%s</span>', $element); } $res .= ($index == 0 ? ' ' : ' › ') . ($url ? '<a href="' . $url . '">' : '') . $element . ($url ? '</a>' : ''); $index++; } $res .= '</h2>'; return $res; } }
throw $e; } @unlink($dest); if ($ret_code == 2) { dcPage::addSuccessNotice(__('Language has been successfully upgraded')); } else { dcPage::addSuccessNotice(__('Language has been successfully installed.')); } $core->adminurl->redirect("admin.langs"); } catch (Exception $e) { $core->error->add($e->getMessage()); } } /* DISPLAY Main page -------------------------------------------------------- */ dcPage::open(__('Languages management'), dcPage::jsLoad('js/_langs.js'), dcPage::breadcrumb(array(__('System') => '', __('Languages management') => ''))); if (!empty($_GET['removed'])) { dcPage::success(__('Language has been successfully deleted.')); } if (!empty($_GET['added'])) { dcPage::success($_GET['added'] == 2 ? __('Language has been successfully upgraded') : __('Language has been successfully installed.')); } 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>.'), $core->adminurl->get("admin.user.preferences"), $core->adminurl->get("admin.blog.pref")) . '</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; }
} } catch (Exception $e) { $core->error->add($e->getMessage()); } ?> <html> <head> <title><?php echo __('Pings'); ?> </title> </head> <body> <?php echo dcPage::breadcrumb(array(__('Plugins') => '', __('Pings configuration') => '')); echo '<form action="' . $p_url . '" method="post">' . '<p><label for="pings_active" class="classic">' . form::checkbox('pings_active', 1, $core->blog->settings->pings->pings_active) . __('Activate pings extension') . '</label></p>'; $i = 0; foreach ($pings_uris as $n => $u) { echo '<p><label for="pings_srv_name-' . $i . '" class="classic">' . __('Service name:') . '</label> ' . form::field(array('pings_srv_name[]', 'pings_srv_name-' . $i), 20, 128, html::escapeHTML($n)) . ' ' . '<label for="pings_srv_uri-' . $i . '" class="classic">' . __('Service URI:') . '</label> ' . form::field(array('pings_srv_uri[]', 'pings_srv_uri-' . $i), 40, 255, html::escapeHTML($u)); if (!empty($_GET['test'])) { try { pingsAPI::doPings($u, 'Example site', 'http://example.com'); echo ' <img src="images/check-on.png" alt="OK" />'; } catch (Exception $e) { echo ' <img src="images/check-off.png" alt="' . __('Error') . '" /> ' . $e->getMessage(); } } echo '</p>'; $i++; }
} else { $sortby = 'post_dt'; $order = 'desc'; } # Get posts 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()); } /* DISPLAY -------------------------------------------------------- */ $form_filter_title = __('Show filters and display options'); $starting_script = dcPage::jsLoad('js/_posts_list.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(__('Entries'), $starting_script, dcPage::breadcrumb(array(html::escapeHTML($core->blog->name) => '', __('Entries') => ''))); if (!empty($_GET['upd'])) { dcPage::success(__('Selected entries have been successfully updated.')); } elseif (!empty($_GET['del'])) { dcPage::success(__('Selected entries have been successfully deleted.')); } if (!$core->error->flag()) { echo '<p class="top-add"><a class="button add" href="' . $core->adminurl->get("admin.post") . '">' . __('New entry') . '</a></p>' . '<form action="' . $core->adminurl->get("admin.posts") . '" method="get" id="filters-form">' . '<h3 class="out-of-screen-if-js">' . $form_filter_title . '</h3>' . '<div class="table">' . '<div class="cell">' . '<h4>' . __('Filters') . '</h4>' . '<p><label for="user_id" class="ib">' . __('Author:') . '</label> ' . form::combo('user_id', $users_combo, $user_id) . '</p>' . '<p><label for="cat_id" class="ib">' . __('Category:') . '</label> ' . form::combo('cat_id', $categories_combo, $cat_id) . '</p>' . '<p><label for="status" class="ib">' . __('Status:') . '</label> ' . form::combo('status', $status_combo, $status) . '</p> ' . '<p><label for="format" class="ib">' . __('Format:') . '</label> ' . form::combo('format', $format_combo, $format) . '</p>' . '<p><label for="password" class="ib">' . __('Password:'******'</label> ' . form::combo('password', $password_combo, $password) . '</p>' . '</div>' . '<div class="cell filters-sibling-cell">' . '<p><label for="selected" class="ib">' . __('Selected:') . '</label> ' . form::combo('selected', $selected_combo, $selected) . '</p>' . '<p><label for="attachment" class="ib">' . __('Attachments:') . '</label> ' . form::combo('attachment', $attachment_combo, $attachment) . '</p>' . '<p><label for="month" class="ib">' . __('Month:') . '</label> ' . form::combo('month', $dt_m_combo, $month) . '</p>' . '<p><label for="lang" class="ib">' . __('Lang:') . '</label> ' . form::combo('lang', $lang_combo, $lang) . '</p> ' . '<p><label for="comment" class="ib">' . __('Comments:') . '</label> ' . form::combo('comment', $comment_combo, $comment) . '</p>' . '<p><label for="trackback" class="ib">' . __('Trackbacks:') . '</label> ' . form::combo('trackback', $trackback_combo, $trackback) . '</p>' . '</div>' . '<div class="cell filters-options">' . '<h4>' . __('Display options') . '</h4>' . '<p><label for="sortby" class="ib">' . __('Order by:') . '</label> ' . form::combo('sortby', $sortby_combo, $sortby) . '</p>' . '<p><label for="order" class="ib">' . __('Sort:') . '</label> ' . form::combo('order', $order_combo, $order) . '</p>' . '<p><span class="label ib">' . __('Show') . '</span> <label for="nb" class="classic">' . form::field('nb', 3, 3, $nb_per_page) . ' ' . __('entries per page') . '</label></p>' . '</div>' . '</div>' . '<p><input type="submit" value="' . __('Apply filters and display options') . '" />' . '<br class="clear" /></p>' . '</form>'; # Show posts $post_list->display($page, $nb_per_page, '<form action="' . $core->adminurl->get("admin.posts") . '" method="post" id="form-entries">' . '%s' . '<div class="two-cols">' . '<p class="col checkboxes-helpers"></p>' . '<p class="col right"><label for="action" class="classic">' . __('Selected entries action:') . '</label> ' . form::combo('action', $posts_actions_page->getCombo()) . '<input type="submit" value="' . __('ok') . '" /></p>' . form::hidden(array('user_id'), $user_id) . form::hidden(array('cat_id'), $cat_id) . form::hidden(array('status'), $status) . form::hidden(array('password'), $password) . form::hidden(array('selected'), $selected) . form::hidden(array('comment'), $comment) . form::hidden(array('trackback'), $trackback) . form::hidden(array('attachment'), $attachment) . form::hidden(array('month'), $month) . form::hidden(array('lang'), $lang) . form::hidden(array('sortby'), $sortby) . form::hidden(array('order'), $order) . form::hidden(array('page'), $page) . form::hidden(array('nb'), $nb_per_page) . $core->formNonce() . '</div>' . '</form>', $show_filters); } dcPage::helpBlock('core_posts'); dcPage::close();
$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) {
for (var i=0; i<items.length; i++) { order.value += items[i].id.substr(2)+','; } }); } }; //]]> </script> <?php echo dcPage::jsPageTabs($default_tab); ?> </head> <body> <?php echo dcPage::breadcrumb(array(html::escapeHTML($core->blog->name) => '', '<span class="page-title">' . $page_title . '</span>' => '')); if (!empty($_GET['newconfig'])) { dcPage::success(__('Items has been successfully updated')); } if (!empty($_GET['removed'])) { dcPage::success(__('Items have been successfully removed.')); } if (!empty($_GET['addlink'])) { dcPage::success(__('Menu item has been successfully created.')); } ?> <div class="multi-part" title="<?php echo __('Menu'); ?> " id="menu">
//$link_auto = $_POST['link_auto']; try { $menu->updateLink($id, $link_title, $link_href, $link_level, $link_auto, $link_desc, $link_lang, $link_class); http::redirect($p_url . '&edit=1&id=' . $id . '&upd=1'); } catch (Exception $e) { $core->error->add($e->getMessage()); } } ?> <html> <head> <title><?php echo $page_title; ?> </title> </head> <body> <?php echo dcPage::breadcrumb(array(html::escapeHTML($core->blog->name) => '', $page_title => $p_url, __('Changing the item') => '')); if (isset($rs)) { if (!empty($_GET['upd'])) { dcPage::success(__('Items has been successfully updated')); } echo '<p><a class="back" href="' . $p_url . '">' . __('Return to menu') . '</a></p>'; echo '<form action="plugin.php" method="post">' . '<div class="fieldset two-cols"><h4>' . __('Changing the item') . '</h4>' . '<p class="field"><label class="classic required" for="link_title"><abbr title="' . __('Required field') . '">*</abbr> ' . __('Label of item menu:') . ' </label>' . form::field('link_title', 50, 255, html::escapeHTML($link_title)) . '</p>' . '<p class="field"><label class="classic required" for="link_href"><abbr title="' . __('Required field') . '">*</abbr> ' . __('URL of item menu:') . ' </label>' . form::field('link_href', 50, 255, html::escapeHTML($link_href)) . '</p>' . '<p class="field"><label class="classic" for="link_desc">' . __('Description:') . ' </label>' . form::field('link_desc', 50, 255, html::escapeHTML($link_desc)) . '</p>' . '<p class="field"><label class="classic" for="link_level">' . __('Level:') . ' </label>' . form::field('link_level', 5, 255, html::escapeHTML($link_level)) . '</p>' . '<p class="info">' . __('Note: 0 = hide menu item; 1 = level of item 1; 2 = item level 2; etc.') . '</p>' . '<p class="field"><label class="classic" for="link_lang">' . __('Language:') . ' </label>' . form::field('link_lang', 5, 5, html::escapeHTML($link_lang)) . '</p>' . '<p class="field"><label class="classic" for="link_class">' . __('Class:') . ' </label>' . form::field('link_class', 50, 32, html::escapeHTML($link_class)) . '</p>' . '</div>' . '<p>' . form::hidden('p', 'menu') . form::hidden('edit', 1) . form::hidden('id', $id) . $core->formNonce() . '<input type="submit" name="edit_link" class="submit" value="' . __('Save') . '"/></p>' . '</form>'; } dcPage::helpBlock('menu'); ?> </body> </html>
echo dcPage::jsConfirmClose('links-form', 'add-link-form', 'add-category-form'); ?> <?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('blogroll/blogroll.js')); } ?> <?php echo dcPage::jsPageTabs($default_tab); ?> </head> <body> <?php echo dcPage::breadcrumb(array(html::escapeHTML($core->blog->name) => '', __('Blogroll') => '')) . dcPage::notices(); ?> <div class="multi-part" id="main-list" title="<?php echo __('Blogroll'); ?> "> <?php if (!$rs->isEmpty()) { ?> <form action="<?php echo $core->adminurl->get('admin.plugin'); ?> " method="post" id="links-form">
return ''; } return implode($sep, $res); } /* DISPLAY Main page -------------------------------------------------------- */ $starting_scripts = '<script type="text/javascript">' . "\n" . "//<![CDATA[" . "\n" . dcPage::jsVar('dotclear.msg.confirm_delete_media', __('Are you sure to delete this media?')) . "\n" . "//]]>" . "</script>" . dcPage::jsLoad('js/_media_item.js'); if ($popup && !empty($plugin_id)) { $starting_scripts .= $core->callBehavior('adminPopupMedia', $plugin_id); } $temp_params = $media_page_url_params; $temp_params['d'] = '%s'; $bc_template = $core->adminurl->get('admin.media', $temp_params, '&', true); $temp_params['d'] = ''; $home_url = $core->adminurl->get('admin.media', $temp_params); call_user_func($open_f, __('Media manager'), $starting_scripts . dcPage::jsDatePicker() . ($popup ? dcPage::jsPageTabs($tab) : ''), dcPage::breadcrumb(array(html::escapeHTML($core->blog->name) => '', __('Media manager') => $home_url, $core->media->breadCrumb($bc_template) . '<span class="page-title">' . $file->basename . '</span>' => ''), array('home_link' => !$popup, 'hl' => false))); if ($popup) { // Display notices echo dcPage::notices(); } if ($file === null) { call_user_func($close_f); exit; } if (!empty($_GET['fupd']) || !empty($_GET['fupl'])) { dcPage::success(__('File has been successfully updated.')); } if (!empty($_GET['thumbupd'])) { dcPage::success(__('Thumbnails have been successfully updated.')); } if (!empty($_GET['blogprefupd'])) {
dcPage::addSuccessNotice(__('Comment has been successfully deleted.')); http::redirect($core->getPostAdminURL($rs->post_type, $rs->post_id) . '&co=1', false); } catch (Exception $e) { $core->error->add($e->getMessage()); } } if (!$can_edit) { $core->error->add(__("You can't edit this comment.")); } } /* DISPLAY -------------------------------------------------------- */ if ($comment_id) { $breadcrumb = dcPage::breadcrumb(array(html::escapeHTML($core->blog->name) => '', html::escapeHTML($post_title) => $core->getPostAdminURL($post_type, $post_id) . '&co=1#c' . $comment_id, __('Edit comment') => '')); } else { $breadcrumb = dcPage::breadcrumb(array(html::escapeHTML($core->blog->name) => '', html::escapeHTML($post_title) => $core->getPostAdminURL($post_type, $post_id), __('Edit comment') => '')); } dcPage::open(__('Edit comment'), dcPage::jsConfirmClose('comment-form') . dcPage::jsLoad('js/_comment.js') . $core->callBehavior('adminPostEditor', $comment_editor['xhtml'], 'comment', array('#comment_content'), 'xhtml') . $core->callBehavior('adminCommentHeaders'), $breadcrumb); if ($comment_id) { if (!empty($_GET['upd'])) { dcPage::success(__('Comment has been successfully updated.')); } $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 '<form action="' . $core->adminurl->get("admin.comment") . '" method="post" id="comment-form">' . '<div class="fieldset">' . '<h3>' . __('Information collected') . '</h3>' . '<p>' . __('IP address:') . ' ' . '<a href="' . $core->adminurl->get("admin.comments", array('ip' => $comment_ip)) . '">' . $comment_ip . '</a></p>' . '<p>' . __('Date:') . ' ' . dt::dt2str(__('%Y-%m-%d %H:%M'), $comment_dt) . '</p>' . '</div>' . '<h3>' . __('Comment submitted') . '</h3>' . '<p><label for="comment_author" class="required"><abbr title="' . __('Required field') . '">*</abbr>' . __('Author:') . '</label>' . form::field('comment_author', 30, 255, html::escapeHTML($comment_author)) . '</p>' . '<p><label for="comment_email">' . __('Email:') . '</label>' . form::field('comment_email', 30, 255, html::escapeHTML($comment_email)) . '<span>' . $comment_mailto . '</span>' . '</p>' . '<p><label for="comment_site">' . __('Web site:') . '</label>' . form::field('comment_site', 30, 255, html::escapeHTML($comment_site)) . '</p>' . '<p><label for="comment_status">' . __('Status:') . '</label>' . form::combo('comment_status', $status_combo, $comment_status, '', '', !$can_publish) . '</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" class="delete" name="delete" value="' . __('Delete') . '" />'; } echo '</p>' . '</form>';
} } catch (Exception $e) { $core->error->add($e->getMessage()); } if (!$core->error->flag()) { dcPage::addSuccessNotice(__('User has been successfully updated.')); http::redirect($redir); } } } /* DISPLAY -------------------------------------------------------- */ if (!empty($users) && empty($blogs) && $action == 'blogs') { $breadcrumb = dcPage::breadcrumb(array(__('System') => '', __('Users') => $core->adminurl->get("admin.users"), __('Permissions') => '')); } else { $breadcrumb = dcPage::breadcrumb(array(__('System') => '', __('Users') => $core->adminurl->get("admin.users"), __('Actions') => '')); } dcPage::open(__('Users'), dcPage::jsLoad('js/_users_actions.js') . $core->callBehavior('adminUsersActionsHeaders'), $breadcrumb); if (!isset($action)) { dcPage::close(); exit; } $hidden_fields = ''; foreach ($users as $u) { $hidden_fields .= form::hidden(array('users[]'), $u); } if (isset($_POST['redir']) && strpos($_POST['redir'], '://') === false) { $hidden_fields .= form::hidden(array('redir'), html::escapeURL($_POST['redir'])); } else { $hidden_fields .= form::hidden(array('q'), html::escapeHTML($_POST['q'])) . form::hidden(array('sortby'), $_POST['sortby']) . form::hidden(array('order'), $_POST['order']) . form::hidden(array('page'), $_POST['page']) . form::hidden(array('nb'), $_POST['nb']); }
$img_status = sprintf($img_status_pattern, __('Unpublished'), 'check-off.png'); break; case -1: $img_status = sprintf($img_status_pattern, __('Scheduled'), 'scheduled.png'); break; case -2: $img_status = sprintf($img_status_pattern, __('Pending'), 'check-wrn.png'); break; default: $img_status = ''; } $edit_entry_title = '“' . html::escapeHTML($post_title) . '”' . ' ' . $img_status; } else { $edit_entry_title = $page_title; } echo dcPage::breadcrumb(array(html::escapeHTML($core->blog->name) => '', __('Pages') => $p_url, $edit_entry_title => '')); if (!empty($_GET['upd'])) { dcPage::success(__('Page has been successfully updated.')); } elseif (!empty($_GET['crea'])) { dcPage::success(__('Page has been successfully created.')); } elseif (!empty($_GET['attached'])) { dcPage::success(__('File has been successfully attached.')); } elseif (!empty($_GET['rmattach'])) { dcPage::success(__('Attachment has been successfully removed.')); } # XHTML conversion if (!empty($_GET['xconv'])) { $post_excerpt = $post_excerpt_xhtml; $post_content = $post_content_xhtml; $post_format = 'xhtml'; dcPage::message(__('Don\'t forget to validate your XHTML conversion by saving your post.'));
# Stop reading code here return; } # -- Execute actions -- try { $list->doActions(); } catch (Exception $e) { $core->error->add($e->getMessage()); } # -- Plugin install -- $plugins_install = null; if (!$core->error->flag()) { $plugins_install = $core->plugins->installModules(); } # -- Page header -- dcPage::open(__('Plugins management'), dcPage::jsLoad('js/_plugins.js') . dcPage::jsPageTabs() . $core->callBehavior('pluginsToolsHeaders', $core, false), dcPage::breadcrumb(array(__('System') => '', __('Plugins management') => ''))); # -- Plugins install messages -- if (!empty($plugins_install['success'])) { echo '<div class="static-msg">' . __('Following plugins have been installed:') . '<ul>'; foreach ($plugins_install['success'] as $k => $v) { echo '<li>' . $k . '</li>'; } echo '</ul></div>'; } if (!empty($plugins_install['failure'])) { echo '<div class="error">' . __('Following plugins have not been installed:') . '<ul>'; foreach ($plugins_install['failure'] as $k => $v) { echo '<li>' . $k . ' (' . $v . ')</li>'; } echo '</ul></div>'; }
$("#gs_submit").hide(); $("#ls_submit").hide(); $("#gs_nav").change(function() { window.location = $("#gs_nav option:selected").val(); }) $("#ls_nav").change(function() { window.location = $("#ls_nav option:selected").val(); }) }); //]]> </script> </head> <body> <?php echo dcPage::breadcrumb(array(__('System') => '', html::escapeHTML($core->blog->name) => '', __('about:config') => '')) . dcPage::notices(); ?> <div id="local" class="multi-part" title="<?php echo sprintf(__('Settings for %s'), html::escapeHTML($core->blog->name)); ?> "> <h3 class="out-of-screen-if-js"><?php echo sprintf(__('Settings for %s'), html::escapeHTML($core->blog->name)); ?> </h3> <?php $table_header = '<div class="table-outer"><table class="settings" id="%s"><caption class="as_h3">%s</caption>' . '<thead>' . '<tr>' . "\n" . ' <th class="nowrap">' . __('Setting ID') . '</th>' . "\n" . ' <th>' . __('Value') . '</th>' . "\n" . ' <th>' . __('Type') . '</th>' . "\n" . ' <th class="maximalx">' . __('Description') . '</th>' . "\n" . '</tr>' . "\n" . '</thead>' . "\n" . '<tbody>'; $table_footer = '</tbody></table></div>'; $settings = array();
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'));
public static function doChangePostLang($core, dcPostsActionsPage $ap, $post) { $posts_ids = $ap->getIDs(); if (empty($posts_ids)) { throw new Exception(__('No entry selected')); } if (isset($post['new_lang'])) { $new_lang = $post['new_lang']; $cur = $core->con->openCursor($core->prefix . 'post'); $cur->post_lang = $new_lang; $cur->update('WHERE post_id ' . $core->con->in($posts_ids)); dcPage::addSuccessNotice(sprintf(__('%d entry has been successfully set to language "%s"', '%d entries have been successfully set to language "%s"', count($posts_ids)), count($posts_ids), html::escapeHTML(l10n::getLanguageName($new_lang)))); $ap->redirect(true); } else { $ap->beginPage(dcPage::breadcrumb(array(html::escapeHTML($core->blog->name) => '', $ap->getCallerTitle() => $ap->getRedirection(true), __('Change language for this selection') => ''))); # lang list # Languages combo $rs = $core->blog->getLangs(array('order' => 'asc')); $all_langs = l10n::getISOcodes(0, 1); $lang_combo = array('' => '', __('Most used') => array(), __('Available') => l10n::getISOcodes(1, 1)); while ($rs->fetch()) { if (isset($all_langs[$rs->post_lang])) { $lang_combo[__('Most used')][$all_langs[$rs->post_lang]] = $rs->post_lang; unset($lang_combo[__('Available')][$all_langs[$rs->post_lang]]); } else { $lang_combo[__('Most used')][$rs->post_lang] = $rs->post_lang; } } unset($all_langs); unset($rs); echo '<form action="' . $ap->getURI() . '" method="post">' . $ap->getCheckboxes() . '<p><label for="new_lang" class="classic">' . __('Entry language:') . '</label> ' . form::combo('new_lang', $lang_combo, ''); echo $core->formNonce() . $ap->getHiddenFields() . form::hidden(array('action'), 'lang') . '<input type="submit" value="' . __('Save') . '" /></p>' . '</form>'; $ap->endPage(); } }
$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') . '">';
public static function adminRemoveTags($core, dcPostsActionsPage $ap, $post) { if (!empty($post['meta_id']) && $core->auth->check('delete,contentadmin', $core->blog->id)) { $meta =& $core->meta; $posts = $ap->getRS(); while ($posts->fetch()) { foreach ($_POST['meta_id'] as $v) { $meta->delPostMeta($posts->post_id, 'tag', $v); } } dcPage::addSuccessNotice(sprintf(__('Tag has been successfully removed from selected entries', 'Tags have been successfully removed from selected entries', count($_POST['meta_id'])))); $ap->redirect(true); } else { $meta =& $core->meta; $tags = array(); foreach ($ap->getIDS() as $id) { $post_tags = $meta->getMetadata(array('meta_type' => 'tag', 'post_id' => (int) $id))->toStatic()->rows(); foreach ($post_tags as $v) { if (isset($tags[$v['meta_id']])) { $tags[$v['meta_id']]++; } else { $tags[$v['meta_id']] = 1; } } } if (empty($tags)) { throw new Exception(__('No tags for selected entries')); } $ap->beginPage(dcPage::breadcrumb(array(html::escapeHTML($core->blog->name) => '', __('Entries') => 'posts.php', __('Remove selected tags from this selection') => ''))); $posts_count = count($_POST['entries']); echo '<form action="' . $ap->getURI() . '" method="post">' . $ap->getCheckboxes() . '<div><p>' . __('Following tags have been found in selected entries:') . '</p>'; foreach ($tags as $k => $n) { $label = '<label class="classic">%s %s</label>'; if ($posts_count == $n) { $label = sprintf($label, '%s', '<strong>%s</strong>'); } echo '<p>' . sprintf($label, form::checkbox(array('meta_id[]'), html::escapeHTML($k)), html::escapeHTML($k)) . '</p>'; } echo '<p><input type="submit" value="' . __('ok') . '" />' . $core->formNonce() . $ap->getHiddenFields() . form::hidden(array('action'), 'tags_remove') . '</p></div></form>'; $ap->endPage(); } }
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>';
$rsStatic = $rs->toStatic(); if ($sortby != 'nb_post') { // Sort user list using lexical order if necessary $rsStatic->extend('rsExtUser'); $rsStatic = $rsStatic->toExtStatic(); $rsStatic->lexicalSort($sortby, $order); } $user_list = new adminUserList($core, $rsStatic, $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/_users.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(__('Users'), $starting_script, dcPage::breadcrumb(array(__('System') => '', __('Users') => ''))); if (!$core->error->flag()) { if (!empty($_GET['del'])) { dcPage::message(__('User has been successfully removed.')); } if (!empty($_GET['upd'])) { dcPage::message(__('The permissions have been successfully updated.')); } echo '<p class="top-add"><strong><a class="button add" href="' . $core->adminurl->get("admin.user") . '">' . __('New user') . '</a></strong></p>' . '<form action="' . $core->adminurl->get("admin.users") . '" method="get" id="filters-form">' . '<h3 class="out-of-screen-if-js">' . $form_filter_title . '</h3>' . '<div class="table">' . '<div class="cell">' . '<h4>' . __('Filters') . '</h4>' . '<p><label for="q" class="ib">' . __('Search:') . '</label> ' . form::field('q', 20, 255, html::escapeHTML($q)) . '</p>' . '</div>' . '<div class="cell filters-options">' . '<h4>' . __('Display options') . '</h4>' . '<p><label for="sortby" class="ib">' . __('Order by:') . '</label> ' . form::combo('sortby', $sortby_combo, $sortby) . '</p> ' . '<p><label for="order" class="ib">' . __('Sort:') . '</label> ' . form::combo('order', $order_combo, $order) . '</p>' . '<p><span class="label ib">' . __('Show') . '</span> <label for="nb" class="classic">' . form::field('nb', 3, 3, $nb_per_page) . ' ' . __('users per page') . '</label></p> ' . '</div>' . '</div>' . '<p><input type="submit" value="' . __('Apply filters and display options') . '" />' . '<br class="clear" /></p>' . '</form>'; # Show users $user_list->display($page, $nb_per_page, '<form action="' . $core->adminurl->get("admin.user.actions") . '" method="post" id="form-users">' . '%s' . '<div class="two-cols">' . '<p class="col checkboxes-helpers"></p>' . '<p class="col right"><label for="action" class="classic">' . __('Selected users action:') . ' ' . form::combo('action', $combo_action) . '</label> ' . '<input type="submit" value="' . __('ok') . '" />' . form::hidden(array('q'), html::escapeHTML($q)) . form::hidden(array('sortby'), $sortby) . form::hidden(array('order'), $order) . form::hidden(array('page'), $page) . form::hidden(array('nb'), $nb_per_page) . $core->formNonce() . '</p>' . '</div>' . '</form>', $show_filters); } dcPage::helpBlock('core_users'); dcPage::close();
} } else { $content .= $fc; } } if (trim($content) == '') { return $ret; } $ret['content'] = $content; if ($title != '') { $ret['title'] = $title; } return $ret; } $help_page = !empty($_GET['page']) ? html::escapeHTML($_GET['page']) : 'index'; $content_array = helpPage($help_page); if ($content_array['content'] == '' || $help_page == 'index') { $content_array = helpPage('index'); } if ($content_array['title'] != '') { $breadcrumb = dcPage::breadcrumb(array(__('Global help') => $core->adminurl->get("admin.help"), $content_array['title'] => '')); } else { $breadcrumb = dcPage::breadcrumb(array(__('Global help') => '')); } /* DISPLAY -------------------------------------------------------- */ dcPage::open(__('Global help'), dcPage::jsPageTabs('first-step'), $breadcrumb); echo $content_array['content']; // Prevents global help link display $GLOBALS['__resources']['ctxhelp'] = true; dcPage::close();
echo dcPage::jsLoad('js/jquery/jquery-ui.custom.js') . dcPage::jsLoad('js/jquery/jquery.ui.touch-punch.js') . dcPage::jsLoad(dcPage::getPF('antispam/antispam.js')); } echo dcPage::cssLoad(dcPage::getPF('antispam/style.css')); ?> </head> <body> <?php if ($filter_gui !== false) { echo dcPage::breadcrumb(array(__('Plugins') => '', $page_name => $p_url, sprintf(__('%s filter configuration'), $filter->name) => '')) . dcPage::notices(); echo '<p><a href="' . $p_url . '" class="back">' . __('Back to filters list') . '</a></p>'; echo $filter_gui; if ($filter->help) { dcPage::helpBlock($filter->help); } } else { echo dcPage::breadcrumb(array(__('Plugins') => '', $page_name => '')) . dcPage::notices(); # Information $spam_count = dcAntispam::countSpam($core); $published_count = dcAntispam::countPublishedComments($core); $moderationTTL = $core->blog->settings->antispam->antispam_moderation_ttl; echo '<form action="' . $p_url . '" method="post" class="fieldset">' . '<h3>' . __('Information') . '</h3>'; echo '<ul class="spaminfo">' . '<li class="spamcount"><a href="' . $core->adminurl->get('admin.comments', array('status' => '-2')) . '">' . __('Junk comments:') . '</a> ' . '<strong>' . $spam_count . '</strong></li>' . '<li class="hamcount"><a href="' . $core->adminurl->get('admin.comments', array('status' => '1')) . '">' . __('Published comments:') . '</a> ' . $published_count . '</li>' . '</ul>'; if ($spam_count > 0) { echo '<p>' . $core->formNonce() . form::hidden('ts', time()) . '<input name="delete_all" class="delete" type="submit" value="' . __('Delete all spams') . '" /></p>'; } if ($moderationTTL != null && $moderationTTL >= 0) { echo '<p>' . sprintf(__('All spam comments older than %s day(s) will be automatically deleted.'), $moderationTTL) . ' ' . sprintf(__('You can modify this duration in the %s'), '<a href="' . $core->adminurl->get('admin.blog.pref') . '#antispam_moderation_ttl"> ' . __('Blog settings') . '</a>') . '.</p>'; } echo '</form>'; # Filters echo '<form action="' . $p_url . '" method="post" id="filters-list-form">';
# --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();
$core->adminurl->redirect("admin.categories"); } } catch (Exception $e) { $core->error->add($e->getMessage()); } } $title = $cat_id ? html::escapeHTML($cat_title) : __('New category'); $elements = array(html::escapeHTML($core->blog->name) => '', __('Categories') => $core->adminurl->get("admin.categories")); if ($cat_id) { while ($parents->fetch()) { $elements[html::escapeHTML($parents->cat_title)] = $core->adminurl->get("admin.category", array('id' => $parents->cat_id)); } } $elements[$title] = ''; $category_editor = $core->auth->getOption('editor'); dcPage::open($title, dcPage::jsConfirmClose('category-form') . dcPage::jsLoad('js/_category.js') . $core->callBehavior('adminPostEditor', $category_editor['xhtml'], 'category', array('#cat_desc'), 'xhtml'), dcPage::breadcrumb($elements)); if (!empty($_GET['upd'])) { dcPage::success(__('Category has been successfully updated.')); } echo '<form action="' . $core->adminurl->get("admin.category") . '" method="post" id="category-form">' . '<h3>' . __('Category information') . '</h3>' . '<p><label class="required" for="cat_title"><abbr title="' . __('Required field') . '">*</abbr> ' . __('Name:') . '</label> ' . form::field('cat_title', 40, 255, html::escapeHTML($cat_title)) . '</p>'; if (!$cat_id) { $rs = $core->blog->getCategories(array('post_type' => 'post')); echo '<p><label for="new_cat_parent">' . __('Parent:') . ' ' . '<select id="new_cat_parent" name="new_cat_parent" >' . '<option value="0">' . __('(none)') . '</option>'; while ($rs->fetch()) { echo '<option value="' . $rs->cat_id . '" ' . (!empty($_POST['new_cat_parent']) && $_POST['new_cat_parent'] == $rs->cat_id ? 'selected="selected"' : '') . '>' . str_repeat(' ', $rs->level - 1) . ($rs->level - 1 == 0 ? '' : '• ') . html::escapeHTML($rs->cat_title) . '</option>'; } echo '</select></label></p>'; unset($rs); } echo '<div class="lockable">' . '<p><label for="cat_url">' . __('URL:') . '</label> ' . form::field('cat_url', 40, 255, html::escapeHTML($cat_url)) . '</p>' . '<p class="form-note warn" id="note-cat-url">' . __('Warning: If you set the URL manually, it may conflict with another category.') . '</p>' . '</div>' . '<p class="area"><label for="cat_desc">' . __('Description:') . '</label> ' . form::textarea('cat_desc', 50, 8, html::escapeHTML($cat_desc)) . '</p>' . '<p><input type="submit" accesskey="s" value="' . __('Save') . '" />' . ($cat_id ? form::hidden('id', $cat_id) : '') . $core->formNonce() . '</p>' . '</form>'; if ($cat_id) {
?> <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> <body> <?php echo dcPage::breadcrumb(array(html::escapeHTML($core->blog->name) => '', __('Blog appearance') => $core->adminurl->get('admin.blog.theme'), __('Blowup configuration') => '')) . dcPage::notices(); echo '<p><a class="back" href="' . $core->adminurl->get('admin.blog.theme') . '">' . __('Back to Blog appearance') . '</a></p>'; if (!$can_write_images) { dcPage::message(__('For the following reasons, images cannot be created. You won\'t be able to change some background properties.') . $notices, false, true); } echo '<form id="theme_config" action="' . $p_url . '" method="post" enctype="multipart/form-data">'; echo '<div class="fieldset"><h3>' . __('Customization') . '</h3>' . '<h4>' . __('General') . '</h4>'; if ($can_write_images) { echo '<p class="field"><label for="body_bg_c">' . __('Background color:') . '</label> ' . form::field('body_bg_c', 7, 7, $blowup_user['body_bg_c'], 'colorpicker') . '</p>' . '<p class="field"><label for="body_bg_g">' . __('Background color fill:') . '</label> ' . form::combo('body_bg_g', $gradient_types, $blowup_user['body_bg_g']) . '</p>'; } echo '<p class="field"><label for="body_txt_f">' . __('Main text font:') . '</label> ' . form::combo('body_txt_f', blowupConfig::fontsList(), $blowup_user['body_txt_f']) . '</p>' . '<p class="field"><label for="body_txt_s">' . __('Main text font size:') . '</label> ' . form::field('body_txt_s', 7, 7, $blowup_user['body_txt_s']) . '</p>' . '<p class="field"><label for="body_txt_c">' . __('Main text color:') . '</label> ' . form::field('body_txt_c', 7, 7, $blowup_user['body_txt_c'], 'colorpicker') . '</p>' . '<p class="field"><label for="body_line_height">' . __('Text line height:') . '</label> ' . form::field('body_line_height', 7, 7, $blowup_user['body_line_height']) . '</p>' . '<h4 class="border-top">' . __('Links') . '</h4>' . '<p class="field"><label for="body_link_c">' . __('Links color:') . '</label> ' . form::field('body_link_c', 7, 7, $blowup_user['body_link_c'], 'colorpicker') . '</p>' . '<p class="field"><label for="body_link_v_c">' . __('Visited links color:') . '</label> ' . form::field('body_link_v_c', 7, 7, $blowup_user['body_link_v_c'], 'colorpicker') . '</p>' . '<p class="field"><label for="body_link_f_c">' . __('Focus links color:') . '</label> ' . form::field('body_link_f_c', 7, 7, $blowup_user['body_link_f_c'], 'colorpicker') . '</p>' . '<h4 class="border-top">' . __('Page top') . '</h4>'; if ($can_write_images) { echo '<p class="field"><label for="prelude_c">' . __('Prelude color:') . '</label> ' . form::field('prelude_c', 7, 7, $blowup_user['prelude_c'], 'colorpicker') . '</p>'; } echo '<p class="field"><label for="blog_title_hide">' . __('Hide main title') . '</label> ' . form::checkbox('blog_title_hide', 1, $blowup_user['blog_title_hide']) . '</p>' . '<p class="field"><label for="blog_title_f">' . __('Main title font:') . '</label> ' . form::combo('blog_title_f', blowupConfig::fontsList(), $blowup_user['blog_title_f']) . '</p>' . '<p class="field"><label for="blog_title_s">' . __('Main title font size:') . '</label> ' . form::field('blog_title_s', 7, 7, $blowup_user['blog_title_s']) . '</p>' . '<p class="field"><label for="blog_title_c">' . __('Main title color:') . '</label> ' . form::field('blog_title_c', 7, 7, $blowup_user['blog_title_c'], 'colorpicker') . '</p>' . '<p class="field"><label for="blog_title_a">' . __('Main title alignment:') . '</label> ' . form::combo('blog_title_a', array(__('center') => 'center', __('left') => 'left', __('right') => 'right'), $blowup_user['blog_title_a']) . '</p>' . '<p class="field"><label for="blog_title_p">' . __('Main title position (x:y)') . '</label> ' . form::field('blog_title_p', 7, 7, $blowup_user['blog_title_p']) . '</p>'; if ($can_write_images) {
$('.multi-part.active select.navigation option:first').attr('selected',true); }); $("#gp_nav").change(function() { window.location = $("#gp_nav option:selected").val(); }); $("#lp_nav").change(function() { window.location = $("#lp_nav option:selected").val(); }); }); //]]> </script> </head> <body> <?php echo dcPage::breadcrumb(array(__('System') => '', html::escapeHTML($core->auth->userID()) => '', __('user:preferences') => '')) . dcPage::notices(); ?> <div id="local" class="multi-part" title="<?php echo __('User preferences'); ?> "> <h3 class="out-of-screen-if-js"><?php echo __('User preferences'); ?> </h3> <?php $table_header = '<div class="table-outer"><table class="prefs" id="%s"><caption class="as_h3">%s</caption>' . '<thead>' . '<tr>' . "\n" . ' <th class="nowrap">' . __('Setting ID') . '</th>' . "\n" . ' <th>' . __('Value') . '</th>' . "\n" . ' <th>' . __('Type') . '</th>' . "\n" . ' <th class="maximalx">' . __('Description') . '</th>' . "\n" . '</tr>' . "\n" . '</thead>' . "\n" . '<tbody>'; $table_footer = '</tbody></table></div>'; $prefs = array();
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); } // Intermediate task (task required several steps) echo '<div class="step-box" id="' . $task->id() . '">' . '<p class="step-back">' . '<a class="back" href="' . $p_url . '&tab=' . $task->tab() . '#' . $task->tab() . '">' . __('Back') . '</a>' . '</p>' . '<h3>' . html::escapeHTML($task->name()) . '</h3>' . '<form action="' . $p_url . '" method="post">' . $res . '<p class="step-submit">' . '<input type="submit" value="' . $task->task() . '" /> ' . form::hidden(array('task'), $task->id()) . form::hidden(array('code'), (int) $code) . $core->formNonce() . '</p>' . '</form>' . '</div>'; } else { // Page title echo dcPage::breadcrumb(array(__('Plugins') => '', __('Maintenance') => '')) . dcPage::notices(); // Simple task (with only a button to start it) foreach ($maintenance->getTabs() as $tab_obj) { $res_group = ''; foreach ($maintenance->getGroups() as $group_obj) { $res_task = ''; foreach ($tasks as $t) { if (!$t->id() || $t->group() != $group_obj->id() || $t->tab() != $tab_obj->id()) { continue; } $res_task .= '<p>' . form::radio(array('task', $t->id()), $t->id()) . ' ' . '<label class="classic" for="' . $t->id() . '">' . html::escapeHTML($t->task()) . '</label>'; // Expired task alert message $ts = $t->expired(); if ($core->blog->settings->maintenance->plugin_message && $ts !== false) { if ($ts === null) { $res_task .= '<br /> <span class="warn">' . __('This task has never been executed.') . ' ' . __('You should execute it now.') . '</span>';
case 2: if ($items[$item_type][1]) { $step_label = __('Step #2'); break; } case 3: if ($items[$item_type][1]) { $step_label = __('Step #3'); } else { $step_label = __('Step #2'); } break; } echo dcPage::breadcrumb(array(html::escapeHTML($core->blog->name) => '', $page_title => $p_url, __('Add item') => '', $step_label => ''), array('hl_pos' => -2)) . dcPage::notices(); } else { echo dcPage::breadcrumb(array(html::escapeHTML($core->blog->name) => '', $page_title => '')) . dcPage::notices(); } if ($step) { // Formulaire d'ajout d'un item switch ($step) { case 1: // Selection du type d'item echo '<form id="additem" action="' . $p_url . '&add=2" method="post">'; echo '<fieldset><legend>' . __('Select type') . '</legend>'; echo '<p class="field"><label for="item_type" class="classic">' . __('Type of item menu:') . '</label>' . form::combo('item_type', $items_combo, '') . '</p>'; echo '<p>' . $core->formNonce() . '<input type="submit" name="appendaction" value="' . __('Continue...') . '" />' . '</p>'; echo '</fieldset>'; echo '</form>'; break; case 2: if ($items[$item_type][1]) {
/* 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">'; if (!$with_spam || $status != -2) { if ($spam_count == 1) {
$home_params['d'] = ''; $home_params['q'] = ''; if ($query || !$query && $q) { $count = $query ? count($dir['files']) : 0; $breadcrumb = dcPage::breadcrumb(array(html::escapeHTML($core->blog->name) => '', __('Media manager') => $core->adminurl->get('admin.media', $home_params), __('Search:') . ' ' . $q . ' (' . sprintf(__('%s file found', '%s files found', $count), $count) . ')' => ''), array('home_link' => !$popup)); } else { $temp_params = $page_url_params; $temp_params['d'] = '%s'; $bc_template = $core->adminurl->get('admin.media', $temp_params, '&', true); $breadcrumb_media = $core->media->breadCrumb($bc_template, '<span class="page-title">%s</span>'); if ($breadcrumb_media == '') { $breadcrumb = dcPage::breadcrumb(array(html::escapeHTML($core->blog->name) => '', __('Media manager') => $core->adminurl->get('admin.media', $home_params)), array('home_link' => !$popup)); } else { $home_params = $page_url_params; $home_params['d'] = ''; $breadcrumb = dcPage::breadcrumb(array(html::escapeHTML($core->blog->name) => '', __('Media manager') => $core->adminurl->get('admin.media', $home_params), $breadcrumb_media => ''), array('home_link' => !$popup, 'hl' => false)); } } } // Recent media folders $last_folders = ''; $last_folders_item = ''; $nb_last_dirs = (int) $core->auth->user_prefs->interface->media_nb_last_dirs; if ($nb_last_dirs > 0) { if (!is_array($last_dirs)) { $last_dirs = @unserialize($core->auth->user_prefs->interface->media_last_dirs); } if (is_array($last_dirs)) { foreach ($last_dirs as $ld) { $ld_params = $page_url_params; $ld_params['d'] = $ld;