daily pastebin goal
38%
SHARE
TWEET

Untitled

a guest Apr 19th, 2013 165 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. <?php
  2.  
  3. define( 'SITEORIGIN_THEME_VERSION' , '2.2.2' );
  4. define( 'SITEORIGIN_THEME_ENDPOINT' , 'http://siteorigin.com' );
  5.  
  6. include get_template_directory().'/functions/settings.php';
  7. include get_template_directory().'/functions/admin.php';
  8. include get_template_directory().'/functions/gallery.php';
  9. include get_template_directory().'/functions/panels.php';
  10.  
  11. if(file_exists(get_template_directory().'/premium/functions.php')){
  12.         include get_template_directory().'/premium/functions.php';
  13. }
  14.  
  15. if(!defined('SITEORIGIN_IS_PREMIUM')) {
  16.         include get_template_directory().'/upgrade/upgrade.php';
  17. }
  18.  
  19. include get_template_directory().'/extras/settings/settings.php';
  20. include get_template_directory().'/extras/premium/premium.php';
  21. include get_template_directory().'/extras/update/update.php';
  22. include get_template_directory().'/extras/adminbar/adminbar.php';
  23. include get_template_directory().'/extras/widgets/widgets.php';
  24.  
  25. if(!function_exists('snapshot_setup_theme')) :
  26. /**
  27.  * General theme setup
  28.  *
  29.  * @action after_setup_theme
  30.  */
  31. function snapshot_setup_theme(){
  32.         // Enable translation
  33.         load_theme_textdomain( 'snapshot', get_template_directory() . '/languages' );
  34.        
  35.         // We're using SiteOrigin theme settings
  36.         siteorigin_settings_init();
  37.  
  38.         global $content_width;
  39.         if ( ! isset( $content_width ) ) $content_width = siteorigin_setting('posts_sidebar_images') ? 440 : 775;
  40.        
  41.         // The custom header is used for the logo
  42.         add_theme_support('custom-header', array(      
  43.                 'flex-width' => true,
  44.                 'flex-height' => true,
  45.                 'header-text' => false,
  46.         ));
  47.        
  48.         // Custom background images are nice
  49.         $background = array();
  50.         switch(siteorigin_setting('appearance_style')){
  51.                 case 'light' :
  52.                         $background['default-color'] = 'FEFEFE';
  53.                         break;
  54.                 case 'dark' :
  55.                         $background['default-color'] = '333';
  56.                         $background['default-image'] = get_template_directory_uri().'/images/dark/bg.png';
  57.                         break;
  58.         }
  59.         add_theme_support('custom-background', $background);
  60.        
  61.         add_theme_support('post-thumbnails');
  62.        
  63.         add_theme_support( 'automatic-feed-links' );
  64.  
  65.         /**
  66.          * Support panels
  67.          */
  68.         add_theme_support( 'siteorigin-panels', array(
  69.                 'margin-bottom' => 30,
  70.                 'responsive' => false,
  71.                 'home-page' => true,
  72.                 'home-page-default' => false,
  73.         ) );
  74.        
  75.         set_post_thumbnail_size(310, 420, true);
  76.         add_image_size('single-large', 960, 960, false);
  77.         add_image_size('single-large-landscape', 960, 540, true);
  78.        
  79.         add_image_size('slider-large', 1600, 1600, false);
  80.        
  81.         // The navigation menus
  82.         register_nav_menu('main-menu', __('Main Menu', 'snapshot'));
  83.  
  84.         add_editor_style();
  85.  
  86.         // Only include the bundled version of panels if the plugin does not exist
  87.         if(!defined('SITEORIGIN_PANELS_VERSION')) include get_template_directory().'/extras/panels/panels.php';
  88. }
  89. endif;
  90. add_action('after_setup_theme', 'snapshot_setup_theme');
  91.  
  92.  
  93. if(!function_exists('snapshot_print_scripts')) :
  94. /**
  95.  * Add the custom style CSS
  96.  * @return mixed
  97.  *
  98.  * @action wp_print_styles
  99.  */
  100. function snapshot_print_scripts(){
  101.         if(is_admin()) return;
  102.  
  103.         $header = get_custom_header()
  104.         ?>
  105.         <style type="text/css" media="all">
  106.                 a{ color: <?php echo esc_attr(siteorigin_setting('appearance_link')) ?>; }
  107.                 <?php if($header->url) : ?>
  108.                         #menu-main-menu,
  109.                         #top-area .menu > ul{
  110.                                 width: <?php echo max(200, 960-$header->width - 20) ?>px;
  111.                         }
  112.                 <?php endif; ?>
  113.         </style>
  114.         <?php
  115. }
  116. endif;
  117. add_action('wp_print_styles', 'snapshot_print_scripts');
  118.  
  119.  
  120. if(!function_exists('snapshot_print_html_shiv')) :
  121. /**
  122.  * Display the HTML 5 shiv conditional
  123.  */
  124. function snapshot_print_html_shiv(){
  125.         ?>
  126.         <!--[if lt IE 9]>
  127.         <script src="<?php echo get_template_directory_uri(); ?>/js/html5shiv.js" type="text/javascript"></script>
  128.         <![endif]-->
  129.         <!--[if (gte IE 6)&(lte IE 8)]>
  130.         <script type="text/javascript" src="<?php echo get_template_directory_uri(); ?>/js/selectivizr.js"></script>
  131.         <![endif]-->
  132.         <?php
  133. }
  134. endif;
  135. add_action('wp_print_scripts', 'snapshot_print_html_shiv');
  136.  
  137.  
  138. if(!function_exists('snapshot_setup_widgets')) :
  139. /**
  140.  * Setup the widgets
  141.  *
  142.  * @action widgets_init
  143.  */
  144. function snapshot_setup_widgets(){
  145.         register_sidebar(array(
  146.                 'name' => __('Site Footer', 'snapshot'),
  147.                 'id' => 'site-footer',
  148.         ));
  149.        
  150.         // Register all the SiteOrigin widgets we'll be using.
  151.         register_widget( 'SiteOrigin_Widgets_CTA' );
  152.         register_widget( 'SiteOrigin_Widgets_Button' );
  153.         register_widget( 'SiteOrigin_Widgets_IconText' );
  154.         register_widget( 'SiteOrigin_Widgets_Headline' );
  155.         register_widget( 'SiteOrigin_Widgets_Gallery' );
  156.         register_widget( 'SiteOrigin_Widgets_PostContent' );
  157.         register_widget( 'SiteOrigin_Widgets_Image' );
  158.         register_widget( 'SiteOrigin_Widgets_PostLoop' );
  159. }
  160. endif;
  161. add_action('widgets_init', 'snapshot_setup_widgets');
  162.  
  163.  
  164. if(!function_exists('snapshot_enqueue_scripts')) :
  165. /**
  166.  * Enqueue Snapshot's Scripts.
  167.  *
  168.  * @action wp_enqueue_scripts
  169.  */
  170. function snapshot_enqueue_scripts(){
  171.         wp_enqueue_style('snapshot', get_stylesheet_uri(), array(), SITEORIGIN_THEME_VERSION);
  172.        
  173.         if(siteorigin_setting('appearance_style') != 'light'){
  174.                 wp_enqueue_style('snapshot-style', get_template_directory_uri().'/premium/style-'.siteorigin_setting('appearance_style').'.css', array(), SITEORIGIN_THEME_VERSION);
  175.         }
  176.  
  177.         wp_enqueue_script('imgpreload', get_template_directory_uri() . '/js/jquery.imgpreload.min.js', array('jquery'), '1.4');
  178.         wp_enqueue_script('fitvids', get_template_directory_uri() . '/js/jquery.fitvids.min.js', array('jquery'), '1.0');
  179.        
  180.         wp_enqueue_script('snapshot', get_template_directory_uri() . '/js/snapshot.min.js', array('jquery', 'imgpreload'), SITEORIGIN_THEME_VERSION);
  181.  
  182.         wp_localize_script('snapshot', 'snapshot', array(
  183.                 'sliderLoaderUrl' => get_template_directory_uri().'/images/slider-loader.gif',
  184.                 'imageLoaderUrl' => get_template_directory_uri().'/images/photo-loader.gif',
  185.         ));
  186.        
  187.         // Enqueue all the slider stuff
  188.         wp_enqueue_script('imgpreload', get_template_directory_uri() . '/js/jquery.imgpreload.min.js', array('jquery'));
  189.         wp_enqueue_script('snapshot-home', get_template_directory_uri() . '/js/snapshot-home.min.js', array('jquery'), SITEORIGIN_THEME_VERSION);
  190.         wp_localize_script('snapshot-home', 'snapshotHome', array(
  191.                 'sliderSpeed' => siteorigin_setting('slider_speed'),
  192.                 'transitionSpeed' => siteorigin_setting('slider_transition'),
  193.                 'loaderUrl' => get_template_directory_uri().'/images/slider-loader.gif'
  194.         ));
  195.        
  196.         if ( is_singular() && get_option( 'thread_comments' ) )
  197.                 wp_enqueue_script( 'comment-reply' );
  198.        
  199.         if(is_singular() && siteorigin_setting('social_display_share'))
  200.                 wp_enqueue_script('snapshot-google-plusone', get_template_directory_uri() . '/js/plusone.min.js', array(), SITEORIGIN_THEME_VERSION);
  201.                
  202. }
  203. endif;
  204. add_action('wp_enqueue_scripts', 'snapshot_enqueue_scripts');
  205.  
  206. if(!function_exists('snapshot_wp_title')) :
  207. /**
  208.  * Filter the title
  209.  * @param $title
  210.  * @param $sep
  211.  * @param $seplocation
  212.  * @return string
  213.  *
  214.  * @filter wp_title
  215.  */
  216. function snapshot_wp_title($title, $sep, $seplocation){
  217.         if(trim($sep) != ''){
  218.                 if(!empty($title)) {
  219.                         $title_array = explode($sep, $title);
  220.                 }
  221.                 else $title_array = array();
  222.                
  223.                 $title_array[] = get_bloginfo('title');
  224.                 if(is_home()) $title_array[] = get_bloginfo('description');
  225.  
  226.                 $title_array = array_map('trim', $title_array);
  227.                 $title_array = array_filter($title_array);
  228.                
  229.                 if($seplocation == 'left') $title_array = array_reverse($title_array);
  230.                
  231.                 $title = implode( " $sep ", $title_array );
  232.         }
  233.        
  234.         return $title;
  235. }
  236. endif;
  237. add_filter('wp_title', 'snapshot_wp_title', 10, 3);
  238.  
  239.  
  240. if(!function_exists('snapshot_single_comment')) :
  241. /**
  242.  * Display a single comment.
  243.  *
  244.  * @param $comment
  245.  * @param $depth
  246.  * @param $args
  247.  */
  248. function snapshot_single_comment($comment, $args, $depth){
  249.         $GLOBALS['comment'] = $comment;
  250.         ?>
  251.         <li id="comment-<?php echo get_comment_ID() ?>" <?php comment_class() ?>>
  252.                 <?php if(empty($comment->comment_type) || $comment->comment_type == 'comment') : ?>
  253.                         <div class="comment-avatar">
  254.                                 <?php echo get_avatar(get_comment_author_email(), 60) ?>
  255.                         </div>
  256.                 <?php elseif($comment->comment_type == 'trackback' || $comment->comment_type == 'pingback') : ?>
  257.                         <div class="pingback-icon"></div>
  258.                 <?php endif; ?>
  259.                
  260.                 <div class="comment-main">
  261.                         <div class="comment-info">
  262.                                 <span class="author"><?php echo get_comment_author_link() ?></span>
  263.                                 <span class="date"><?php comment_date() ?></span>
  264.                
  265.                                 <?php comment_reply_link(array('depth' => $depth, 'max_depth' => $args['max_depth'])) ?>
  266.                         </div>
  267.                         <div class="comment-content entry-content">
  268.                                 <?php comment_text() ?>
  269.                         </div>
  270.                 </div>
  271.         <?php
  272. }
  273. endif;
  274.  
  275.  
  276. if(!function_exists('snapshot_previous_posts_link_attributes')):
  277. /**
  278.  * Add the proper class to the posts nav link
  279.  * @param $attr
  280.  * @return string
  281.  *
  282.  * @filter previous_posts_link_attributes
  283.  */
  284. function snapshot_previous_posts_link_attributes($attr){
  285.         $attr = 'class="next"';
  286.         return $attr;
  287. }
  288. endif;
  289. add_filter('previous_posts_link_attributes', 'snapshot_previous_posts_link_attributes');
  290.  
  291.  
  292. if(!function_exists('snapshot_next_posts_link_attributes')):
  293. /**
  294.  * Add the proper class to the posts nav link
  295.  * @param $attr
  296.  * @return string
  297.  *
  298.  * @filter next_posts_link_attributes
  299.  */
  300. function snapshot_next_posts_link_attributes($attr){
  301.         $attr = 'class="prev"';
  302.         return $attr;
  303. }
  304. endif;
  305. add_filter('next_posts_link_attributes', 'snapshot_next_posts_link_attributes');
  306.  
  307.  
  308. if(!function_exists('snapshot_footer_widget_params')):
  309. /**
  310.  * Set the widths of the footer widgets
  311.  *
  312.  * @param $params
  313.  * @return mixed
  314.  *
  315.  * @filter dynamic_sidebar_params
  316.  */
  317. function snapshot_footer_widget_params($params){
  318.         // Check that this is the footer
  319.         if($params[0]['id'] != 'site-footer') return $params;
  320.  
  321.         $sidebars_widgets = wp_get_sidebars_widgets();
  322.         $count = count($sidebars_widgets[$params[0]['id']]);
  323.         $params[0]['before_widget'] = preg_replace('/\>$/', ' style="width:'.round(100/$count,4).'%" >', $params[0]['before_widget']);
  324.  
  325.         return $params;
  326. }
  327. endif;
  328. add_filter('dynamic_sidebar_params', 'snapshot_footer_widget_params');
  329.  
  330. function snapshot_wp_page_menu($args){
  331.         ?><div id="menu-main-menu-container"><?php
  332.         $args['walker'] = new Snapshot_Walker_Page;
  333.         wp_page_menu($args);
  334.         ?></div><?php
  335. }
  336.  
  337. if(!class_exists('Snapshot_Walker_Page')) :
  338. class Snapshot_Walker_Page extends Walker_Page{
  339.         function start_lvl( &$output, $depth = 0, $args = array() ) {
  340.                 $indent = str_repeat("\t", $depth);
  341.                 $output .= "\n$indent<ul class='sub-menu'><div class='sub-wrapper'><div class='pointer'></div>\n";
  342.         }
  343.  
  344.         function end_lvl( &$output, $depth = 0, $args = array() ) {
  345.                 $indent = str_repeat("\t", $depth);
  346.                 $output .= "$indent</div></ul>\n";
  347.         }
  348.  
  349.         function start_el( &$output, $page, $depth, $args, $current_page = 0 ) {
  350.                 if ( $depth ) $indent = str_repeat("\t", $depth);
  351.                 else $indent = '';
  352.  
  353.                 $output .= $indent . '<li class="menu-item"><a href="' . get_permalink($page->ID) . '">' . apply_filters( 'the_title', $page->post_title, $page->ID ) . '</a>';
  354.         }
  355. }
  356. endif;
  357.  
  358. if(!class_exists('Snapshot_Walker_Nav_Menu')) :
  359. class Snapshot_Walker_Nav_Menu extends Walker_Nav_Menu {
  360.         function start_lvl( &$output, $depth = 0, $args = array() ) {
  361.                 $indent = str_repeat("\t", $depth);
  362.                 $output .= "\n$indent<ul class='sub-menu'><div class='sub-wrapper'><div class='pointer'></div>\n";
  363.         }
  364.  
  365.         function end_lvl( &$output, $depth = 0, $args = array() ) {
  366.                 $indent = str_repeat("\t", $depth);
  367.                 $output .= "$indent</div></ul>\n";
  368.         }
  369. }
  370. endif;
  371.  
  372.  
  373. if(!function_exists('snapshot_get_slider_query')) :
  374. /**
  375.  * Get the method for the slider query
  376.  */
  377. function snapshot_get_slider_query(){
  378.         $query_args = apply_filters('snapshot_slider_query_args', array(
  379.                 'post_type' => 'post',
  380.                 'posts_per_page' => siteorigin_setting('slider_post_count'),
  381.         ));
  382.         return new WP_Query($query_args);
  383. }
  384. endif;
  385.  
  386. function snapshot_premium_before_post_summary(){
  387.         if(! siteorigin_setting('posts_clickable_thumbnails')) return;
  388.         ?><a href="<?php the_permalink() ?>" class="post-content-link"><?php
  389. }
  390. add_action('before_post_summary', 'snapshot_premium_before_post_summary');
  391.  
  392. function snapshot_premium_after_post_summary(){
  393.         if(! siteorigin_setting('posts_clickable_thumbnails')) return;
  394.         ?></a><?php
  395. }
  396. add_action('after_post_summary', 'snapshot_premium_after_post_summary');
  397.  
  398.  
  399. if(!function_exists('so_setting')) :
  400. /**
  401.  * This is a wrapper for siteorigin_setting to support legacy child themes.
  402.  *
  403.  * @param $name
  404.  * @param null $default
  405.  * @return mixed
  406.  */
  407. function so_setting($name, $default = null){
  408.         return siteorigin_setting($name, $default);
  409. }
  410. endif;
  411.  
  412. function wpufe_check_multisite_user( $permission ) {
  413.  
  414.     // if its multisite and the user belongs to this blog
  415.     if ( is_multisite() ) {
  416.         global $blog_id;
  417.  
  418.         if ( is_blog_user( $blog_id ) ) {
  419.             return 'yes';
  420.         } else {
  421.             return 'no';
  422.         }
  423.     }
  424.      
  425.     return $permission;
  426. }
  427.  
  428. add_filter( 'wpuf_can_post', 'wpufe_check_multisite_user' );
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
 
Top