error->flag()) { $notices = $core->error->toHTML(); $core->error->reset(); } $blowup_base = [ 'body_bg_c' => null, 'body_bg_g' => 'light', 'body_txt_f' => null, 'body_txt_s' => null, 'body_txt_c' => null, 'body_line_height' => null, 'top_image' => 'default', 'top_height' => null, 'uploaded' => null, 'blog_title_hide' => null, 'blog_title_f' => null, 'blog_title_s' => null, 'blog_title_c' => null, 'blog_title_a' => null, 'blog_title_p' => null, 'body_link_c' => null, 'body_link_f_c' => null, 'body_link_v_c' => null, 'sidebar_position' => null, 'sidebar_text_f' => null, 'sidebar_text_s' => null, 'sidebar_text_c' => null, 'sidebar_title_f' => null, 'sidebar_title_s' => null, 'sidebar_title_c' => null, 'sidebar_title2_f' => null, 'sidebar_title2_s' => null, 'sidebar_title2_c' => null, 'sidebar_line_c' => null, 'sidebar_link_c' => null, 'sidebar_link_f_c' => null, 'sidebar_link_v_c' => null, 'date_title_f' => null, 'date_title_s' => null, 'date_title_c' => null, 'post_title_f' => null, 'post_title_s' => null, 'post_title_c' => null, 'post_comment_bg_c' => null, 'post_comment_c' => null, 'post_commentmy_bg_c' => null, 'post_commentmy_c' => null, 'prelude_c' => null, 'footer_f' => null, 'footer_s' => null, 'footer_c' => null, 'footer_l_c' => null, 'footer_bg_c' => null, 'extra_css' => null ]; $blowup_user = $core->blog->settings->themes->blowup_style; $blowup_user = @unserialize($blowup_user); if (!is_array($blowup_user)) { $blowup_user = []; } $blowup_user = array_merge($blowup_base, $blowup_user); $gradient_types = [ __('Light linear gradient') => 'light', __('Medium linear gradient') => 'medium', __('Dark linear gradient') => 'dark', __('Solid color') => 'solid' ]; $top_images = [__('Custom...') => 'custom']; $top_images = array_merge($top_images, array_flip(blowupConfig::$top_images)); if (!empty($_POST)) { try { $blowup_user['body_txt_f'] = $_POST['body_txt_f']; $blowup_user['body_txt_s'] = dcThemeConfig::adjustFontSize($_POST['body_txt_s']); $blowup_user['body_txt_c'] = dcThemeConfig::adjustColor($_POST['body_txt_c']); $blowup_user['body_line_height'] = dcThemeConfig::adjustFontSize($_POST['body_line_height']); $blowup_user['blog_title_hide'] = (integer) !empty($_POST['blog_title_hide']); $update_blog_title = !$blowup_user['blog_title_hide'] && ( !empty($_POST['blog_title_f']) || !empty($_POST['blog_title_s']) || !empty($_POST['blog_title_c']) || !empty($_POST['blog_title_a']) || !empty($_POST['blog_title_p']) ); if ($update_blog_title) { $blowup_user['blog_title_f'] = $_POST['blog_title_f']; $blowup_user['blog_title_s'] = dcThemeConfig::adjustFontSize($_POST['blog_title_s']); $blowup_user['blog_title_c'] = dcThemeConfig::adjustColor($_POST['blog_title_c']); $blowup_user['blog_title_a'] = preg_match('/^(left|center|right)$/', $_POST['blog_title_a']) ? $_POST['blog_title_a'] : null; $blowup_user['blog_title_p'] = dcThemeConfig::adjustPosition($_POST['blog_title_p']); } $blowup_user['body_link_c'] = dcThemeConfig::adjustColor($_POST['body_link_c']); $blowup_user['body_link_f_c'] = dcThemeConfig::adjustColor($_POST['body_link_f_c']); $blowup_user['body_link_v_c'] = dcThemeConfig::adjustColor($_POST['body_link_v_c']); $blowup_user['sidebar_text_f'] = $_POST['sidebar_text_f']; $blowup_user['sidebar_text_s'] = dcThemeConfig::adjustFontSize($_POST['sidebar_text_s']); $blowup_user['sidebar_text_c'] = dcThemeConfig::adjustColor($_POST['sidebar_text_c']); $blowup_user['sidebar_title_f'] = $_POST['sidebar_title_f']; $blowup_user['sidebar_title_s'] = dcThemeConfig::adjustFontSize($_POST['sidebar_title_s']); $blowup_user['sidebar_title_c'] = dcThemeConfig::adjustColor($_POST['sidebar_title_c']); $blowup_user['sidebar_title2_f'] = $_POST['sidebar_title2_f']; $blowup_user['sidebar_title2_s'] = dcThemeConfig::adjustFontSize($_POST['sidebar_title2_s']); $blowup_user['sidebar_title2_c'] = dcThemeConfig::adjustColor($_POST['sidebar_title2_c']); $blowup_user['sidebar_line_c'] = dcThemeConfig::adjustColor($_POST['sidebar_line_c']); $blowup_user['sidebar_link_c'] = dcThemeConfig::adjustColor($_POST['sidebar_link_c']); $blowup_user['sidebar_link_f_c'] = dcThemeConfig::adjustColor($_POST['sidebar_link_f_c']); $blowup_user['sidebar_link_v_c'] = dcThemeConfig::adjustColor($_POST['sidebar_link_v_c']); $blowup_user['sidebar_position'] = ($_POST['sidebar_position'] == 'left') ? 'left' : null; $blowup_user['date_title_f'] = $_POST['date_title_f']; $blowup_user['date_title_s'] = dcThemeConfig::adjustFontSize($_POST['date_title_s']); $blowup_user['date_title_c'] = dcThemeConfig::adjustColor($_POST['date_title_c']); $blowup_user['post_title_f'] = $_POST['post_title_f']; $blowup_user['post_title_s'] = dcThemeConfig::adjustFontSize($_POST['post_title_s']); $blowup_user['post_title_c'] = dcThemeConfig::adjustColor($_POST['post_title_c']); $blowup_user['post_comment_c'] = dcThemeConfig::adjustColor($_POST['post_comment_c']); $blowup_user['post_commentmy_c'] = dcThemeConfig::adjustColor($_POST['post_commentmy_c']); $blowup_user['footer_f'] = $_POST['footer_f']; $blowup_user['footer_s'] = dcThemeConfig::adjustFontSize($_POST['footer_s']); $blowup_user['footer_c'] = dcThemeConfig::adjustColor($_POST['footer_c']); $blowup_user['footer_l_c'] = dcThemeConfig::adjustColor($_POST['footer_l_c']); $blowup_user['footer_bg_c'] = dcThemeConfig::adjustColor($_POST['footer_bg_c']); $blowup_user['extra_css'] = dcThemeConfig::cleanCSS($_POST['extra_css']); if ($can_write_images) { $uploaded = null; if ($blowup_user['uploaded'] && is_file(blowupConfig::imagesPath() . '/' . $blowup_user['uploaded'])) { $uploaded = blowupConfig::imagesPath() . '/' . $blowup_user['uploaded']; } if (!empty($_FILES['upfile']) && !empty($_FILES['upfile']['name'])) { files::uploadStatus($_FILES['upfile']); $uploaded = blowupConfig::uploadImage($_FILES['upfile']); $blowup_user['uploaded'] = basename($uploaded); } $blowup_user['top_image'] = in_array($_POST['top_image'], $top_images) ? $_POST['top_image'] : 'default'; $blowup_user['body_bg_c'] = dcThemeConfig::adjustColor($_POST['body_bg_c']); $blowup_user['body_bg_g'] = in_array($_POST['body_bg_g'], $gradient_types) ? $_POST['body_bg_g'] : ''; $blowup_user['post_comment_bg_c'] = dcThemeConfig::adjustColor($_POST['post_comment_bg_c']); $blowup_user['post_commentmy_bg_c'] = dcThemeConfig::adjustColor($_POST['post_commentmy_bg_c']); $blowup_user['prelude_c'] = dcThemeConfig::adjustColor($_POST['prelude_c']); blowupConfig::createImages($blowup_user, $uploaded); } if ($can_write_css) { blowupConfig::createCss($blowup_user); } $core->blog->settings->addNamespace('themes'); $core->blog->settings->themes->put('blowup_style', serialize($blowup_user)); $core->blog->triggerBlog(); dcPage::addSuccessNotice(__('Theme configuration has been successfully updated.')); http::redirect($p_url); } catch (Exception $e) { $core->error->add($e->getMessage()); } } ?> <?php echo __('Blowup configuration'); ?> blowupConfig::imagesURL(), 'msg' => [ 'predefined_styles' => __('Predefined styles'), 'apply_code' => __('Apply code'), 'predefined_style_title' => __('Choose a predefined style') ] ]; echo dcPage::jsJson('blowup', $js); echo dcPage::jsLoad(dcPage::getPF('blowupConfig/js/config.js')); ?> blog->name) => '', __('Blog appearance') => $core->adminurl->get('admin.blog.theme'), __('Blowup configuration') => '' ]) . dcPage::notices(); echo '

