= 1 && date("w",$res) <= 5){ $m++; } $res = $res-86400; } return $res; } function check_we($time){ if($time>1){ switch(date("w",$time)){ case 0: return "Sonntag"; case 1: return "Montag"; case 2: return "Dienstag"; case 3: return "Mittwoch"; case 4: return "Donnerstag"; case 5: return "Freitag"; case 6: return "Samstag"; } } } /* important! checkt, ob jeder port X-Loading Port einträge in Anlieferstation hat */ function check_loading_links(){ global $db; $get_loading_ports = $db->query("SELECT * FROM n_ports_list WHERE loading='yes'"); while($loading_port = $db->fetch_array($get_loading_ports)){ $get_all_ports = $db->query("SELECT * FROM n_ports_list"); while($port = $db->fetch_array($get_all_ports)){ $check = $db->query("SELECT * FROM anlieferadressen WHERE pol_id='".$loading_port["id"]."' && port_id='".$port["id"]."' LIMIT 1"); if(mysql_num_rows($check) == 0){ $db->query("INSERT INTO anlieferadressen (port_id,pol_id) VALUES ('".$port["id"]."','".$loading_port["id"]."')"); } } } } function show_print($vars){ global $do_print; if($do_print!=1){ echo '

'; } else { echo ' '; } } /** * Document::get_routes_from_ship_id() * * * @param * @return */ function get_routes_from_ship_id($ship_id) { global $db; $get_routes = $db->query("SELECT * FROM route WHERE ship_id='".$ship_id."'"); while($route = $db->fetch_array($get_routes)){ $routearray[] = $route["route_id"]."|".$route["route_name"]; } return $routearray; } /** * Document::get_ports_from_region($region) * * Gibt die Häfen aus einer Region in einem Array wieder. * * @param * @return */ function get_ports_from_subregion($sub_id,$pol) { global $db; $addpol = ($pol==true)?" && loading='yes'":" && loading!='yes'"; $get_ports = $db->query("SELECT region.*, a.port_name,a.region_id,a.sub_id, a.id FROM region,n_ports_list a WHERE region.region_id='".$sub_id."' && a.sub_id='".$sub_id."' ".$addpol." ORDER BY port_name ASC"); while($port = $db->fetch_array($get_ports)){ $portarray[] = $port["id"]."|".$port["port_name"]; } return $portarray; } /** * Document::get_ports_from_region($region) * * Gibt die Häfen aus einer Region in einem Array wieder. * * @param * @return */ function get_ports_from_region($region,$loading) { global $db; if($loading=="loading") { $loading = " && loading='yes'"; $region = ""; } else { unset($loading); } if($region=="") { $get_ports = $db->query("SELECT region.*,n_ports_list.id,n_ports_list.region_id,n_ports_list.port_name FROM region,n_ports_list WHERE region.region_id=n_ports_list.region_id ".$loading." ORDER BY port_name ASC"); } else { $get_ports = $db->query("SELECT region.*,n_ports_list.id,n_ports_list.region_id,n_ports_list.port_name FROM region,n_ports_list WHERE region.region_id='".$region."' && region.region_id=n_ports_list.region_id ".$loading." ORDER BY port_name ASC"); } while($port = $db->fetch_array($get_ports)){ $portarray[] = $port["id"]."|".$port["port_name"]; } return $portarray; } /** * Document::do_log($action) * * Schreibt einen Log Eintrag * * @param * @return */ function do_log($action) { global $db; $db->query("INSERT INTO logs (user_id,timestamp,beschreibung) VALUES ('".$_SESSION["user_id"]."','".time()."','".$action."')"); } /** * Document::get_ships() * * Gibt alle Schiffe in einem Array wieder. * * @param * @return */ function get_ships() { global $db; $ships = $db->query("SELECT * FROM n_ships_list ORDER BY ship_name ASC"); while($ship = $db->fetch_array($ships)) { $ship_array[] = $ship["id"]."|".$ship["ship_name"]; } return $ship_array; } /** * Document::get_subregions() * * Gibt die SubRegionen in einem Array wieder. * * @param * @return */ function get_subregions($region_id) { global $db; $sqladd = ($region_id)?" sub_id=".$region_id." && ":""; $regions = $db->query("SELECT * FROM region WHERE ".$sqladd." sub_id!='0' ORDER BY region ASC"); while($region = $db->fetch_array($regions)) { $region_array[] = $region["region_id"]."|".$region["region"]; } return $region_array; } /** * Document::get_regions() * * Gibt die Regionen in einem Array wieder. * * @param * @return */ function get_regions() { global $db; $regions = $db->query("SELECT * FROM region WHERE sub_id='0' ORDER BY region ASC"); while($region = $db->fetch_array($regions)) { $region_array[] = $region["region_id"]."|".$region["region"]; } return $region_array; } /** * Document::do_select() * * Macht aus einem Array ein Selectfeld * * @param * @return */ function do_select($values,$name,$css,$auswahl) { $output = ''; return $output; } /** * Document::_email() * * Ermöglicht einen komfortablen Versand der E-Mails inkl. aller nötigen Header. * * @param string $to * @param string $from * @param string $subject * @param string $text * @param integer $html * @return */ function _email($to,$from,$subject,$text,$html=0) { $headers = "From: Anker-Leschaco Online Booking<".$from.">\n"; $headers .= "X-Sender: <".$from.">\n"; $headers .= "X-Mailer: PHP/".phpversion()."\n"; $headers .= "X-Priority: 1\n"; // 1 Wichtig, 3 Normal if($html!=0) $headers .= "Content-Type: text/html; charset=iso-8859-1\n"; if(mail($to,_strr($subject),_strr($text),$headers)) { return TRUE; echo 'versendet'; } else { return FALSE; echo 'nicht versendet'; } } /** * Document::parse_errors() * * Gibt Fehlermeldungen aus. * * @param array $error * @return */ function parse_errors($error) { foreach($error AS $field => $errmessage) { $error[$field] = '
'.$errmessage.''; } return $error; } /** * Document::verify_email() * * Überprüft $email, ob die Syntax der E-Mail Adresse gültig ist. * * @param string $email * @return */ function verify_email($email) { return (!preg_match("/^(.+)@[a-zA-Z0-9-]+\.[a-zA-Z.]+$/si", $email) ? false : true); } /** * Document::do_bytes() * * Formatiert die angegebenen Bytes als B, KB, MB, GB oder TB aus. * * @param integer $size * @return */ function do_bytes($size) { $kb = 1024; // Kilobyte $mb = 1024 * $kb; // Megabyte $gb = 1024 * $mb; // Gigabyte $tb = 1024 * $gb; // Terabyte if($size==0) return "n/a"; if($size < $kb) { return $size." B"; } else if($size < $mb) { return round($size/$kb,2)." KB"; } else if($size < $gb) { return round($size/$mb,2)." MB"; } else if($size < $tb) { return round($size/$gb,2)." GB"; } else { return round($size/$tb,2)." TB"; } } /** * Document::repeat() * * Wiederholt $char $times mal. * * @param string $char * @param integer $times * @return */ function repeat($char,$times) { $counter = 0; $retstring = ""; while($counter++<$times) $retstring.=$char; return $retstring; } /** * Document::nullstellen() * * Fügt einem integer die in der Konstante "NULLSTELLEN" angegebene Anzahl von Nullen hinzu. * * @param integer $int * @return */ function nullstellen($int) { return strlen($int)==NULLSTELLEN ? $int : repeat(0,NULLSTELLEN - strlen($int)).$int; } /** * Document::_month() * * Gibt den Monat aus. * * @param integer $num * @param integer $all * @return */ function _month($num=0,$all=0) { $month = array(); $month[1] = "Januar"; $month[2] = "Februar"; $month[3] = "März"; $month[4] = "April"; $month[5] = "Mai"; $month[6] = "Juni"; $month[7] = "Juli"; $month[8] = "August"; $month[9] = "September"; $month[10] = "Oktober"; $month[11] = "November"; $month[12] = "Dezember"; if($all==0 && $num<>0) return $month[$num]; else return $month; } /** * Document::form_months() * * Gibt das Formularfeld für Monate aus. Ist $dateline angegeben, wird dieses Datum standardmäßig ausgewählt. $prefix definiert den Namen des Drop-down-Feldes ($prefix."month"). * * @param integer $dateline * @param string $prefix * @return */ function form_months($dateline=0,$prefix="") { $months = ""; for($m=1;$m<=12;$m++) $months.= ''; $month_form = ''; return $month_form; } /** * Document::form_date() * * Gibt die Formularfelder für ein komplettes Datum aus. Ist $dateline angegeben, wird dieses Datum standardmäßig ausgewählt. $prefix definiert den Namen des Drop-down-Feldes ($prefix."month"). * * @param integer $dateline * @param string $prefix * @param integer $today * @return */ function form_date($dateline=0,$prefix="",$today=0) { $days = ''; for($d=1;$d<=31;$d++) $days.= ''; $day_form = ''; $months = ''; for($m=1;$m<=12;$m++) $months.= ''; $month_form = ''; $years = ''; for($y=date("Y")-10;$y<=date("Y")+10;$y++) $years.= ''; $year_form = ''; $form = $day_form.' . '.$month_form.' . '.$year_form; return $form; } /** * Document::form_time() * * Gibt die Formularfelder für eine komplette Uhrzeit aus. Ist $dateline angegeben, wird diese Uhrzeit standardmäßig ausgewählt. $prefix definiert den Namen des Drop-down-Feldes ($prefix."hours"). * * @param integer $dateline * @param string $prefix * @param integer $today * @return * added by vivian [22.11.04] */ function form_time($dateline=0,$prefix="",$today=0) { $hours = ''; for($d=0;$d<=23;$d++){ $hours.= ''; } $hours_form = ''; $minutes = ''; for($m=0;$m<=59;$m+=15){ $minutes.= ''; } $minutes_form = ''; $form = $hours_form.':'.$minutes_form; return $form; } /** * Document::_cookie() * * Setzt ein Cookie. $name ist der Name des Cookies, $str der Wert und $f definiert, ob das Cookie nur für eine Session oder für länger gespeichert werden soll. * * @param string $name * @param string $str * @param integer $f * @return */ function _cookie($name,$str,$f=0) { setcookie($name,$str,($f==0 ? (time()+(3600*24*30*12)) : time()), "/"); } /** * Document::_str() * * Formatiert den gegebenen String zur Datenbankeingabe. * * @param string $str * @return */ function _str($str) { return htmlspecialchars(addslashes(trim($str))); } /** * Document::_strr() * * Umkehrfunktion von _str(). * * @param string $str * @return */ function _strr($str) { return stripslashes($str); } /** * Document::fz() * * Formatiert eine gegebene Zahl. * * @param integer $zahl * @return */ function fz($zahl) { return number_format($zahl,0,".","."); } /** * Document::do_date() * * Gibt d.m.Y für den gegebenen Timestamp $thistime aus. * * @param integer $thistime * @return */ function do_date($thistime) { return date("d.m.Y",$thistime); } /** * Document::do_time() * * Gibt H:i für den gegebenen Timestamp $thistime aus. * * @param integer $thistime * @return */ function do_time($thistime) { return date("H:i",$thistime); } /** * Document::do_date() * * Gibt d.m.Y, H:i für den gegebenen Timestamp $thistime aus. * * @param integer $thistime * @return */ function do_td($thistime) { return date("d.m.Y, H:i",$thistime); } /** * Document::get_enum() * * Gibt zugewiesine Enum Werte aus der DB als Array aus * * @param string $table * @param string $column * @return */ function get_enum($table,$column) { $result = mysql_query("SHOW COLUMNS FROM ".$table." LIKE '".$column."'"); if(mysql_num_rows($result)>0) { $row=mysql_fetch_row($result); $options=explode("','",preg_replace("/(enum|set)\('(.+?)'\)/ ","\\2",$row[1])); return $options; } } /** * Document::do_select_enum() * * Erstellt aus Enum Werten aus der DB ein Select Feld * * @param string $table * @param string $column * @param string $selected * @param string $css * @param string $name * @return */ function do_select_enum($table,$column,$selected,$css,$name){ $options = get_enum($table,$column); $form = ""; return $form; } ?>