extras.lib.php 3.46 KB
Newer Older
Joel Kuder's avatar
Joel Kuder committed
1 2 3 4 5 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 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109
<?php
// PHP-Version ausgeben. Beipspiel (PHP-Version 4.1.2-stable): 412
/**
 * extra_phpversion()
 *
 * @author designerscripte.net
 * @category system
 * @version 2.5.0
 * @example extra_phpversion();
 * @return phpversion
 */
function extra_phpversion () {
	$ver = explode ('.', phpversion ());
	return ($ver[0].$ver[1].$ver[2]);
}


/**
 * extra_cleantable()
 *
 * Löscht alle Datensätze aus Tabelle [table] wenn keine gueltige
 * UserID zu dem angegebenen Feld [row] existiert.
 * @author designerscripte.net
 * @category system
 * @version 2.5.0
 * @example extra_cleantable('anteile','uid');
 * @param mixed $table Tabellenname
 * @param mixed $row zeilenanzahl
 * @return keine
 */
function extra_cleantable ($table, $row) {
  global $db_prefix;
	return db_query ('DELETE x FROM '.$table.' AS x LEFT JOIN '.$db_prefix.'_kontodaten AS u ON (u.uid = x.'.$row.') WHERE u.uid IS NULL');
}


/**
 * extra_securevars()
 *
 * @param mixed $array
 * @return
 */
function extra_securevars($array){
global $GLOBALS;
   foreach($array as $key=>$value) {
      if(is_array($array[$key])) {
          $result[$key] = extra_securevars($array[$key]);
      }
      else{
         if (get_magic_quotes_gpc ()) $result[$key] = stripslashes ($value);
         else $result[$key] = $value;
      }
   }
   if(isset($result)) return $result;
}


/**
 * print_a()
 *
 * Funktion um ein Array optisch darzustellen
 * @author designerscripte.net
 * @category system
 * @version 2.5.0
 * @param array $TheArray Array
 * @return echo optisch dargestelltes array
 */
function print_a ( $TheArray )
{ // Note: the function is recursive
  echo '<table border=1 cellpadding=1 style="border-collapse: collapse; font: 8pt Arial;">'."\n";

  $Keys = array_keys( $TheArray );
  foreach( $Keys as $OneKey )
  {
    echo '<tr>'."\n";

    echo '<td bgcolor="#727450" style="color: #ededed;">'."\n";
    echo '<B>' . $OneKey . '</B>';
    echo '</td>'."\n";

    echo '<td bgcolor="#C4C2A6">'."\n";
    if ( is_array($TheArray[$OneKey]) )
      print_a($TheArray[$OneKey]);
    else
      echo $TheArray[$OneKey];
    echo '</td>'."\n";

    echo '</tr>'."\n";
  }
  echo '</table>'."\n";
}

// Erweiterte E-Mail-Funktion
/**
 * usermail()
 * @author designerscripte.net
 * @category system
 * @version 2.5.0
 * @param mixed $an email adresse
 * @param mixed $betreff betreff
 * @param mixed $nachricht inhalt
 * @param mixed $von absender
 * @return
 */
function usermail ($an, $betreff, $nachricht, $von) {
    // HTML-Codes entfernen
    $nachricht = strip_tags ($nachricht);

      // zunächst fehlende Protokollprefixe ergänzen
110
    $nachricht = str_replace(' www.',' http://www.',$nachricht);
Joel Kuder's avatar
Joel Kuder committed
111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142
    $pattern = '#([^\"=>]|(?:r />))(http://)([^\s<>,]+(?=\.\s)|[^\s<>,]+)([\s\n<>,\.])#sm';
    $replacement = "$1<a title=\"der Link zu dieser URL wurde automatisch hinzugefügt\" target=\"extern\" href=\"$2$3\">$2$3</a>$4";
    $html_text = preg_replace($pattern,$replacement,$nachricht);

    // Nachricht mit HTML
    $html_nachricht = '<HTML>
<HEAD>
    <STYLE TYPE="text/css">
    <!--
    H1 {font-family: Verdana; font-size: 18pt}
    BODY {font-family: Verdana; font-size: 10pt; margin-left: 30px}
    // -->
    </STYLE>
</HEAD>
<BODY BGCOLOR="beige">

<H1>'.$betreff.'</H1>

'.nl2br($html_text).'

</BODY>
</HTML>';

$Header = "MIME-Version: 1.0\n";
$Header .= "Content-type: text/html; charset=iso-8859-1\n";
$Header .= "From: ".$von."\n";

return mail($an, $betreff, $html_nachricht, $Header);
}


require (dirname (realpath (__FILE__)) . '/extras.init.php');