New filters introduced for page header, obsolete template removed:
[mailer.git] / inc / functions.php
index c6739d34edad671e46c55fc5831db94c6c225672..c1293681cef302da6f78545014bd5c7152985f6e 100644 (file)
@@ -18,6 +18,7 @@
  * svn:keywords Date Revision" (autoprobset!) at least!!!!!!            *
  * -------------------------------------------------------------------- *
  * Copyright (c) 2003 - 2009 by Roland Haeder                           *
+ * Copyright (c) 2009, 2010 by Mailer Developer Team                    *
  * For more information visit: http://www.mxchange.org                  *
  *                                                                      *
  * This program is free software; you can redistribute it and/or modify *
@@ -3686,7 +3687,7 @@ function sendModeMails ($mod, $modes) {
 }
 
 // Generates a 'selection box' from given array
-function generateSelectionBoxFromArray ($options, $name, $optionValue, $optionContent) {
+function generateSelectionBoxFromArray ($options, $name, $optionValue, $optionContent='') {
        // Start the output
        $OUT = '<select name="' . $name . '" size="1" class="admin_select">
 <option value="X" disabled="disabled">{--PLEASE_SELECT--}</option>';
@@ -3694,7 +3695,13 @@ function generateSelectionBoxFromArray ($options, $name, $optionValue, $optionCo
        // Walk through all options
        foreach ($options as $option) {
                // Add the <option> entry
-               $OUT .= '<option value="' . $option[$optionValue] . '">' . $option[$optionContent] . '</option>';
+               if (empty($optionContent)) {
+                       // ... from template
+                       $OUT .= loadTemplate('select_' . $name . '_option', true, $option);
+               } else {
+                       // Direct HTML code
+                       $OUT .= '<option value="' . $option[$optionValue] . '">' . $option[$optionContent] . '</option>';
+               }
        } // END - foreach
 
        // Finish selection box
@@ -3780,37 +3787,23 @@ function isSpider () {
        if (empty($userAgent)) return true;
 
        // Is it a spider?
-       return ((strpos($userAgent, 'spider') !== false) || (strpos($userAgent, 'slurp') !== false) || (strpos($userAgent, 'bot') !== false));
+       return ((strpos($userAgent, 'spider') !== false) || (strpos($userAgent, 'slurp') !== false) || (strpos($userAgent, 'bot') !== false) || (strpos($userAgent, 'archiver') !== false));
 }
 
 // Prepares the header for HTML output
 function loadHtmlHeader () {
-       // Determine the page title
-       $content['header_title'] = determinePageTitle();
+       // Run two filters:
+       // 1.) pre_page_header (mainly loads the page_header template and includes
+       //     meta description)
+       runFilterChain('pre_page_header');
 
-       // Output page header code
-       $GLOBALS['page_header'] = loadTemplate('page_header', true, $content);
-
-       // Include meta data in 'guest' module
-       if (getModule() == 'index') {
-               // Load meta data template
-               $GLOBALS['page_header'] .= loadTemplate('metadata', true);
-
-               // Add meta description to header
-               if ((isInstalled()) && (isAdminRegistered()) && (SQL_IS_LINK_UP())) {
-                       // Add meta description not in admin and login module and when the script is installed
-                       generateMetaDescriptionCode();
-               } // END - if
-       } // END - if
+       // Here can be something be added, but normally one of the two filters
+       // around this line should do the job for you.
 
+       // 2.) post_page_header (mainly to load stylesheet, extra JavaScripts and
+       //     to close the head-tag)
        // Include more header data here
-       $GLOBALS['page_header'] .= loadTemplate('header', true);
-
-       // Include stylesheet
-       loadIncludeOnce('inc/stylesheet.php');
-
-       // Closing HEAD tag
-       $GLOBALS['page_header'] .= '</head>';
+       runFilterChain('post_page_header');
 }
 
 // Adds page header and footer to output array element