From b91bdf0f610f2e11883f91b2fc03e58a59cd3148 Mon Sep 17 00:00:00 2001 From: Brian Date: Wed, 19 Oct 2016 11:49:18 -0400 Subject: [PATCH] Initial Commit --- grandchild-functions.php | 41 ++++ grandchild-scripts.js | 5 + grandchild-styles.css | 411 +++++++++++++++++++++++++++++++++++++++ img/.DS_Store | Bin 0 -> 6148 bytes template-class.php | 221 +++++++++++++++++++++ 5 files changed, 678 insertions(+) create mode 100644 grandchild-functions.php create mode 100644 grandchild-scripts.js create mode 100644 grandchild-styles.css create mode 100644 img/.DS_Store create mode 100644 template-class.php diff --git a/grandchild-functions.php b/grandchild-functions.php new file mode 100644 index 0000000..732df2d --- /dev/null +++ b/grandchild-functions.php @@ -0,0 +1,41 @@ + __( 'Header - Image' ), + 'id' => 'header-image', + 'description' => __( 'Widgets in this area will be shown in the header.' ), + 'before_title' => '

', + 'after_title' => '

', + ) ); +*/ diff --git a/grandchild-scripts.js b/grandchild-scripts.js new file mode 100644 index 0000000..a1f2680 --- /dev/null +++ b/grandchild-scripts.js @@ -0,0 +1,5 @@ +jQuery(document).ready(function() { + + //alert('grandchild'); + +}); diff --git a/grandchild-styles.css b/grandchild-styles.css new file mode 100644 index 0000000..3493993 --- /dev/null +++ b/grandchild-styles.css @@ -0,0 +1,411 @@ +/* main background color */ + +#content{ + background-color:#EBEBEB; +} + +/* main slider caption */ +.metaslider .caption{ + width:1200px; + margin-left:auto; + margin-right:auto +} + +/* main slider caption background color */ +.metaslider .caption-wrap{ + background-color:rgba(19, 124, 201, .86)!important; + opacity:1!important +} + +/* main slider space below */ +.home #content { + padding-top:0; + padding-bottom:0; +} + +/* menu buttons */ +.navbar-default .navbar-nav > li > a{ +color:#2764A8 +} + +/* main tile images */ +body.home .panel-grid img{ + border-top-left-radius:7px; + border-top-right-radius:7px; + width:100%; +} + +/* main tile paragraphs */ +.home_p{ + background-color:white; + border-radius:7px; + height:500px; + position:relative +} + + @media (min-width:767px) and (max-width: 991px) { + .home_p{ height:520px; + } + } + +/* padding around white boxes */ +.home_padding{ +padding:1em; +} + +/* top bar shadows */ +.top_bar h3{ +background-color: #f1f1f1; + /* Fallback Color */ + background-image: -webkit-gradient(linear, left top, left bottom, from(white), to(#f1f1f1)) !important; + /* Saf4+, Chrome */ + background-image: -webkit-linear-gradient(top, white, #f1f1f1) !important; + /* Chrome 10+, Saf5.1+, iOS 5+ */ + background-image: -moz-linear-gradient(top, white, #f1f1f1) !important; + /* FF3.6 */ + background-image: -ms-linear-gradient(top, white, #f1f1f1) !important; + /* IE10 */ + background-image: -o-linear-gradient(top, white, #f1f1f1) !important; + /* Opera 11.10+ */ + background-image: linear-gradient(top, white, #f1f1f1) !important; + filter: progid:DXImageTransform.Microsoft.gradient(GradientType=0,StartColorStr='white', EndColorStr='#f1f1f1') !important; + text-shadow: 0 1px 0 rgba(255, 255, 255, 0.8); +} + + +/* main buttons visit site */ + +#page #content .widget .btn-default{ + color:white!important; +} + +#page #content .widget .btn-default:hover{ + color:white!important; + border-color:white!important +} + +.btn.btn-default.red{ + background:#f8533b!important; +} + +.btn.btn-default.green{ + background:#5cb85c!important; +} + +.btn.btn-default.darkblue{ + background:#0e7ccc!important; +} + +.btn.btn-default.lightblue{ + background:#06b8be!important; +} + +.btn.btn-default.yellow{ + background:#f0ad4e!important; + border:1px solid #f0ad4e!important +} + +.btn.btn-default.purple{ + background:#9c1bc6!important; +} + +.home_buttons .btn.btn-default{ + position:absolute; + bottom:1.2em +} + +.btn.btn-default{ + text-shadow:0 0 0; +} + +/* related resources + iss */ +#pg-6-3 .so-panel.widget.widget_nav_menu.panel-first-child.panel-last-child{ + background-color: white; + +} + +/* home about iss */ +.so-panel.widget.widget_black-studio-tinymce.widget_black_studio_tinymce.panel-first-child.panel-last-child{ + background-color:white +} + +/* padding around boxes */ +/* related resources */ +.menu{ + padding: 2em; +} + +#pgc-6-4-0 .panel-grid-cell{ /* ---------------------- Try to avoid pgc-#-#-# because that's a dynamic page builder ID and could change if you rearrage things ---------------------*/ + padding-top:2em; + padding-bottom:2em ; +} + +/* background color of page */ +#content{ + background-color:#F6F6F6 +} + +/* box around comments in contact form */ +.textarea.medium{ + border:1px solid #CCCCCC +} + +input[type="text"]{ + border:1px solid #CCCCCC +} + +.gfield_select{ + border:1px solid #CCCCCC +} + +/* submit button on contact form */ +#gform_submit_button_1.gform_button.button{ + width: 150px!important; + border-radius: 5px; + color: white; + background-color: #3fa0f4; + border:1px solid #3fa0f4 +} + +.gform_button.button:hover{ + background-color: #0d7ad9; + border:1px solid #0d7ad9 +} + +#gform_1{ + border:1px solid #CCCCCC; + padding:2em; + border-radius:10px; + background-color: #f7f7f7; +} + +/*padding on top of input form */ +#input_1_6.medium{ + margin-top:2%; +} + +h5{ + font-size:16px; +} + +/* media queries */ + +@media screen and (max-width: 1199px) and (min-width: 990px){ + .metaslider .caption{ + width:970px; + } + +} + +@media screen and (max-width: 989px) and (min-width: 780px){ + .metaslider .caption{ + width:750px; + } + +} + +@media screen and (max-width: 779px){ + .metaslider .caption{ + width:655px; + } + +} + +/* staff images */ + +@media (max-width: 500px){ + .staff_image img{ + display:block +} + + +/* =================================================== BRIAN ADDITIONS =================================================== */ + +#content a { + color:#388ac3 !important; + text-decoration:none !important; +} + #content a:hover { + text-decoration:underline !important; + } + +#content p { + line-height:1.54em!important; +} + +#footers { + border-top:1px solid #ddd; +} + +.dropdown-submenu > .dropdown-menu { + border-radius: 0 0 6px 6px !important; +} + +body.home.page-template-page-blank h3.widget-title { + font-size: 13px !important; + text-shadow: 0 1px 0 rgba(255, 255, 255, 0.8); + padding:0.7em 15px; + border-bottom:1px solid #e5e5e5; +} + +body.home #content .panel-grid .widget { + border:1px solid #e0e0e0; +} + +body.home .widget.widget_black-studio-tinymce { + background-color:white !important; +} + +body.home .widget.widget_rcpt { + background-color:white !important; + padding-bottom:10px !important; +} + +body.home .rcpt_items { + padding-left: 15px; + padding-right: 15px; +} + +body.home .textwidget { + padding-left:15px; + padding-right:15px; + padding-bottom:10px !important; +} + +body.home .home_p .textwidget { + padding: 0 !important; +} + + @media (max-width:780px) { + body.home .home_p { + height:auto; + } + body.home .home_p .home_padding .btn.btn-default{ + position:relative; + bottom:0; + } + } + +body.home .widget ul.menu { + padding-left: 15px!important; + padding-right: 15px!important; + padding-bottom:10px !important; +} + +body.home #page #content .widget .btn-default { + text-shadow:none; + border-radius:5px !important; + box-shadow:none !important; +} + +body.home #page #content .widget .btn-default.red { + border:1px solid #D83722 !important; +} + body.home #page #content .widget .btn-default.red:hover { + background-color: #D83722 !important; + } + +body.home #page #content .widget .btn-default.green { + border:1px solid #42A342 !important; +} + body.home #page #content .widget .btn-default.green:hover { + background-color: #42A342 !important; + } + +body.home #page #content .widget .btn-default.darkblue { + border:1px solid #0660A0 !important; +} + body.home #page #content .widget .btn-default.darkblue:hover { + background-color: #0660A0 !important; + } + +body.home #page #content .widget .btn-default.lightblue { + border:1px solid #03A5A8 !important; +} + body.home #page #content .widget .btn-default.lightblue:hover { + background-color: #03A5A8 !important; + } + +body.home #page #content .widget .btn-default.yellow { + border:1px solid #D39134 !important; +} + body.home #page #content .widget .btn-default.yellow:hover { + background-color: #D39134 !important; + } + +body.home #page #content .widget .btn-default.purple { + border:1px solid #830FAA!important; +} + body.home #page #content .widget .btn-default.purple:hover { + background-color: #830FAA!important; + } + +body.home .panel-grid:nth-child(1){ + margin-bottom:0px!important; +} + body.home .panel-grid:nth-child(1) .widget { + border-radius:0px !important; + } + + body.home .panel-grid:nth-child(1) img { + border-radius:0px !important; + } + +body.home .panel-grid:nth-child(2){ + margin-bottom:15px !important; +} + + body.home .panel-grid:nth-child(2) .widget { + border:none !important; + background-color:transparent !important; + } + body.home .panel-grid:nth-child(2) .widget-title { + margin-bottom:0px !important; + font-size:20px !important; + padding-left:0px !important; + border-bottom:none; + } + body.home .panel-grid:nth-child(2) .widget .textwidget { + display:none; + } + + +body.home #content .panel-grid .widget { + background-color:white; +} + +body.home .about-provost .btn { + margin-top:20px; +} + +body.home .provost-office-text img { + float:left; + width:150px; + height:auto; + margin-right:13px; + margin-bottom:10px; + +} + +.body.home .youtube .textwidget { + padding:0 !important; + background-color:transparent !important; +} + + body.home .provost-office-text span { + line-height:1.75em; + } + +.home_padding strong { + font-size: 16px; +} + +body.home .article-date { + font-size:11px; + margin-bottom:15px; +} + +body.home .glyphicon-new-window { + display:none; +} + \ No newline at end of file diff --git a/img/.DS_Store b/img/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..5008ddfcf53c02e82d7eee2e57c38e5672ef89f6 GIT binary patch literal 6148 zcmeH~Jr2S!425mzP>H1@V-^m;4Wg<&0T*E43hX&L&p$$qDprKhvt+--jT7}7np#A3 zem<@ulZcFPQ@L2!n>{z**++&mCkOWA81W14cNZlEfg7;MkzE(HCqgga^y>{tEnwC%0;vJ&^%eQ zLs35+`xjp>T0templates = array(); + $this->plugin_locale = 'pte'; + + // Grab the translations for the plugin + add_action( 'init', array( $this, 'load_plugin_textdomain' ) ); + + // Add a filter to the page attributes metabox to inject our template into the page template cache. + add_filter('page_attributes_dropdown_pages_args', array( $this, 'register_project_templates' ) ); + + // Add a filter to the save post in order to inject out template into the page cache + add_filter('wp_insert_post_data', array( $this, 'register_project_templates' ) ); + + // Add a filter to the template include in order to determine if the page has our template assigned and return it's path + add_filter('template_include', array( $this, 'view_project_template') ); + + // Register hooks that are fired when the plugin is activated, deactivated, and uninstalled, respectively. + register_deactivation_hook( __FILE__, array( $this, 'deactivate' ) ); + + // Add your templates to this array. + $this->templates = array( + 'page-sample.php' => __( 'Sample', $this->plugin_slug ), + //'page-sample2.php' => __( 'Sample2', $this->plugin_slug ), + //'page-sample3.php' => __( 'Sample3', $this->plugin_slug ), + ); + + // adding support for theme templates to be merged and shown in dropdown + $templates = wp_get_theme()->get_page_templates(); + $templates = array_merge( $templates, $this->templates ); + + } // end constructor + + /** + * Load the plugin text domain for translation. + * + * @since 1.0.0 + */ + public function load_plugin_textdomain() { + + $domain = $this->plugin_slug; + $locale = apply_filters( 'plugin_locale', get_locale(), $domain ); + + load_textdomain( $domain, trailingslashit( WP_LANG_DIR ) . $domain . '/' . $domain . '-' . $locale . '.mo' ); + load_plugin_textdomain( $domain, FALSE, basename( dirname( __FILE__ ) ) . '/languages/' ); + + } // end load_plugin_textdomain + + /** + * Adds our template to the pages cache in order to trick WordPress + * into thinking the template file exists where it doens't really exist. + * + * @param array $atts The attributes for the page attributes dropdown + * @return array $atts The attributes for the page attributes dropdown + * @verison 1.0.0 + * @since 1.0.0 + */ + public function register_project_templates( $atts ) { + + // Create the key used for the themes cache + $cache_key = 'page_templates-' . md5( get_theme_root() . '/' . get_stylesheet() ); + + // Retrieve the cache list. If it doesn't exist, or it's empty prepare an array + $templates = wp_cache_get( $cache_key, 'themes' ); + if ( empty( $templates ) ) { + $templates = array(); + } // end if + + // Since we've updated the cache, we need to delete the old cache + wp_cache_delete( $cache_key , 'themes'); + + // Now add our template to the list of templates by merging our templates + // with the existing templates array from the cache. + $templates = array_merge( $templates, $this->templates ); + + // Add the modified cache to allow WordPress to pick it up for listing + // available templates + wp_cache_add( $cache_key, $templates, 'themes', 1800 ); + + return $atts; + + } // end register_project_templates + + /** + * Checks if the template is assigned to the page + * + * @version 1.0.0 + * @since 1.0.0 + */ + public function view_project_template( $template ) { + + global $post; + + // If no posts found, return to + // avoid "Trying to get property of non-object" error + if ( !isset( $post ) ) return $template; + + if ( ! isset( $this->templates[ get_post_meta( $post->ID, '_wp_page_template', true ) ] ) ) { + return $template; + } // end if + + $file = plugin_dir_path( __FILE__ ) . 'templates/' . get_post_meta( $post->ID, '_wp_page_template', true ); + + // Just to be safe, we check if the file exist first + if( file_exists( $file ) ) { + return $file; + } // end if + + return $template; + + } // end view_project_template + + /*--------------------------------------------* + * deactivate the plugin + *---------------------------------------------*/ + static function deactivate( $network_wide ) { + foreach($this as $value) { + page-template-example::delete_template( $value ); + } + + } // end deactivate + + /*--------------------------------------------* + * Delete Templates from Theme + *---------------------------------------------*/ + public function delete_template( $filename ){ + $theme_path = get_template_directory(); + $template_path = $theme_path . '/' . $filename; + if( file_exists( $template_path ) ) { + unlink( $template_path ); + } + + // we should probably delete the old cache + wp_cache_delete( $cache_key , 'themes'); + } + + /** + * Retrieves and returns the slug of this plugin. This function should be called on an instance + * of the plugin outside of this class. + * + * @return string The plugin's slug used in the locale. + * @version 1.0.0 + * @since 1.0.0 + */ + public function get_locale() { + return $this->plugin_slug; + } // end get_locale + +} // end class