├── .gitignore ├── images ├── line.png ├── logo.png ├── search.png ├── favicon.png ├── nophoto.jpg ├── icons │ ├── alert.png │ ├── check.png │ ├── note.png │ └── download.png ├── social │ ├── digg.png │ ├── rss.png │ ├── flickr.png │ ├── gplus.png │ ├── twitter.png │ ├── vimeo.png │ ├── youtube.png │ ├── delicious.png │ ├── facebook.png │ ├── linkedin.png │ └── comment_rss.png ├── colorbox-loading.gif ├── layouts │ ├── one-col.png │ ├── two-col-left.png │ ├── two-col-right.png │ ├── three-col-both.png │ ├── three-col-left.png │ └── three-col-right.png ├── colorbox-controls.png └── comments │ ├── gravatar.png │ ├── comments_url.png │ ├── comment_arrow.png │ ├── comment_bubble.png │ ├── comments_email.png │ └── comments_name.png ├── screenshot.png ├── includes ├── languages │ ├── de_DE.mo │ ├── en_GB.mo │ ├── es_ES.mo │ ├── fr_FR.mo │ ├── it_IT.mo │ ├── ja_JP.mo │ ├── pt_BR.mo │ └── ru_RU.mo ├── scripts │ ├── colorpicker │ │ ├── images │ │ │ ├── blank.gif │ │ │ ├── select.png │ │ │ ├── select2.png │ │ │ ├── slider.png │ │ │ ├── custom_hex.png │ │ │ ├── custom_hsb_b.png │ │ │ ├── custom_hsb_h.png │ │ │ ├── custom_hsb_s.png │ │ │ ├── custom_indic.gif │ │ │ ├── custom_rgb_b.png │ │ │ ├── custom_rgb_g.png │ │ │ ├── custom_rgb_r.png │ │ │ ├── colorpicker_hex.png │ │ │ ├── custom_submit.png │ │ │ ├── colorpicker_hsb_b.png │ │ │ ├── colorpicker_hsb_h.png │ │ │ ├── colorpicker_hsb_s.png │ │ │ ├── colorpicker_indic.gif │ │ │ ├── colorpicker_rgb_b.png │ │ │ ├── colorpicker_rgb_g.png │ │ │ ├── colorpicker_rgb_r.png │ │ │ ├── custom_background.png │ │ │ ├── custom_submit_zzz.png │ │ │ ├── colorpicker_overlay.png │ │ │ ├── colorpicker_select.gif │ │ │ ├── colorpicker_submit.png │ │ │ └── colorpicker_background.png │ │ ├── js │ │ │ ├── eye.js │ │ │ ├── layout.js │ │ │ └── utils.js │ │ └── css │ │ │ └── colorpicker.css │ ├── widgets.js │ ├── jquery.smooth-scroll.min.js │ ├── startbox.js │ └── admin.js ├── extensions │ ├── startbox-slideshows │ │ ├── jquery-nivo │ │ │ ├── themes │ │ │ │ ├── orman │ │ │ │ │ ├── readme.txt │ │ │ │ │ ├── arrows.png │ │ │ │ │ ├── ribbon.png │ │ │ │ │ ├── slider.png │ │ │ │ │ ├── bullets.png │ │ │ │ │ ├── loading.gif │ │ │ │ │ └── orman.css │ │ │ │ ├── pascal │ │ │ │ │ ├── readme.txt │ │ │ │ │ ├── bullets.png │ │ │ │ │ ├── loading.gif │ │ │ │ │ ├── ribbon.png │ │ │ │ │ ├── slider.png │ │ │ │ │ ├── controlnav.png │ │ │ │ │ ├── featured.png │ │ │ │ │ └── pascal.css │ │ │ │ └── default │ │ │ │ │ ├── arrows.png │ │ │ │ │ ├── bullets.png │ │ │ │ │ ├── loading.gif │ │ │ │ │ └── default.css │ │ │ ├── images │ │ │ │ ├── arrows.png │ │ │ │ ├── bullets.png │ │ │ │ ├── loading.gif │ │ │ │ └── bullets-old.png │ │ │ ├── license.txt │ │ │ └── css │ │ │ │ ├── custom-nivo-slider.css │ │ │ │ └── nivo-slider.css │ │ └── images │ │ │ └── admin │ │ │ ├── arrow_left.gif │ │ │ ├── arrow_right.gif │ │ │ └── cursors │ │ │ ├── cursor_arrow_left.cur │ │ │ └── cursor_arrow_right.cur │ └── theme-customizer.php ├── admin │ ├── help.php │ ├── upgrade.php │ ├── analytics.php │ ├── seo.php │ ├── layout.php │ ├── header.php │ ├── navigation.php │ ├── footer.php │ └── admin.php ├── styles │ ├── print.css │ ├── images.css │ ├── reset.css │ ├── colorbox.css │ ├── admin.css │ ├── editor.css │ ├── typography.css │ ├── layouts.css │ ├── comments.css │ └── shortcodes.css ├── widgets │ ├── widgets.php │ └── search.php └── functions │ ├── conditionals.php │ ├── upgrade.php │ ├── depricated.php │ ├── menus.php │ └── comment_format.php ├── searchform.php ├── index.php ├── sidebar.php ├── 404.php ├── archive.php ├── footer.php ├── notes.txt ├── page-sitemap.php ├── page.php ├── header.php ├── search.php ├── page-listchildren.php ├── single.php ├── author.php ├── functions.php ├── page-listcategories.php ├── style.css ├── page-category.php ├── page-archives.php ├── sidebar-footer.php ├── README.txt ├── loop.php ├── README.md ├── comments.php ├── attachment.php └── page-links.php /.gitignore: -------------------------------------------------------------------------------- 1 | .DS_Store -------------------------------------------------------------------------------- /images/line.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/images/line.png -------------------------------------------------------------------------------- /images/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/images/logo.png -------------------------------------------------------------------------------- /screenshot.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/screenshot.png -------------------------------------------------------------------------------- /images/search.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/images/search.png -------------------------------------------------------------------------------- /images/favicon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/images/favicon.png -------------------------------------------------------------------------------- /images/nophoto.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/images/nophoto.jpg -------------------------------------------------------------------------------- /images/icons/alert.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/images/icons/alert.png -------------------------------------------------------------------------------- /images/icons/check.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/images/icons/check.png -------------------------------------------------------------------------------- /images/icons/note.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/images/icons/note.png -------------------------------------------------------------------------------- /images/social/digg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/images/social/digg.png -------------------------------------------------------------------------------- /images/social/rss.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/images/social/rss.png -------------------------------------------------------------------------------- /images/icons/download.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/images/icons/download.png -------------------------------------------------------------------------------- /images/social/flickr.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/images/social/flickr.png -------------------------------------------------------------------------------- /images/social/gplus.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/images/social/gplus.png -------------------------------------------------------------------------------- /images/social/twitter.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/images/social/twitter.png -------------------------------------------------------------------------------- /images/social/vimeo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/images/social/vimeo.png -------------------------------------------------------------------------------- /images/social/youtube.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/images/social/youtube.png -------------------------------------------------------------------------------- /images/colorbox-loading.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/images/colorbox-loading.gif -------------------------------------------------------------------------------- /images/layouts/one-col.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/images/layouts/one-col.png -------------------------------------------------------------------------------- /images/social/delicious.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/images/social/delicious.png -------------------------------------------------------------------------------- /images/social/facebook.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/images/social/facebook.png -------------------------------------------------------------------------------- /images/social/linkedin.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/images/social/linkedin.png -------------------------------------------------------------------------------- /includes/languages/de_DE.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/includes/languages/de_DE.mo -------------------------------------------------------------------------------- /includes/languages/en_GB.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/includes/languages/en_GB.mo -------------------------------------------------------------------------------- /includes/languages/es_ES.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/includes/languages/es_ES.mo -------------------------------------------------------------------------------- /includes/languages/fr_FR.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/includes/languages/fr_FR.mo -------------------------------------------------------------------------------- /includes/languages/it_IT.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/includes/languages/it_IT.mo -------------------------------------------------------------------------------- /includes/languages/ja_JP.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/includes/languages/ja_JP.mo -------------------------------------------------------------------------------- /includes/languages/pt_BR.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/includes/languages/pt_BR.mo -------------------------------------------------------------------------------- /includes/languages/ru_RU.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/includes/languages/ru_RU.mo -------------------------------------------------------------------------------- /images/colorbox-controls.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/images/colorbox-controls.png -------------------------------------------------------------------------------- /images/comments/gravatar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/images/comments/gravatar.png -------------------------------------------------------------------------------- /images/social/comment_rss.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/images/social/comment_rss.png -------------------------------------------------------------------------------- /images/comments/comments_url.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/images/comments/comments_url.png -------------------------------------------------------------------------------- /images/layouts/two-col-left.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/images/layouts/two-col-left.png -------------------------------------------------------------------------------- /images/layouts/two-col-right.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/images/layouts/two-col-right.png -------------------------------------------------------------------------------- /images/comments/comment_arrow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/images/comments/comment_arrow.png -------------------------------------------------------------------------------- /images/comments/comment_bubble.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/images/comments/comment_bubble.png -------------------------------------------------------------------------------- /images/comments/comments_email.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/images/comments/comments_email.png -------------------------------------------------------------------------------- /images/comments/comments_name.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/images/comments/comments_name.png -------------------------------------------------------------------------------- /images/layouts/three-col-both.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/images/layouts/three-col-both.png -------------------------------------------------------------------------------- /images/layouts/three-col-left.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/images/layouts/three-col-left.png -------------------------------------------------------------------------------- /images/layouts/three-col-right.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/images/layouts/three-col-right.png -------------------------------------------------------------------------------- /includes/scripts/colorpicker/images/blank.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/includes/scripts/colorpicker/images/blank.gif -------------------------------------------------------------------------------- /includes/scripts/colorpicker/images/select.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/includes/scripts/colorpicker/images/select.png -------------------------------------------------------------------------------- /includes/scripts/colorpicker/images/select2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/includes/scripts/colorpicker/images/select2.png -------------------------------------------------------------------------------- /includes/scripts/colorpicker/images/slider.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/includes/scripts/colorpicker/images/slider.png -------------------------------------------------------------------------------- /includes/scripts/colorpicker/images/custom_hex.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/includes/scripts/colorpicker/images/custom_hex.png -------------------------------------------------------------------------------- /includes/scripts/colorpicker/images/custom_hsb_b.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/includes/scripts/colorpicker/images/custom_hsb_b.png -------------------------------------------------------------------------------- /includes/scripts/colorpicker/images/custom_hsb_h.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/includes/scripts/colorpicker/images/custom_hsb_h.png -------------------------------------------------------------------------------- /includes/scripts/colorpicker/images/custom_hsb_s.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/includes/scripts/colorpicker/images/custom_hsb_s.png -------------------------------------------------------------------------------- /includes/scripts/colorpicker/images/custom_indic.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/includes/scripts/colorpicker/images/custom_indic.gif -------------------------------------------------------------------------------- /includes/scripts/colorpicker/images/custom_rgb_b.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/includes/scripts/colorpicker/images/custom_rgb_b.png -------------------------------------------------------------------------------- /includes/scripts/colorpicker/images/custom_rgb_g.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/includes/scripts/colorpicker/images/custom_rgb_g.png -------------------------------------------------------------------------------- /includes/scripts/colorpicker/images/custom_rgb_r.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/includes/scripts/colorpicker/images/custom_rgb_r.png -------------------------------------------------------------------------------- /includes/extensions/startbox-slideshows/jquery-nivo/themes/orman/readme.txt: -------------------------------------------------------------------------------- 1 | Note: Images used in the slider for the Orman Theme should have the dimensions 568px x 268px -------------------------------------------------------------------------------- /includes/scripts/colorpicker/images/colorpicker_hex.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/includes/scripts/colorpicker/images/colorpicker_hex.png -------------------------------------------------------------------------------- /includes/scripts/colorpicker/images/custom_submit.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/includes/scripts/colorpicker/images/custom_submit.png -------------------------------------------------------------------------------- /includes/extensions/startbox-slideshows/jquery-nivo/themes/pascal/readme.txt: -------------------------------------------------------------------------------- 1 | Note: Images used in the slider for the Pascal Theme should have the dimensions 630px x 235px -------------------------------------------------------------------------------- /includes/scripts/colorpicker/images/colorpicker_hsb_b.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/includes/scripts/colorpicker/images/colorpicker_hsb_b.png -------------------------------------------------------------------------------- /includes/scripts/colorpicker/images/colorpicker_hsb_h.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/includes/scripts/colorpicker/images/colorpicker_hsb_h.png -------------------------------------------------------------------------------- /includes/scripts/colorpicker/images/colorpicker_hsb_s.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/includes/scripts/colorpicker/images/colorpicker_hsb_s.png -------------------------------------------------------------------------------- /includes/scripts/colorpicker/images/colorpicker_indic.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/includes/scripts/colorpicker/images/colorpicker_indic.gif -------------------------------------------------------------------------------- /includes/scripts/colorpicker/images/colorpicker_rgb_b.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/includes/scripts/colorpicker/images/colorpicker_rgb_b.png -------------------------------------------------------------------------------- /includes/scripts/colorpicker/images/colorpicker_rgb_g.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/includes/scripts/colorpicker/images/colorpicker_rgb_g.png -------------------------------------------------------------------------------- /includes/scripts/colorpicker/images/colorpicker_rgb_r.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/includes/scripts/colorpicker/images/colorpicker_rgb_r.png -------------------------------------------------------------------------------- /includes/scripts/colorpicker/images/custom_background.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/includes/scripts/colorpicker/images/custom_background.png -------------------------------------------------------------------------------- /includes/scripts/colorpicker/images/custom_submit_zzz.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/includes/scripts/colorpicker/images/custom_submit_zzz.png -------------------------------------------------------------------------------- /includes/scripts/colorpicker/images/colorpicker_overlay.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/includes/scripts/colorpicker/images/colorpicker_overlay.png -------------------------------------------------------------------------------- /includes/scripts/colorpicker/images/colorpicker_select.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/includes/scripts/colorpicker/images/colorpicker_select.gif -------------------------------------------------------------------------------- /includes/scripts/colorpicker/images/colorpicker_submit.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/includes/scripts/colorpicker/images/colorpicker_submit.png -------------------------------------------------------------------------------- /includes/scripts/colorpicker/images/colorpicker_background.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/includes/scripts/colorpicker/images/colorpicker_background.png -------------------------------------------------------------------------------- /includes/extensions/startbox-slideshows/images/admin/arrow_left.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/includes/extensions/startbox-slideshows/images/admin/arrow_left.gif -------------------------------------------------------------------------------- /includes/extensions/startbox-slideshows/images/admin/arrow_right.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/includes/extensions/startbox-slideshows/images/admin/arrow_right.gif -------------------------------------------------------------------------------- /includes/extensions/startbox-slideshows/jquery-nivo/images/arrows.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/includes/extensions/startbox-slideshows/jquery-nivo/images/arrows.png -------------------------------------------------------------------------------- /includes/extensions/startbox-slideshows/jquery-nivo/images/bullets.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/includes/extensions/startbox-slideshows/jquery-nivo/images/bullets.png -------------------------------------------------------------------------------- /includes/extensions/startbox-slideshows/jquery-nivo/images/loading.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/includes/extensions/startbox-slideshows/jquery-nivo/images/loading.gif -------------------------------------------------------------------------------- /includes/extensions/startbox-slideshows/jquery-nivo/images/bullets-old.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/includes/extensions/startbox-slideshows/jquery-nivo/images/bullets-old.png -------------------------------------------------------------------------------- /includes/extensions/startbox-slideshows/jquery-nivo/themes/orman/arrows.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/includes/extensions/startbox-slideshows/jquery-nivo/themes/orman/arrows.png -------------------------------------------------------------------------------- /includes/extensions/startbox-slideshows/jquery-nivo/themes/orman/ribbon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/includes/extensions/startbox-slideshows/jquery-nivo/themes/orman/ribbon.png -------------------------------------------------------------------------------- /includes/extensions/startbox-slideshows/jquery-nivo/themes/orman/slider.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/includes/extensions/startbox-slideshows/jquery-nivo/themes/orman/slider.png -------------------------------------------------------------------------------- /includes/extensions/startbox-slideshows/jquery-nivo/themes/default/arrows.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/includes/extensions/startbox-slideshows/jquery-nivo/themes/default/arrows.png -------------------------------------------------------------------------------- /includes/extensions/startbox-slideshows/jquery-nivo/themes/orman/bullets.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/includes/extensions/startbox-slideshows/jquery-nivo/themes/orman/bullets.png -------------------------------------------------------------------------------- /includes/extensions/startbox-slideshows/jquery-nivo/themes/orman/loading.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/includes/extensions/startbox-slideshows/jquery-nivo/themes/orman/loading.gif -------------------------------------------------------------------------------- /includes/extensions/startbox-slideshows/jquery-nivo/themes/pascal/bullets.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/includes/extensions/startbox-slideshows/jquery-nivo/themes/pascal/bullets.png -------------------------------------------------------------------------------- /includes/extensions/startbox-slideshows/jquery-nivo/themes/pascal/loading.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/includes/extensions/startbox-slideshows/jquery-nivo/themes/pascal/loading.gif -------------------------------------------------------------------------------- /includes/extensions/startbox-slideshows/jquery-nivo/themes/pascal/ribbon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/includes/extensions/startbox-slideshows/jquery-nivo/themes/pascal/ribbon.png -------------------------------------------------------------------------------- /includes/extensions/startbox-slideshows/jquery-nivo/themes/pascal/slider.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/includes/extensions/startbox-slideshows/jquery-nivo/themes/pascal/slider.png -------------------------------------------------------------------------------- /includes/extensions/startbox-slideshows/jquery-nivo/themes/default/bullets.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/includes/extensions/startbox-slideshows/jquery-nivo/themes/default/bullets.png -------------------------------------------------------------------------------- /includes/extensions/startbox-slideshows/jquery-nivo/themes/default/loading.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/includes/extensions/startbox-slideshows/jquery-nivo/themes/default/loading.gif -------------------------------------------------------------------------------- /includes/extensions/startbox-slideshows/jquery-nivo/themes/pascal/controlnav.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/includes/extensions/startbox-slideshows/jquery-nivo/themes/pascal/controlnav.png -------------------------------------------------------------------------------- /includes/extensions/startbox-slideshows/jquery-nivo/themes/pascal/featured.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/includes/extensions/startbox-slideshows/jquery-nivo/themes/pascal/featured.png -------------------------------------------------------------------------------- /includes/extensions/startbox-slideshows/images/admin/cursors/cursor_arrow_left.cur: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/includes/extensions/startbox-slideshows/images/admin/cursors/cursor_arrow_left.cur -------------------------------------------------------------------------------- /includes/extensions/startbox-slideshows/images/admin/cursors/cursor_arrow_right.cur: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebDevStudios/StartBox/HEAD/includes/extensions/startbox-slideshows/images/admin/cursors/cursor_arrow_right.cur -------------------------------------------------------------------------------- /searchform.php: -------------------------------------------------------------------------------- 1 |
2 |
3 | 4 | 5 |
6 |
-------------------------------------------------------------------------------- /index.php: -------------------------------------------------------------------------------- 1 | 2 | 3 |
4 |
5 | 6 | 17 | 18 |
19 |
20 | 21 | 22 | -------------------------------------------------------------------------------- /sidebar.php: -------------------------------------------------------------------------------- 1 | 8 | * hook: sb_before_{$location}_widgets 9 | * 12 | * hook: sb_after_{$location}_widgets 13 | * 14 | * hook: sb_after_{$location} 15 | */ 16 | sb_do_sidebar( 'primary', 'primary'); 17 | sb_do_sidebar( 'secondary', 'secondary'); -------------------------------------------------------------------------------- /404.php: -------------------------------------------------------------------------------- 1 | 2 | 3 |
4 |
5 | 6 | 7 | 8 |
9 | 10 |
11 | 12 | 13 | 14 |
15 |
16 | 17 | 18 | 19 |
20 |
21 | 22 | 23 | -------------------------------------------------------------------------------- /archive.php: -------------------------------------------------------------------------------- 1 | 2 | 3 |
4 |
5 | 6 | 20 | 21 |
22 |
23 | 24 | 25 | -------------------------------------------------------------------------------- /includes/scripts/colorpicker/js/eye.js: -------------------------------------------------------------------------------- 1 | /** 2 | * 3 | * Zoomimage 4 | * Author: Stefan Petre www.eyecon.ro 5 | * 6 | */ 7 | (function($){ 8 | var EYE = window.EYE = function() { 9 | var _registered = { 10 | init: [] 11 | }; 12 | return { 13 | init: function() { 14 | $.each(_registered.init, function(nr, fn){ 15 | fn.call(); 16 | }); 17 | }, 18 | extend: function(prop) { 19 | for (var i in prop) { 20 | if (prop[i] != undefined) { 21 | this[i] = prop[i]; 22 | } 23 | } 24 | }, 25 | register: function(fn, type) { 26 | if (!_registered[type]) { 27 | _registered[type] = []; 28 | } 29 | _registered[type].push(fn); 30 | } 31 | }; 32 | }(); 33 | $(EYE.init); 34 | })(jQuery); 35 | -------------------------------------------------------------------------------- /footer.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | -------------------------------------------------------------------------------- /includes/admin/help.php: -------------------------------------------------------------------------------- 1 | name = __( 'Need Help?', 'startbox' ); 9 | $this->slug = 'sb_settings_help'; 10 | $this->location = 'secondary'; 11 | $this->priority = 'high'; 12 | parent::__construct(); 13 | } 14 | 15 | function admin_form( $options ) { 16 | echo '

' . __( 'Struggling with some of the theme options or settings? Click on the "Help" tab above.', 'startbox' ) . '

'; 17 | echo '

' . sprintf( __( 'You can also visit the StartBox support forum', 'startbox' ), 'http://wpstartbox.com/support/' ) . '

'; 18 | } 19 | 20 | } 21 | 22 | sb_register_settings('sb_settings_help'); 23 | -------------------------------------------------------------------------------- /notes.txt: -------------------------------------------------------------------------------- 1 | ##### 3.0 2 | Update to HTML5 3 | Simplify Hook Names 4 | Refactor Options API to use more modular classes 5 | Integrate Theme Customizer (based on Options API) 6 | add custom CSS setting for theme customizer 7 | Add Metabox creator (based on Options API) 8 | Move some core features to plugins: 9 | Shortcodes (?) 10 | Slideshows 11 | Update the Theme Updater to make it universally friendly 12 | 13 | ##### StartBox Core (SBX) 14 | // Add the power of StartBox to your theme! 15 | require_once( get_template_directory() . '/startbox/startbox.php' ); 16 | 17 | // Pick and choose which modules to include 18 | add_theme_support( 'sb-options' ); 19 | add_theme_support( 'sb-customizer' ); 20 | add_theme_support( 'sb-metaboxes' ); 21 | add_theme_support( 'sb-layouts' ); 22 | add_theme_support( 'sb-sidebars' ); 23 | add_theme_support( 'sb-functions' ); 24 | add_theme_support( 'sb-updates' ); 25 | add_theme_support( 'sb-widgets' ); 26 | -------------------------------------------------------------------------------- /page-sitemap.php: -------------------------------------------------------------------------------- 1 | 6 | 7 | 8 |
9 |
10 | 11 | 12 | 13 | 14 | 15 |
> 16 | 17 |
18 | 19 | 20 | 21 | ', '' ); ?> 22 | 23 | ID, 'sitemap_settings', true ) ); ?> 24 | 25 |
26 |
27 | 28 | 29 | 30 | 31 | 32 |
33 |
34 | 35 | 36 | -------------------------------------------------------------------------------- /page.php: -------------------------------------------------------------------------------- 1 | 2 | 3 |
4 |
5 | 6 | 7 | 8 | 9 | 10 |
> 11 | 12 |
13 | 14 | '
' . __( 'Pages:', 'startbox' ), 'after' => '
' ) ); 17 | edit_post_link(__('Edit', 'startbox'),'',''); 18 | ?> 19 | 20 |
21 |
22 | 23 | 24 | 25 | 26 | 27 |
28 |
29 | 30 | 31 | -------------------------------------------------------------------------------- /includes/styles/print.css: -------------------------------------------------------------------------------- 1 | /**************************************************************************************************************** 2 | 3 | Default styles for print 4 | 5 | ****************************************************************************************************************/ 6 | 7 | #header, 8 | #footer_wrap, 9 | #comments, 10 | .skip-to-content, 11 | .menu, 12 | .entry-social, 13 | .entry-footer, 14 | .aside { display:none!important; } 15 | 16 | body, 17 | #wrap, 18 | #container, 19 | #content, 20 | .hentry, 21 | .entry-content { 22 | background:#fff; 23 | font-size:12pt; 24 | width:100%!important; 25 | margin:0!important; 26 | padding:0!important; 27 | border:0!important; 28 | overflow:visible!important; 29 | float:none!important; 30 | } 31 | 32 | a, a:visited { 33 | text-decoration:underline; 34 | } 35 | 36 | h1, h2, h3, h4 { 37 | line-height:1.4em; 38 | } 39 | 40 | .entry-title a { 41 | background:none!important; 42 | line-height:2em; 43 | } -------------------------------------------------------------------------------- /header.php: -------------------------------------------------------------------------------- 1 | 2 | > 3 | 4 | <?php wp_title(); ?> 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | > 13 | 14 |
15 | 16 | 17 | 18 | 19 | 22 | 23 | 24 | 25 | 26 |
27 | -------------------------------------------------------------------------------- /search.php: -------------------------------------------------------------------------------- 1 | 2 | 3 |
4 |
5 | 6 | 15 | 16 |
17 |

18 |
19 |

20 |
21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 |
31 |
32 | 33 | 34 | -------------------------------------------------------------------------------- /page-listchildren.php: -------------------------------------------------------------------------------- 1 | 6 | 7 | 8 |
9 |
10 | 11 | 12 | 13 | 14 | 15 |
> 16 | 17 |
18 | 19 | 20 | 21 | ',''); ?> 22 | 23 |
    24 | ID.'&exclude=&title_li=&depth=0'); ?> 25 |