' . __('Back to Blog appearance') . '

'; 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 '
'; echo '

' . __('Customization') . '

' . '

' . __('General') . '

'; if ($can_write_images) { echo '

' . form::color('body_bg_c', ['default' => $blowup_user['body_bg_c']]) . '

' . '

' . form::combo('body_bg_g', $gradient_types, $blowup_user['body_bg_g']) . '

'; } echo '

' . form::combo('body_txt_f', blowupConfig::fontsList(), $blowup_user['body_txt_f']) . '

' . '

' . form::field('body_txt_s', 7, 7, $blowup_user['body_txt_s']) . '

' . '

' . form::color('body_txt_c', ['default' => $blowup_user['body_txt_c']]) . '

' . '

' . form::field('body_line_height', 7, 7, $blowup_user['body_line_height']) . '

' . '

' . __('Links') . '

' . '

' . form::color('body_link_c', ['default' => $blowup_user['body_link_c']]) . '

' . '

' . form::color('body_link_v_c', ['default' => $blowup_user['body_link_v_c']]) . '

' . '

' . form::color('body_link_f_c', ['default' => $blowup_user['body_link_f_c']]) . '

' . '

' . __('Page top') . '

'; if ($can_write_images) { echo '

' . form::color('prelude_c', ['default' => $blowup_user['prelude_c']]) . '

