| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102 | 
							- <?php
 
- /**
 
-  * @file
 
-  * The theme system, which controls the output of the messages.
 
-  */
 
- function mimemail_theme_theme() {
 
-   $path = drupal_get_path('module', 'mimemail') . '/theme';
 
-   return array(
 
-     'mimemail_message' => array(
 
-       'variables' => array('module' => NULL, 'key' => NULL, 'recipient' => NULL, 'subject' => NULL, 'body' => NULL),
 
-       'template' => 'mimemail-message',
 
-       'pattern' => 'mimemail_message__',
 
-       'file' => 'mimemail.theme.inc',
 
-       'mail theme' => TRUE,
 
-       'path' => $path,
 
-     )
 
-   );
 
- }
 
- /**
 
-  * A preprocess function for theme('mimemail_message').
 
-  *
 
-  * The $variables array initially contains the following arguments:
 
-  * - $recipient: The recipient of the message
 
-  * - $key:  The mailkey associated with the message
 
-  * - $subject: The message subject
 
-  * - $body:  The message body
 
-  *
 
-  * @see mimemail-message.tpl.php
 
-  */
 
- function template_preprocess_mimemail_message(&$variables) {
 
-   $theme = mailsystem_get_mail_theme();
 
-   $themepath = drupal_get_path('theme', $theme);
 
-   $sitestyle = variable_get('mimemail_sitestyle', 1);
 
-   $mailstyles = file_scan_directory($themepath, '#^mail\.css*$#');
 
-   // Check recursively for the existence of a mail.css file in the theme folder.
 
-   if (!empty($mailstyles)) {
 
-     foreach ($mailstyles as $mailstyle) {
 
-       $styles = $mailstyle->uri;
 
-     }
 
-   }
 
-   // If no mail.css was found and the site style sheets including is enabled,
 
-   // gather all style sheets and embed a version of all style definitions.
 
-   elseif ($sitestyle) {
 
-     // Grab local.css if it exists (support for Fusion based themes).
 
-     $local = $themepath . '/css/local.css';
 
-     if (@file_exists($local)) {
 
-       $css_all = drupal_add_css($local, array('group' => CSS_THEME));
 
-     }
 
-     else {
 
-       $css_all = drupal_add_css();
 
-     }
 
-     $css_files = array();
 
-     foreach ($css_all as $key => $options) {
 
-       if ($options['group'] == CSS_THEME && $options['type'] == 'file' &&
 
-         ($options['media'] == 'all' || $options['media'] == 'screen')) {
 
-         $css_files[$key] = $options;
 
-       }
 
-     }
 
-     if (variable_get('preprocess_css', FALSE)) {
 
-       $pattern = '|<link.*href="' . $GLOBALS['base_url'] . '/([^"?]*)[?"].*|';
 
-       $replacement = '\1';
 
-     }
 
-     else {
 
-       $pattern = array(
 
-         '/<([^<>]*)>/', // Remove the style tag.
 
-         '/@import\s+url\("([^"]+)"\);+/', // Remove the import directive.
 
-         '|' . $GLOBALS['base_url'] . '/([^"?]*)[?"].*|' // Remove the base URL.
 
-       );
 
-       $replacement = array('', '\1', '\1');
 
-     }
 
-     $styles = preg_replace($pattern, $replacement, drupal_get_css($css_files));
 
-   }
 
-   $css = '';
 
-   if (isset($styles)) {
 
-     // Process each style sheet.
 
-     foreach (explode("\n", $styles) as $style) {
 
-       if (!empty($style)) {
 
-         $css .= drupal_load_stylesheet($style, TRUE);
 
-       }
 
-     }
 
-     // Wordwrap to adhere to RFC821
 
-     $css = wordwrap($css, 700);
 
-   }
 
-   // Set styles for the message.
 
-   $variables['css'] = $css;
 
-   // Set template alternatives.
 
-   $variables['theme_hook_suggestions'][] = 'mimemail_message__' . str_replace('-', '_', $variables['key']);
 
-    // Process identifiers to be proper CSS classes.
 
-   $variables['module'] = str_replace('_', '-', $variables['module']);
 
-   $variables['key'] = str_replace('_', '-', $variables['key']);
 
- }
 
 
  |