blog->settings->widgets->widgets_nav) { $widgets_nav = dcWidgets::load($core->blog->settings->widgets->widgets_nav); } $widgets_extra = null; if ($core->blog->settings->widgets->widgets_extra) { $widgets_extra = dcWidgets::load($core->blog->settings->widgets->widgets_extra); } $append_combo = array( '-' => 0, __('navigation') => 'nav', __('extra') => 'extra' ); # Adding widgets to sidebars if (!empty($_POST['append']) && is_array($_POST['addw'])) { # Filter selection $addw = array(); foreach ($_POST['addw'] as $k => $v) { if (($v == 'extra' || $v == 'nav') && $__widgets->{$k} !== null ) { $addw[$k] = $v; } } # Append widgets if (!empty($addw)) { if (!($widgets_nav instanceof dcWidgets)) { $widgets_nav = new dcWidgets; } if (!($widgets_extra instanceof dcWidgets)) { $widgets_extra = new dcWidgets(); } foreach ($addw as $k => $v) { switch ($v) { case 'nav': $widgets_nav->append($__widgets->{$k}); break; case 'extra': $widgets_extra->append($__widgets->{$k}); break; } } try { $core->blog->settings->addNamespace('widgets'); $core->blog->settings->widgets->put('widgets_nav',$widgets_nav->store()); $core->blog->settings->widgets->put('widgets_extra',$widgets_extra->store()); $core->blog->triggerBlog(); http::redirect($p_url); } catch (Exception $e) { $core->error->add($e->getMessage()); } } } # Update sidebars if (!empty($_POST['wup'])) { if (!isset($_POST['w']) || !is_array($_POST['w'])) { $_POST['w'] = array(); } try { # Removing mark as _rem widgets foreach ($_POST['w'] as $nsid => $nsw) { foreach ($nsw as $i => $v) { if (!empty($v['_rem'])) { unset($_POST['w'][$nsid][$i]); continue; } } } if (!isset($_POST['w']['nav'])) { $_POST['w']['nav'] = array(); } if (!isset($_POST['w']['extra'])) { $_POST['w']['extra'] = array(); } $widgets_nav = dcWidgets::loadArray($_POST['w']['nav'],$__widgets); $widgets_extra = dcWidgets::loadArray($_POST['w']['extra'],$__widgets); $core->blog->settings->addNamespace('widgets'); $core->blog->settings->widgets->put('widgets_nav',$widgets_nav->store()); $core->blog->settings->widgets->put('widgets_extra',$widgets_extra->store()); $core->blog->triggerBlog(); http::redirect($p_url); } catch (Exception $e) { $core->error->add($e->getMessage()); } } elseif (!empty($_POST['wreset'])) { try { $core->blog->settings->addNamespace('widgets'); $core->blog->settings->widgets->put('widgets_nav',''); $core->blog->settings->widgets->put('widgets_extra',''); $core->blog->triggerBlog(); http::redirect($p_url); } catch (Exception $e) { $core->error->add($e->getMessage()); } } ?>
'.__('If you are allowed to edit your theme templates, you can directly add widgets as '. 'templates tags, with their own configuration.').'
'. ''.__('To add a widget in your template, you need to write code like this:').'
'. '<tpl:Widget id="'.__('Widget ID').'"> <setting name="'.__('Setting name').'">'.__('Setting value').'</setting> ... </tpl:Widget>'. '
'.__('Here are the following available widgets for your blog:').'
'; $widget_elements->content .= ''.__('No setting for this widget').'
'; } else { $widget_elements->content .= '