'; } echo '

' . form::checkbox('blog_title_hide', 1, $blowup_user['blog_title_hide']) . '

' . '

' . form::combo('blog_title_f', blowupConfig::fontsList(), $blowup_user['blog_title_f']) . '

' . '

' . form::field('blog_title_s', 7, 7, $blowup_user['blog_title_s']) . '

' . '

' . form::color('blog_title_c', ['default' => $blowup_user['blog_title_c']]) . '

' . '

' . form::combo('blog_title_a', [__('center') => 'center', __('left') => 'left', __('right') => 'right'], $blowup_user['blog_title_a']) . '

' . '

' . form::field('blog_title_p', 7, 7, $blowup_user['blog_title_p']) . '

'; if ($can_write_images) { if ($blowup_user['top_image'] == 'custom' && $blowup_user['uploaded']) { $preview_image = http::concatURL($core->blog->url, blowupConfig::imagesURL() . '/page-t.png'); } else { $preview_image = dcPage::getPF('blowupConfig/alpha-img/page-t/' . $blowup_user['top_image'] . '.png'); } echo '
' . __('Top image') . '
' . '

' . form::combo('top_image', $top_images, ($blowup_user['top_image'] ?: 'default')) . '

' . '

' . __('Choose "Custom..." to upload your own image.') . '

' . '

' . ' (' . sprintf(__('JPEG or PNG file, 800 pixels wide, maximum size %s'), files::size(DC_MAX_UPLOAD_SIZE)) . ')' . '' . '

' . '
' . __('Preview') . '
' . '
' . '' . '
'; } echo '

' . __('Sidebar') . '

' . '

' . form::combo('sidebar_position', [__('right') => 'right', __('left') => 'left'], $blowup_user['sidebar_position']) . '

' . '

' . form::combo('sidebar_text_f', blowupConfig::fontsList(), $blowup_user['sidebar_text_f']) . '

' . '

' . form::field('sidebar_text_s', 7, 7, $blowup_user['sidebar_text_s']) . '

' . '

' . form::color('sidebar_text_c', ['default' => $blowup_user['sidebar_text_c']]) . '

