/** * Write the minified Dynamik stylesheet file. * * @since 1.0 */ function dynamik_write_minified_styles() { $css_prefix = '/* ' . __('This file is auto-generated from the Dynamik Options settings and custom.css content (if file exists). Any direct edits here will be lost if the settings page is saved', 'dynamik') . ' */' . "\n"; $css = dynamik_build_design_styles(); if (file_exists(dynamik_get_custom_stylesheet_path())) { $css .= file_get_contents(dynamik_get_custom_stylesheet_path()); } $css = $css_prefix . dynamik_minify_css($css); $door = @fopen(dynamik_get_minified_stylesheet_path(), 'w'); @fwrite($door, $css); @fclose($door); if (substr(sprintf('%o', fileperms(dynamik_get_minified_stylesheet_path())), -4) != '0644' && substr(sprintf('%o', fileperms(dynamik_get_minified_stylesheet_path())), -4) != '0666') { @chmod(dynamik_get_minified_stylesheet_path(), 0644); } }
/** * Hook all Custom Hook Boxes that are set to be hooked into a Hook Location. * * @since 1.0 */ function dynamik_build_hook_boxes() { $dynamik_conditionals = get_option('dynamik_gen_custom_conditionals'); $dynamik_hooks = get_option('dynamik_gen_custom_hook_boxes'); $dynamik_hook_boxes = '<?php' . "\n" . '/**' . "\n" . ' * Build and Hook-In Custom Hook Boxes.' . "\n" . ' */' . "\n"; $single_quote = "'"; if (!empty($dynamik_hooks)) { foreach ($dynamik_hooks as $dynamik_hook => $hook_bits) { $dynamik_conditional_tags = ''; $dynamik_hook_conditional = explode('|', $hook_bits['conditionals']); foreach ($dynamik_conditionals as $dynamik_conditional => $conditional_bits) { if (in_array($conditional_bits['conditional_id'], $dynamik_hook_conditional)) { $dynamik_conditional_tags .= $conditional_bits['conditional_tag'] . ' || '; } } $dynamik_hook_boxes .= ' /* Name: ' . $hook_bits['hook_name'] . ' */ '; if ($hook_bits['status'] == 'sht' || $hook_bits['status'] == 'bth') { $dynamik_hook_boxes .= ' add_shortcode( ' . $single_quote . $hook_bits['hook_name'] . $single_quote . ', ' . $single_quote . 'dynamik_' . $hook_bits['hook_name'] . '_hook_box_shortcode' . $single_quote . ' ); function dynamik_' . $hook_bits['hook_name'] . '_hook_box_shortcode() {'; $dynamik_hook_boxes .= ' ob_start(); dynamik_' . $hook_bits['hook_name'] . '_hook_box_content(); $output_string = ob_get_contents(); ob_end_clean(); return $output_string; } '; } if ($hook_bits['status'] == 'hkd' || $hook_bits['status'] == 'bth') { $dynamik_hook_boxes .= ' add_action( ' . $single_quote . $hook_bits['hook_location'] . $single_quote . ', ' . $single_quote . 'dynamik_' . $hook_bits['hook_name'] . '_hook_box' . $single_quote . ', ' . $hook_bits['priority'] . ' ); function dynamik_' . $hook_bits['hook_name'] . '_hook_box() {'; $dynamik_hook_boxes .= ' dynamik_' . $hook_bits['hook_name'] . '_hook_box_content(); } '; } if ($hook_bits['status'] == 'css') { $dynamik_hook_boxes .= ' add_action( ' . $single_quote . 'wp_head' . $single_quote . ', ' . $single_quote . 'dynamik_' . $hook_bits['hook_name'] . '_hook_box' . $single_quote . ', ' . $hook_bits['priority'] . ' ); function dynamik_' . $hook_bits['hook_name'] . '_hook_box() {'; $dynamik_hook_boxes .= ' dynamik_' . $hook_bits['hook_name'] . '_hook_box_content(); } '; } $dynamik_hook_boxes .= ' function dynamik_' . $hook_bits['hook_name'] . '_hook_box_content() {'; if (!empty($hook_bits['conditionals'])) { $dynamik_hook_boxes .= ' if ( ' . substr($dynamik_conditional_tags, 0, -4) . ' ) { ?> '; } else { $dynamik_hook_boxes .= ' ?> '; } if ($hook_bits['status'] == 'css') { $dynamik_hook_boxes .= '<!-- "' . $hook_bits['hook_name'] . '" hook box styles --><style type="text/css">' . dynamik_minify_css($hook_bits['hook_textarea']) . '</style><!-- end "' . $hook_bits['hook_name'] . '" hook box styles -->'; } else { $dynamik_hook_boxes .= $hook_bits['hook_textarea']; } if (!empty($hook_bits['conditionals'])) { $dynamik_hook_boxes .= ' <?php } else { return false; }'; } else { $dynamik_hook_boxes .= ' <?php'; } $dynamik_hook_boxes .= ' } '; } } return $dynamik_hook_boxes; }