]> git.mxchange.org Git - mailer.git/blobdiff - inc/template-functions.php
Several code-cleanups:
[mailer.git] / inc / template-functions.php
index 0c364ef457151a047c4b87d5dbedb00f3ad9c8b7..da8ddcfe8a674f6cf6d4b3829038174aa69aefd8 100644 (file)
@@ -16,7 +16,7 @@
  * $Author::                                                          $ *
  * -------------------------------------------------------------------- *
  * Copyright (c) 2003 - 2009 by Roland Haeder                           *
- * Copyright (c) 2009, 2010 by Mailer Developer Team                    *
+ * Copyright (c) 2009 - 2011 by Mailer Developer Team                   *
  * For more information visit: http://www.mxchange.org                  *
  *                                                                      *
  * This program is free software; you can redistribute it and/or modify *
@@ -74,7 +74,9 @@ function fixEmptyContentToDashes ($str) {
        $str = trim($str);
 
        // Is the string empty?
-       if (empty($str)) $str = '---';
+       if (empty($str)) {
+               $str = '---';
+       } // END - if
 
        // Return string
        return $str;
@@ -213,10 +215,10 @@ function doFinalCompilation ($code, $insertComments = true, $enableCodes = true)
        enableTemplateHtml($insertComments);
 
        // Init counter
-       $cnt = 0;
+       $count = 0;
 
        // Compile all out
-       while (((strpos($code, '{--') !== false) || (strpos($code, '{DQUOTE}') !== false) || (strpos($code, '{?') !== false) || (strpos($code, '{%') !== false)) && ($cnt < 5)) {
+       while (((strpos($code, '{--') !== false) || (strpos($code, '{DQUOTE}') !== false) || (strpos($code, '{?') !== false) || (strpos($code, '{%') !== false)) && ($count < 5)) {
                // Init common variables
                $content = array();
                $newContent = '';
@@ -239,7 +241,7 @@ function doFinalCompilation ($code, $insertComments = true, $enableCodes = true)
                $code = $newContent;
 
                // Count round
-               $cnt++;
+               $count++;
        } // END - while
 
        // Return the compiled code
@@ -279,7 +281,7 @@ function loadTemplate ($template, $return = false, $content = array()) {
 
                // Base directory
                $basePath = sprintf("%stemplates/%s/html/", getPath(), getLanguage());
-               $extraPath = detectExtraTemplatePath($template);;
+               $extraPath = detectExtraTemplatePath($template);
 
                // Generate FQFN
                $FQFN = $basePath . $extraPath . $template . '.tpl';
@@ -415,7 +417,7 @@ function detectExtraTemplatePath ($template) {
 }
 
 // Loads an email template and compiles it
-function loadEmailTemplate ($template, $content = array(), $userid = '0') {
+function loadEmailTemplate ($template, $content = array(), $userid = '0', $loadUserData = true) {
        global $DATA;
 
        // Make sure all template names are lowercase!
@@ -452,7 +454,7 @@ function loadEmailTemplate ($template, $content = array(), $userid = '0') {
 
                // Merge data if valid
                //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, "content()=".count($content)." - PRE<br />");
-               if (isUserDataValid()) {
+               if ((isUserDataValid()) && ($loadUserData === true)) {
                        $content = merge_array($content, getUserDataArray());
                } // END - if
                //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, "content()=".count($content)." - AFTER<br />");
@@ -483,7 +485,7 @@ function loadEmailTemplate ($template, $content = array(), $userid = '0') {
                $GLOBALS['tpl_content'][$template] = '$newContent = decodeEntities("' . compileRawCode(escapeQuotes($GLOBALS['tpl_content'][$template])) . '");';
                eval($GLOBALS['tpl_content'][$template]);
        } elseif (!empty($template)) {
-               // Template file not found!
+               // Template file not found
                $newContent = '<div class="para">
        {--TEMPLATE_404--}: ' . $template . '
 </div>
@@ -594,10 +596,7 @@ function compileRawCode ($code, $simple = false, $constants = true, $full = true
        $code = str_replace('{--', '{%message,', str_replace('--}', '%}', $code));
 
        // Compile QUOT and other non-HTML codes
-       foreach ($secChars['to'] as $k => $to) {
-               // Do the reversed thing as in inc/libs/security_functions.php
-               $code = str_replace($to, $secChars['from'][$k], $code);
-       } // END - foreach
+       $code = str_replace($secChars['to'], $secChars['from'], $code);
 
        // Find $content[bla][blub] entries
        // @TODO Do only use $content and deprecate $GLOBALS and $DATA in templates
@@ -619,7 +618,7 @@ function compileRawCode ($code, $simple = false, $constants = true, $full = true
                                // Does this entry exist?
                                //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, "found={$found},match={$match},set={$set}<br />");
                                if ($test == $match) {
-                                       // Match found!
+                                       // Match found
                                        //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, "fuzzyFound!<br />");
                                        $fuzzyFound = true;
                                        break;
@@ -1238,6 +1237,27 @@ function handleCodeMessage () {
        } // END - if
 }
 
+// Generates a 'extension foo out-dated' message
+function generateExtensionOutdatedMessage ($ext_name, $ext_ver) {
+       // Is the extension empty?
+       if (empty($ext_name)) {
+               // This should not happen
+               debug_report_bug(__FUNCTION__, __LINE__, 'Parameter ext is empty. This should not happen.');
+       } // END - if
+
+       // Default message
+       $message = getMaskedMessage('EXTENSION_PROBLEM_EXTENSION_OUTDATED', $ext_name);
+
+       // Is an admin logged in?
+       if (isAdmin()) {
+               // Then output admin message
+               $message = sprintf(getMessage('ADMIN_EXTENSION_PROBLEM_EXTENSION_INACTIVE'), $ext_name, $ext_name, $ext_ver);
+       } // END - if
+
+       // Return prepared message
+       return $message;
+}
+
 // Generates a 'extension foo inactive' message
 function generateExtensionInactiveMessage ($ext_name) {
        // Is the extension empty?
@@ -1312,7 +1332,7 @@ function linenumberCode ($code)    {
        $count_lines = count($codeE);
 
        $r = 'Line | Code:<br />';
-       foreach($codeE as $line => $c) {
+       foreach ($codeE as $line => $c) {
                $r .= '<div class="line"><span class="linenum">';
                if ($count_lines == 1) {
                        $r .= 1;
@@ -1373,7 +1393,7 @@ function determinePageTitle () {
                // Installation mode
                $pageTitle = '{--INSTALLER_OF_MAILER--}';
        } else {
-               // Configuration not found!
+               // Configuration not found
                $pageTitle = '{--NO_CONFIG_FOUND_TITLE--}';
 
                // Do not add the fatal message in installation mode
@@ -1706,18 +1726,30 @@ function doTemplateColorSwitch ($template, $clear = false, $return = true) {
 
 // Helper function for extension registration link
 function doTemplateExtensionRegistrationLink ($template, $dummy, $ext_name) {
-       // Default is all productive
-       $OUT = '<a title="{--ADMIN_REGISTER_EXTENSION_TITLE--}" href="{%url=modules.php?module=admin&amp;what=extensions&amp;reg_ext=' . $ext_name . '%}">{--ADMIN_REGISTER_EXTENSION--}</a>';
+       // Default is all non-productive
+       $OUT = '<em style="cursor:help" class="notice" title="{%message,ADMIN_EXTENSION_IS_NON_PRODUCTIVE_LINK_TITLE=' . $ext_name . '%}">{--ADMIN_EXTENSION_IS_NON_PRODUCTIVE_LINK--}</em>';
 
        // Is the given extension non-productive?
-       if (!isExtensionProductive($ext_name)) {
-               // Non-productive code
-               $OUT = '<em style="cursor:help" class="notice" title="{%message,ADMIN_EXTENSION_IS_NON_PRODUCTIVE_LINK_TITLE=' . $ext_name . '%}">{--ADMIN_EXTENSION_IS_NON_PRODUCTIVE_LINK--}</em>';
+       if (isExtensionProductive($ext_name)) {
+               // Productive code
+               $OUT = '<a title="{--ADMIN_REGISTER_EXTENSION_TITLE--}" href="{%url=modules.php?module=admin&amp;what=extensions&amp;reg_ext=' . $ext_name . '%}">{--ADMIN_REGISTER_EXTENSION--}</a>';
        } // END - if
 
        // Return code
        return $OUT;
 }
 
+// Helper function to create bonus mail admin links
+function doTemplateAdminBonusMailLinks ($template, $bonusId) {
+       // Call the inner function
+       return generateAdminMailLinks('bid', $bonusId);
+}
+
+// Helper function to create member mail admin links
+function doTemplateAdminMemberMailLinks ($template, $mailId) {
+       // Call the inner function
+       return generateAdminMailLinks('mid', $mailId);
+}
+
 // [EOF]
 ?>