26 | 27 |
28 |
29 | 30 | 31 | 32 | 33 | 34 |
35 |
36 | 37 | 38 | -------------------------------------------------------------------------------- /includes/scripts/widgets.js: -------------------------------------------------------------------------------- 1 | ;(function($) { 2 | $(document).ready(function(){ 3 | 4 | var $contentClass = $(".content-selector"); 5 | var $pagesettings = $contentClass.parent().nextAll('.page-settings'); 6 | var $postsettings = $contentClass.parent().nextAll('.post-settings'); 7 | 8 | $contentClass.live("change", function() { 9 | $contentSelector = $(this); 10 | if( $contentSelector.val() === 'page' ) { 11 | $contentSelector.parent().nextAll('.post-settings').slideUp(); 12 | $contentSelector.parent().nextAll('.page-settings').slideDown(); 13 | } else { 14 | $contentSelector.parent().nextAll('.post-settings').slideDown(); 15 | $contentSelector.parent().nextAll('.page-settings').slideUp(); 16 | } 17 | }); 18 | 19 | $('.advanced-settings').hide(); 20 | $('.advanced-toggle:checked').parent().next('.advanced-settings').show(); 21 | $('.advanced-toggle').live("change", function() { 22 | $(this).parent().next('.advanced-settings')[ 23 | $(this).attr('checked') ? 'slideDown' : 'slideUp' 24 | ](); 25 | }); 26 | 27 | }); 28 | })(jQuery); -------------------------------------------------------------------------------- /single.php: -------------------------------------------------------------------------------- 1 | 2 | 3 |
4 |
5 | 6 | 7 | 8 | 9 | 10 |
> 11 | 12 | 15 | 16 | 17 | 18 |
19 | 20 | '
' . __( 'Pages:', 'startbox' ), 'after' => '
' ) ); ?> 21 |
22 | 23 | 24 | 25 | 28 |
29 | 30 | 31 | 32 | 33 | 34 |
35 |
36 | 37 | 38 | -------------------------------------------------------------------------------- /includes/extensions/startbox-slideshows/jquery-nivo/license.txt: -------------------------------------------------------------------------------- 1 | Copyright (c) 2011 Gilbert Pellegrom 2 | 3 | Permission is hereby granted, free of charge, to any person 4 | obtaining a copy of this software and associated documentation 5 | files (the "Software"), to deal in the Software without 6 | restriction, including without limitation the rights to use, 7 | copy, modify, merge, publish, distribute, sublicense, and/or sell 8 | copies of the Software, and to permit persons to whom the 9 | Software is furnished to do so, subject to the following 10 | conditions: 11 | 12 | The above copyright notice and this permission notice shall be 13 | included in all copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 16 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES 17 | OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 18 | NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT 19 | HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 20 | WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 21 | FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR 22 | OTHER DEALINGS IN THE SOFTWARE. 23 | -------------------------------------------------------------------------------- /includes/admin/upgrade.php: -------------------------------------------------------------------------------- 1 | name = __( 'Version Information', 'startbox'); 9 | $this->slug = 'sb_upgrade_settings'; 10 | $this->location = 'secondary'; 11 | $this->priority = 'high'; 12 | $this->options = array( 13 | 'sb_version_info' => array( 14 | 'type' => 'intro', 15 | 'desc' => sprintf(__('StartBox Version: %s', 'startbox'), get_option('startbox_version') ) 16 | ), 17 | 'enable_updates' => array( 18 | 'type' => 'checkbox', 19 | 'label' => __('Enable Automatic Updates', 'startbox'), 20 | 'default' => 'true' 21 | ), 22 | // 'use_beta' => array( 23 | // 'type' => 'checkbox', 24 | // 'label' => __('Use Beta Updates', 'startbox'), 25 | // 'desc' => __('Note: Do not use beta updates in a production environment. They could break your site.', 'startbox'), 26 | // 'default' => false 27 | // ) 28 | ); 29 | parent::__construct(); 30 | } 31 | 32 | } 33 | 34 | // Only register this panel if the theme supports upgrades 35 | if ( current_theme_supports('sb-updates') ) 36 | sb_register_settings('sb_upgrade_settings'); -------------------------------------------------------------------------------- /includes/extensions/startbox-slideshows/jquery-nivo/css/custom-nivo-slider.css: -------------------------------------------------------------------------------- 1 | .slider-wrapper { 2 | margin:0 auto; 3 | } 4 | 5 | .with-controlNav { 6 | margin-bottom:40px; 7 | } 8 | 9 | .slider img { 10 | position:absolute; 11 | top:0px; 12 | left:0px; 13 | display:none; 14 | } 15 | .slider a { 16 | border:0; 17 | display:block; 18 | } 19 | 20 | .nivo-controlNav { 21 | position:absolute; 22 | bottom:-30px; 23 | } 24 | .nivo-controlNav a { 25 | display:block; 26 | width:10px; 27 | height:10px; 28 | background:url(../images/bullets-old.png) no-repeat; 29 | text-indent:-9999px; 30 | border:0; 31 | margin-right:3px; 32 | float:left; 33 | } 34 | .nivo-controlNav a.active { 35 | background-position:-10px 0; 36 | } 37 | 38 | .nivo-directionNav a { 39 | display:block; 40 | width:30px; 41 | height:30px; 42 | background:url(../images/arrows.png) no-repeat; 43 | text-indent:-9999px; 44 | border:0; 45 | } 46 | a.nivo-nextNav { 47 | background-position:-30px 0; 48 | right:15px; 49 | } 50 | a.nivo-prevNav { 51 | left:15px; 52 | } 53 | 54 | .nivo-caption { 55 | text-shadow:none; 56 | font-family: Helvetica, Arial, sans-serif; 57 | } 58 | .nivo-caption a { 59 | color:#efe9d1; 60 | text-decoration:underline; 61 | } -------------------------------------------------------------------------------- /author.php: -------------------------------------------------------------------------------- 1 | 2 | 3 |
4 |
5 | 6 | 11 | 12 |
13 | 14 | 15 |
16 | 17 |
18 |
19 | 20 |
21 | 22 |
23 | 24 | 36 | 37 |
38 |
39 | 40 | 41 | -------------------------------------------------------------------------------- /functions.php: -------------------------------------------------------------------------------- 1 | 6 | 7 | 8 |
9 |
10 | 11 | 12 | 13 | 14 | 15 |
> 16 | 17 |
18 | 19 | 20 | '
' . __( 'Pages:', 'startbox' ), 'after' => '
' ) ); ?> 21 | 22 | ',''); ?> 23 | 24 |
    25 | ID, 'categoryid', true); 27 | $show_count = (get_post_meta($post->ID, 'show_count', true)) ? get_post_meta($post->ID, 'show_count', true) : 0; 28 | wp_list_categories('child_of='.$categoryid.'&show_count='.$show_count.'&title_li='); 29 | ?> 30 |
31 | 32 |
33 |
34 | 35 | 36 | 37 | 38 | 39 |
40 |
41 | 42 | 43 | -------------------------------------------------------------------------------- /style.css: -------------------------------------------------------------------------------- 1 | /* 2 | THEME NAME: StartBox 3 | THEME URI: http://wpstartbox.com 4 | DESCRIPTION: StartBox is a flexible, customizable theme framework. All modifications should be made using a child theme to maintain forward compatibility. 5 | TAGS: one-column, two-columns, three-columns, left-sidebar, right-sidebar, fixed-width, white, light, custom-menu, editor-style, featured-images, full-width-template, microformats, sticky-post, theme-options, threaded-comments, translation-ready 6 | VERSION: 2.7.4 7 | AUTHOR: WebDevStudios.com 8 | AUTHOR URI: http://wpstartbox.com 9 | LICENSE: GNU General Public License 10 | LICENSE URI: license.txt 11 | */ 12 | 13 | /* NOTE: all of the below styles are also available for child themes via wp_enque_style, see functions.php for details */ 14 | 15 | /* Reset browser defaults */ 16 | @import url('includes/styles/reset.css'); 17 | 18 | /* Apply default typography styles */ 19 | @import url('includes/styles/typography.css'); 20 | 21 | /* Apply default image styles */ 22 | @import url('includes/styles/images.css'); 23 | 24 | /* Apply default shortcode styles */ 25 | @import url('includes/styles/shortcodes.css'); 26 | 27 | /* Apply default comment styles */ 28 | @import url('includes/styles/comments.css'); 29 | 30 | /* Apply StartBox defaults */ 31 | @import url('includes/styles/startbox.css'); 32 | -------------------------------------------------------------------------------- /includes/widgets/widgets.php: -------------------------------------------------------------------------------- 1 | name = __( 'Google Analytics', 'startbox'); 10 | $this->slug = 'sb_analytics_settings'; 11 | $this->description = __( 'Allows you to include the tracking codes for your preferred site statistics software (like Google Analytics, Woopra, etc).', 'startbox' ); 12 | $this->location = 'secondary'; 13 | $this->priority = 'core'; 14 | $this->hide_ui_if_cannot = 'unfiltered_html'; 15 | $this->options = array( 16 | 'analytics' => array( 17 | 'type' => 'textarea', 18 | 'label' => sprintf( __('Enter your %s code below:', 'startbox'), 'analytics' ), 19 | 'sanitize' => false, 20 | 'kses' => 'unfiltered_html', 21 | 'help' => __( 'Though intended specifically for analytics code, you can actually paste any code here that you would like to add to the <head> section of all your pages.', 'startbox' ) 22 | ) 23 | ); 24 | parent::__construct(); 25 | } 26 | 27 | 28 | function output() { 29 | if ( sb_get_option( 'analytics' ) ) { 30 | echo "\n\n".''."\n"; 31 | echo sb_get_option( 'analytics' )."\n"; 32 | echo ''."\n"; 33 | } 34 | } 35 | 36 | function hooks() { 37 | add_action('wp_head', array( $this, 'output' ) ); 38 | } 39 | 40 | } 41 | 42 | sb_register_settings('sb_analytics_settings'); -------------------------------------------------------------------------------- /page-category.php: -------------------------------------------------------------------------------- 1 | 6 | 7 | 8 |
9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | ', '' ); ?> 18 | 19 | ID, 'loop', true) ) ? $loop : get_post_format(); 23 | $post_type = ( $post_type = get_post_meta($post->ID, 'post_type', true) ) ? $post_type : 'post'; 24 | $categoryid = ( isset( $_GET['cat'] ) ) ? $_GET['cat'] : get_post_meta($post->ID, 'categoryid', true); 25 | $posts_per_page = ($posts_per_page = get_post_meta($post->ID, 'posts_per_page', true) ) ? $posts_per_page : 10; 26 | $paged = (get_query_var('paged')) ? get_query_var('paged') : 1; 27 | 28 | $wp_query = new WP_query( array( 29 | 'post_type' => $post_type, 30 | 'cat' => $categoryid, 31 | 'posts_per_page' => $posts_per_page, 32 | 'paged' => $paged 33 | ) ); 34 | 35 | while ( have_posts() ) : the_post(); 36 | get_template_part( 'loop', $loop ); 37 | endwhile; 38 | 39 | $wp_query = $temp_query; 40 | $post = $temp_post; 41 | ?> 42 | 43 | 44 | 45 |
46 |
47 | 48 | 49 | -------------------------------------------------------------------------------- /page-archives.php: -------------------------------------------------------------------------------- 1 | 6 | 7 | 8 |
9 |
10 | 11 | 12 | 13 | 14 | 15 |
> 16 | 17 |
18 | 19 | 20 |
    21 |
  • 22 |

    23 |
      24 | 25 |
    26 |
  • 27 |
  • 28 |

    29 |
      30 | 31 |
    32 |
  • 33 |
  • 34 |

    35 |
      36 | 37 |
    38 |
  • 39 |