' . '

' . form::combo('sidebar_title_f', blowupConfig::fontsList(), $blowup_user['sidebar_title_f']) . '

' . '

' . form::field('sidebar_title_s', 7, 7, $blowup_user['sidebar_title_s']) . '

' . '

' . form::color('sidebar_title_c', ['default' => $blowup_user['sidebar_title_c']]) . '

' . '

' . form::combo('sidebar_title2_f', blowupConfig::fontsList(), $blowup_user['sidebar_title2_f']) . '

' . '

' . form::field('sidebar_title2_s', 7, 7, $blowup_user['sidebar_title2_s']) . '

' . '

' . form::color('sidebar_title2_c', ['default' => $blowup_user['sidebar_title2_c']]) . '

' . '

' . form::color('sidebar_line_c', ['default' => $blowup_user['sidebar_line_c']]) . '

' . '

' . form::color('sidebar_link_c', ['default' => $blowup_user['sidebar_link_c']]) . '

' . '

' . form::color('sidebar_link_v_c', ['default' => $blowup_user['sidebar_link_v_c']]) . '

' . '

' . form::color('sidebar_link_f_c', ['default' => $blowup_user['sidebar_link_f_c']]) . '

' . '

' . __('Entries') . '

' . '

' . form::combo('date_title_f', blowupConfig::fontsList(), $blowup_user['date_title_f']) . '

' . '

' . form::field('date_title_s', 7, 7, $blowup_user['date_title_s']) . '

' . '

' . form::color('date_title_c', ['default' => $blowup_user['date_title_c']]) . '

' . '

' . form::combo('post_title_f', blowupConfig::fontsList(), $blowup_user['post_title_f']) . '

' . '

' . form::field('post_title_s', 7, 7, $blowup_user['post_title_s']) . '

' . '

' . form::color('post_title_c', ['default' => $blowup_user['post_title_c']]) . '

'; if ($can_write_images) { echo '

' . form::color('post_comment_bg_c', ['default' => $blowup_user['post_comment_bg_c']]) . '

'; } echo '

' . form::color('post_comment_c', ['default' => $blowup_user['post_comment_c']]) . '

'; if ($can_write_images) { echo '

' . form::color('post_commentmy_bg_c', ['default' => $blowup_user['post_commentmy_bg_c']]) . '

'; } echo '

' . form::color('post_commentmy_c', ['default' => $blowup_user['post_commentmy_c']]) . '

' . '

' . __('Footer') . '

' . '

' . form::combo('footer_f', blowupConfig::fontsList(), $blowup_user['footer_f']) . '

' . '

' . form::field('footer_s', 7, 7, $blowup_user['footer_s']) . '

' . '

' . form::color('footer_c', ['default' => $blowup_user['footer_c']]) . '

' . '

' . form::color('footer_l_c', ['default' => $blowup_user['footer_l_c']]) . '

' . '

' . form::color('footer_bg_c', ['default' => $blowup_user['footer_bg_c']]) . '

'; echo '

' . __('Additional CSS') . '

' . '

' . form::textarea('extra_css', 72, 5, [ 'default' => html::escapeHTML($blowup_user['extra_css']), 'class' => 'maximal', 'extra_html' => 'title="' . __('Additional CSS') . '"' ]) . '

' . '
'; // Import / Export configuration $tmp_array = []; $tmp_exclude = ['uploaded', 'top_height']; if ($blowup_user['top_image'] == 'custom') { $tmp_exclude[] = 'top_image'; } foreach ($blowup_user as $k => $v) { if (!in_array($k, $tmp_exclude)) { $tmp_array[] = $k . ':' . '"' . $v . '"'; } } echo '
' . '

' . __('Configuration import / export') . '

' . '
' . '

' . __('You can share your configuration using the following code. To apply a configuration, paste the code, click on "Apply code" and save.') . '

' . '

' . form::textarea('export_code', 72, 5, [ 'default' => implode('; ', $tmp_array), 'class' => 'maximal', 'extra_html' => 'title="' . __('Copy this code:') . '"' ]) . '

' . '
' . '
'; echo '

' . $core->formNonce() . '

' . '
'; dcPage::helpBlock('blowupConfig'); ?>