40 | ', '' ); ?> 41 | 42 |
43 |
44 | 45 | 46 | 47 | 48 | 49 |
50 |
51 | 52 | 53 | -------------------------------------------------------------------------------- /includes/styles/reset.css: -------------------------------------------------------------------------------- 1 | /**************************************************************************************************************** 2 | 3 | Reset default browser CSS. 4 | 5 | Based on work by Eric Meyer: 6 | http://meyerweb.com/eric/tools/css/reset/index.html 7 | 8 | v1.0 | 20080212 9 | 10 | ****************************************************************************************************************/ 11 | 12 | html, body, div, span, applet, object, iframe, 13 | h1, h2, h3, h4, h5, h6, p, blockquote, pre, 14 | a, abbr, acronym, address, big, cite, code, 15 | del, dfn, em, font, img, ins, kbd, q, s, samp, 16 | small, strike, strong, sub, sup, tt, var, 17 | b, u, i, center, 18 | dl, dt, dd, ol, ul, li, 19 | fieldset, form, label, legend, 20 | table, caption, tbody, tfoot, thead, tr, th, td { 21 | margin: 0; 22 | padding: 0; 23 | border: 0; 24 | outline: 0; 25 | font-size: 100%; 26 | vertical-align: baseline; 27 | background: transparent; 28 | } 29 | body { 30 | background:#fff; 31 | line-height: 1; 32 | } 33 | ol, ul { 34 | list-style: none; 35 | } 36 | blockquote, q { 37 | quotes: none; 38 | } 39 | blockquote:before, blockquote:after, 40 | q:before, q:after { 41 | content: ''; 42 | content: none; 43 | } 44 | 45 | /* remember to define focus styles! */ 46 | :focus { 47 | outline: 0; 48 | } 49 | 50 | /* remember to highlight inserts somehow! */ 51 | ins { 52 | text-decoration: none; 53 | } 54 | del { 55 | text-decoration: line-through; 56 | } 57 | 58 | /* tables still need 'cellspacing="0"' in the markup */ 59 | table { 60 | border-collapse: collapse; 61 | border-spacing: 0; 62 | } 63 | 64 | a img { border: none; } 65 | -------------------------------------------------------------------------------- /sidebar-footer.php: -------------------------------------------------------------------------------- 1 | '; 29 | sb_do_sidebar( 'footer_widget_area_1', 'footer_widget_area_1', $column ); 30 | sb_do_sidebar( 'footer_widget_area_2', 'footer_widget_area_2', $column . $column2 ); 31 | sb_do_sidebar( 'footer_widget_area_3', 'footer_widget_area_3', $column . $column3 ); 32 | sb_do_sidebar( 'footer_widget_area_4', 'footer_widget_area_4', $column . $column4 ); 33 | echo '
'; 34 | 35 | do_action( 'sb_after_footer_widgets' ); 36 | 37 | } -------------------------------------------------------------------------------- /includes/extensions/startbox-slideshows/jquery-nivo/css/nivo-slider.css: -------------------------------------------------------------------------------- 1 | /* 2 | * jQuery Nivo Slider v2.7.1 3 | * http://nivo.dev7studios.com 4 | * 5 | * Copyright 2011, Gilbert Pellegrom 6 | * Free to use and abuse under the MIT license. 7 | * http://www.opensource.org/licenses/mit-license.php 8 | * 9 | * March 2010 10 | */ 11 | 12 | 13 | /* The Nivo Slider styles */ 14 | .nivoSlider { 15 | position:relative; 16 | } 17 | .nivoSlider img { 18 | position:absolute; 19 | top:0px; 20 | left:0px; 21 | } 22 | /* If an image is wrapped in a link */ 23 | .nivoSlider a.nivo-imageLink { 24 | position:absolute; 25 | top:0px; 26 | left:0px; 27 | width:100%; 28 | height:100%; 29 | border:0; 30 | padding:0; 31 | margin:0; 32 | z-index:6; 33 | display:none; 34 | } 35 | /* The slices and boxes in the Slider */ 36 | .nivo-slice { 37 | display:block; 38 | position:absolute; 39 | z-index:5; 40 | height:100%; 41 | } 42 | .nivo-box { 43 | display:block; 44 | position:absolute; 45 | z-index:5; 46 | } 47 | /* Caption styles */ 48 | .nivo-caption { 49 | position:absolute; 50 | left:0px; 51 | bottom:0px; 52 | background:#000; 53 | color:#fff; 54 | opacity:0.8; /* Overridden by captionOpacity setting */ 55 | width:100%; 56 | z-index:8; 57 | } 58 | .nivo-caption p { 59 | padding:5px; 60 | margin:0; 61 | } 62 | .nivo-caption a { 63 | display:inline !important; 64 | } 65 | .nivo-html-caption { 66 | display:none; 67 | } 68 | /* Direction nav styles (e.g. Next & Prev) */ 69 | .nivo-directionNav a { 70 | position:absolute; 71 | top:45%; 72 | z-index:9; 73 | cursor:pointer; 74 | } 75 | .nivo-prevNav { 76 | left:0px; 77 | } 78 | .nivo-nextNav { 79 | right:0px; 80 | } 81 | /* Control nav styles (e.g. 1,2,3...) */ 82 | .nivo-controlNav a { 83 | position:relative; 84 | z-index:9; 85 | cursor:pointer; 86 | } 87 | .nivo-controlNav a.active { 88 | font-weight:bold; 89 | } -------------------------------------------------------------------------------- /includes/extensions/startbox-slideshows/jquery-nivo/themes/default/default.css: -------------------------------------------------------------------------------- 1 | /* 2 | Skin Name: Nivo Slider Default Theme 3 | Skin URI: http://nivo.dev7studios.com 4 | Skin Type: flexible 5 | Description: The default skin for the Nivo Slider. 6 | Version: 1.0 7 | Author: Gilbert Pellegrom 8 | Author URI: http://dev7studios.com 9 | */ 10 | 11 | .theme-default .nivoSlider { 12 | position:relative; 13 | background:#fff url(loading.gif) no-repeat 50% 50%; 14 | margin-bottom:50px; 15 | -webkit-box-shadow: 0px 1px 5px 0px #4a4a4a; 16 | -moz-box-shadow: 0px 1px 5px 0px #4a4a4a; 17 | box-shadow: 0px 1px 5px 0px #4a4a4a; 18 | } 19 | .theme-default .nivoSlider img { 20 | position:absolute; 21 | top:0px; 22 | left:0px; 23 | display:none; 24 | } 25 | .theme-default .nivoSlider a { 26 | border:0; 27 | display:block; 28 | } 29 | 30 | .theme-default .nivo-controlNav { 31 | position:absolute; 32 | left:50%; 33 | bottom:-42px; 34 | margin-left:-40px; /* Tweak this to center bullets */ 35 | } 36 | .theme-default .nivo-controlNav a { 37 | display:block; 38 | width:22px; 39 | height:22px; 40 | background:url(bullets.png) no-repeat; 41 | text-indent:-9999px; 42 | border:0; 43 | margin-right:3px; 44 | float:left; 45 | } 46 | .theme-default .nivo-controlNav a.active { 47 | background-position:0 -22px; 48 | } 49 | 50 | .theme-default .nivo-directionNav a { 51 | display:block; 52 | width:30px; 53 | height:30px; 54 | background:url(arrows.png) no-repeat; 55 | text-indent:-9999px; 56 | border:0; 57 | } 58 | .theme-default a.nivo-nextNav { 59 | background-position:-30px 0; 60 | right:15px; 61 | } 62 | .theme-default a.nivo-prevNav { 63 | left:15px; 64 | } 65 | 66 | .theme-default .nivo-caption { 67 | font-family: Helvetica, Arial, sans-serif; 68 | } 69 | .theme-default .nivo-caption a { 70 | color:#fff; 71 | border-bottom:1px dotted #fff; 72 | } 73 | .theme-default .nivo-caption a:hover { 74 | color:#fff; 75 | } -------------------------------------------------------------------------------- /README.txt: -------------------------------------------------------------------------------- 1 | About StartBox 2 | ============ 3 | An incredibly powerful theme framework for WordPress. Official website: http://wpstartbox.com. 4 | 5 | Installation 6 | ------------ 7 | Important: You can download a .zip archive using the Repository Download button at https://github.com/WebDevStudios/StartBox/, but make sure you rename the resulting folder to "startbox" (it will default to "StartBox-master"). If you forget to rename the folder, weird things may happen. 8 | 9 | StartBox can be installed like any other WordPress theme, either via the built-in Theme Uploader, or by manually uploading to your server it via (s)FTP. 10 | 11 | Usage 12 | ------------ 13 | We highly recommend that you use a Child Theme instead of running StartBox directly. We've created a pretty simple StartBox Child Them (https://github.com/WebDevStudios/StartBox-Child) for you to modify and destroy as you see fit. 14 | 15 | If you're looking for a more high-caliber design, we recommend one of these excellent themes: http://wpstartbox.com/themes/. 16 | 17 | Documentation 18 | ------------ 19 | Full documentation can be found at http://docs.wpstartbox.com/ 20 | 21 | Bugs & Feature Requests 22 | ------------ 23 | Please open an Issue at https://github.com/WebDevStudios/StartBox/issues to report any bugs or feature requests. 24 | 25 | Support 26 | ------------ 27 | Official support forums can be found at http://wpstartbox.com/support/ 28 | 29 | Contributing 30 | ------------ 31 | Want to contribute? That's great! Patches are always welcome. Open an Issue and make a Pull Request. 32 | 33 | 1. Open an Issue (or claim an open Issue): https://github.com/WebDevStudios/StartBox/issues 34 | 2. Fork StartBox: https://github.com/WebDevStudios/StartBox/fork_select 35 | 3. Create a branch (`git checkout -b MyBox`). 36 | 4. Commit your changes (`git commit -am "Added the best feature ever!"`). 37 | 5. Push to the branch (`git push origin MyBox`). 38 | 6. Open a Pull Request: https://github.com/WebDevStudios/StartBox/pulls. 39 | 7. Enjoy a refreshing beverage and wait. 40 | -------------------------------------------------------------------------------- /includes/styles/colorbox.css: -------------------------------------------------------------------------------- 1 | /**************************************************************************************************************** 2 | 3 | Default styles for JQuery Colorobox 4 | 5 | ****************************************************************************************************************/ 6 | #colorbox, #cboxOverlay, #cboxWrapper{position:absolute; top:0; left:0; z-index:9999; overflow:hidden;} 7 | #cboxOverlay{position:fixed; width:100%; height:100%;} 8 | #cboxMiddleLeft, #cboxBottomLeft{clear:left;} 9 | #cboxContent{position:relative;} 10 | #cboxLoadedContent{overflow:auto;} 11 | #cboxLoadedContent iframe{display:block; width:100%; height:100%; border:0;} 12 | #cboxTitle{margin:0;} 13 | #cboxLoadingOverlay, #cboxLoadingGraphic{position:absolute; top:0; left:0; width:100%;} 14 | #cboxPrevious, #cboxNext, #cboxClose, #cboxSlideshow{cursor:pointer;} 15 | #cboxOverlay{background:#000;} 16 | #cboxContent{margin-top:20px;} 17 | #cboxLoadedContent{background:#000; padding:5px;} 18 | #cboxTitle{position:absolute; top:-20px; left:0; color:#ccc;} 19 | #cboxCurrent{position:absolute; top:-20px; right:0px; color:#ccc;} 20 | #cboxSlideshow{position:absolute; top:-20px; right:90px; color:#fff;} 21 | #cboxPrevious{position:absolute; top:50%; left:5px; margin-top:-32px; background:url('../../images/colorbox-controls.png') top left no-repeat; width:28px; height:65px; text-indent:-9999px;} 22 | #cboxPrevious.hover{background-position:bottom left;} 23 | #cboxNext{position:absolute; top:50%; right:5px; margin-top:-32px; background:url('../../images/colorbox-controls.png') top right no-repeat; width:28px; height:65px; text-indent:-9999px;} 24 | #cboxNext.hover{background-position:bottom right;} 25 | #cboxLoadingOverlay{background:#000;} 26 | #cboxLoadingGraphic{background:url('../../images/colorbox-loading.gif') center center no-repeat;} 27 | #cboxClose{position:absolute; top:5px; right:5px; display:block; background:url('../../images/colorbox-controls.png') top center no-repeat; width:38px; height:19px; text-indent:-9999px;} 28 | #cboxClose.hover{background-position:bottom center;} -------------------------------------------------------------------------------- /includes/admin/seo.php: -------------------------------------------------------------------------------- 1 | name = __('Basic SEO Settings', 'startbox'); 6 | $this->slug = 'sb_settings_seo'; 7 | $this->location = 'secondary'; 8 | $this->priority = 'core'; 9 | $this->options = array( 10 | 'seo_intro' => array( 11 | 'type' => 'intro', 12 | 'label' => '', 13 | 'desc' => __( 'These are only rudimentary options that will disappear as soon as you activate an SEO plugin. I highly recommend you use the WordPress SEO Plugin instead of these.', 'startbox') 14 | ), 15 | 'seo_description' => array( 16 | 'type' => 'textarea', 17 | 'label' => __( 'Site Description', 'startbox' ), 18 | 'default' => get_bloginfo('description'), 19 | 'desc' => __( 'Try to keep this brief.', 'startbox' ) 20 | ), 21 | 'seo_keywords' => array( 22 | 'type' => 'text', 23 | 'label' => __( 'Site-wide Keywords', 'startbox' ), 24 | 'size' => 'medium', 25 | 'desc' => __( 'Comma separated (e.g. WordPress, themes, etc)', 'startbox' ) 26 | ) 27 | ); 28 | parent::__construct(); 29 | } 30 | 31 | function sb_seo_keywords() { 32 | if ( $keywords = sb_get_option( 'seo_keywords' ) ) { echo '' . "\n"; } 33 | } 34 | 35 | function sb_seo_description( $content ) { 36 | if ( $description = sb_get_option( 'seo_description' ) ) { echo ''; } 37 | } 38 | 39 | function hooks() { 40 | add_action( 'wp_head', array( $this, 'sb_seo_description' )); 41 | add_action( 'wp_head', array( $this, 'sb_seo_keywords' )); 42 | } 43 | } 44 | 45 | // Only include this metabox if no other popular SEO plugins are active 46 | if ( !defined('WPSEO_FRONT_URL') && !class_exists('All_in_One_SEO_Pack') && !class_exists('Platinum_SEO_Pack') && !class_exists('HeadSpace_Plugin') ) 47 | sb_register_settings('sb_seo_settings'); 48 | 49 | ?> -------------------------------------------------------------------------------- /includes/scripts/colorpicker/js/layout.js: -------------------------------------------------------------------------------- 1 | (function($){ 2 | var initLayout = function() { 3 | var hash = window.location.hash.replace('#', ''); 4 | var currentTab = $('ul.navigationTabs a') 5 | .bind('click', showTab) 6 | .filter('a[rel=' + hash + ']'); 7 | if (currentTab.size() == 0) { 8 | currentTab = $('ul.navigationTabs a:first'); 9 | } 10 | showTab.apply(currentTab.get(0)); 11 | $('#colorpickerHolder').ColorPicker({flat: true}); 12 | $('#colorpickerHolder2').ColorPicker({ 13 | flat: true, 14 | color: '#00ff00', 15 | onSubmit: function(hsb, hex, rgb) { 16 | $('#colorSelector2 div').css('backgroundColor', '#' + hex); 17 | } 18 | }); 19 | $('#colorpickerHolder2>div').css('position', 'absolute'); 20 | var widt = false; 21 | $('#colorSelector2').bind('click', function() { 22 | $('#colorpickerHolder2').stop().animate({height: widt ? 0 : 173}, 500); 23 | widt = !widt; 24 | }); 25 | $('#colorpickerField1, #colorpickerField2, #colorpickerField3').ColorPicker({ 26 | onSubmit: function(hsb, hex, rgb, el) { 27 | $(el).val(hex); 28 | $(el).ColorPickerHide(); 29 | }, 30 | onBeforeShow: function () { 31 | $(this).ColorPickerSetColor(this.value); 32 | } 33 | }) 34 | .bind('keyup', function(){ 35 | $(this).ColorPickerSetColor(this.value); 36 | }); 37 | $('#colorSelector').ColorPicker({ 38 | color: '#0000ff', 39 | onShow: function (colpkr) { 40 | $(colpkr).fadeIn(500); 41 | return false; 42 | }, 43 | onHide: function (colpkr) { 44 | $(colpkr).fadeOut(500); 45 | return false; 46 | }, 47 | onChange: function (hsb, hex, rgb) { 48 | $('#colorSelector div').css('backgroundColor', '#' + hex); 49 | } 50 | }); 51 | }; 52 | 53 | var showTab = function(e) { 54 | var tabIndex = $('ul.navigationTabs a') 55 | .removeClass('active') 56 | .index(this); 57 | $(this) 58 | .addClass('active') 59 | .blur(); 60 | $('div.tab') 61 | .hide() 62 | .eq(tabIndex) 63 | .show(); 64 | }; 65 | 66 | EYE.register(initLayout, 'init'); 67 | })(jQuery) -------------------------------------------------------------------------------- /loop.php: -------------------------------------------------------------------------------- 1 | 2 | 3 |
> 4 |
5 |

6 | 9 |
10 | 11 | 12 | 13 |
14 | 15 | 16 | 17 | 18 | ' . do_shortcode( apply_filters( "sb_read_more", sprintf( __("Continue Reading: %s →", "startbox"), get_the_title() ) ) ) . ''; 26 | } 27 | ?> 28 | 29 | '
' . __( 'Pages:', 'startbox' ), 'after' => '
' ) ); ?> 30 | 31 |
32 | 33 | 34 | 35 | 38 |
39 | 40 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | About StartBox 2 | ============ 3 | An incredibly powerful theme framework for WordPress. Official website: [WPStartBox.com](http://wpstartbox.com). 4 | 5 | WebDevStudios. WordPress for big brands. 6 | 7 | Download 8 | ------------ 9 | Download here: [startbox.zip](http://wpstartbox.com/startbox.zip) 10 | 11 | Installation 12 | ------------ 13 | StartBox can be installed like any other WordPress theme, either via the built-in Theme Uploader, or by manually uploading to your server it via (s)FTP. 14 | 15 | *Important:* If you use the "Repository Download" button, github will generate a file named "StartBox-master"). It is important that you rename the unzipped theme directory to "startbox", otherwise your child theme won't recognize that StartBox has been installed. 16 | 17 | Usage 18 | ------------ 19 | We highly recommend that you use a Child Theme instead of running StartBox directly. We've created a pretty simple [StartBox Child Theme](https://github.com/WebDevStudios/StartBox-Child) for you to modify and destroy as you see fit. 20 | 21 | If you're looking for a more high-caliber design, we recommend one of these [excellent themes](http://wpstartbox.com/themes/). 22 | 23 | Documentation 24 | ------------ 25 | Full documentation can be found at http://docs.wpstartbox.com/ 26 | 27 | Bugs & Feature Requests 28 | ------------ 29 | Please open an [Issue](https://github.com/WebDevStudios/StartBox/issues) to report any bugs or feature requests. 30 | 31 | Support 32 | ------------ 33 | Official support forums can be found at http://wpstartbox.com/support/ 34 | 35 | Contributing 36 | ------------ 37 | Want to contribute? That's great! Patches are always welcome. Open an Issue and make a Pull Request. 38 | 39 | 1. [Open an Issue](https://github.com/WebDevStudios/StartBox/issues) (or claim an open Issue). 40 | 2. [Fork StartBox.](https://github.com/WebDevStudios/StartBox/fork_select) 41 | 3. Create a branch (`git checkout -b MyBox`). 42 | 4. Commit your changes (`git commit -am "Added the best feature ever!"`). 43 | 5. Push to the branch (`git push origin MyBox`). 44 | 6. Open a [Pull Request](https://github.com/WebDevStudios/StartBox/pulls). 45 | 7. Enjoy a refreshing beverage and wait. 46 | -------------------------------------------------------------------------------- /includes/admin/layout.php: -------------------------------------------------------------------------------- 1 | name = __( 'Layout Settings', 'startbox' ); 9 | $this->slug = 'sb_layout_settings'; 10 | $this->description = __( 'Take full control over the layout throughout your site.', 'startbox' ); 11 | $this->location = 'primary'; 12 | $this->priority = 'high'; 13 | $this->options = array( 14 | 'home_layout' => array( 15 | 'type' => 'layout', 16 | 'label' => __( 'Homepage Layout:', 'startbox' ), 17 | 'desc' => __( 'Select content and sidebar alignment. Choose from any of the available layouts.', 'startbox' ), 18 | 'options' => sb_supported_layouts('sb-layouts-home'), 19 | 'default' => 'two-col-right', 20 | 'help' => __( 'Select which page layout you would like to use for the homepage.', 'startbox' ) 21 | ), 22 | 'layout' => array( 23 | 'type' => 'layout', 24 | 'label' => __( 'Interior Page Layout:', 'startbox' ), 25 | 'desc' => __( 'Select content and sidebar alignment. This can be changed on each page individually.', 'startbox' ), 26 | 'options' => sb_supported_layouts('sb-layouts'), 27 | 'default' => 'two-col-right', 28 | 'help' => __( 'Select the default layout for your interior pages.', 'startbox' ) 29 | ), 30 | 'post_layout' => array( 31 | 'type' => 'layout', 32 | 'label' => __( 'Single Post Layout:', 'startbox' ), 33 | 'desc' => __( 'Select content and sidebar alignment. This can be changed on each post individually.', 'startbox' ), 34 | 'options' => sb_supported_layouts('sb-layouts'), 35 | 'default' => 'two-col-right', 36 | 'help' => __( 'Select the default layout for your single post views.', 'startbox' ) 37 | ) 38 | ); 39 | parent::__construct(); 40 | } 41 | 42 | // Apply selected layout stylesheet 43 | function layout() { 44 | $options = get_option( THEME_OPTIONS ); 45 | if ( is_front_page() ) 46 | return $options['home_layout']; 47 | elseif ( is_single() ) 48 | return $options['post_layout']; 49 | else 50 | return $options['layout']; 51 | } 52 | 53 | function hooks() { 54 | add_filter( 'sb_get_post_layout_default', array( $this, 'layout' ) ); 55 | 56 | } 57 | 58 | } 59 | 60 | sb_register_settings('sb_layout_settings'); -------------------------------------------------------------------------------- /comments.php: -------------------------------------------------------------------------------- 1 | 5 |
6 | 8 |
9 |
10 | 11 | 12 | 13 | 14 | 19 | 20 |
21 |

1 ? __('%d Comments', 'startbox') : __('One Comment', 'startbox'), $comment_count) ?> (Add Yours)

22 | 23 |
    24 | 25 |
26 | 27 | 1 ) : // Are there comments to navigate through? ?> 28 |
29 | 30 |
31 | 32 | 33 |
34 |
35 | 36 | 37 | 38 |
39 |

1 ? __('%d Trackbacks', 'startbox') : __('One Trackback', 'startbox'), $ping_count) ?>

40 | 41 |
    42 | 43 |
44 |
45 | 46 | 47 | 48 | 49 | 50 | 51 |
-------------------------------------------------------------------------------- /includes/scripts/jquery.smooth-scroll.min.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * jQuery Smooth Scroll Plugin v1.4.1 3 | * 4 | * Date: Tue Nov 15 14:24:14 2011 EST 5 | * Requires: jQuery v1.3+ 6 | * 7 | * Copyright 2010, Karl Swedberg 8 | * Dual licensed under the MIT and GPL licenses (just like jQuery): 9 | * http://www.opensource.org/licenses/mit-license.php 10 | * http://www.gnu.org/licenses/gpl.html 11 | * 12 | * 13 | * 14 | * 15 | */ 16 | (function(b){function l(c){return c.replace(/^\//,"").replace(/(index|default).[a-zA-Z]{3,4}$/,"").replace(/\/$/,"")}function m(c){return c.replace(/(:|\.)/g,"\\$1")}var n=l(location.pathname),o=function(c){var e=[],a=false,d=c.dir&&c.dir=="left"?"scrollLeft":"scrollTop";this.each(function(){if(!(this==document||this==window)){var g=b(this);if(g[d]()>0)e.push(this);else{g[d](1);a=g[d]()>0;g[d](0);a&&e.push(this)}}});if(c.el==="first"&&e.length)e=[e.shift()];return e};b.fn.extend({scrollable:function(c){return this.pushStack(o.call(this, 17 | {dir:c}))},firstScrollable:function(c){return this.pushStack(o.call(this,{el:"first",dir:c}))},smoothScroll:function(c){c=c||{};var e=b.extend({},b.fn.smoothScroll.defaults,c);this.die("click.smoothscroll").live("click.smoothscroll",function(a){var d={},g=b(this),h=location.hostname===this.hostname||!this.hostname,f=e.scrollTarget||(l(this.pathname)||n)===n,j=m(this.hash),i=true;if(!e.scrollTarget&&(!h||!f||!j))i=false;else{h=e.exclude;f=0;for(var k=h.length;i&&fget_var( $wpdb->prepare( "SELECT meta_key FROM $wpdb->postmeta WHERE meta_key LIKE '_wp_page_template' AND meta_value = %s", $pagetemplate ) ) ) { 42 | return TRUE; 43 | } else { 44 | return FALSE; 45 | } 46 | } 47 | 48 | /** 49 | * Tests to see if current page has a parent. 50 | * 51 | * @since 2.4.9 52 | * 53 | * @param integer $page_id the page ID to test 54 | * @param integer $parent_id (optional) check if page is child of specific parent 55 | */ 56 | function sb_is_child_page( $parent_id = null, $page_id = null ) { 57 | global $post; 58 | $pid = ($page_id) ? $page_id : $post->ID; 59 | 60 | if ( is_page($pid) && $post->post_parent ) { // Verify we're working with a page and it has a parent 61 | if ( isset( $parent_id ) && !in_array( $parent_id, get_post_ancestors($pid) ) ) { return false; }// If the specified parent_id is not an ancestor of the current page, return false 62 | else { return true; } // Otherwise, it has a parent and the specified parent id match. Return true. 63 | } else { 64 | return false; // if it's not a page or has no parent, return false. 65 | } 66 | 67 | } 68 | 69 | /** 70 | * Utility: Verify a given post type 71 | * 72 | * @since 2.5 73 | * @param string $type the post type to verify against 74 | */ 75 | function sb_verify_post_type( $type ) { 76 | global $post_type; 77 | 78 | if ( ( isset( $_GET['post_type'] ) && $_GET['post_type'] == $type ) || ( isset( $post_type ) && $post_type == $type ) ) 79 | return true; 80 | else 81 | return false; 82 | } -------------------------------------------------------------------------------- /includes/styles/editor.css: -------------------------------------------------------------------------------- 1 | /**************************************************************************************************************** 2 | 3 | Default styles for the WYSIWYG editor 4 | 5 | Adding style-editor.css to a child theme's root will over-write these styles. 6 | 7 | ****************************************************************************************************************/ 8 | 9 | html .mceContentBody { 10 | max-width:640px; 11 | background:#fff; 12 | color:#333; 13 | font:100% Arial,sans-serif; 14 | line-height:1.5em; 15 | } 16 | * { 17 | font-family: Arial,sans-serif; 18 | color: #333; 19 | line-height: 1.5em; 20 | } 21 | a, a:visited { 22 | text-decoration:none; 23 | color:#999; 24 | } 25 | a:hover, a:active { 26 | color:#333; 27 | } 28 | h1,h2,h3,h4,h5,h6 { 29 | color:#111; 30 | font-weight:bold; 31 | font-family:Arial,sans-serif; 32 | line-height:2em; 33 | } 34 | h1 { font-size:2em; } 35 | h2 { font-size:1.8em; } 36 | h3 { font-size:1.4em; } 37 | h4 { font-size:1.2em; } 38 | h5 { font-size:1em; } 39 | h6 { font-size:.8em; } 40 | hr { 41 | margin:1.4em auto; 42 | display:block; 43 | clear:both; 44 | border-collapse:collapse; 45 | border:0; 46 | border-bottom:1px solid #aaa; 47 | } 48 | p { margin-bottom:18px; } 49 | blockquote { font-style:italic; } 50 | cite { border:0; } 51 | sup, sub { font-size:.6em; } 52 | pre { 53 | background:#f9f9f9; 54 | padding:1em; 55 | border:1px solid #dadada; 56 | } 57 | del { 58 | color:inherit; 59 | } 60 | ins { 61 | background:#ff8; 62 | color:inherit; 63 | text-decoration:none; 64 | border:0; 65 | padding:0 4px; 66 | } 67 | .wp-caption { 68 | background:#f0f0f0; 69 | color:#555; 70 | padding:10px; 71 | border:1px solid #ddd; 72 | } 73 | .wp-caption img { margin:0; padding:0; } 74 | 75 | strong { color:#111; } 76 | table { 77 | border:1px solid #ddd; 78 | width:100%; 79 | } 80 | table th { 81 | padding:5px 20px; 82 | text-align:left; 83 | font-weight:bold; 84 | color:#111; 85 | } 86 | table td { 87 | border-top:1px solid #ddd; 88 | padding:5px 20px; 89 | } 90 | .al, .alignleft, .left { 91 | position:relative; 92 | float:left!important; 93 | margin-right:10px; 94 | } 95 | .ar, .alignright, .right { 96 | position:relative; 97 | float:right!important; 98 | margin-left:10px; 99 | } 100 | .ma {margin:auto;} 101 | .cb {clear:both;} 102 | img, p img { 103 | float:none; 104 | margin:auto; 105 | border:0; 106 | } 107 | .more-link { 108 | display:block; 109 | position:relative; 110 | float:left; 111 | clear:both; 112 | } 113 | .submit-button { 114 | background:#333; 115 | color:#fff; 116 | border:0; 117 | width:auto; 118 | font-weight:bold; 119 | text-transform:uppercase; 120 | } 121 | .submit-button:hover { 122 | background:#555; 123 | } 124 | .hideme { 125 | display:none; 126 | } 127 | dl, 128 | ul, 129 | ol { 130 | margin:1em 2em; 131 | } 132 | dl dl, 133 | ul ul, 134 | ol ol { 135 | margin:0em 2em; 136 | } 137 | ul { 138 | list-style:disc; 139 | } 140 | ol { 141 | list-style-type:lower-roman; 142 | } -------------------------------------------------------------------------------- /attachment.php: -------------------------------------------------------------------------------- 1 | 2 | 3 |
4 |
5 | 6 | 7 | 8 | 9 | 10 | 11 |
> 12 |

13 | 30 |
31 |
32 | 33 | $post->post_parent, 'post_status' => 'inherit', 'post_type' => 'attachment', 'post_mime_type' => 'image', 'order' => 'ASC', 'orderby' => 'menu_order ID' ) ) ); 36 | foreach ( $attachments as $k => $attachment ) { 37 | if ( $attachment->ID == $post->ID ) 38 | break; 39 | } 40 | $k++; 41 | if ( isset( $attachments[ $k ] ) ) { 42 | $next_attachment_url = get_attachment_link( $attachments[ $k ]->ID ); 43 | } else { 44 | $next_attachment_url = get_permalink( $post->post_parent ); 45 | } 46 | ?> 47 | 48 |

49 | 50 | ID, array( $attachment_size, 9999 ) ); // filterable image width with, essentially, no limit for image height. 53 | ?> 54 | 55 |

56 | 57 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 |
69 | 70 |
post_excerpt ) ) the_excerpt(); ?>
71 | 72 | →', 'startbox' ) ); ?> 73 | '' ) ); ?> 74 | 75 |
76 | 77 |
78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 |
86 |
87 | 88 | 89 | -------------------------------------------------------------------------------- /page-links.php: -------------------------------------------------------------------------------- 1 | 6 | 7 | 8 |
9 |
10 | 11 | 12 | ID, 'links_toc', true) ) ? get_post_meta($post->ID, 'links_toc', true) : false; 14 | $rtt = ( $toc ) ? '
  • Return to Top

  • ' : '' ; 15 | $category = get_post_meta($post->ID, 'links_categoryid', true) 16 | ?> 17 | 18 | 19 |
    > 20 | 21 |
    22 | 23 | 24 | 55 | 56 | 86 | 87 | ',''); ?> 88 | 89 |
    90 |
    91 | 92 | 93 | 94 | 95 | 96 |
    97 |
    98 | 99 | 100 | -------------------------------------------------------------------------------- /includes/scripts/colorpicker/css/colorpicker.css: -------------------------------------------------------------------------------- 1 | .colorpicker { 2 | width: 356px; 3 | height: 176px; 4 | overflow: hidden; 5 | position: absolute; 6 | background: url(../images/custom_background.png); 7 | font-family: Arial, Helvetica, sans-serif; 8 | display: none; 9 | } 10 | .colorpicker_color { 11 | width: 150px; 12 | height: 150px; 13 | left: 14px; 14 | top: 13px; 15 | position: absolute; 16 | background: #f00; 17 | overflow: hidden; 18 | cursor: crosshair; 19 | } 20 | .colorpicker_color div { 21 | position: absolute; 22 | top: 0; 23 | left: 0; 24 | width: 150px; 25 | height: 150px; 26 | background: url(../images/colorpicker_overlay.png); 27 | } 28 | .colorpicker_color div div { 29 | position: absolute; 30 | top: 0; 31 | left: 0; 32 | width: 11px; 33 | height: 11px; 34 | overflow: hidden; 35 | background: url(../images/colorpicker_select.gif); 36 | margin: -5px 0 0 -5px; 37 | } 38 | .colorpicker_hue { 39 | position: absolute; 40 | top: 13px; 41 | left: 171px; 42 | width: 35px; 43 | height: 150px; 44 | cursor: n-resize; 45 | } 46 | .colorpicker_hue div { 47 | position: absolute; 48 | width: 35px; 49 | height: 9px; 50 | overflow: hidden; 51 | background: url(../images/custom_indic.gif) left top; 52 | margin: -4px 0 0 0; 53 | left: 0px; 54 | } 55 | .colorpicker_new_color { 56 | position: absolute; 57 | width: 60px; 58 | height: 30px; 59 | left: 213px; 60 | top: 13px; 61 | background: #f00; 62 | } 63 | .colorpicker_current_color { 64 | position: absolute; 65 | width: 60px; 66 | height: 30px; 67 | left: 283px; 68 | top: 13px; 69 | background: #f00; 70 | } 71 | .colorpicker input { 72 | background-color: transparent; 73 | border: 1px solid transparent; 74 | position: absolute; 75 | font-size: 10px; 76 | font-family: Arial, Helvetica, sans-serif; 77 | color: #333333; 78 | top: 4px; 79 | right: 11px; 80 | text-align: right; 81 | margin: 0; 82 | padding: 0; 83 | height: 11px; 84 | } 85 | .colorpicker_hex { 86 | position: absolute; 87 | width: 72px; 88 | height: 22px; 89 | background: url(../images/custom_hex.png) top; 90 | left: 212px; 91 | top: 142px; 92 | } 93 | .colorpicker_hex input { 94 | right: 6px; 95 | } 96 | .colorpicker_field { 97 | height: 22px; 98 | width: 62px; 99 | background-position: top; 100 | position: absolute; 101 | } 102 | .colorpicker_field span { 103 | position: absolute; 104 | width: 12px; 105 | height: 22px; 106 | overflow: hidden; 107 | top: 0; 108 | right: 0; 109 | cursor: n-resize; 110 | } 111 | .colorpicker_rgb_r { 112 | background-image: url(../images/custom_rgb_r.png); 113 | top: 52px; 114 | left: 212px; 115 | } 116 | .colorpicker_rgb_g { 117 | background-image: url(../images/custom_rgb_g.png); 118 | top: 82px; 119 | left: 212px; 120 | } 121 | .colorpicker_rgb_b { 122 | background-image: url(../images/custom_rgb_b.png); 123 | top: 112px; 124 | left: 212px; 125 | } 126 | .colorpicker_hsb_h { 127 | background-image: url(../images/custom_hsb_h.png); 128 | top: 52px; 129 | left: 282px; 130 | } 131 | .colorpicker_hsb_s { 132 | background-image: url(../images/custom_hsb_s.png); 133 | top: 82px; 134 | left: 282px; 135 | } 136 | .colorpicker_hsb_b { 137 | background-image: url(../images/custom_hsb_b.png); 138 | top: 112px; 139 | left: 282px; 140 | } 141 | .colorpicker_submit { 142 | position: absolute; 143 | width: 22px; 144 | height: 22px; 145 | background: url(../images/custom_submit.png) top; 146 | left: 322px; 147 | top: 142px; 148 | overflow: hidden; 149 | } 150 | .colorpicker_focus { 151 | background-position: center; 152 | } 153 | .colorpicker_hex.colorpicker_focus { 154 | background-position: bottom; 155 | } 156 | .colorpicker_submit.colorpicker_focus { 157 | background-position: bottom; 158 | } 159 | .colorpicker_slider { 160 | background-position: bottom; 161 | } 162 | -------------------------------------------------------------------------------- /includes/admin/header.php: -------------------------------------------------------------------------------- 1 | name = __( 'Branding', 'startbox'); 9 | $this->slug = 'sb_header_settings'; 10 | $this->description = __( 'Control various aspects of the header area of your site, including logo, site description, favicon and navigation.', 'startbox' ); 11 | $this->location = 'primary'; 12 | $this->priority = 'high'; 13 | $this->options = array( 14 | 'logo' => array( 15 | 'type' => 'logo', 16 | 'label' => 'Logo Uploader', 17 | 'desc' => __( 'Upload an image or specify some text to use for your logo.', 'startbox' ), 18 | 'help' => __( 'Upload or select an image to use for the site logo. If you specify any text the site will display that instead of any selected image.', 'startbox' ) 19 | ), 20 | 'div1' => array( 'type' => 'divider' ), 21 | 'tagline' => array( 22 | 'type' => 'checkbox', 23 | 'label' => __( 'Display Site Tagline', 'startbox' ), 24 | 'desc' => sprintf( __( 'You can set your site Tagline in %1$sSettings > General%2$s.', 'startbox' ), '', '' ), 25 | 'help' => __( 'Show your site tagline in the header.', 'startbox' ) 26 | ), 27 | 'div2' => array( 'type' => 'divider' ), 28 | 'favicon' => array( 29 | 'type' => 'upload', 30 | 'label' => __( 'Favicon', 'startbox' ), 31 | 'desc' => sprintf( __( 'The %s is a small logo/icon that displays alongside your URL or in the page tab of most browsers.', 'startbox' ), 'favicon' ), 32 | 'default' => '/wp-content/themes/startbox/images/favicon.png', 33 | 'help' => __( 'Specify a custom favicon (small 16px image) for use in the navigation bar or browser tab for your site', 'startbox' ) 34 | ) 35 | ); 36 | parent::__construct(); 37 | } 38 | 39 | function logo() { 40 | $logo_container = apply_filters( 'sb_logo_container', (is_front_page()) ? 'h1' : 'h2' ); 41 | 42 | if ( 'disabled' != sb_get_option( 'logo-select') ) { 43 | echo ''; 51 | } 52 | } 53 | 54 | function favicon() { 55 | if ( sb_get_option( 'favicon' ) ) { 56 | echo ''."\n"; 57 | } else { 58 | echo ''."\n"; 59 | } 60 | } 61 | 62 | function tagline() { 63 | if ( sb_get_option( 'tagline' ) ) { 64 | $tag_container = apply_filters( 'sb_description_container', 'div'); 65 | echo '<' . $tag_container . ' id="blog-description">' . esc_html( get_bloginfo( 'description' ) ) . ''; 66 | } 67 | } 68 | 69 | // Deprecated Functions 70 | function nav_after() { _deprecated_function( __FUNCTION__, '2.4.9', 'primary_nav' ); } 71 | function nav_before() { _deprecated_function( __FUNCTION__, '2.4.9', 'secondary_nav' ); } 72 | 73 | function hooks() { 74 | add_action( 'sb_header', array( $this, 'logo') ); 75 | add_action( 'sb_header', array( $this, 'tagline') ); 76 | add_action( 'wp_head', array( $this, 'favicon') ); 77 | } 78 | 79 | } 80 | 81 | sb_register_settings('sb_header_settings'); -------------------------------------------------------------------------------- /includes/admin/navigation.php: -------------------------------------------------------------------------------- 1 | name = __( 'Navigation Settings', 'startbox'); 9 | $this->slug = 'sb_navigation_settings'; 10 | $this->description = __( 'These options allow you to take full control of your site\'s navigation. Select which menu to display, where to display it, how deep the drop-down menus should go, whether to include a "Home" link at the beginning, and what (if any) extras to include (e.g. social links, site-wide search).', 'startbox' ); 11 | $this->location = 'primary'; 12 | $this->priority = 'high'; 13 | $this->options = array( 14 | 'primary_nav' => array( 15 | 'type' => 'navigation', 16 | 'label' => __( 'Primary Navigation', 'startbox'), 17 | 'default' => 'pages', 18 | 'align' => 'left', 19 | 'home_default' => true, 20 | 'position_default' => 'sb_after_header', 21 | 'extras' => true, 22 | 'help' => __( 'This is the main menu for your site.', 'startbox' ) 23 | ), 24 | 'div' => array( 'type' => 'divider' ), 25 | 'secondary_nav' => array( 26 | 'type' => 'navigation', 27 | 'label' => __( 'Secondary Navigation', 'startbox'), 28 | 'default' => 'none', 29 | 'home_default' => false, 30 | 'position_default' => 'sb_before', 31 | 'extras' => true, 32 | 'help' => __( 'This menu should only be used if you want two menus at the top of your site.', 'startbox' ) 33 | ), 34 | 'div2' => array( 'type' => 'divider' ), 35 | 'footer_nav' => array( 36 | 'type' => 'navigation', 37 | 'label' => __( 'Footer Navigation', 'startbox' ), 38 | 'default' => 'disabled', 39 | 'home_default' => false, 40 | 'position' => apply_filters( 'sb_footer_nav_position', array( 41 | 'sb_between_content_and_footer' => __( 'Before Footer Wrap', 'startbox' ), 42 | 'sb_before_footer' => __( 'Before Footer Widgets', 'startbox' ), 43 | 'sb_footer' => __( 'After Footer Widgets', 'startbox' ), 44 | 'sb_footer_left' => __( 'Footer Left (above copyright)', 'startbox' ), 45 | 'sb_footer_right' => __( 'Footer Right (above admin links)', 'startbox' ), 46 | 'sb_after_footer' => __( 'Bottom of Page', 'startbox' ), 47 | )), 48 | 'depth_default' => 1, 49 | 'extras' => false, 50 | 'help' => __( 'Use this if you want a menu in the footer of your site.', 'startbox' ) 51 | ), 52 | ); 53 | 54 | parent::__construct(); 55 | } 56 | 57 | function primary_nav() { sb_nav_menu( array( 'menu_id' => 'primary_nav', 'type' => sb_get_option( 'primary_nav' ), 'show_home' => sb_get_option( 'primary_nav-enable-home' ), 'extras' => sb_get_option( 'primary_nav-extras' ), 'class' => 'nav nav-primary nav-' . sb_get_option( 'primary_nav-position' ), 'depth' => sb_get_option( 'primary_nav-depth' ), 'echo' => true ) ); } 58 | function secondary_nav() { sb_nav_menu( array( 'menu_id' => 'secondary_nav', 'type' => sb_get_option( 'secondary_nav' ), 'show_home' => sb_get_option( 'secondary_nav-enable-home' ), 'extras' => sb_get_option( 'secondary_nav-extras' ), 'class' => 'nav nav-secondary nav-' . sb_get_option( 'secondary_nav-position' ), 'depth' => sb_get_option( 'secondary_nav-depth' ), 'echo' => true ) ); } 59 | function footer_nav() { sb_nav_menu( array( 'type' => sb_get_option( 'footer_nav' ), 'class' => 'nav nav-footer nav-' . sb_get_option( 'footer_nav-position' ), 'show_home' => sb_get_option( 'footer_nav-enable-home' ), 'depth' => sb_get_option( 'footer_nav-depth' ), 'echo' => true ) ); } 60 | 61 | function hooks() { 62 | $primary_nav = sb_get_option( 'primary_nav-position' ); 63 | $secondary_nav = sb_get_option( 'secondary_nav-position' ); 64 | $footer_nav = sb_get_option('footer_nav-position'); 65 | 66 | add_action( $primary_nav, array( $this, 'primary_nav') ); 67 | add_action( $secondary_nav, array( $this, 'secondary_nav') ); 68 | add_action( $footer_nav, array( $this, 'footer_nav' ), 11 ); 69 | 70 | } 71 | 72 | } 73 | 74 | sb_register_settings('sb_navigation_settings'); -------------------------------------------------------------------------------- /includes/styles/typography.css: -------------------------------------------------------------------------------- 1 | /**************************************************************************************************************** 2 | 3 | Set default typography based on Blueprint CSS 4 | http://code.google.com/p/blueprintcss/ 5 | 6 | **************************************************************************************************************** 7 | 8 | Table of Contents 9 | 10 | **************************************************************************************************************** 11 | 12 | 0. Notes 13 | 1. General Styling 14 | 2. Headings 15 | 3. Text Elements 16 | 4. Pull Quotes 17 | 18 | **************************************************************************************************************** 19 | 20 | 0. Notes 21 | 22 | **************************************************************************************************************** 23 | 24 | Adapt the following for use in your Child Themes when using 25 | different font-sizes and line-heights 26 | 27 | body, input, textarea { 28 | font: --px Arial,sans-serif; 29 | line-height:--px; 30 | } 31 | p, ul, ol, dd, pre { 32 | margin-bottom:--px; 33 | } 34 | pre, code { 35 | font:--px Monaco, monospace; 36 | line-height:--px; 37 | } 38 | 39 | All other styles can be overridden--or ignored!--in Child Theme stylesheets 40 | 41 | **************************************************************************************************************** 42 | 43 | 1. General Styling 44 | 45 | ****************************************************************************************************************/ 46 | 47 | body, input, textarea { 48 | color:#000; 49 | font: 12px Arial,sans-serif; 50 | line-height:18px; 51 | } 52 | 53 | /**************************************************************************************************************** 54 | 55 | 2. Headings 56 | 57 | ****************************************************************************************************************/ 58 | 59 | 60 | h1,h2,h3,h4,h5,h6 { 61 | font-weight:normal; 62 | clear:both; 63 | } 64 | 65 | /**************************************************************************************************************** 66 | 67 | 3. Text elements 68 | 69 | ****************************************************************************************************************/ 70 | 71 | 72 | p { 73 | margin-bottom:18px; 74 | } 75 | ul { 76 | margin: 0 0 18px 2.5em; 77 | } 78 | ol { 79 | margin: 0 0 18px 2.5em; 80 | } 81 | ul { 82 | list-style:disc; 83 | } 84 | ol { 85 | list-style-type: decimal; 86 | } 87 | ol ol { 88 | list-style:upper-alpha; 89 | } 90 | ol ol ol { 91 | list-style:lower-roman; 92 | } 93 | ol ol ol ol { 94 | list-style:lower-alpha; 95 | } 96 | ul ul, ol ol, ul ol, ol ul { 97 | margin-bottom:0; 98 | } 99 | dl { 100 | margin:0 1.5em; 101 | } 102 | dt { 103 | font-weight:bold; 104 | } 105 | dd { 106 | margin-bottom:18px; 107 | } 108 | strong { 109 | font-weight: bold; 110 | } 111 | cite, em, i { 112 | font-style: italic; 113 | } 114 | blockquote { 115 | margin: 0 3em; 116 | } 117 | blockquote em, blockquote i, blockquote cite { 118 | font-style:normal; 119 | } 120 | pre { 121 | font:13px Monaco, monospace; 122 | line-height:18px; 123 | margin-bottom:18px; 124 | } 125 | code { 126 | font:13px Monaco, monospace; 127 | } 128 | abbr, acronym { 129 | border-bottom:1px dotted #333; 130 | cursor: help; 131 | } 132 | ins { 133 | text-decoration:none; 134 | } 135 | sup, 136 | sub { 137 | height: 0; 138 | line-height: 1; 139 | vertical-align: baseline; 140 | position: relative; 141 | 142 | } 143 | sup { 144 | bottom: 1ex; 145 | } 146 | sub { 147 | top: .5ex; 148 | } 149 | 150 | /**************************************************************************************************************** 151 | 152 | 4. Pull Quotes 153 | 154 | ****************************************************************************************************************/ 155 | 156 | blockquote.left { 157 | float: left; 158 | margin-left:0; 159 | margin-right:20px; 160 | text-align: right; 161 | width: 33%; 162 | } 163 | blockquote.right { 164 | float: right; 165 | margin-left:20px; 166 | margin-right:0; 167 | text-align: left; 168 | width: 33%; 169 | } -------------------------------------------------------------------------------- /includes/functions/upgrade.php: -------------------------------------------------------------------------------- 1 | 'POST', 38 | 'timeout' => 3, 39 | 'headers' => array( 40 | 'Content-Type' => 'application/x-www-form-urlencoded; charset=' . get_option('blog_charset'), 41 | 'User-Agent' => 'WordPress/' . get_bloginfo("version"), 42 | 'Referer' => home_url() 43 | ) 44 | ); 45 | $sb = SB_VERSION; 46 | $wp = get_bloginfo("version") ; 47 | $php = phpversion(); 48 | $mysql = $wpdb->db_version(); 49 | $use_beta = "false"; 50 | $url = 'http://wpstartbox.com/updates/index.php?product=StartBox&sb_version=' . urlencode($sb) . '&wp_version=' . urlencode($wp) . '&php_version=' . urlencode($php) . '&mysql_version=' . urlencode($mysql) . '&use_beta=' . $use_beta; 51 | $raw_response = wp_remote_request($url, $options); 52 | $sb_update = wp_remote_retrieve_body($raw_response); 53 | 54 | // If an error occurred, return false and store transient for 1 hour 55 | // Else, unserialize and store transient for 12hrs 56 | if ( is_wp_error($sb_update) || $sb_update == 'error' || !is_serialized($sb_update) ) { 57 | set_transient('sb_update', array('new_version' => SB_VERSION), 3600); // cache for 1hr (3600) 58 | return false; 59 | } else { 60 | $sb_update = maybe_unserialize($sb_update); 61 | set_transient('sb_update', $sb_update, 43200); // cache for 12hrs (43200) 62 | } 63 | } 64 | 65 | // If we're already using the latest version, return false 66 | if ( version_compare(SB_VERSION, $sb_update['new_version'], '>=') ) 67 | return false; 68 | 69 | return $sb_update; 70 | } 71 | 72 | // Adds upgrade notification to WP's built-in check 73 | function update_include($value) { 74 | if ( $sb_update = $this->update_check() ) { 75 | $value->response['startbox'] = $sb_update; 76 | } 77 | return $value; 78 | } 79 | 80 | // Add an update alert to the dashboard when upgrade is available 81 | function update_notification() { 82 | 83 | // Don't bother checking if updates are disabled 84 | if (!sb_get_option('enable_updates') || sb_get_option('disable_update_notifications') ) 85 | return; 86 | 87 | $sb_update = $this->update_check(); 88 | 89 | if ( !is_super_admin() || !$sb_update ) 90 | return false; 91 | 92 | $update_url = wp_nonce_url('update.php?action=upgrade-theme&theme=startbox', 'upgrade-theme_startbox'); 93 | $update_onclick = __('Upgrading will overwrite the currently installed version of StartBox. Are you sure you want to upgrade?', 'startbox'); 94 | 95 | $output = '
    '; 96 | $output .= sprintf( __('An update to StartBox is available. Check out what\'s new in %s or upgrade now.', 'startbox'), esc_url( $sb_update['url'] ), esc_html( $sb_update['new_version'] ), $update_url, esc_js( $update_onclick ) ); 97 | $output .= '
    '; 98 | 99 | echo $output; 100 | } 101 | 102 | // Delete the update transient and disable the update notification. 103 | function clear_update_transient() { 104 | delete_transient('sb_update'); 105 | remove_action('admin_notices', 'sb_update_notification'); 106 | } 107 | 108 | } 109 | $sb_upgrade = new sb_upgrade; -------------------------------------------------------------------------------- /includes/scripts/startbox.js: -------------------------------------------------------------------------------- 1 | ;(function($) { 2 | $(document).ready(function(){ 3 | 4 | // Initialize colorbox, if available 5 | if ( jQuery.isFunction(jQuery.fn.colorbox) ) { 6 | $(".colorbox").colorbox({maxWidth: "90%", maxHeight: "90%", opacity:.6}); 7 | $(".ext").colorbox({iframe:true, innerWidth:"90%", innerHeight:"90%", opacity:.6}); 8 | $(".colorbox-inline").colorbox({maxWidth: "90%", maxHeight: "90%", opacity:.6, inline:true}) 9 | } 10 | 11 | // Hide all elements with the class of .hideme 12 | $('.hideme').hide(); 13 | 14 | // Slider Toggle -- an anchor tag with class '.toggle' will expand it's href target. 15 | $(".toggle") 16 | .addClass("noscroll") 17 | .each( function() { $($(this).attr('href')).hide(); } ) 18 | .toggle( 19 | function () { 20 | $(this).text($(this).text().replace("More", "Less")); 21 | $($(this).attr('href')).slideDown(300); 22 | }, 23 | function () { 24 | $(this).text($(this).text().replace("Less", "More")); 25 | $($(this).attr('href')).slideUp(300); 26 | } 27 | ); 28 | 29 | // Autofill input box with a default value (via http://www.joesak.com/2008/11/19/a-jquery-function-to-auto-fill-input-fields-and-clear-them-on-click/) 30 | function autoFill(id, v){ 31 | $(id).css({ color: "#b2adad" }).attr({ value: v }).focus(function(){ 32 | if($(this).val()==v){ 33 | $(this).val("").css({ color: "#333" }); 34 | } 35 | }).blur(function(){ 36 | if($(this).val()==""){ 37 | $(this).css({ color: "#aaa" }).val(v); 38 | } 39 | }); 40 | 41 | } 42 | 43 | // Autofill several default fields 44 | autoFill($(".searchtext"), $(".searchtext").attr("title")); // Search field 45 | autoFill($("#author"), "Your Name"); // Comment Author Name 46 | autoFill($("#email"), "Your E-mail"); // Comment Author E-mail 47 | autoFill($("#url"), "Your Website (Optional)"); // Comment Author Website 48 | 49 | // Add Smooth Scrolling to all links, except those with a class of "noscroll" 50 | $('a').smoothScroll({exclude: ['.noscroll']}); 51 | 52 | // Dynamically replace default "Your Name" with user's name (textchange function courtesy of ZURB: http://www.zurb.com/playground/jquery-text-change-custom-event) 53 | (function(a){a.event.special.textchange={setup:function(){a(this).bind("keyup.textchange",a.event.special.textchange.handler);a(this).bind("cut.textchange paste.textchange input.textchange",a.event.special.textchange.delayedHandler)},teardown:function(){a(this).unbind(".textchange")},handler:function(){a.event.special.textchange.triggerIfChanged(a(this))},delayedHandler:function(){var b=a(this);setTimeout(function(){a.event.special.textchange.triggerIfChanged(b)},25)},triggerIfChanged:function(b){var c= 54 | b.attr("contenteditable")?b.html():b.val();if(c!==b.data("lastValue")){b.trigger("textchange",b.data("lastValue"));b.data("lastValue",c)}}};a.event.special.hastext={setup:function(){a(this).bind("textchange",a.event.special.hastext.handler)},teardown:function(){a(this).unbind("textchange",a.event.special.hastext.handler)},handler:function(b,c){if((c===""||c===undefined)&&c!==a(this).val())a(this).trigger("hastext")}};a.event.special.notext={setup:function(){a(this).bind("textchange",a.event.special.notext.handler)}, 55 | teardown:function(){a(this).unbind("textchange",a.event.special.notext.handler)},handler:function(b,c){a(this).val()===""&&a(this).val()!==c&&a(this).trigger("notext")}}})(jQuery); 56 | 57 | $('#author').bind('textchange', function (event, previousText) { 58 | $('#authorname').text($(this).val()); 59 | }); 60 | 61 | // Adds URL Encoding and Decoding to JQuery (needed for setting gravatar default) 62 | $.extend({URLEncode:function(c){var o='';var x=0;c=c.toString();var r=/(^[a-zA-Z0-9_.]*)/; 63 | while(x1 && m[1]!=''){o+=m[1];x+=m[1].length; 65 | }else{if(c[x]==' ')o+='+';else{var d=c.charCodeAt(x);var h=d.toString(16); 66 | o+='%'+(h.length<2?'0':'')+h.toUpperCase();}x++;}}return o;}, 67 | URLDecode:function(s){var o=s;var binVal,t;var r=/(%[^%]{2})/; 68 | while((m=r.exec(o))!=null && m.length>1 && m[1]!=''){b=parseInt(m[1].substr(1),16); 69 | t=String.fromCharCode(b);o=o.replace(m[1],t);}return o;} 70 | }); 71 | 72 | // Dynamically replace default gravatar with user's gravatar 73 | var gravatar_default = $.URLEncode("http://"+document.location.hostname+"/wp-content/themes/startbox/images/comments/gravatar.png"); 74 | var gravatar_size = 60; 75 | $("#email").change(function() { 76 | $('#commentform .avatar').attr("src","http://www.gravatar.com/avatar/"+$.md5($('#email').val())+"?s="+gravatar_size+"&default="+gravatar_default); 77 | }); 78 | 79 | 80 | }); 81 | })(jQuery); -------------------------------------------------------------------------------- /includes/widgets/search.php: -------------------------------------------------------------------------------- 1 | defaults = array( 36 | 'title' => __( 'Search', 'startbox' ), 37 | 'search-input' => __( 'Search', 'startbox' ), 38 | 'search-button' => __( 'Search', 'startbox' ), 39 | ); 40 | 41 | $widget_ops = array( 42 | 'classname' => 'sb_search_widget', 43 | 'description' => __( 'A search form for your blog.', 'startbox' ) 44 | ); 45 | 46 | parent::__construct( 'search-widget', __( 'SB Search', 'startbox' ), $widget_ops); 47 | } 48 | 49 | /** 50 | * Echo the widget content. 51 | * 52 | * @param array $args Display arguments including before_title, after_title, before_widget, and after_widget. 53 | * @param array $instance The settings for the particular instance of the widget 54 | */ 55 | public function widget( $args, $instance ) { 56 | extract( $args ); 57 | 58 | echo $before_widget; 59 | 60 | if ( ! empty( $instance['title'] ) ) { 61 | echo $before_title . apply_filters( 'widget_title', $instance['title'], $instance, $this->id_base ) . $after_title; 62 | } 63 | ?> 64 | 70 | defaults ); 103 | ?> 104 |

    105 | 106 | 107 |

    108 |

    109 | 110 | 111 |

    112 |

    113 | 114 | 115 |

    116 | name = __( 'Footer Settings', 'startbox' ); 9 | $this->slug = 'sb_footer_settings'; 10 | $this->description = __( 'Select what text (if any) you would like to appear in the footer area of your site.', 'startbox' ); 11 | $this->location = 'primary'; 12 | $this->priority = 'core'; 13 | $this->options = array( 14 | 'enable_rtt' => array( 15 | 'type' => 'checkbox', 16 | 'label' => __( 'Enable Return to Top link', 'startbox' ), 17 | 'default' => 'true', 18 | 'help' => __( 'Include a link for users to return to the top of the site (Default: true).', 'startbox' ) 19 | ), 20 | 'enable_admin' => array( 21 | 'type' => 'checkbox', 22 | 'label' => __( 'Enable Admin Links', 'startbox' ), 23 | 'default' => 'false', 24 | 'help' => __( 'Include admin links in the site footer (Default: false).', 'startbox' ) 25 | ), 26 | 'footer_text' => array( 27 | 'type' => 'textarea', 28 | 'sanitize' => array( 'allowed_html' => array( 'a' => array( 'href' => array(), 'title' => array(), 'target' => array(), 'id' => array(), 'class' => array(), 'style' => array() ),'br' => array(),'em' => array( 'id' => array(), 'class' => array(), 'style' => array() ),'strong' => array( 'id' => array(), 'class' => array(), 'style' => array() ), 'div' => array( 'id' => array(), 'class' => array(), 'style' => array() ), 'span' => array( 'id' => array(), 'class' => array(), 'style' => array() ), 'ul' => array( 'id' => array(), 'class' => array(), 'style' => array() ), 'ol' => array( 'id' => array(), 'class' => array(), 'style' => array() ), 'li' => array( 'id' => array(), 'class' => array(), 'style' => array() ) ), 'style' => array() ), 29 | 'label' => __( 'Footer Text:', 'startbox'), 30 | 'desc' => __( 'Shortcodes and some HTML is allowed.', 'startbox' ), 31 | 'default' => sprintf( __( '[copyright year="%s"] [site_link].
    Proudly powered by [WordPress] and [StartBox].', 'startbox' ), date('Y') ), 32 | 'help' => __( 'Display any custom text you would like, including full HTML if your user account permits it.', 'startbox' ) 33 | ) 34 | 35 | ); 36 | parent::__construct(); 37 | } 38 | 39 | // Insert Return to Top link 40 | function sb_rtt() { 41 | if (sb_get_option( 'enable_rtt')) { 42 | echo sb_rtt(); 43 | } 44 | } 45 | 46 | // Add Copyright, Design Credit and add'l info to footer 47 | function copyright() { 48 | 49 | if ( $text = sb_get_option( 'footer_text' ) ) { ?> 50 |
    51 | 52 |
    53 | admin_url(), 66 | 'Widgets' => admin_url('widgets.php'), 67 | 'Theme Options' => admin_url('themes.php?page=sb_admin'), 68 | 'Logout' => wp_logout_url( get_permalink() ) 69 | ); 70 | $loggedout_defaults = array( 71 | 'Admin Dashboard' => admin_url() 72 | ); 73 | 74 | // Filter the links arrays so they can be overridden 75 | $loggedin_links = apply_filters( 'sb_footer_admin_loggedin_links', $loggedin_defaults ); 76 | $loggedout_links = apply_filters( 'sb_footer_admin_loggedout_links', $loggedout_defaults ); 77 | $separator = apply_filters( 'sb_footer_admin_links_separator', '
  • |
  • ' ); 78 | $links = array(); 79 | $output = ''; 80 | 81 | // If the user is logged in, use the logged in links, else use the logged out links 82 | if ($user_ID) { $links_array = $loggedin_links; } 83 | else { $links_array = $loggedout_links; } 84 | 85 | // Loop through all the links and store them in an array with proper HTML 86 | foreach( $links_array as $title => $url ) { 87 | $links[] = '
  • ' . esc_html( $title ) . '
  • '; 88 | } 89 | 90 | // Begin output 91 | $output .= ' '; 97 | 98 | // Filter the whole thing, incase someone wants to replace it entirely 99 | echo apply_filters( 'sb_footer_admin', $output ); 100 | 101 | } 102 | } 103 | 104 | function hooks() { 105 | add_action( 'sb_footer', array( $this, 'sb_rtt'), 5 ); 106 | add_action( 'sb_footer_left', array( $this, 'copyright' ), 12 ); 107 | add_action( 'sb_footer_right', array( $this, 'admin' ), 12 ); 108 | } 109 | 110 | } 111 | 112 | sb_register_settings('sb_footer_settings'); -------------------------------------------------------------------------------- /includes/styles/layouts.css: -------------------------------------------------------------------------------- 1 | /**************************************************************************************************************** 2 | 3 | Table of Contents 4 | 5 | **************************************************************************************************************** 6 | 7 | 0. One Column, no sidebars 8 | 1. Two Columns, Sidebar on left 9 | 2. Two Columns, Sidebar on right 10 | 3. Three Columns, Sidebars on left 11 | 4. Three Columns, Sidebars on right 12 | 5. Three Columns, Sidebars on both sides 13 | 14 | ********************************************************************************************* 15 | 16 | 0. One-column, no sidebars 17 | 18 | *********************************************************************************************/ 19 | 20 | .layout-one-col div.aside { 21 | float: left; 22 | overflow: hidden; 23 | } 24 | .layout-one-col div#primary, 25 | .layout-one-col div#secondary, 26 | .layout-one-col div#tertiary { 27 | display:none; 28 | } 29 | .layout-one-col div#footer_wrap { 30 | clear: left; 31 | } 32 | 33 | /* Full-width Page Template */ 34 | .page-template-page-fullwidth-php div#container, 35 | .page-template-page-fullwidth-php div#content { 36 | float: none!important; 37 | margin: 0 auto!important; 38 | } 39 | .page-template-page-fullwidth-php div.aside { 40 | float: left!important; 41 | overflow: hidden!important; 42 | } 43 | .page-template-page-fullwidth-php div#primary, 44 | .page-template-page-fullwidth-php div#secondary, 45 | .page-template-page-fullwidth-php div#tertiary { 46 | display:none!important; 47 | } 48 | .page-template-page-fullwidth-php div#footer_wrap { 49 | clear: left!important; 50 | } 51 | 52 | /********************************************************************************************* 53 | 54 | 1. Two-column fluid layout with one sidebar left of content 55 | 56 | *********************************************************************************************/ 57 | 58 | .layout-two-col-left div#container { 59 | float: right; 60 | margin: 0 0 0 -320px; 61 | width: 100%; 62 | } 63 | .layout-two-col-left div#content { 64 | margin: 0 0 0 320px; 65 | } 66 | .layout-two-col-left div#primary, 67 | .layout-two-col-left div#secondary, 68 | .layout-two-col-left div#tertiary { 69 | float: left; 70 | width: 280px; 71 | overflow: hidden; 72 | } 73 | .layout-two-col-left div#secondary { 74 | display:none; 75 | } 76 | .layout-two-col-left div#footer_wrap { 77 | clear: both; 78 | } 79 | 80 | /********************************************************************************************* 81 | 82 | 2. Two-column fluid layout with one sidebar right of content 83 | 84 | *********************************************************************************************/ 85 | 86 | .layout-two-col-right div#container { 87 | float: left; 88 | margin: 0 -320px 0 0; 89 | width: 100%; 90 | } 91 | .layout-two-col-right div#content { 92 | margin: 0 320px 0 0; 93 | } 94 | .layout-two-col-right div#primary, 95 | .layout-two-col-right div#secondary, 96 | .layout-two-col-right div#tertiary { 97 | float: right; 98 | overflow: hidden; 99 | width: 280px; 100 | } 101 | .layout-two-col-right div#secondary { 102 | display:none; 103 | } 104 | .layout-two-col-right div#footer_wrap { 105 | clear: both; 106 | } 107 | 108 | /********************************************************************************************* 109 | 110 | 3. Three-column fluid layout with two sidebars left of content 111 | 112 | *********************************************************************************************/ 113 | 114 | .layout-three-col-left div#container { 115 | float: right; 116 | margin: 0 0 0 -400px; 117 | width: 100%; 118 | } 119 | .layout-three-col-left div#content { 120 | margin: 0 0 0 420px; 121 | } 122 | .layout-three-col-left div#primary, 123 | .layout-three-col-left div#secondary { 124 | float: left; 125 | overflow: hidden; 126 | width: 180px; 127 | margin-right:20px; 128 | } 129 | .layout-three-col-left div#footer_wrap { 130 | clear: both; 131 | } 132 | 133 | /********************************************************************************************* 134 | 135 | 4. Three-column fluid layout with two sidebars right of content 136 | 137 | *********************************************************************************************/ 138 | 139 | .layout-three-col-right div#container { 140 | float: left; 141 | width: 100%; 142 | } 143 | .layout-three-col-right div#content { 144 | margin: 0 420px 0 0; 145 | } 146 | .layout-three-col-right div#primary, 147 | .layout-three-col-right div#secondary { 148 | float: left; 149 | overflow: hidden; 150 | width: 180px; 151 | } 152 | .layout-three-col-right div#primary { 153 | margin: 0 0 0 -400px; 154 | } 155 | .layout-three-col-right div#secondary { 156 | margin: 0 0 0 -200px; 157 | } 158 | .layout-three-col-right div#footer_wrap { 159 | clear: left; 160 | } 161 | 162 | /********************************************************************************************* 163 | 164 | 5. Three-column fluid layout with two sidebars on both sides of content 165 | 166 | *********************************************************************************************/ 167 | 168 | .layout-three-col-both div#container { 169 | float: left; 170 | width: 100%; 171 | } 172 | .layout-three-col-both div#content { 173 | margin: 0 210px; 174 | } 175 | .layout-three-col-both div#primary, 176 | .layout-three-col-both div#secondary { 177 | float: left; 178 | overflow: hidden; 179 | width: 180px; 180 | } 181 | .layout-three-col-both div#primary { 182 | margin: 0 0 0 -100%; 183 | } 184 | * html .layout-three-col-both div#primary { 185 | left: 20px; 186 | position: relative; 187 | } 188 | .layout-three-col-both div#secondary { 189 | margin: 0 0 0 -180px; 190 | } 191 | .layout-three-col-both div#footer_wrap { 192 | clear: left; 193 | } -------------------------------------------------------------------------------- /includes/functions/depricated.php: -------------------------------------------------------------------------------- 1 | 14 | function sb_before_header() { _deprecated_function( __FUNCTION__, '2.6.0', 'do_action( \'sb_before_header\' )' ); do_action('sb_before_header'); } // inside div#wrap, before div#header 15 | function sb_header() { _deprecated_function( __FUNCTION__, '2.6.0', 'do_action( \'sb_header\' )' ); do_action('sb_header'); } // inside div#header, before any content 16 | function sb_after_header() { _deprecated_function( __FUNCTION__, '2.6.0', 'do_action( \'sb_after_header\' )' ); do_action('sb_after_header'); } // inside div#wrap, after div#header 17 | function sb_before_container() { _deprecated_function( __FUNCTION__, '2.6.0', 'do_action( \'sb_before_container\' )' ); do_action('sb_before_container'); } // inside div#container_wrap, before div#container 18 | function sb_before_featured() { _deprecated_function( __FUNCTION__, '2.6.0', 'do_action( \'sb_before_featured\' )' ); do_action('sb_before_featured'); } // Located just after sb_before_content 19 | function sb_featured() { _deprecated_function( __FUNCTION__, '2.6.0', 'do_action( \'sb_featured\' )' ); do_action('sb_featured'); } // Located just after sb_before_featured 20 | function sb_after_featured() { _deprecated_function( __FUNCTION__, '2.6.0', 'do_action( \'sb_after_featured\' )' ); do_action('sb_after_featured'); } // Located just after sb_featured 21 | function sb_home() { _deprecated_function( __FUNCTION__, '2.6.0', 'do_action( \'sb_home\' )' ); do_action('sb_home'); } // Located just after sb_after_featured 22 | function sb_before_content() { _deprecated_function( __FUNCTION__, '2.6.0', 'do_action( \'sb_before_content\' )' ); do_action('sb_before_content'); } // Just before the content 23 | function sb_page_title() { _deprecated_function( __FUNCTION__, '2.6.0', 'do_action( \'sb_page_title\' )' ); do_action('sb_page_title'); } // The Page Title, appears immediately after sb_before_content 24 | function sb_after_content() { _deprecated_function( __FUNCTION__, '2.6.0', 'do_action( \'sb_after_content\' )' ); do_action('sb_after_content');} // Just after the content 25 | function sb_404() { _deprecated_function( __FUNCTION__, '2.6.0', 'do_action( \'sb_404\' )' ); do_action('sb_404'); } // Inside div.post, only on 404 page 26 | function sb_before_post() { _deprecated_function( __FUNCTION__, '2.6.0', 'do_action( \'sb_before_post\' )' ); do_action('sb_before_post'); } // Before div.post 27 | function sb_before_post_content() { _deprecated_function( __FUNCTION__, '2.6.0', 'do_action( \'sb_before_post_content\' )' ); do_action('sb_before_post_content'); } // Inside div.post, after .entry-header, before .entry-content 28 | function sb_post_header() { _deprecated_function( __FUNCTION__, '2.6.0', 'do_action( \'sb_post_header\' )' ); do_action('sb_post_header' ); } // Inside div.entry-meta 29 | function sb_post_footer() { _deprecated_function( __FUNCTION__, '2.6.0', 'do_action( \'sb_post_footer\' )' ); do_action('sb_post_footer' ); } // Inside div.entry-footer 30 | function sb_after_post_content() { _deprecated_function( __FUNCTION__, '2.6.0', 'do_action( \'sb_after_post_content\' )' ); do_action('sb_after_post_content'); } // Inside div.post, after .entry-content, before .entry-footer 31 | function sb_after_post() { _deprecated_function( __FUNCTION__, '2.6.0', 'do_action( \'sb_after_post\' )' ); do_action('sb_after_post'); } // Inside div.post, after .entry-content, before .entry-footer 32 | function sb_between_primary_and_secondary_widgets() { _deprecated_function( __FUNCTION__, '2.5', 'do_action( \'sb_after_primary_aside_widgets\' )' ); do_action('sb_between_primary_and_secondary_widgets');} 33 | function sb_no_widgets() { _deprecated_function( __FUNCTION__, '2.6.0', 'specific widget location hooks' ); } 34 | function sb_before_footer_widgets() { _deprecated_function( __FUNCTION__, '2.6.0', 'do_action( \'sb_before_footer_widgets\' )' ); do_action('sb_before_footer_widgets'); } // inside div#footer, before div#footer_sidebar 35 | function sb_after_footer_widgets() { _deprecated_function( __FUNCTION__, '2.6.0', 'do_action( \'sb_after_footer_widgets\' )' ); do_action('sb_after_footer_widgets'); } // inside div#footer, after div#footer_sidebar 36 | function sb_between_footer_widgets() { _deprecated_function( __FUNCTION__, '2.6.0', 'other footer widget hooks' ); } 37 | function sb_after_container() { _deprecated_function( __FUNCTION__, '2.6.0', 'do_action( \'sb_after_container\' )' ); do_action('sb_after_container'); } // inside div#container_wrap, after div#container 38 | function sb_between_content_and_footer() { _deprecated_function( __FUNCTION__, '2.6.0', 'do_action( \'sb_between_content_and_footer\' )' ); do_action('sb_between_content_and_footer'); } // after div#wrap, before div#footer_wrap 39 | function sb_before_footer() { _deprecated_function( __FUNCTION__, '2.6.0', 'do_action( \'sb_before_footer\' )' ); do_action('sb_before_footer'); } // inside div#footer_wrap, before div#footer 40 | function sb_footer() { _deprecated_function( __FUNCTION__, '2.6.0', 'do_action( \'sb_footer\' )' ); do_action('sb_footer'); } // inside div#footer after div#footer_sidebar 41 | function sb_after_footer() { _deprecated_function( __FUNCTION__, '2.6.0', 'do_action( \'sb_after_footer\' )' ); do_action('sb_after_footer'); } // inside div#footer_wrap, after div#footer 42 | function sb_after() { _deprecated_function( __FUNCTION__, '2.6.0', 'do_action( \'sb_after\' )' ); do_action('sb_after'); } // the very last thing before 43 | 44 | // Legacy post image function 45 | function sb_post_image_url( $args = array() ) { 46 | _deprecated_function( __FUNCTION__, '2.7.0', 'sb_get_post_image_url()' ); 47 | return sb_get_post_image_url( $args ); 48 | } 49 | 50 | /** 51 | * Deprecated. Registering Tag Cloud widget. 52 | * 53 | * @deprecated 2.7.2 54 | * 55 | * @see sb_load_widgets() 56 | */ 57 | function load_widget_sb_tagcloud_widget() { 58 | _deprecated_function( __FUNCTION__, '2.7.2', 'sb_load_widgets' ); 59 | } 60 | 61 | /** 62 | * Deprecated. Registering Social widget. 63 | * 64 | * @deprecated 2.7.2 65 | * 66 | * @see sb_load_widgets() 67 | */ 68 | function sb_social_load_widget() { 69 | _deprecated_function( __FUNCTION__, '2.7.2', 'sb_load_widgets' ); 70 | } 71 | 72 | /** 73 | * Deprecated. Register Search widget. 74 | * 75 | * @deprecated 2.7.2 76 | * 77 | * @see sb_load_widgets() 78 | */ 79 | function load_widget_sb_search_widget() { 80 | _deprecated_function( __FUNCTION__, '2.7.2', 'sb_load_widgets' ); 81 | } 82 | 83 | /** 84 | * Deprecated. Register Featured Content widget. 85 | * 86 | * @deprecated 2.7.2 87 | * 88 | * @see sb_load_widgets() 89 | */ 90 | function load_widget_sb_featured_content() { 91 | _deprecated_function( __FUNCTION__, '2.7.2', 'sb_load_widgets' ); 92 | } 93 | -------------------------------------------------------------------------------- /includes/functions/menus.php: -------------------------------------------------------------------------------- 1 | 'pages', 25 | 'class' => 'nav', 26 | 'show_home' => 1, 27 | 'echo' => false, 28 | 'container' => 'div', 29 | 'container_id' => '', 30 | 'menu_class' => '', 31 | 'menu_id' => '', 32 | 'before' => '', 33 | 'after' => '', 34 | 'link_before' => '', 35 | 'link_after' => '', 36 | 'depth' => 0, 37 | 'fallback_cb' => 'sb_nav_menu_fallback', 38 | 'extras' => '', 39 | 'walker' => '' 40 | ); 41 | $r = wp_parse_args( $args, apply_filters( "sb_nav_menu_defaults", $defaults ) ); 42 | extract( $r, EXTR_SKIP ); 43 | 44 | if ( $type == 'none' || $type == '' ) 45 | return; 46 | 47 | $output = wp_nav_menu( array( 48 | 'menu' => $type, 49 | 'container' => $container, 50 | 'container_class' => $class, 51 | 'container_id' => $container_id, 52 | 'menu_class' => $menu_class, 53 | 'menu_id' => $menu_id, 54 | 'before' => $before, 55 | 'after' => $after, 56 | 'link_before' => $link_before, 57 | 'link_after' => $link_after, 58 | 'depth' => $depth, 59 | 'show_home' => $show_home, 60 | 'fallback_cb' => $fallback_cb, 61 | 'extras' => $extras, 62 | 'walker' => $walker, 63 | 'echo' => false ) ); 64 | 65 | $nav_menu = apply_filters( "sb_{$menu_id}_menu", $output ); 66 | 67 | if ($echo) 68 | echo $nav_menu; 69 | else 70 | return $nav_menu; 71 | } 72 | } 73 | 74 | /** 75 | * Fallback function for building menus in the event no custom menus exist -- copied mostly from wp_nav_menu() 76 | * 77 | * @since 2.4.9 78 | */ 79 | if ( !function_exists('sb_nav_menu_fallback') ) { 80 | function sb_nav_menu_fallback( $args = array() ) { 81 | $args = apply_filters( 'wp_nav_menu_args', $args ); 82 | $args = (object) $args; 83 | 84 | $id = $args->container_id ? ' id="' . esc_attr( $args->container_id ) . '"' : ''; 85 | $class = $args->container_class ? ' class="' . esc_attr( $args->container_class ) . '"' : ' class="menu-'. $menu->slug .'-container"'; 86 | 87 | $nav_menu = $items = ''; 88 | $nav_menu .= '<'. $args->container . $id . $class . '>'; 89 | $nav_menu .= ''; 92 | $nav_menu .= 'container . '>'; 93 | $nav_menu = apply_filters( 'wp_nav_menu', $nav_menu, $args ); 94 | 95 | if ( $args->echo ) 96 | echo $nav_menu; 97 | else 98 | return $nav_menu; 99 | } 100 | } 101 | 102 | /** 103 | * Filter for replacing wp_nav_menu_items with either pages or categories 104 | * 105 | * @since 2.4.9 106 | * 107 | */ 108 | function sb_nav_menu_items($items, $args ) { 109 | extract( wp_parse_args( $args ) ); 110 | 111 | // Include Link to homepage based on user selection 112 | $is_home = ( is_front_page() ) ? ' current-menu-item' : '' ; 113 | $home = ( isset( $show_home ) && $show_home ) ? '' : '' ; 114 | 115 | // Change menu contents based on user selection 116 | if ( $menu == 'pages' ) { 117 | $exclude = (get_option('show_on_front') == 'page') ? get_option('page_on_front') : ''; 118 | $items = $home . wp_list_pages('title_li=&exclude=' . $exclude . '&depth=' . $depth . '&echo=0'); 119 | if( $page = strripos( $items, 'current_page_item') ) { $items = substr_replace( $items, ' current-menu-item', $page+17, 0 ); } 120 | if( $page_parent = strripos( $items, 'current_page_ancestor') ) { $items = substr_replace( $items, ' current-menu-ancestor', $page_parent+21, 0 ); } 121 | } elseif ( $menu == 'categories' ) { 122 | $items = $home . wp_list_categories('title_li=&depth=' . $depth . '&echo=0'); 123 | if( $cat = strripos( $items, 'current-cat') ) { $items = substr_replace( $items, ' current-menu-item', $cat+11, 0 ); } 124 | if( $cat_parent = strripos( $items, 'current-cat-parent') ) { $items = substr_replace( $items, ' current-menu-ancestor', $cat_parent+18, 0 ); } 125 | } else { 126 | $items = $home . $items; 127 | } 128 | 129 | // Adds .first and .last classes to respective menu items 130 | if( $first = strpos( $items, 'class=' ) ) { $items = substr_replace( $items, 'first ', $first+7, 0 ); } 131 | if( $last = strripos( $items, 'class=') ) { $items = substr_replace( $items, 'last ', $last+7, 0 ); } 132 | 133 | // Add extras 134 | if ( isset( $extras ) && $extras == 'search' ) { 135 | $items .= ''; 140 | } elseif ( isset( $extras ) && $extras == 'social' ) { 141 | $options = get_option(THEME_OPTIONS); 142 | $rss = (isset($options[$menu_id . '-social-rss'])) ? $options[$menu_id . '-social-rss'] : ''; 143 | $services = array( 144 | 'rss' => $rss, 145 | 'twitter' => $options[$menu_id . '-social-twitter'], 146 | 'facebook' => $options[$menu_id . '-social-facebook'], 147 | 'youtube' => $options[$menu_id . '-social-youtube'], 148 | 'vimeo' => $options[$menu_id . '-social-vimeo'], 149 | 'flickr' => $options[$menu_id . '-social-flickr'], 150 | 'delicious' => $options[$menu_id . '-social-delicious'], 151 | 'linkedin' => $options[$menu_id . '-social-linkedin'], 152 | ); 153 | $icon_url = apply_filters( 'sb_nav_social_images_url', IMAGES_URL.'/social/' ); 154 | $icon_size = apply_filters( 'sb_nav_social_images_size', 24 ); 155 | 156 | foreach ($services as $service => $url) { 157 | $text = apply_filters( "sb_social_{$service}", sprintf( __( 'Connect on %s', 'startbox'), $service ) ); 158 | 159 | if ( $service == 'rss' ) { 160 | if ( isset($url) && true == $url ) { 161 | $rss_text = apply_filters( 'sb_social_rss', __( 'Subscribe via RSS', 'startbox') ); 162 | $items .= ''; 167 | } 168 | } elseif ( isset($url) && $url != '' ) { 169 | $items .= ''; 174 | } 175 | } 176 | } 177 | 178 | return $items; 179 | } 180 | add_filter( 'wp_nav_menu_items', 'sb_nav_menu_items', 10, 2 ); -------------------------------------------------------------------------------- /includes/styles/comments.css: -------------------------------------------------------------------------------- 1 | /**************************************************************************************************************** 2 | 3 | Default styles for Comments 4 | 5 | **************************************************************************************************************** 6 | 7 | Table of Contents 8 | 9 | **************************************************************************************************************** 10 | 11 | 1. Comments 12 | 2. Comment Form 13 | 14 | /**************************************************************************************************************** 15 | 16 | 1. Comments 17 | 18 | ****************************************************************************************************************/ 19 | #comments { 20 | width:640px; 21 | } 22 | 23 | #comments h3 { 24 | display:block; 25 | text-transform:capitalize; 26 | padding:5px 0; 27 | margin:15px 0; 28 | } 29 | .h3-link, .h3-link:visited { 30 | font:8pt Arial; 31 | } 32 | #comments-list {} 33 | .commentlist, 34 | .commentlist .children { 35 | list-style: none; 36 | margin:0; 37 | } 38 | .comments { 39 | margin-bottom:10px; 40 | } 41 | .commentlist li { 42 | position:relative; 43 | clear:both; 44 | padding: 10px 0 10px 160px; 45 | overflow:hidden; 46 | } 47 | .comment-wrap { 48 | position:relative; 49 | } 50 | .comment-meta { 51 | position:absolute; 52 | width:160px; 53 | left:-160px; 54 | } 55 | .avatar { 56 | margin:0 5px 5px 0; 57 | } 58 | .commentlist .fn, #commentform .fn { 59 | display:block; 60 | color:#514d42; 61 | font:bold 1em Arial,sans-serif; 62 | font-style:none; 63 | clear:left; 64 | } 65 | .comment-author-name, .comment-author-name:visited { 66 | color:#514d42; 67 | } 68 | .comment-author-name:hover, .comment-author-name:active { 69 | color:#aaa; 70 | } 71 | .comment-date { 72 | font-size:.8em; 73 | line-height:1.2em; 74 | color:#8d8982; 75 | } 76 | .commentlist li .comment-entry { 77 | background:#fff; 78 | border:1px solid #ccc; 79 | padding:20px; 80 | position:relative; 81 | } 82 | .commentlist li .comment-entry p { 83 | width:auto; 84 | } 85 | .comment-arrow { 86 | display:block; 87 | background:url('../../images/comments/comment_arrow.png') no-repeat 0 0; 88 | width:34px; 89 | height:38px; 90 | position:absolute; 91 | left:-32px; 92 | top:15px; 93 | z-index:5; 94 | } 95 | .reply-author { 96 | margin:0; 97 | } 98 | .bypostauthor {} 99 | .comment-entry blockquote { 100 | background: #eee; 101 | font-family:inherit; 102 | font-size:1em; 103 | padding:15px; 104 | } 105 | .comment-entry blockquote blockquote { 106 | background:#ddd; 107 | margin:1.5em; 108 | } 109 | .comment-entry blockquote p { 110 | margin:0; 111 | } 112 | .comment-reply-link, 113 | .comment-edit-link { 114 | font:8pt Arial; 115 | text-transform:uppercase; 116 | } 117 | #trackbacks-list { 118 | clear:both; 119 | margin-top:15px; 120 | } 121 | #trackbacks-list ol { 122 | margin-left:50px; 123 | } 124 | .commentlist .children { 125 | padding-left:0!important; 126 | } 127 | .commentlist .children li { 128 | padding-left:25px; 129 | border-left:1px solid #ccc; 130 | } 131 | .children .comment-arrow { 132 | height:1px; 133 | width:27px; 134 | left:-27px; 135 | } 136 | .children .entry-content { 137 | z-index:10; 138 | padding-bottom:60px; 139 | } 140 | .children .comment-meta { 141 | height:40px; 142 | width:200px; 143 | left:auto; 144 | right:10px; 145 | bottom:10px; 146 | z-index:15; 147 | text-align:right; 148 | } 149 | .children .comment-meta .avatar { 150 | width:40px; 151 | height:40px; 152 | position:relative; 153 | float:right; 154 | margin-left:5px; 155 | } 156 | .children .comment-meta .fn { 157 | display:inline-block; 158 | clear:none; 159 | font-size:.8em; 160 | } 161 | .children .entry-content { 162 | position:relative; 163 | } 164 | .comment-footer { 165 | padding-top:10px; 166 | } 167 | 168 | /**************************************************************************************************************** 169 | 170 | 2. Comment Form 171 | 172 | ****************************************************************************************************************/ 173 | 174 | #respond { 175 | position:relative; 176 | margin: 0; 177 | overflow:hidden; 178 | } 179 | #respond h3 { 180 | margin:0; 181 | } 182 | #commentform { 183 | margin:0 0 30px; 184 | padding: 2px 0 0 160px; 185 | position:relative; 186 | overflow:hidden; 187 | } 188 | #commentform .comment-meta { 189 | left:0; 190 | width:162px; 191 | z-index:20; 192 | overflow:hidden; 193 | } 194 | #commentform .comment-arrow { 195 | right:0; 196 | left:auto; 197 | } 198 | #commentform p { 199 | margin-bottom:8px; 200 | position:relative; 201 | } 202 | #commentform label { 203 | display:none; 204 | } 205 | #commentform input, 206 | #commentform textarea { 207 | background:#fff; 208 | color:#333; 209 | width:442px; 210 | font-size:1em; 211 | padding:5px 5px 5px 30px; 212 | margin:0; 213 | border:1px solid #ccc; 214 | position:relative; 215 | z-index:1; 216 | } 217 | #commentform textarea { 218 | width:457px; 219 | height:180px; 220 | top:-2px; 221 | padding:10px; 222 | } 223 | #login { 224 | position:relative; 225 | margin:0; 226 | float:left; 227 | } 228 | #commentform #author {background:#fff url('../../images/comments/comments_name.png') no-repeat 5px 50%;} 229 | #commentform #email {background:#fff url('../../images/comments/comments_email.png') no-repeat 5px 50%;} 230 | #commentform #url {background:#fff url('../../images/comments/comments_url.png') no-repeat 5px 50%;} 231 | #commentform span.required { 232 | color:#f55; 233 | z-index:5; 234 | } 235 | #commentform .comment-form-author .required, 236 | #commentform .comment-form-email .required, 237 | #commentform .comment-form-url .required { 238 | position:absolute; 239 | right:5px; 240 | top:0; 241 | } 242 | #commentform .comment-notes { 243 | font-size:.8em; 244 | } 245 | #commentform .form-allowed-tags { 246 | font-size:.8em; 247 | } 248 | #commentform .form-allowed-tags code { 249 | display:block; 250 | } 251 | #commentform #submit { 252 | position:relative; 253 | float:right; 254 | width:auto; 255 | } 256 | #commentform #submit { 257 | display:inline-block; 258 | background-color: #333; 259 | background: -webkit-gradient( linear, left top, left bottom, color-stop(.2, #555), color-stop(1, #222) ); 260 | background: -moz-linear-gradient( center top, #555 20%, #222 100% ); 261 | border-color:#444; 262 | color:#fff!important; 263 | line-height:1em; 264 | text-align:center; 265 | text-decoration:none!important; 266 | padding:6px 15px; 267 | margin: 1.4em 0; 268 | -moz-border-radius:15px; 269 | -webkit-border-radius:15px; 270 | border-radius:15px; 271 | border-width:1px; 272 | border-style:solid; 273 | text-shadow: 0 -1px 0 rgba(0,0,0,.3); 274 | -webkit-box-shadow: inset 0 1px 0 rgba(255,255,255,.3), 275 | inset 0 0 2px rgba(255,255,255,.3), 276 | 0 1px 3px rgba(0,0,0,.5); 277 | -moz-box-shadow: inset 0 1px 0 rgba(255,255,255,.3), 278 | inset 0 0 2px rgba(255,255,255,.3), 279 | 0 1px 2px rgba(0,0,0,.3); 280 | box-shadow: inset 0 1px 0 rgba(255,255,255,.3), 281 | inset 0 0 2px rgba(255,255,255,.3), 282 | 0 1px 2px rgba(0,0,0,.3); 283 | 284 | } 285 | #commentform #submit:hover { 286 | -webkit-box-shadow: inset 0 1px 0 rgba(255,255,255,.5), 287 | inset 0 -5px 30px rgba(255,255,255,.25), 288 | 0 1px 2px rgba(0,0,0,.3); 289 | -moz-box-shadow: inset 0 1px 0 rgba(255,255,255,.5), 290 | inset 0 -5px 30px rgba(255,255,255,.25), 291 | 0 1px 2px rgba(0,0,0,.3); 292 | box-shadow: inset 0 1px 0 rgba(255,255,255,.5), 293 | inset 0 -5px 30px rgba(255,255,255,.25), 294 | 0 1px 2px rgba(0,0,0,.3); 295 | } 296 | #commentform #submit:active { 297 | border-color: #20559a; 298 | -webkit-box-shadow: inset 0 3px 7px rgba(0,0,0,.5), 299 | 0 1px 0 rgba(255,255,255, 0); 300 | -moz-box-shadow: inset 0 3px 7px rgba(0,0,0,.5), 301 | 0 1px 0 rgba(255,255,255, 0); 302 | box-shadow: inset 0 3px 7px rgba(0,0,0,.5), 303 | 0 1px 0 rgba(255,255,255, 0); 304 | } 305 | -------------------------------------------------------------------------------- /includes/scripts/admin.js: -------------------------------------------------------------------------------- 1 | ;(function($) { 2 | $(document).ready(function(){ 3 | 4 | // Add collapse toggles to postboxes 5 | postboxes.add_postbox_toggles( 'sb_admin' ); 6 | 7 | // Collapse postboxes that should be closed 8 | $('.if-js-closed').removeClass('if-js-closed').addClass('closed'); 9 | 10 | // Dynamically replace font-size units 11 | $("select.font-unit").change(function() { 12 | $('span.font-unit').text($(this).val()); 13 | }); 14 | 15 | var thumbnails = ".post_thumbnail_rss, .post_thumbnail_use_attachments, .post_thumbnail_align, .post_thumbnail_hide_nophoto, .post_thumbnail_width, .post_thumbnail_height, .post_thumbnail_default_image"; 16 | $(thumbnails).hide(); 17 | 18 | // Show/Hide Logo Options 19 | $("#startbox\\[logo-select\\]").change(function(){ 20 | 21 | if ( $(this).val() == 'image' ) { 22 | $('.logo-align').slideDown(300); 23 | $('.logo-text').slideUp(300); 24 | $('.logo-image').slideDown(300); 25 | } else if ( $(this).val() == 'text' ) { 26 | $('.logo-align').slideDown(300); 27 | $('.logo-text').slideDown(300); 28 | $('.logo-image').slideUp(300); 29 | } else { 30 | $('.logo-align').slideUp(300); 31 | $('.logo-text').slideUp(300); 32 | $('.logo-image').slideUp(300); 33 | } 34 | 35 | }); 36 | $("#startbox\\[logo-select\\]").change(); 37 | 38 | // Show/Hide Thumbnail options 39 | $("#startbox\\[enable_post_thumbnails\\]").change(function(){ 40 | 41 | if ( $(this).attr('checked') ) { 42 | $(thumbnails).slideDown(300); 43 | $("#startbox\\[post_thumbnail_hide_nophoto\\]").change(); 44 | } else { 45 | $(thumbnails).slideUp(300); 46 | } 47 | 48 | }); 49 | $("#startbox\\[enable_post_thumbnails\\]").change(); 50 | 51 | // Show/Hide Default Thumbnail Image option 52 | $("#startbox\\[post_thumbnail_hide_nophoto\\]").change(function(){ 53 | 54 | if ( $(this).attr('checked') ) { 55 | $('.post_thumbnail_default_image').slideUp(300); 56 | } else { 57 | $('.post_thumbnail_default_image').slideDown(300); 58 | } 59 | 60 | }); 61 | $("#startbox\\[post_thumbnail_hide_nophoto\\]").change(); 62 | 63 | // Dynamically show/hide primary extras 64 | 65 | // Show Primary Nav Social Extras, only if social is selected and primary nav isn't disabled 66 | var primary_social = ".primary_nav-social-extras"; 67 | var primary = ".primary_nav-position, .primary_nav-depth, .primary_nav-extras, .primary_nav-enable-home, primary_social"; 68 | $(primary).hide(); 69 | 70 | // Show/Hide Primary nav social extras 71 | $("#startbox\\[primary_nav-extras\\]").change(function(){ 72 | if ( $(this).val() == 'social' && $("#startbox\\[primary_nav\\]").val() != 'none' ) { 73 | $(primary_social).slideDown(300); 74 | } else { 75 | $(primary_social).slideUp(300); 76 | } 77 | }); 78 | 79 | // Show/Hide Primary nav options 80 | $("#startbox\\[primary_nav\\]").change(function(){ 81 | 82 | if ( $(this).val() != 'none' ) { 83 | $(primary).slideDown(300); 84 | } else { 85 | $(primary).slideUp(300); 86 | } 87 | $("#startbox\\[primary_nav-extras\\]").change(); // Trigger the social options to show/hide accordingly 88 | 89 | }); 90 | $("#startbox\\[primary_nav\\]").change(); 91 | 92 | // Show/Hide Secondary nav options 93 | var secondary_social = ".secondary_nav-social-extras"; 94 | var secondary = ".secondary_nav-position, .secondary_nav-depth, .secondary_nav-extras, .secondary_nav-enable-home, secondary_social"; 95 | $(secondary).hide(); 96 | 97 | // Show/Hide Primary nav social extras 98 | $("#startbox\\[secondary_nav-extras\\]").change(function(){ 99 | if ( $(this).val() == 'social' && $("#startbox\\[secondary_nav\\]").val() != 'none' ) { 100 | $(secondary_social).slideDown(300); 101 | } else { 102 | $(secondary_social).slideUp(300); 103 | } 104 | }); 105 | 106 | $("#startbox\\[secondary_nav\\]").change(function(){ 107 | 108 | if ( $(this).val() != 'none' ) { 109 | $(secondary).slideDown(300); 110 | } else { 111 | $(secondary).slideUp(300); 112 | } 113 | $("#startbox\\[secondary_nav-extras\\]").change(); // Trigger the social options to show/hide accordingly 114 | 115 | }); 116 | $("#startbox\\[secondary_nav\\]").change(); 117 | 118 | // Show/Hide Footer nav options 119 | var footer = ".footer_nav-position, .footer_nav-depth, .footer_nav-extras, .footer_nav-enable-home"; 120 | $(footer).hide(); 121 | $("#startbox\\[footer_nav\\]").change(function(){ 122 | 123 | if ( $(this).val() != 'none' ) { 124 | $(footer).slideDown(300); 125 | } else { 126 | $(footer).slideUp(300); 127 | } 128 | 129 | }); 130 | $("#startbox\\[footer_nav\\]").change(); 131 | 132 | // Imagepicker / Uploader 133 | function sb_attach_imagepicker() 134 | { 135 | $('.imagepickerinput').each(function(index) { 136 | 137 | 138 | if(!this.hasEventHander) 139 | { 140 | var instance = this; // because this function has a strange structure and the this gets overwritten 141 | 142 | // Hide the Preview link if the input value is empty, show it as soon as there is a value 143 | $('.uploadinput', instance).change(function() { 144 | if ( ! $('.uploadinput', instance).val() ) { 145 | $('.previewlink', instance).hide(); 146 | } else { 147 | $('.previewlink', instance).show(); 148 | } 149 | }).change(); 150 | 151 | // Preview Button 152 | $('.previewlink', instance).click(function() { 153 | $(this).colorbox({href: $('.uploadinput', instance).val(), maxWidth:"90%", maxHeight:"90%", opacity:0.6}); 154 | }); 155 | 156 | // Upload/Choose File Button (Media Library handler) 157 | $('.chooselink', instance).click(function(event) { 158 | event.preventDefault(); 159 | wp.media.editor.open($(this)); 160 | wp.media.editor.send.attachment = function(props, attachment){ 161 | $('.uploadinput', instance).val(attachment.url); 162 | }; 163 | }); 164 | 165 | this.hasEventHander = true; 166 | } 167 | }); 168 | } // sb_attach_imagepicker() 169 | sb_attach_imagepicker(); 170 | 171 | 172 | // Attach the Colorpicker 173 | $('.colorpickerinput').each(function(index) { 174 | if(!this.hasEventHander) 175 | { 176 | 177 | var instance = this; // because this function has a strange structure and the this gets overwritten 178 | var val = $(".colorinput", instance).val(); // on attach value 179 | 180 | if(val.length < 4) 181 | { 182 | val = '#ffffff'; 183 | $(".colorinput", instance).val(val); 184 | } 185 | 186 | $("span.colorselector span", instance).css('backgroundColor', val); 187 | 188 | function sb_validate_colorinput(inst1, inst2) { 189 | var value = $(inst1).val().replace('#',''); // strip hash 190 | if(value == 'transparent') 191 | return true; 192 | if(value.length != 6) 193 | { 194 | if(value.length == 3) 195 | value = value + value; 196 | else if(value.length === 0) 197 | value = 'ffffff'; 198 | } 199 | value = '#' + value; // add back hash 200 | $(inst1).val(value); 201 | $('.colorselector span', inst2).css('backgroundColor', value); 202 | } 203 | 204 | $(".colorselector", instance).ColorPicker({ 205 | color: $(".colorinput", instance).val(), 206 | onShow: function (colpkr) { 207 | sb_validate_colorinput($(".colorinput", instance), instance); 208 | $(this).ColorPickerSetColor($(".colorinput", instance).val()); // incase they changed it by hand 209 | $(colpkr).fadeIn('fast'); 210 | return false; 211 | }, 212 | jQuery: function (colpkr) { 213 | $(colpkr).fadeOut('fast'); 214 | return false; 215 | }, 216 | onChange: function (hsb, hex, rgb) { 217 | $('.colorselector span', instance).css('backgroundColor', '#' + hex); 218 | $('.colorinput', instance).val('#' + hex); 219 | } 220 | }); 221 | 222 | // if they changed it by hand, validate the input 223 | $(".colorinput", instance).change(function() { 224 | sb_validate_colorinput(this, instance); 225 | }); 226 | 227 | this.hasEventHander = true; 228 | 229 | } 230 | 231 | }); 232 | 233 | 234 | }); 235 | })(jQuery); -------------------------------------------------------------------------------- /includes/scripts/colorpicker/js/utils.js: -------------------------------------------------------------------------------- 1 | /** 2 | * 3 | * Utilities 4 | * Author: Stefan Petre www.eyecon.ro 5 | * 6 | */ 7 | (function($) { 8 | EYE.extend({ 9 | getPosition : function(e, forceIt) 10 | { 11 | var x = 0; 12 | var y = 0; 13 | var es = e.style; 14 | var restoreStyles = false; 15 | if (forceIt && jQuery.curCSS(e,'display') == 'none') { 16 | var oldVisibility = es.visibility; 17 | var oldPosition = es.position; 18 | restoreStyles = true; 19 | es.visibility = 'hidden'; 20 | es.display = 'block'; 21 | es.position = 'absolute'; 22 | } 23 | var el = e; 24 | if (el.getBoundingClientRect) { // IE 25 | var box = el.getBoundingClientRect(); 26 | x = box.left + Math.max(document.documentElement.scrollLeft, document.body.scrollLeft) - 2; 27 | y = box.top + Math.max(document.documentElement.scrollTop, document.body.scrollTop) - 2; 28 | } else { 29 | x = el.offsetLeft; 30 | y = el.offsetTop; 31 | el = el.offsetParent; 32 | if (e != el) { 33 | while (el) { 34 | x += el.offsetLeft; 35 | y += el.offsetTop; 36 | el = el.offsetParent; 37 | } 38 | } 39 | if (jQuery.browser.safari && jQuery.curCSS(e, 'position') == 'absolute' ) { 40 | x -= document.body.offsetLeft; 41 | y -= document.body.offsetTop; 42 | } 43 | el = e.parentNode; 44 | while (el && el.tagName.toUpperCase() != 'BODY' && el.tagName.toUpperCase() != 'HTML') 45 | { 46 | if (jQuery.curCSS(el, 'display') != 'inline') { 47 | x -= el.scrollLeft; 48 | y -= el.scrollTop; 49 | } 50 | el = el.parentNode; 51 | } 52 | } 53 | if (restoreStyles == true) { 54 | es.display = 'none'; 55 | es.position = oldPosition; 56 | es.visibility = oldVisibility; 57 | } 58 | return {x:x, y:y}; 59 | }, 60 | getSize : function(e) 61 | { 62 | var w = parseInt(jQuery.curCSS(e,'width'), 10); 63 | var h = parseInt(jQuery.curCSS(e,'height'), 10); 64 | var wb = 0; 65 | var hb = 0; 66 | if (jQuery.curCSS(e, 'display') != 'none') { 67 | wb = e.offsetWidth; 68 | hb = e.offsetHeight; 69 | } else { 70 | var es = e.style; 71 | var oldVisibility = es.visibility; 72 | var oldPosition = es.position; 73 | es.visibility = 'hidden'; 74 | es.display = 'block'; 75 | es.position = 'absolute'; 76 | wb = e.offsetWidth; 77 | hb = e.offsetHeight; 78 | es.display = 'none'; 79 | es.position = oldPosition; 80 | es.visibility = oldVisibility; 81 | } 82 | return {w:w, h:h, wb:wb, hb:hb}; 83 | }, 84 | getClient : function(e) 85 | { 86 | var h, w; 87 | if (e) { 88 | w = e.clientWidth; 89 | h = e.clientHeight; 90 | } else { 91 | var de = document.documentElement; 92 | w = window.innerWidth || self.innerWidth || (de&&de.clientWidth) || document.body.clientWidth; 93 | h = window.innerHeight || self.innerHeight || (de&&de.clientHeight) || document.body.clientHeight; 94 | } 95 | return {w:w,h:h}; 96 | }, 97 | getScroll : function (e) 98 | { 99 | var t=0, l=0, w=0, h=0, iw=0, ih=0; 100 | if (e && e.nodeName.toLowerCase() != 'body') { 101 | t = e.scrollTop; 102 | l = e.scrollLeft; 103 | w = e.scrollWidth; 104 | h = e.scrollHeight; 105 | } else { 106 | if (document.documentElement) { 107 | t = document.documentElement.scrollTop; 108 | l = document.documentElement.scrollLeft; 109 | w = document.documentElement.scrollWidth; 110 | h = document.documentElement.scrollHeight; 111 | } else if (document.body) { 112 | t = document.body.scrollTop; 113 | l = document.body.scrollLeft; 114 | w = document.body.scrollWidth; 115 | h = document.body.scrollHeight; 116 | } 117 | if (typeof pageYOffset != 'undefined') { 118 | t = pageYOffset; 119 | l = pageXOffset; 120 | } 121 | iw = self.innerWidth||document.documentElement.clientWidth||document.body.clientWidth||0; 122 | ih = self.innerHeight||document.documentElement.clientHeight||document.body.clientHeight||0; 123 | } 124 | return { t: t, l: l, w: w, h: h, iw: iw, ih: ih }; 125 | }, 126 | getMargins : function(e, toInteger) 127 | { 128 | var t = jQuery.curCSS(e,'marginTop') || ''; 129 | var r = jQuery.curCSS(e,'marginRight') || ''; 130 | var b = jQuery.curCSS(e,'marginBottom') || ''; 131 | var l = jQuery.curCSS(e,'marginLeft') || ''; 132 | if (toInteger) 133 | return { 134 | t: parseInt(t, 10)||0, 135 | r: parseInt(r, 10)||0, 136 | b: parseInt(b, 10)||0, 137 | l: parseInt(l, 10) 138 | }; 139 | else 140 | return {t: t, r: r, b: b, l: l}; 141 | }, 142 | getPadding : function(e, toInteger) 143 | { 144 | var t = jQuery.curCSS(e,'paddingTop') || ''; 145 | var r = jQuery.curCSS(e,'paddingRight') || ''; 146 | var b = jQuery.curCSS(e,'paddingBottom') || ''; 147 | var l = jQuery.curCSS(e,'paddingLeft') || ''; 148 | if (toInteger) 149 | return { 150 | t: parseInt(t, 10)||0, 151 | r: parseInt(r, 10)||0, 152 | b: parseInt(b, 10)||0, 153 | l: parseInt(l, 10) 154 | }; 155 | else 156 | return {t: t, r: r, b: b, l: l}; 157 | }, 158 | getBorder : function(e, toInteger) 159 | { 160 | var t = jQuery.curCSS(e,'borderTopWidth') || ''; 161 | var r = jQuery.curCSS(e,'borderRightWidth') || ''; 162 | var b = jQuery.curCSS(e,'borderBottomWidth') || ''; 163 | var l = jQuery.curCSS(e,'borderLeftWidth') || ''; 164 | if (toInteger) 165 | return { 166 | t: parseInt(t, 10)||0, 167 | r: parseInt(r, 10)||0, 168 | b: parseInt(b, 10)||0, 169 | l: parseInt(l, 10)||0 170 | }; 171 | else 172 | return {t: t, r: r, b: b, l: l}; 173 | }, 174 | traverseDOM : function(nodeEl, func) 175 | { 176 | func(nodeEl); 177 | nodeEl = nodeEl.firstChild; 178 | while(nodeEl){ 179 | EYE.traverseDOM(nodeEl, func); 180 | nodeEl = nodeEl.nextSibling; 181 | } 182 | }, 183 | getInnerWidth : function(el, scroll) { 184 | var offsetW = el.offsetWidth; 185 | return scroll ? Math.max(el.scrollWidth,offsetW) - offsetW + el.clientWidth:el.clientWidth; 186 | }, 187 | getInnerHeight : function(el, scroll) { 188 | var offsetH = el.offsetHeight; 189 | return scroll ? Math.max(el.scrollHeight,offsetH) - offsetH + el.clientHeight:el.clientHeight; 190 | }, 191 | getExtraWidth : function(el) { 192 | if($.boxModel) 193 | return (parseInt($.curCSS(el, 'paddingLeft'))||0) 194 | + (parseInt($.curCSS(el, 'paddingRight'))||0) 195 | + (parseInt($.curCSS(el, 'borderLeftWidth'))||0) 196 | + (parseInt($.curCSS(el, 'borderRightWidth'))||0); 197 | return 0; 198 | }, 199 | getExtraHeight : function(el) { 200 | if($.boxModel) 201 | return (parseInt($.curCSS(el, 'paddingTop'))||0) 202 | + (parseInt($.curCSS(el, 'paddingBottom'))||0) 203 | + (parseInt($.curCSS(el, 'borderTopWidth'))||0) 204 | + (parseInt($.curCSS(el, 'borderBottomWidth'))||0); 205 | return 0; 206 | }, 207 | isChildOf: function(parentEl, el, container) { 208 | if (parentEl == el) { 209 | return true; 210 | } 211 | if (!el || !el.nodeType || el.nodeType != 1) { 212 | return false; 213 | } 214 | if (parentEl.contains && !$.browser.safari) { 215 | return parentEl.contains(el); 216 | } 217 | if ( parentEl.compareDocumentPosition ) { 218 | return !!(parentEl.compareDocumentPosition(el) & 16); 219 | } 220 | var prEl = el.parentNode; 221 | while(prEl && prEl != container) { 222 | if (prEl == parentEl) 223 | return true; 224 | prEl = prEl.parentNode; 225 | } 226 | return false; 227 | }, 228 | centerEl : function(el, axis) 229 | { 230 | var clientScroll = EYE.getScroll(); 231 | var size = EYE.getSize(el); 232 | if (!axis || axis == 'vertically') 233 | $(el).css( 234 | { 235 | top: clientScroll.t + ((Math.min(clientScroll.h,clientScroll.ih) - size.hb)/2) + 'px' 236 | } 237 | ); 238 | if (!axis || axis == 'horizontally') 239 | $(el).css( 240 | { 241 | left: clientScroll.l + ((Math.min(clientScroll.w,clientScroll.iw) - size.wb)/2) + 'px' 242 | } 243 | ); 244 | } 245 | }); 246 | if (!$.easing.easeout) { 247 | $.easing.easeout = function(p, n, firstNum, delta, duration) { 248 | return -delta * ((n=n/duration-1)*n*n*n - 1) + firstNum; 249 | }; 250 | } 251 | 252 | })(jQuery); -------------------------------------------------------------------------------- /includes/extensions/theme-customizer.php: -------------------------------------------------------------------------------- 1 | '', 17 | 'random-default' => false, 18 | 'width' => 960, 19 | 'height' => 240, 20 | 'flex-height' => false, 21 | 'flex-width' => false, 22 | 'default-text-color' => '#111111', 23 | 'header-text' => true, 24 | 'uploads' => true, 25 | 'wp-head-callback' => '', 26 | 'admin-head-callback' => '', 27 | 'admin-preview-callback' => '', 28 | ); 29 | add_theme_support( 'custom-header', $header_defaults ); 30 | 31 | 32 | $background_defaults = array( 33 | 'default-color' => '#ffffff', 34 | 'default-image' => '', 35 | 'wp-head-callback' => '_custom_background_cb', 36 | 'admin-head-callback' => '', 37 | 'admin-preview-callback' => '' 38 | ); 39 | add_theme_support( 'custom-background', $background_defaults ); 40 | 41 | add_action( 'customize_register', 'sb_customize_register' ); 42 | function sb_customize_register($wp_customize) { 43 | 44 | /********************** Remove Stock Sections **********************/ 45 | // http://wptheming.com/2012/06/add-options-to-theme-customizer-default-sections/ 46 | $wp_customize->remove_section( 'title_tagline' ); 47 | // $wp_customize->remove_section( 'colors' ); 48 | // $wp_customize->remove_section( 'header_image' ); 49 | // $wp_customize->remove_section( 'background_image' ); 50 | 51 | /********************** Register New Controls **********************/ 52 | 53 | class _Customize_Textarea_Control extends WP_Customize_Control { 54 | public $type = 'textarea'; 55 | 56 | public function render_content() { 57 | ?> 58 | 62 | add_section( 'sb_branding', array( 70 | 'title' => __( 'Title, Tagline & Branding', 'startbox' ), 71 | 'priority' => 20, 72 | ) ); 73 | 74 | $wp_customize->add_setting( 'blogname', array( 75 | 'default' => get_option( 'blogname' ), 76 | 'type' => 'option', 77 | 'capability' => 'manage_options', 78 | ) ); 79 | 80 | $wp_customize->add_control( 'blogname', array( 81 | 'label' => __( 'Site Title' ), 82 | 'section' => 'sb_branding', 83 | 'priority' => 10 84 | ) ); 85 | 86 | $wp_customize->add_setting( 'blogdescription', array( 87 | 'default' => get_option( 'blogdescription' ), 88 | 'type' => 'option', 89 | 'capability' => 'manage_options', 90 | ) ); 91 | 92 | $wp_customize->add_control( 'blogdescription', array( 93 | 'label' => __( 'Site Tagline' ), 94 | 'section' => 'sb_branding', 95 | 'priority' => 20 96 | ) ); 97 | 98 | $wp_customize->add_setting( 'startbox[tagline]', array( 99 | 'type' => 'option', 100 | 'capability' => 'manage_options', 101 | ) ); 102 | 103 | $wp_customize->add_control( 'startbox[tagline]', array( 104 | 'label' => __( 'Display Site Tagline in Header' ), 105 | 'section' => 'sb_branding', 106 | 'type' => 'checkbox', 107 | 'priority' => 30 108 | ) ); 109 | 110 | $wp_customize->add_setting( 'startbox[logo-type]', array( 111 | 'default' => '', 112 | 'type' => 'option', 113 | 'capability' => 'edit_theme_options', 114 | ) ); 115 | 116 | $wp_customize->add_control( 'startbox[logo-type]', array( 117 | 'label' => __( 'Logo Display' ), 118 | 'section' => 'sb_branding', 119 | 'type' => 'select', 120 | 'choices' => array( 121 | 'image' => 'Image', 122 | 'text' => 'Site Title (plain text)', 123 | 'disabled' => 'Disabled' 124 | ), 125 | 'priority' => 40 126 | ) ); 127 | 128 | $wp_customize->add_setting( 'startbox[logo-align]', array( 129 | 'default' => '', 130 | 'type' => 'option', 131 | 'capability' => 'edit_theme_options', 132 | ) ); 133 | 134 | $wp_customize->add_control( 'startbox[logo-align]', array( 135 | 'label' => __( 'Logo Alignment' ), 136 | 'section' => 'sb_branding', 137 | 'type' => 'select', 138 | 'choices' => array( 139 | 'left' => 'Left', 140 | 'center' => 'Center', 141 | 'right' => 'Right' 142 | ), 143 | 'priority' => 50 144 | ) ); 145 | 146 | $wp_customize->add_setting( 'startbox[logo-image]', array( 147 | 'default' => '', 148 | 'type' => 'option', 149 | 'capability' => 'edit_theme_options', 150 | ) ); 151 | 152 | $wp_customize->add_control( new WP_Customize_Image_Control( $wp_customize, 'startbox[logo-image]', array( 153 | 'label' => __( 'Logo Image' ), 154 | 'section' => 'sb_branding', 155 | 'settings' => 'startbox[logo-image]', 156 | 'priority' => 60 157 | ))); 158 | 159 | $wp_customize->add_setting( 'startbox[favicon]', array( 160 | 'default' => '', 161 | 'type' => 'option', 162 | 'capability' => 'edit_theme_options', 163 | ) ); 164 | 165 | $wp_customize->add_control( new WP_Customize_Image_Control( $wp_customize, 'startbox[favicon]', array( 166 | 'label' => 'Favicon', 167 | 'section' => 'sb_branding', 168 | 'settings' => 'startbox[favicon]', 169 | 'priority' => 70 170 | ))); 171 | 172 | /********************** Colors & Styles Section **********************/ 173 | 174 | $wp_customize->add_section( 'colors', array( 175 | 'title' => __( 'Colors & Styles', 'startbox' ), 176 | 'priority' => 30, 177 | ) ); 178 | 179 | $wp_customize->add_setting( 'background_color', array( 180 | 'default' => get_theme_support( 'custom-background', 'default-color' ), 181 | 'theme_supports' => 'custom-background', 182 | 183 | 'sanitize_callback' => 'sanitize_hex_color_no_hash', 184 | 'sanitize_js_callback' => 'maybe_hash_hex_color', 185 | ) ); 186 | 187 | $wp_customize->add_control( new WP_Customize_Color_Control( $wp_customize, 'background_color', array( 188 | 'label' => __( 'Page Background Color' ), 189 | 'section' => 'colors', 190 | 'priority' => 1 191 | ) ) ); 192 | 193 | $wp_customize->add_setting( 'header_bgcolor', array( 194 | 'theme_supports' => array( 'custom-header', 'header-text' ), 195 | 'default' => get_theme_support( 'custom-header', 'default-text-color' ), 196 | 'sanitize_callback' => 'sanitize_hex_color_no_hash', 197 | 'sanitize_js_callback' => 'maybe_hash_hex_color', 198 | ) ); 199 | 200 | $wp_customize->add_control( new WP_Customize_Color_Control( $wp_customize, 'header_bgcolor', array( 201 | 'label' => __( 'Header Background Color' ), 202 | 'section' => 'colors', 203 | 'priority' => 5 204 | ) ) ); 205 | 206 | /********************** Footer Section **********************/ 207 | 208 | $wp_customize->add_section( 'sb_footer', array( 209 | 'title' => __( 'Footer', 'startbox' ), 210 | 'priority' => 100, 211 | ) ); 212 | 213 | $wp_customize->add_setting( 'startbox[enable_rtt]', array( 214 | 'default' => true, 215 | 'type' => 'option', 216 | 'capability' => 'edit_theme_options', 217 | ) ); 218 | 219 | $wp_customize->add_control( 'startbox[enable_rtt]', array( 220 | 'label' => __( 'Enable "Return to Top" Link' ), 221 | 'section' => 'sb_footer', 222 | 'type' => 'checkbox', 223 | 'priority' => 10 224 | ) ); 225 | 226 | $wp_customize->add_setting( 'startbox[enable_admin]', array( 227 | 'default' => true, 228 | 'type' => 'option', 229 | 'capability' => 'edit_theme_options', 230 | ) ); 231 | 232 | $wp_customize->add_control( 'startbox[enable_admin]', array( 233 | 'label' => __( 'Enable Admin Links' ), 234 | 'section' => 'sb_footer', 235 | 'type' => 'checkbox', 236 | 'priority' => 20 237 | ) ); 238 | 239 | $wp_customize->add_setting( 'startbox[footer_text]', array( 240 | 'default' => 'Copyright ©[copyright year="' . date('Y') . '"] [site_link]. All Rights Reserved. 241 | Proudly powered by [WordPress] and [StartBox].', 242 | 'type' => 'option', 243 | 'capability' => 'edit_theme_options', 244 | ) ); 245 | 246 | $wp_customize->add_control( new _Customize_Textarea_Control( $wp_customize, 'startbox[footer_text]', array( 247 | 'label' => __( 'Footer Text' ), 248 | 'section' => 'sb_footer', 249 | 'settings' => 'startbox[footer_text]', 250 | 'priority' => 30 251 | ) ) ); 252 | 253 | } 254 | 255 | add_action( 'customize_register', 'sb_customizer_controls', 0 ); 256 | function sb_customizer_controls() { 257 | 258 | } -------------------------------------------------------------------------------- /includes/functions/comment_format.php: -------------------------------------------------------------------------------- 1 | *' ); 23 | 24 | $fields = array( 25 | 'author' => '

    ' . ' ' . ( $req ? '*' : '' ) . 26 | '

    ', 27 | 'email' => '', 29 | 'url' => '

    ' . 30 | '

    ', 31 | ); 32 | 33 | $defaults['title_reply'] = __( 'Add Your Comment', 'startbox' ).' (Get a Gravatar)'; 34 | $defaults['fields'] = apply_filters( 'comment_form_default_fields', $fields ); 35 | $defaults['comment_field'] = ''; 36 | $defaults['comment_notes_before'] = ''; 37 | $defaults['comment_notes_after'] = '

    ' . __( 'Your email address will not be published.', 'startbox' ) . ( $req ? $required_text : '' ) . '.

    '; 38 | $defaults['label_submit'] = __( 'Post Your Comment', 'startbox' ); 39 | 40 | return $defaults; 41 | } 42 | add_filter( 'comment_form_defaults', 'sb_comment_defaults' ); 43 | 44 | /** 45 | * Clear comment website value if default value not changed 46 | * 47 | * @since 2.7.0 48 | * @param array $comment_content The array containing our default comment content 49 | * @return array Our potentially updated comment content 50 | */ 51 | function sb_comment_save( $comment_content ) { 52 | 53 | if ( __( 'Your Website (optional)', 'startbox' ) == $comment_content['comment_author_url'] ) 54 | $comment_content['comment_author_url'] = ''; 55 | 56 | return $comment_content; 57 | 58 | } 59 | add_filter( 'preprocess_comment', 'sb_comment_save' ); 60 | 61 | /** 62 | * Output comment form meta content 63 | * 64 | * @since Unknown 65 | */ 66 | function sb_insert_comment_form() { ?> 67 |
    68 |
    69 | user_email, apply_filters( 'sb_comment_gravatar_size', 60 ) ); } else { ?><?php _e('Get a Gravatar!', 'startbox'); ?> 70 | display_name ); } else { _e('Your Name', 'startbox'); } ?> 71 |
    72 | 73 | 74 | 75 |
    76 |

    '; 78 | } 79 | add_action( 'comment_form_top', 'sb_insert_comment_form' ); 80 | 81 | /** 82 | * Adds default StartBox gravatar to the list in Settings > Discussion to replace Mystery Man 83 | * 84 | * @since 2.4.8 85 | */ 86 | function sb_avatar_defaults($avatar_defaults) { 87 | unset($avatar_defaults['mystery']); 88 | $sb_mystery = IMAGES_URL . '/comments/gravatar.png'; 89 | $avatar_defaults[$sb_mystery] = 'Mystery Man (enhanced)'; 90 | 91 | if (get_option('avatar_default') === 'mystery') { update_option('avatar_default', $sb_mystery); } 92 | return $avatar_defaults; 93 | } 94 | add_filter( 'avatar_defaults', 'sb_avatar_defaults' ); 95 | 96 | /** 97 | * Produces an avatar image with the hCard-compliant photo class 98 | * 99 | * Override this function in a child theme by creating your own sb_commenter_link() function 100 | * 101 | * Used by sb_comments() for displaying comment author information 102 | * 103 | * @since 1.4.0 104 | */ 105 | function sb_commenter_link() { 106 | global $avatar_defaults; 107 | $commenter = get_comment_author_link(); 108 | if ( ereg( ']* class=[^>]+>', $commenter ) ) { 109 | $commenter = ereg_replace( '(]* class=[\'"]?)', '\\1comment-author-name ' , $commenter ); 110 | } else { 111 | $commenter = ''.$commenter.''; 112 | } 113 | $avatar_email = get_comment_author_email(); 114 | $avatar_size = apply_filters( 'sb_comment_gravatar_size', '60' ); // Available filter: sb_comment_gravatar_size 115 | $avatar_default = apply_filters( 'sb_comment_gravatar_default', get_option('avatar_default') ); // Available filter: sb_comment_gravatar_default. Note: must be full URL 116 | $avatar = str_replace( "class='avatar", "class='photo avatar", get_avatar( $avatar_email, $avatar_size, $avatar_default ) ); 117 | echo $avatar . ' ' . $commenter . ''; 118 | } 119 | 120 | /** 121 | * Template for comments 122 | * 123 | * Override this function in a child theme by creating your own sb_comments() function 124 | * 125 | * Used as a callback by wp_list_comments() for displaying the comments in comments.php. 126 | * 127 | * @since 1.4.0 128 | * @uses sb_commenter_link() 129 | * 130 | */ 131 | if ( !function_exists( 'sb_comments' ) ) { 132 | function sb_comments($comment, $args, $depth) { 133 | $GLOBALS['comment'] = $comment; 134 | ?> 135 |
  • > 136 |
    137 | 141 | comment_approved == '0') _e("\t\t\t\t\tYour comment is awaiting moderation.\n", 'startbox') ?> 142 |
    143 | 144 | 145 | 159 |
    160 |
    161 | ' . get_comment_author_link() . '
  • '; 176 | } 177 | } 178 | -------------------------------------------------------------------------------- /includes/admin/admin.php: -------------------------------------------------------------------------------- 1 | add_menu( array( 'id' => 'theme-options', 'parent' => 'appearance', 'title' => __('Theme Options', 'startbox'), 'href' => admin_url( 'themes.php?page=sb_admin' ) ) ); 33 | } 34 | add_action( 'wp_before_admin_bar_render', 'sb_admin_bar_init' ); 35 | 36 | /** 37 | * Adds contextual help for all StartBox Options 38 | * 39 | * @since 2.5.5 40 | */ 41 | function sb_admin_help() { 42 | global $sb_admin, $wp_version; 43 | 44 | // Make sure we're on at least WP3.3 45 | if ( version_compare( $wp_version, '3.3', '>=' ) ) { 46 | $screen = get_current_screen(); 47 | 48 | // Don't add help tab if screen is not sb_admin 49 | if ( $screen->id != $sb_admin ) return; 50 | 51 | // Grab our theme options 52 | global $sb_settings_factory; 53 | $defaults = $theme_options = get_option( THEME_OPTIONS ); 54 | $settings = $sb_settings_factory->settings; 55 | 56 | // Add our generic helper text no matter what 57 | $screen->add_help_tab( array( 58 | 'id' => 'sb_need_help', 59 | 'title' => __( 'Additional Resources', 'startbox' ), 60 | 'content' => __( '

    Additional Resources

    ', 'startbox' ) . '

    ' . sprintf( __( 'For more information, try the %s or %s.', 'startbox' ), '' . __( 'Theme Documentation', 'startbox') . '', '' . __( 'Support Forum', 'startbox' ) . '' ) . '

    ' 61 | ) ); 62 | 63 | // Loop through each option panel 64 | foreach ( $settings as $setting ) { 65 | 66 | // Only include options panels that have a description set 67 | if ( isset($setting->description) ) { 68 | $output = ''; 69 | $output .= '

    ' . $setting->name . '

    '; 70 | $output .= '

    ' . $setting->description . '

    '; 71 | 72 | // loop through each individual option to find help text, include it in output if found 73 | $options = $setting->options; 74 | foreach( $options as $option_id => $option ) { 75 | if ( isset( $option['help'] ) ) 76 | $output .= '

    ' . rtrim( $option['label'], ':' ) . ' – ' . $option['help'] . '

    '; 77 | } 78 | 79 | // Add the help tab 80 | $screen->add_help_tab( array( 81 | 'id' => $setting->slug, 82 | 'title' => $setting->name, 83 | 'content' => $output, 84 | ) ); 85 | } // end if isset 86 | } // end foreach 87 | } // end if version compare 88 | 89 | } 90 | 91 | function sb_admin_load() { 92 | 93 | global $sb_admin; 94 | 95 | add_screen_option( 'layout_columns', array('max' => 2, 'default' => 2) ); 96 | 97 | // Load the scripts for handling metaboxes 98 | wp_enqueue_script('common'); 99 | wp_enqueue_script('wp-lists'); 100 | wp_enqueue_script('postbox'); 101 | 102 | // Load StartBox-specific scripts and styles 103 | wp_enqueue_script( 'colorbox' ); 104 | wp_enqueue_script( 'jquery-colorpicker', SCRIPTS_URL . '/colorpicker/js/colorpicker.js' ); 105 | wp_enqueue_script( 'sb-admin', SCRIPTS_URL . '/admin.js', array('jquery-colorpicker') ); 106 | wp_enqueue_style( 'colorpicker', SCRIPTS_URL . '/colorpicker/css/colorpicker.css' ); 107 | wp_enqueue_style( 'sb-admin', STYLES_URL . '/admin.css' ); 108 | wp_enqueue_style( 'colorbox' ); 109 | 110 | // Load scripts for TinyMCE (Credit: Lee Doel) 111 | if ( user_can_richedit() ){ 112 | wp_enqueue_script('editor'); 113 | wp_enqueue_script('media-upload'); 114 | wp_enqueue_style( 'thickbox' ); 115 | } 116 | 117 | // Reset our theme options back to default 118 | if ( sb_get_option('reset') ) { sb_set_default_options(); wp_redirect( admin_url( 'themes.php?page=sb_admin&reset=true' ) ); } 119 | } 120 | 121 | /** 122 | * Adds the Screen Options tab with 2 columns. Credit: http://www.code-styling.de/english/how-to-use-wordpress-metaboxes-at-own-plugins 123 | */ 124 | function sb_screen_options($columns, $screen) { 125 | global $sb_admin; 126 | if ($screen == $sb_admin) { 127 | $columns[$sb_admin] = 2; 128 | } 129 | return $columns; 130 | } 131 | // add_filter('screen_layout_columns', 'sb_screen_options', 10, 2); 132 | 133 | 134 | 135 | /** 136 | * Callback for StartBox Theme Options Page layout 137 | * 138 | * @since 2.2.8 139 | */ 140 | function sb_admin_page() { global $sb_admin; ?> 141 | 142 |
    143 |

    144 | 145 |

    146 | 147 |

    ' . THEME_NAME . ' ' . __( 'Options Updated.', 'startbox') . '

    '; 150 | } 151 | ?> 152 | 153 |
    154 |
    155 | 167 |
    168 |
    169 | 170 |
    171 |
    172 | 173 |
    174 | 175 |
    176 | 177 | 178 |
    179 |
    180 | 181 | 186 |
    187 | 188 | 189 |
    190 | settings; 196 | 197 | foreach ( $settings as $setting ) { 198 | $options = $setting->options; 199 | foreach ( $options as $option_id => $option ) { 200 | 201 | // Forcefully set unchecked checkboxes to false so they retain a vailue when unchecked 202 | if ($option['type'] == 'checkbox' && !isset($inputs[$option_id])) { 203 | $inputs[$option_id] = false; 204 | } 205 | // Basic KSES sanitization 206 | if ( isset( $option['kses'] ) ) { 207 | if ( true === $option['kses'] || ( is_string( $option['kses'] ) && !current_user_can( $option['kses'] ) ) ) 208 | $inputs[$option_id] = wp_kses_post( $inputs[$option_id] ); 209 | } 210 | // Sanitize untrusted textual inputs. Defaults to true. Set 'sanitize' => false for no satitization, or use 'sanitize' => array( 'allowed_html' => '', 'allowed_protocols' => '' ) to allow specific tags. 211 | if ( ( $option['type'] == 'text' || $option['type'] == 'textarea') && ( isset($option['sanitize']) && $option['sanitize'] != false ) ) { 212 | $inputs[$option_id] = wp_kses( $inputs[$option_id], $option['sanitize']['allowed_html'], ( empty ( $option['sanitize']['allowed_protocols']) ? array() : $option['sanitize']['allowed_protocols'] ) ); 213 | } 214 | 215 | } 216 | } 217 | return $inputs; 218 | } -------------------------------------------------------------------------------- /includes/styles/shortcodes.css: -------------------------------------------------------------------------------- 1 | /**************************************************************************************************************** 2 | 3 | Default styles for Shortcodes 4 | 5 | **************************************************************************************************************** 6 | 7 | Table of Contents 8 | 9 | **************************************************************************************************************** 10 | 11 | 1. Buttons 12 | 2. Lists 13 | 3. Content Boxes 14 | 4. Columns 15 | 5. Dividers 16 | 17 | **************************************************************************************************************** 18 | 19 | 1. Buttons 20 | 21 | ****************************************************************************************************************/ 22 | 23 | .button { 24 | display:inline-block; 25 | background-color: #333; 26 | background: -webkit-gradient( linear, left top, left bottom, color-stop(.2, #555), color-stop(1, #222) ); 27 | background: -moz-linear-gradient( center top, #555 20%, #222 100% ); 28 | border-color:#444; 29 | color:#fff!important; 30 | line-height:1em; 31 | text-align:center; 32 | text-decoration:none!important; 33 | padding:6px 15px; 34 | margin: 1.4em 0; 35 | -moz-border-radius:15px; 36 | -webkit-border-radius:15px; 37 | border-radius:15px; 38 | border-width:1px; 39 | border-style:solid; 40 | text-shadow: 0 -1px 0 rgba(0,0,0,.3); 41 | -webkit-box-shadow: inset 0 1px 0 rgba(255,255,255,.3), 42 | inset 0 0 2px rgba(255,255,255,.3), 43 | 0 1px 3px rgba(0,0,0,.5); 44 | -moz-box-shadow: inset 0 1px 0 rgba(255,255,255,.3), 45 | inset 0 0 2px rgba(255,255,255,.3), 46 | 0 1px 2px rgba(0,0,0,.3); 47 | box-shadow: inset 0 1px 0 rgba(255,255,255,.3), 48 | inset 0 0 2px rgba(255,255,255,.3), 49 | 0 1px 2px rgba(0,0,0,.3); 50 | } 51 | .button:hover { 52 | -webkit-box-shadow: inset 0 1px 0 rgba(255,255,255,.5), 53 | inset 0 -5px 30px rgba(255,255,255,.25), 54 | 0 1px 2px rgba(0,0,0,.3); 55 | -moz-box-shadow: inset 0 1px 0 rgba(255,255,255,.5), 56 | inset 0 -5px 30px rgba(255,255,255,.25), 57 | 0 1px 2px rgba(0,0,0,.3); 58 | box-shadow: inset 0 1px 0 rgba(255,255,255,.5), 59 | inset 0 -5px 30px rgba(255,255,255,.25), 60 | 0 1px 2px rgba(0,0,0,.3); 61 | } 62 | .button:active { 63 | border-color: #20559a; 64 | -webkit-box-shadow: inset 0 3px 7px rgba(0,0,0,.5), 65 | 0 1px 0 rgba(255,255,255, 0); 66 | -moz-box-shadow: inset 0 3px 7px rgba(0,0,0,.5), 67 | 0 1px 0 rgba(255,255,255, 0); 68 | box-shadow: inset 0 3px 7px rgba(0,0,0,.5), 69 | 0 1px 0 rgba(255,255,255, 0); 70 | } 71 | .button.small { padding:5px 10px; font-size:0.8em;} 72 | .button.large { padding:8px 16px; font-size:1.4em;} 73 | .button.xl { padding:10px 20px; font-size:1.8em;} 74 | 75 | /* Default Button Colors */ 76 | .button.red { 77 | background-color: #c20; 78 | background: -webkit-gradient( linear, left top, left bottom, color-stop(.2, #e40), color-stop(1, #a20) ); 79 | background: -moz-linear-gradient( center top, #e40 20%, #c20 100% ); 80 | border-color:#e40; 81 | } 82 | .button.orange { 83 | background-color: #e70; 84 | background: -webkit-gradient( linear, left top, left bottom, color-stop(.2, #f90), color-stop(1, #e70) ); 85 | background: -moz-linear-gradient( center top, #f90 20%, #e70 100% ); 86 | border-color:#f90; 87 | } 88 | .button.yellow { 89 | background-color: #ec0; 90 | background: -webkit-gradient( linear, left top, left bottom, color-stop(.2, #fd0), color-stop(1, #db0) ); 91 | background: -moz-linear-gradient( center top, #fd0 20%, #ec0 100% ); 92 | border-color:#ec0; 93 | } 94 | .button.green { 95 | background-color: #4a0; 96 | background: -webkit-gradient( linear, left top, left bottom, color-stop(.2, #6c0), color-stop(1, #4a0) ); 97 | background: -moz-linear-gradient( center top, #6c0 20%, #4a0 100% ); 98 | border-color:#4a0; 99 | } 100 | .button.blue { 101 | background-color: #07e; 102 | background: -webkit-gradient( linear, left top, left bottom, color-stop(.2, #0af), color-stop(1, #07e) ); 103 | background: -moz-linear-gradient( center top, #0af 20%, #07e 100% ); 104 | border-color:#0af; 105 | } 106 | .button.purple { 107 | background-color: #704; 108 | background: -webkit-gradient( linear, left top, left bottom, color-stop(.2, #b06), color-stop(1, #704) ); 109 | background: -moz-linear-gradient( center top, #b06 20%, #704 100% ); 110 | border-color:#b06; 111 | } 112 | .button.dark { 113 | background-color: #333; 114 | background: -webkit-gradient( linear, left top, left bottom, color-stop(.2, #555), color-stop(1, #222) ); 115 | background: -moz-linear-gradient( center top, #555 20%, #222 100% ); 116 | border-color:#444; 117 | } 118 | .button.light { 119 | background-color: #eee; 120 | background: -webkit-gradient( linear, left top, left bottom, color-stop(.2, #eee), color-stop(1, #bbb) ); 121 | background: -moz-linear-gradient( center top, #eee 20%, #bbb 100% ); 122 | color:#111!important; 123 | border-color:#ccc; 124 | } 125 | 126 | /**************************************************************************************************************** 127 | 128 | 2. Lists 129 | 130 | ****************************************************************************************************************/ 131 | .check_list, .arrow_list { 132 | list-style:none!important; 133 | } 134 | .check_list li, .arrow_list li { 135 | padding-left:20px; 136 | background-repeat:no-repeat; 137 | background-position:0 0; 138 | } 139 | .check_list li { background-image:url('../../images/icons/check.png'); } 140 | .arrow_list li {} 141 | 142 | /**************************************************************************************************************** 143 | 144 | 3. Content Boxes 145 | 146 | ****************************************************************************************************************/ 147 | 148 | .box { 149 | display:block; 150 | background:#eeeee7; 151 | color:#222; 152 | padding:10px 20px; 153 | border-width:1px 0; 154 | border-style:solid; 155 | position:relative; 156 | clear:both; 157 | } 158 | .box.info { 159 | background:#eeeee7; 160 | border-color:#ccc; 161 | } 162 | .box.dark { 163 | background:#333; 164 | border:#111; 165 | color:#eee; 166 | } 167 | .box.alert { 168 | background:#f88 url('../../images/icons/alert.png') no-repeat 10px 50%; 169 | border-color:#900; 170 | padding-left:45px; 171 | } 172 | .box.download { 173 | background:#ad8 url('../../images/icons/download.png') no-repeat 10px 50%; 174 | border-color:#5a2; 175 | padding-left:45px; 176 | } 177 | .box.check { 178 | background:#eeeee7 url('../../images/icons/check.png') no-repeat 10px 50%; 179 | border-color:#ccc; 180 | padding-left:45px; 181 | } 182 | .box.note { 183 | background:#ffa url('../../images/icons/note.png') no-repeat 10px 50%; 184 | border-color:#cc3; 185 | padding-left:45px; 186 | } 187 | 188 | /**************************************************************************************************************** 189 | 190 | 4. Columns 191 | 192 | ****************************************************************************************************************/ 193 | 194 | .column { width:100%; margin-right:4%; position:relative; float:left; } 195 | .column.last { clear:right; margin-right:0; } 196 | .one_half { width:48%; } 197 | .one_third { width:30.66%; } 198 | .two_thirds { width:65.33%; } 199 | .one_fourth { width:22%; } 200 | .three_fourths { width:74%; } 201 | .one_fifth { width:16.8%; } 202 | .two_fifths { width:37.6%; } 203 | .three_fifths { width:58.4%; } 204 | .four_fifths { width:79.2%; } 205 | .one_sixth { width:13.33%; } 206 | .five_sixths { width:82.67%; } 207 | 208 | /**************************************************************************************************************** 209 | 210 | 5. Dividers 211 | 212 | ****************************************************************************************************************/ 213 | 214 | .divider, .hr { 215 | background:url('../../images/line.png') repeat-x 0 50%; 216 | min-height:1px; 217 | position:relative; 218 | clear:both; 219 | text-align:center; 220 | } 221 | .divider .rtt, .hr .rtt { 222 | display:inline; 223 | background:#fff; 224 | padding:5px; 225 | } 226 | 227 | /**************************************************************************************************************** 228 | 229 | 6. Toggles 230 | 231 | ****************************************************************************************************************/ 232 | 233 | 234 | /**************************************************************************************************************** 235 | 236 | 7. Protected Content 237 | 238 | ****************************************************************************************************************/ 239 | 240 | .protected { 241 | background:#eee; 242 | color:#555; 243 | font-style:italic; 244 | border:1px solid #ddd; 245 | border-width:1px 0; 246 | margin:0 auto; 247 | padding:15px; 248 | text-align:center; 249 | } 250 | .protected form { 251 | margin-top:15px; 252 | } --------------------------------------------------------------------------------