Новичок
Профиль
Группа: Участник Клуба
Сообщений: 39
Регистрация: 27.3.2002
Где: 99 rus ©
Репутация: нет Всего: нет
|
вот сам скрипт календаря kalendar.php Код | <?php
/* +-------------------------------------------------------------------------- | Kalender-Addon for invisionboard | Version : 1.3 | Last Update : 3.July 2002 | Author : skep aka skeptiker +-------------------------------------------------------------------------- */
$idx = new kalender;
class kalender { var $week_start = 1; //============================================ // Start-Routine ( new Kalender ) //============================================ function kalender() {
//-------------------------------------------- // 1 => Monday (Montag) , 0 => Sunday (Sonntag) //-------------------------------------------- $this->week_start = 1;
//-------------------------------------------- // Globale Variablen aktivieren, Sprache laden //-------------------------------------------- global $ibforums,$std; $ibforums->lang = $std->load_words($ibforums->lang, 'lang_kalender', $ibforums->lang_id );
//-------------------------------------------- // Wohin des Weges ? //-------------------------------------------- switch($ibforums->input['CODE']) { case '01': $this->show_kalender(); break; case '02': $this->show_add(); break; case '03': $this->do_add(); break; case '04': $this->show_event(); break; case '05': $this->delete_event(); break; case '06': $this->show_edit(); break; case '07': $this->do_edit(); break; } }
//============================================ // Boardsview-Ansicht des Kalenders //============================================ function main() { global $ibforums, $DB, $std, $print; // Das aktuelle Datum an den Offset des Users angepasst $user_time = time() + ($ibforums->vars['TIME_ZONE'] * 3600) + ($ibforums->member['time_offset'] * 3600 ); $c_day = strftime("%d",$user_time); $c_monat = strftime("%m",$user_time); $c_jahr = strftime("%Y",$user_time); $w_day = strftime("%w",$user_time); $unix_time = mktime(0,0,0,$c_monat,$c_day,$c_jahr);
// Query fьr dieses Datum und Ьbergabe der gefundenen Geburtstag $count = 0; $DB->query("SELECT id, name, bday_day, bday_month, bday_year from ibf_members WHERE bday_day='$c_day' and bday_month='$c_monat'"); if( $DB->get_num_rows() ) { while($user = $DB->fetch_row()) { $bday .= "<span id='highlight'>></span><a href='{$this->base_url}index.php?act=Profile&CODE=03&MID={$user['id']}'>{$user['name']}</a> "; if ($user['bday_year']) { $pyear = $c_jahr - $user['bday_year']; $bday .= "(<b>$pyear</b>) "; } } } else { $bday = $ibforums->lang['K_no_bdays']; }
// Query fьr dieses Datum und Ьbergabe der gefundenen Events // Es wird nach Gast und Member unterschieden $priv_status = ($ibforums->member['id'] != 0) ? "((priv_status = 'g') OR (priv_status = 'm') OR (priv_status = 'p' && name = '{$ibforums->member['name']}')) AND " : "(priv_status = 'g') AND "; $DB->query("SELECT * from ibf_kalender where $priv_status ((datum = $unix_time) OR (d_typ = 'r' && $unix_time between datum and d_typ_value) OR (d_typ = 'w' && d_typ_value = $w_day) OR (d_typ = 'm' && d_typ_value = $c_day))"); $events = ''; if( $DB->get_num_rows() ) { while($event = $DB->fetch_row()) { $events .= "[<img src='{$ibforums->vars['html_url']}/calendar_icons/$event[e_typ].gif'> <a href='{$ibforums->base_url}&act=KA&CODE=4&ID=$event[id]'>$event[titel]</a>] "; } } else { $events = $ibforums->lang['K_no_events']; }
// Ьbergabe des gefundenen Ergebnisse return $this->board_view($events,$bday); }
//============================================ // Na dann gucken wir uns mal den Kalender an //============================================ function show_kalender() { global $print ,$ibforums, $DB;
// Das aktuelle Datum an den Offset des Users angepasst $user_time = time() + ($ibforums->vars['TIME_ZONE'] * 3600) + ($ibforums->member['TIME_ADJUST'] * 3600 ); $c_day = strftime("%d",$user_time); $c_monat = strftime("%m",$user_time); $c_jahr = strftime("%Y",$user_time);
// Welcher Monat und welches Jahr sollen angezeigt werden ? $aktueller_monat = (isset($ibforums->input['monatswahl'])) ? $ibforums->input['monatswahl'] : $c_monat; $aktuelles_jahr = (isset($ibforums->input['jahreswahl'])) ? $ibforums->input['jahreswahl'] : $c_jahr;
// So...nun erzeugen wir mal die last <=> next Links $last_m = ($aktueller_monat > 1 ) ? ($aktueller_monat-1) : 12; $next_m = ($aktueller_monat < 12) ? ($aktueller_monat+1) : 1; $last_y = ($last_m == 12 ) ? ($aktuelles_jahr-1) : $aktuelles_jahr; $next_y = ($next_m == 1 ) ? ($aktuelles_jahr+1) : $aktuelles_jahr;
$last_full = $ibforums->lang['K_FM'.$last_m]; $next_full = $ibforums->lang['K_FM'.$next_m];
$last_next = "< <a href='{$ibforums->base_url}&act=KA&CODE=1&monatswahl=$last_m&jahreswahl=$last_y'>$last_full $last_y</a>  |  <a href='{$ibforums->base_url}&act=KA&CODE=1&monatswahl=$next_m&jahreswahl=$next_y'>$next_full $next_y</a> >";
// Zeitstempel des gewдhlten Monat-Jahr-Paares (fьr den 1. Tag des Monats) // Bestimmung der Anzahl der Tage des gewдhlten Monats // Umwandlung in die entsprechenden Monatsnamen (Sprachfileabhдngig) $tstamp = mktime(0,0,0,$aktueller_monat+1,0,$aktuelles_jahr); $tage = strftime ('%d', $tstamp); $datum = mktime(0,0,0,$aktueller_monat,0,$aktuelles_jahr); $monat = (int) strftime('%m', $datum); $monat = $this->month2name($monat);
// Anfang des Kalenders mit Tagesleiste $out = $this->table_start(); $out .= $this->start_bar($last_next); $out .= $this->day_bar();
// Query der Datenbank nach Events im ganzen Monat // Schreiben aller Events des Monats in ein Array $von = mktime(0,0,0,$aktueller_monat,1,$aktuelles_jahr); $bis = mktime(0,0,0,$aktueller_monat,$tage,$aktuelles_jahr); $eventarray = array();
$priv_status = ($ibforums->member['id'] != 0) ? "((priv_status = 'g') OR (priv_status = 'm') OR (priv_status = 'p' && name = '{$ibforums->member['name']}')) AND " : "(priv_status = 'g') AND "; $DB->query("SELECT datum, id, titel, e_typ, d_typ, d_typ_value from ibf_kalender where $priv_status ((datum between $von and $bis) OR (d_typ = 'r' AND d_typ_value between $von and $bis) OR (d_typ = 'w') OR (d_typ = 'm') OR (d_typ = 'y' && d_typ_value = $aktueller_monat))"); if( $DB->get_num_rows() ) { while($event = $DB->fetch_row()) { array_push($eventarray, $event); } }
// Query der Datanbank nach Geburtstagen im ganzen Monat // Anhдngen aller Geburtstage in das Array $DB->query("SELECT bday_month, bday_day, bday_year, name, id from ibf_members where bday_month = $aktueller_monat"); if( $DB->get_num_rows() ) { while($bday = $DB->fetch_row()) { array_push($eventarray, $bday); } }
// Erzeugung der Tagesfelder fьr jeden Tag des Monats for ($i = 1; $i <= $tage; $i++) {
// Datum umwandeln und den Namen des Tages und die Woche rausfiltern $datum = mktime(0,0,0,$aktueller_monat,$i,$aktuelles_jahr); $tag = strftime("%w", $datum); $woche = '('.$ibforums->lang['K_week'].' '.strftime("%U", $datum).')';
// UNIX-Timestamp fьr den Tag // Herausfiltern der Eintrдge fьr diesen Tag $c_date = mktime(0,0,0,$aktueller_monat,$i,$aktuelles_jahr); $display = ''; foreach($eventarray as $single_event) { if ($single_event[d_typ] == 'r' && $single_event[datum] <= $c_date && $single_event[d_typ_value] >= $c_date) { $display .= "[<img src='{$ibforums->vars['html_url']}/calendar_icons/$single_event[e_typ].gif'> <span id='highlight'><a href='{$ibforums->base_url}&act=KA&CODE=4&ID=$single_event[id]'>$single_event[titel]</a></span>] "; } elseif($single_event[d_typ] == 's' && $single_event[datum] == $c_date) { $display .= "[<img src='{$ibforums->vars['html_url']}/calendar_icons/$single_event[e_typ].gif'> <span id='highlight'><a href='{$ibforums->base_url}&act=KA&CODE=4&ID=$single_event[id]'>$single_event[titel]</a></span>] "; } elseif($single_event[d_typ] == 'w' && $single_event[d_typ_value] == $tag) { $display .= "[<img src='{$ibforums->vars['html_url']}/calendar_icons/$single_event[e_typ].gif'> <span id='highlight'><a href='{$ibforums->base_url}&act=KA&CODE=4&ID=$single_event[id]'>$single_event[titel]</a></span>] "; } elseif($single_event[d_typ] == 'm' && $single_event[d_typ_value] == $i) { $display .= "[<img src='{$ibforums->vars['html_url']}/calendar_icons/$single_event[e_typ].gif'> <span id='highlight'><a href='{$ibforums->base_url}&act=KA&CODE=4&ID=$single_event[id]'>$single_event[titel]</a></span>] "; } elseif($single_event[d_typ] == 'y' && $single_event[datum] == $i) { $display .= "[<img src='{$ibforums->vars['html_url']}/calendar_icons/$single_event[e_typ].gif'> <span id='highlight'><a href='{$ibforums->base_url}&act=KA&CODE=4&ID=$single_event[id]'>$single_event[titel]</a></span>] "; } if($single_event[bday_day] == $i) { if ($single_event['bday_year']) { $pyear = $c_jahr - $single_event['bday_year']; $bday = "(<b>$pyear</b>)"; } $display .= "[<img src='{$ibforums->vars['html_url']}/calendar_icons/birthday.gif'> <span id='highlight'><a href='{$ibforums->base_url}index.php?&act=Profile&CODE=03&MID=$single_event[id]'>$single_event[name]</a>$bday</span>] "; } }
// Auffьllen der Kдstchen fьr den ersten Tage im Monat (falls kein Montag) if($this->week_start == 1) { if($i == 1 && $tag == 0) { for($j=1; $j <= 6; $j++) { $out .= ($j == 1) ? $this->fueller($woche) : $this->fueller(); } } if($i == 1 && $tag > 1) { for($j=1; $j <= $tag-1; $j++) { $out .= ($j == 1) ? $this->fueller($woche) : $this->fueller(); } } } else { if($i == 1 && $tag > 0) { for($j=0; $j <= $tag-1; $j++) { $out .= ($j == 0) ? $this->fueller($woche) : $this->fueller(); } } }
// Zeilenumbruch am Ende der Woche if($this->week_start == 1) { $ende = ($tag == 0) ? "</tr>" : ""; $start = ($tag == 1) ? "<tr>" : ""; } else { $ende = ($tag == 6) ? "</tr>" : ""; $start = ($tag == 0) ? "<tr>" : ""; }
// Sind wir beim heutigen Tag ? $today = ($c_day == $i && $aktueller_monat == $c_monat && $aktuelles_jahr == $c_jahr) ? '1' : '';
// Pro Tag ein Kдstchen if($this->week_start == 1) { $out .= ($tag == 1) ? $this->dayfield($start,$ende,$i,$monat,$today,$display,$woche) : $this->dayfield($start,$ende,$i,$monat,$today,$display); } else { $out .= ($tag == 0) ? $this->dayfield($start,$ende,$i,$monat,$today,$display,$woche) : $this->dayfield($start,$ende,$i,$monat,$today,$display); } // Auffьllen der Kдstchen fьr die letzten Tage der Woche am Monatsende if($this->week_start == 1) { if($i == $tage && $tag > 0) { for($j=1; $j <= (7-$tag); $j++) { $out .= $this->fueller(); } } } else { if($i == $tage && $tag > 6) { for($j=1; $j <= (7-$tag); $j++) { $out .= $this->fueller(); } } } }
// Ende des Kalenders mit Datumswahlleiste $out .= $this->select_viewbar($this->select_monat($aktueller_monat,'monatswahl'),$this->select_jahr($aktuelles_jahr,'jahreswahl'),$last_next); $out .= $this->table_end();
$out .= "<br>".$this->table_start(); $out .= $this->legend(); $out .= $this->table_end();
// Ausgabe des Kalenders $this->nav[] = "<a href='{$ibforums->base_url}&act=KA&CODE=1'>{$ibforums->lang['K_kalender']}</a>"; $print->add_output($out); $print->do_output( array( 'TITLE' => $ibforums->lang['K_kalender'], 'JS' => 0, 'NAV' => $this->nav ) ); }
//============================================ // Anzeige eines einzelnen Events //============================================ function show_event() { global $print, $ibforums, $DB;
// Query die ID und Ьbergabe des Resultats an eine Variable $DB->query("SELECT * from ibf_kalender where id = {$ibforums->input['ID']}"); $event = $DB->fetch_row();
// Wer bin ich ? Admin oder Poster ? oder gar jemand anderes ? $actions = ''; if($ibforums->member['g_is_supmod'] == 1 || $event[name] == $ibforums->member['name']) { $actions = "[<a href='{$ibforums->base_url}&act=KA&CODE=5&ID={$ibforums->input['ID']}'>{$ibforums->lang['K_delete_event']}</a>]  [<a href='{$ibforums->base_url}&act=KA&CODE=6&ID={$ibforums->input['ID']}'>{$ibforums->lang['K_edit_event']}</a>]"; }
// Parse Event require "./sources/lib/post_parser.php"; $this->parser = new post_parser(1); $event['text'] = $this->parser->convert( array( TEXT => $event['text'], CODE => '1', HTML => '1' ) );
$out = $this->table_start(); $out .= $this->single_event($event,$actions); $out .= $this->table_end();
$print->add_output($out); $this->nav[] = "<a href='{$ibforums->base_url}&act=KA&CODE=1'>{$ibforums->lang['K_kalender']}</a>"; $print->do_output( array( 'TITLE' => $ibforums->lang['K_kalender'], 'JS' => 0, 'NAV' => $this->nav ) ); }
//============================================ // Anzeige des Formulars fьr neue Eintrдge //============================================ function show_add() { global $print, $ibforums, $std;
// Permission-Check if($ibforums->member['g_calendar_post'] == 0) $std->Error( array( LEVEL => 1, MSG => 'cant_use_feature') );
// Das aktuelle Datum an den Offset des Users angepasst $user_time = time() + ($ibforums->vars['TIME_ZONE'] * 3600) + ($ibforums->member['TIME_ADJUST'] * 3600 ); $c_day = strftime("%d",$user_time); $c_monat = strftime("%m",$user_time); $c_jahr = strftime("%Y",$user_time);
$select = $this->select_add($this->select_tag($c_day,'tageswahl'),$this->select_monat($c_monat,'monatswahl'),$this->select_jahr($c_jahr,'jahreswahl')); $r_select1 = $this->select_add($this->select_tag($c_day,'v_tageswahl'),$this->select_monat($c_monat,'v_monatswahl'),$this->select_jahr($c_jahr,'v_jahreswahl')); $r_select2 = $this->select_add($this->select_tag($c_day,'b_tageswahl'),$this->select_monat($c_monat,'b_monatswahl'),$this->select_jahr($c_jahr,'b_jahreswahl')); $r_select3 = $this->select_tag($c_day,'y_tageswahl').$this->select_monat($c_monat,'y_monatswahl'); $typ = $this->select_typ_of_event(); $visibility = $this->select_vis_of_event(); $recur = $this->recur_event($select,$r_select1.$ibforums->lang['K_from_to'].$r_select2,$r_select3);
$out = $this->table_start(); $out .= $this->add_view($typ,$recur,$visibility); $out .= $this->table_end();
// Ausgabe $print->add_output($out); $this->nav[] = "<a href='{$ibforums->base_url}&act=KA&CODE=1'>{$ibforums->lang['K_kalender']}</a>"; $print->do_output( array( 'TITLE' => $ibforums->lang['K_kalender'], 'JS' => 0, 'NAV' => $this->nav ) ); }
//============================================ // Anzeige der Editieransicht //============================================ function show_edit() { global $print, $ibforums, $std, $DB;
// Permission-Check if($ibforums->member['g_is_supmod'] != 1 && $event[name] != $ibforums->member['name']) { $std->Error( array( LEVEL => 1, MSG => 'cant_use_feature') ); }
// Query die ID und Ьbergabe des Resultats an eine Variable $DB->query("SELECT * from ibf_kalender where id = {$ibforums->input['ID']}"); $event = $DB->fetch_row();
// Extrahiere Tag, Monat, Jahr aus dem Event $e_day = strftime("%d",$event[datum]); $e_monat = strftime("%m",$event[datum]); $e_jahr = strftime("%Y",$event[datum]);
// Konvertiere den Text require "./sources/lib/post_parser.php"; $this->parser = new post_parser(1); $event['text'] = $this->parser->unconvert( $event['text'] );
$w_extra = ($event[d_typ] == 'w') ? $event[d_typ_value] : ''; $m_extra = ($event[d_typ] == 'm') ? $event[d_typ_value] : '';
$select = $this->select_add($this->select_tag($e_day,'tageswahl'),$this->select_monat($e_monat,'monatswahl'),$this->select_jahr($e_jahr,'jahreswahl')); $r_select1 = $this->select_add($this->select_tag($e_day,'v_tageswahl'),$this->select_monat($e_monat,'v_monatswahl'),$this->select_jahr($e_jahr,'v_jahreswahl')); $r_select2 = $this->select_add($this->select_tag($e_day,'b_tageswahl'),$this->select_monat($e_monat,'b_monatswahl'),$this->select_jahr($e_jahr,'b_jahreswahl')); $r_select3 = $this->select_tag($e_day,'y_tageswahl').$this->select_monat($e_monat,'y_monatswahl'); $typ = $this->select_typ_of_event(); $visibility = $this->select_vis_of_event(); $recur = $this->recur_event($select,$r_select1.$ibforums->lang['K_from_to'].$r_select2,$r_select3,$w_extra,$m_extra,$event[d_typ]);
$out .= $this->table_start(); $out .= $this->edit_view($recur,$event,$typ,$visibility); $out .= $this->table_end();
// Ausgabe $print->add_output($out); $this->nav[] = "<a href='{$ibforums->base_url}&act=KA&CODE=1'>{$ibforums->lang['K_kalender']}</a>"; $print->do_output( array( 'TITLE' => $ibforums->lang['K_kalender'], 'JS' => 0, 'NAV' => $this->nav ) ); }
//============================================ // Hinzufьgen eines Events //============================================ function do_add() { global $print, $ibforums, $std, $DB;
// Permission-Check if($ibforums->member['g_calendar_post'] == 0) $std->Error( array( LEVEL => 1, MSG => 'cant_use_feature') );
// Ьberprьfe ob alle Eingaben gemacht wurden bzw. ob die Eingaben ok sind if($ibforums->input['EventTitel'] == '') $std->Error( array( LEVEL => 1, MSG => 'complete_form') ); if($ibforums->input['EventText'] == '') $std->Error( array( LEVEL => 1, MSG => 'complete_form') ); if(strlen($ibforums->input['EventTitel']) <= 2) $std->Error( array( LEVEL => 1, MSG => 'complete_form') ); if(strlen($ibforums->input['EventText']) <= 2) $std->Error( array( LEVEL => 1, MSG => 'complete_form') );
// Zuweisung der normalen Eingabewerte an Variablen und Verarbeitung in einem Query
// Datumstyp bestimmen....mit dem jeweiligen Wert if($ibforums->input['recur'] == 's') { $datum = mktime(0,0,0,$ibforums->input['monatswahl'],$ibforums->input['tageswahl'],$ibforums->input['jahreswahl']); $d_typ ='s'; $d_typ_value = '0'; } if($ibforums->input['recur'] == 'r') { $datum = mktime(0,0,0,$ibforums->input['v_monatswahl'],$ibforums->input['v_tageswahl'],$ibforums->input['v_jahreswahl']); $d_typ_value = mktime(0,0,0,$ibforums->input['b_monatswahl'],$ibforums->input['b_tageswahl'],$ibforums->input['b_jahreswahl']); $d_typ = 'r'; } if($ibforums->input['recur'] == 'w') { $d_typ_value = $ibforums->input['w_day']; $d_typ = 'w'; $datum = '0'; } if($ibforums->input['recur'] == 'm') { $d_typ_value = $ibforums->input['m_day']; $d_typ = 'm'; $datum = '0'; } if($ibforums->input['recur'] == 'y') { $d_typ_value = $ibforums->input['y_monatswahl']; $d_typ = 'y'; $datum = $ibforums->input['y_tageswahl']; }
if($ibforums->input['typwahl'] == 'private') { $ibforums->input['visibilitywahl'] = 'p'; }
$DB->query("INSERT INTO ibf_kalender (name,titel,text,datum,e_typ,d_typ,d_typ_value,priv_status) VALUES ('{$ibforums->member['name']}','{$ibforums->input['EventTitel']}','{$ibforums->input['EventText']}','$datum','{$ibforums->input['typwahl']}','$d_typ','$d_typ_value','{$ibforums->input['visibilitywahl']}')");
// Redirect zur Hauptansicht des Forums $print->redirect_screen( $ibforums->lang['K_event_added'], "" );
}
//============================================ // Updaten eines Events //============================================ function do_edit() { global $ibforums, $DB, $print;
// Query die ID und Ьbergabe des Resultats an eine Variable $DB->query("SELECT name from ibf_kalender where id = {$ibforums->input['ID']}"); $event = $DB->fetch_row();
// Permission-Check if($ibforums->member['g_is_supmod'] == 1 || $event[name] == $ibforums->member['name']) {
// Ьberprьfe ob alle Eingaben gemacht wurden bzw. ob die Eingaben ok sind if($ibforums->input['EventTitel'] == '') $std->Error( array( LEVEL => 1, MSG => 'complete_form') ); if($ibforums->input['EventText'] == '') $std->Error( array( LEVEL => 1, MSG => 'complete_form') ); if(strlen($ibforums->input['EventTitel']) <= 2) $std->Error( array( LEVEL => 1, MSG => 'complete_form') ); if(strlen($ibforums->input['EventText']) <= 2) $std->Error( array( LEVEL => 1, MSG => 'complete_form') );
// Zuweisung der Eingabewerte an Variablen und Verarbeitung in einem Query $id = $ibforums->input['ID']; $titel = $ibforums->input['EventTitel']; $text = $ibforums->input['EventText']."<br>(edited by {$ibforums->member['name']})"; $e_typ = $ibforums->input['typwahl']; $priv = $ibforums->input['visibilitywahl']; // Datumstyp bestimmen....mit dem jeweiligen Wert if($ibforums->input['recur'] == 's') { $datum = mktime(0,0,0,$ibforums->input['monatswahl'],$ibforums->input['tageswahl'],$ibforums->input['jahreswahl']); $d_typ ='s'; $d_typ_value = '0'; } if($ibforums->input['recur'] == 'r') { $datum = mktime(0,0,0,$ibforums->input['v_monatswahl'],$ibforums->input['v_tageswahl'],$ibforums->input['v_jahreswahl']); $d_typ_value = mktime(0,0,0,$ibforums->input['b_monatswahl'],$ibforums->input['b_tageswahl'],$ibforums->input['b_jahreswahl']); $d_typ = 'r'; } if($ibforums->input['recur'] == 'w') { $d_typ_value = $ibforums->input['w_day']; $d_typ = 'w'; $datum = '0'; } if($ibforums->input['recur'] == 'm') { $d_typ_value = $ibforums->input['m_day']; $d_typ = 'm'; $datum = '0'; }
$DB->query("UPDATE ibf_kalender SET titel = '$titel', text = '$text', datum = '$datum', e_typ = '$e_typ', d_typ = '$d_typ', d_typ_value = '$d_typ_value', priv_status = '$priv' where id = $id");
// Redirect zur Hauptansicht des Forums $print->redirect_screen( $ibforums->lang['K_event_edited'] , "" );
} else { $std->Error( array( LEVEL => 1, MSG => 'cant_use_feature') ); } }
//============================================ // Lцschen eines Events //============================================ function delete_event() { global $ibforums, $DB, $print, $std;
// Query die ID und Ьbergabe des Resultats an eine Variable $DB->query("SELECT name from ibf_kalender where id = {$ibforums->input['ID']}"); $event = $DB->fetch_row();
// Permission-Check if($ibforums->member['g_is_supmod'] == 1 || $event[name] == $ibforums->member['name']) {
// Lцsche Event aus der Datenbank $DB->query("DELETE from ibf_kalender where id = {$ibforums->input['ID']}");
// Redirect zur Hauptansicht des Forums $print->redirect_screen( $ibforums->lang['K_event_deleted'], "" ); } else { $std->Error( array( LEVEL => 1, MSG => 'cant_use_feature') ); } }
//================================================================ // :: INTERNE FUNKTIONEN :: INTERNE FUNKTIONEN :: //================================================================
//============================================ // Nummer des Monats -> Name //============================================ function month2name($num) { global $ibforums; $num = ($num < 12) ? ($num+1) : 1; return $ibforums->lang['K_M'.$num]; } //============================================ // Titelleiste des Kalenders (Wochentagsbar) //============================================ function day_bar() { global $ibforums; $out = "<tr>"; if($this->week_start == '1') { for ($i = 1; $i <= 7; $i++) { $x = 'K_D'.$i; $out .= "<td id='subtitle' width='14%' align='center'>{$ibforums->lang[$x]}</td>"; } } else { $x = 'K_D7'; $out .= "<td id='subtitle' width='14%' align='center'>{$ibforums->lang[$x]}</td>"; for ($i = 1; $i <= 6; $i++) { $x = 'K_D'.$i; $out .= "<td id='subtitle' width='14%' align='center'>{$ibforums->lang[$x]}</td>"; } } $out .= "</tr>"; return $out; }
//============================================ // Abschlussleiste mit Auswahlliste //============================================
function select_monat($c_monat,$name) { global $ibforums; $monat_select = "<select name=$name class='forminput'>"; for ($i = 1; $i <= 12; $i++) { $monat = $ibforums->lang['K_FM'.$i]; if($i == $c_monat) { $checked = ' selected'; } else { $checked = ''; } $monat_select .= "<option value=\"$i\"$checked>$monat"; } $monat_select .= "</select>"; return $monat_select; }
function select_jahr($c_jahr,$name) { $years = range(2002,2020); $jahr_select = "<select name=$name class='forminput'>"; foreach($years as $year) { if($year == $c_jahr) { $checked = ' selected'; } else { $checked = ''; } $jahr_select .= "<option value=\"$year\"$checked>$year"; } $jahr_select .= "</select>"; return $jahr_select; }
function select_tag($c_day,$name) { $tage = range(1,31); $tag_select = "<select name=$name class='forminput'>"; foreach($tage as $tag) { if($tag == $c_day) { $checked = ' selected'; } else { $checked = ''; } $tag_select .= "<option value=\"$tag\"$checked>$tag"; } $tag_select .= "</select>"; return $tag_select; }
function select_typ_of_event() { global $ibforums; $types = array($ibforums->lang['K_normal_event'] => 'normal',$ibforums->lang['K_important_event'] => 'important',$ibforums->lang['K_private_event'] => 'private'); $typ_select = "<select name='typwahl' class='forminput'>"; foreach($types as $typ => $value) { $typ_select .= "<option value=\"$value\">$typ"; } $typ_select .= "</select>"; return $typ_select; }
function select_vis_of_event() { global $ibforums; $types = array($ibforums->lang['K_vis_all'] => 'g',$ibforums->lang['K_vis_members'] => 'm'); $vis_select = "<select name='visibilitywahl' class='forminput'>"; foreach($types as $typ => $value) { $vis_select .= "<option value=\"$value\">$typ"; } $vis_select .= "</select>"; return $vis_select; }
function select_week_recur($day='') { global $ibforums; $tage = range(1,7); $tag_select = "<select name='w_day' class='forminput'>"; for ($i = 1; $i <= 7; $i++) { $x = 'K_D'.$i; if($i==7) { $tag=0; } else { $tag=$i; } $select = ($day == $tag) ? 'selected' : ''; $tag_select .= "<option value=\"$tag\" $select>every {$ibforums->lang[$x]}"; } $tag_select .= "</select>"; return $tag_select; } function select_tag_recur($day='') { $tage = range(1,31); $tag_select = "<select name='m_day' class='forminput'>"; foreach($tage as $tag) { $select = ($day == $tag) ? 'selected' : ''; $tag_select .= "<option value=\"$tag\" $select>$tag."; } $tag_select .= "</select>"; return $tag_select; } function recur_event($single_date,$date_range,$recur_yearly='',$w_extra='',$m_extra='',$checked='') { global $ibforums; $recur_days = $this->select_tag_recur($m_extra); $recur_week = $this->select_week_recur($w_extra); $r_check = ($checked == 'r') ? 'checked' : ''; $w_check = ($checked == 'w') ? 'checked' : ''; $m_check = ($checked == 'm') ? 'checked' : '';
$recur = " <input type=radio name='recur' value='s' checked> {$ibforums->lang['K_single_date']} $single_date<br> <input type=radio name='recur' value='r' $r_check> {$ibforums->lang['K_range_date']} $date_range<br> <input type=radio name='recur' value='y' $y_check> {$ibforums->lang['K_yearly_date']} $recur_yearly<br> <input type=radio name='recur' value='m' $m_check> {$ibforums->lang['K_monthly_date']} $recur_days<br> <input type=radio name='recur' value='w' $w_check> {$ibforums->lang['K_weekly_date']} $recur_week<br>"; return $recur; }
function select_viewbar($m,$j) { global $ibforums; $out = "<form action='{$ibforums->vars['board_url']}/index.{$ibforums->vars['php_ext']}?s={$ibforums->session_id};act=KA&CODE=1' method='post'> <input type='hidden' name='act' value='KA'> <input type='hidden' name='CODE' value='1'> <input type='hidden' name='s' value='{$ibforums->session_id}'> <tr><td colspan='7' id='titlemedium' valign='top'>$m $j <input type='submit' value='{$ibforums->lang['K_show']}' class='forminput'> [ <a href='{$ibforums->base_url}&act=KA&CODE=2'>{$ibforums->lang['K_add']}</a> ] </td></tr></form>"; return $out; }
function select_add($d,$m,$j) { return "$d $m $j"; }
//================================================================ // :: HTML :: HTML :: HTML :: HTML :: HTML :: //================================================================ function table_end() { return "</table></td></tr></table>"; }
function table_start() { global $ibforums; return "<center><table width='{$ibforums->skin['tbl_width']}' border='0' cellspacing='0' cellpadding='1' bgcolor='{$ibforums->skin['tbl_border']}'><tr><td><table width='100%' cellspacing='1' cellpadding='2' border='0' bgcolor='#ffffff'>"; }
function start_bar($last_next) { return "<tr><td id='titlemedium' align='right' colspan='7'>$last_next</td></tr>"; }
function legend() { global $ibforums; return "<tr><td id='titlemedium' align='left' colspan='7'> {$ibforums->lang['K_legend']} | <img src='{$ibforums->vars['html_url']}/calendar_icons/normal.gif'> {$ibforums->lang['K_normal_event']} | <img src='{$ibforums->vars['html_url']}/calendar_icons/important.gif'> {$ibforums->lang['K_important_event']} | <img src='{$ibforums->vars['html_url']}/calendar_icons/private.gif'> {$ibforums->lang['K_private_event']} | <img src='{$ibforums->vars['html_url']}/calendar_icons/birthday.gif'> {$ibforums->lang['K_birthday']} | </td></tr>"; }
function dayfield($start,$ende,$i,$monat,$today,$display,$week='') { if($today == '1') { return "$start<td id='forum2' valign='top'><b>$i.$monat</b> <i>$week</i><br>$display<br> <br> </td>$ende"; } else { return "$start<td id='forum1' valign='top'>$i.$monat <i>$week</i><br>$display<br> <br> </td>$ende"; } }
function fueller($week='') { return "<td id='row2'><i>$week</i> <br> <br> <br> </td>"; }
function board_view($events,$bdays) { global $ibforums; return "<tr> <td id='category' colspan='2'>{$ibforums->lang['K_kalender']} [:: <a href='{$ibforums->base_url}&act=KA&CODE=1'>{$ibforums->lang['K_view']}</a> ::] [:: <a href='{$ibforums->base_url}&act=KA&CODE=2'>{$ibforums->lang['K_add']}</a> ::]</td> </tr> <tr> <td id='forum1' width='5%' valign='middle'><img src='{$ibforums->vars['html_url']}/calendar_icons/calendar.gif' border=0></td> <td id='forum2' width='95%'><b>{$ibforums->lang['K_events']} : </b>$events<br><b>{$ibforums->lang['K_birthdays']} : </b>$bdays</td> </tr>"; }
function add_view($typ,$recur,$visibility) { global $ibforums; return <<<EOF <form action='{$ibforums->vars['board_url']}/index.{$ibforums->vars['php_ext']}?s={$ibforums->session_id}' method='post'> <input type='hidden' name='act' value='KA'> <input type='hidden' name='CODE' value='3'> <input type='hidden' name='s' value='{$ibforums->session_id}'> <tr> <td id='titlemedium' background='{$ibforums->vars['img_url']}/tile_sub.gif' colspan="2">{$ibforums->lang['K_add_event']}</td> </tr> <tr> <td id="subtitle" colspan="2">{$ibforums->lang['K_choose_date']}</td> </tr> <tr> <td id='row1' width="20%" valign='top'>{$ibforums->lang['K_date']}</td> <td id='row1' width="80%" valign="top">$recur</td> </tr> <tr> <td id="subtitle" colspan="2">{$ibforums->lang['K_typ_title']}</td> </tr> <tr> <td id='row1' width="20%">{$ibforums->lang['K_typ_select']}</td> <td id='row1' width="80%" valign="top">$typ & $visibility ({$ibforums->lang['K_private_desc']})</td> </tr> <tr> <td id="subtitle" colspan="2">{$ibforums->lang['K_choose_title']}</td> </tr> <tr> <td id='row1' width="20%">{$ibforums->lang['K_title']}</td> <td id='row1' width="80%" valign="top"><input type='text' size='40' maxlength='30' name='EventTitel' class='forminput'> {$ibforums->lang['K_minmax_title']}</td> </tr> <tr> <td id="subtitle" colspan="2">{$ibforums->lang['K_choose_text']}</td> </tr> <tr> <td id='row1' width="20%" valign="top">{$ibforums->lang['K_text']}</td> <td id='row1' width="80%" valign="top"> <textarea cols='60' rows='12' wrap='soft' name='EventText' class='textinput'></textarea> {$ibforums->lang['K_minmax_text']}</td> </tr> <tr> <td id="subtitle" colspan="2" align='center'><input type='submit' value='{$ibforums->lang['K_add']}' class='forminput'></td> </tr></form> EOF; }
function edit_view($select,$event,$typ,$visibility) { global $ibforums; return <<<EOF <form action='{$ibforums->vars['board_url']}/index.{$ibforums->vars['php_ext']}?s={$ibforums->session_id}' method='post'> <input type='hidden' name='act' value='KA'> <input type='hidden' name='CODE' value='7'> <input type='hidden' name='s' value='{$ibforums->session_id}'> <input type='hidden' name='ID' value='{$ibforums->input[ID]}'> <tr> <td id='titlemedium' background='{$ibforums->vars['img_url']}/tile_sub.gif' colspan="2">{$ibforums->lang['K_edit']}</td> </tr> <tr> <td id="subtitle" colspan="2">{$ibforums->lang['K_edit_date']}</td> </tr> <tr> <td id='row1' width="20%" valign='top'>{$ibforums->lang['K_date']}</td> <td id='row1' width="80%" valign="top">$select</td> </tr> <tr> <td id="subtitle" colspan="2">{$ibforums->lang['K_typ_title']}</td> </tr> <tr> <td id='row1' width="20%">{$ibforums->lang['K_typ_select']}</td> <td id='row1' width="80%" valign="top">$typ & $visibility</td> </tr> <tr> <td id="subtitle" colspan="2">{$ibforums->lang['K_edit_title']}</td> </tr> <tr> <td id='row1' width="20%">{$ibforums->lang['K_title']}</td> <td id='row1' width="80%" valign="top"><input type='text' size='40' maxlength='30' value="$event[titel]" name='EventTitel' class='forminput'> {$ibforums->lang['K_minmax_title']}</td> </tr> <tr> <td id="subtitle" colspan="2">{$ibforums->lang['K_edit_text']}</td> </tr> <tr> &
|
|
|
|
Oska |
Дата 8.8.2002, 23:07 (ссылка)
| (нет голосов)
Загрузка ...
|
|
|
Новичок
Профиль
Группа: Участник Клуба
Сообщений: 39
Регистрация: 27.3.2002
Где: 99 rus ©
Репутация: нет Всего: нет
|
А вот его инсталлятор: kalender-install.php Создавали немцы кстати. Вован тебе ближе все эти записи Код | <?php /* +-------------------------------------------------------------------------- | Kalender-Autoinstaller | Version : 1.0 | Author : skep aka skeptiker +-------------------------------------------------------------------------- */
error_reporting(E_ALL);
// Ьbergabewerte einlesen $IN = get_input();
// Je nach Step machen wir was ? if(!isset($IN->{'step'})) { form(); } elseif($IN->{'step'} == 'install') { install(); }
//====================================== // Interne Funktionen //====================================== function get_input() { global $REQUEST_METHOD,$HTTP_POST_VARS,$HTTP_GET_VARS; if(isset($HTTP_POST_VARS)) { while(list($key,$value) = each($HTTP_POST_VARS)) { $IN[$key] = $value; } } if(isset($HTTP_GET_VARS)) { while(list($key,$value) = each($HTTP_GET_VARS)) { $IN[$key] = $value; } } if(isset($IN)) { return (object) $IN; } }
function install() { global $IN; $host = $IN->{'host'}; $user = $IN->{'user'}; $pwd = $IN->{'pwd'}; $db = $IN->{'dbname'}; $prefix = $IN->{'prefix'};
$query = " CREATE TABLE ".$prefix."kalender ( id bigint(20) NOT NULL auto_increment, name varchar(32) NOT NULL default '', titel varchar(64) NOT NULL default '', text text NOT NULL, datum int(10) NOT NULL default '0', e_typ varchar(20) NOT NULL default 'normal', d_typ char(1) NOT NULL default 's', d_typ_value int(10) default NULL, priv_status char(1) NOT NULL default 'g', PRIMARY KEY (id) )";
$add_code = "//*********************************************/\n"; $add_code .= "// Calendar by skep\n"; $add_code .= "//*********************************************/\n"; $add_code .= "global \$root_path;\n"; $add_code .= "require \$root_path.\"sources/kalender.php\";\n"; $add_code .= "\$this->kalender = new kalender();\n"; $add_code .= "\$stats_html .= \$this->kalender->main();\n";
//===== Erstelle die SQL-Tabelle und erweitere die Images-Tabelle ====================== $connect_id = @mysql_connect( $host, $user, $pwd ); if(!$connect_id) { error("No connection to database-server!<br>".mysql_error()); exit; } $select_id = @mysql_select_db( $db, $connect_id ); if(!$select_id) { error("No connection to database!<br>".mysql_error()); exit; } $result = mysql_list_tables ("$db"); $i = 0; while ($i < mysql_num_rows ($result)) { $tb_names[$i] = mysql_tablename ($result, $i); if($tb_names[$i] == $prefix.'kalender') { @mysql_query("DROP TABLE $prefix"."kalender") or die (error("Invalid query<br>".mysql_error())); } $i++; } @mysql_query("$query") or die (error("Invalid query<br>".mysql_error())); //=======================================================================================
//===== Manipuliere die Boards.php ====================================================== $file = "./sources/Boards.php"; $check = 0; $newlines = ''; $buffer = file($file); foreach($buffer as $line) { if( preg_match("/\/\/ Calendar by skep/", $line)) { $check = '1'; } if( preg_match("/ibforums->vars\['show_totals'\]/", $line) && $check != '1') { $newlines .= trim($add_code)."\n\n"; } $newlines .= $line; } $newlines = str_replace ("\r", "", $newlines); $fp = fopen($file,"w"); fputs($fp,$newlines); fclose($fp); //=======================================================================================
result();
} //====================================== // HTML //====================================== function form() { $v = phpversion(); echo <<<EOF <html><body bgcolor='#eeeeee'> <center><br><br><font face='Verdana' size='4'><b>KALENDER AUTO INSTALLER</b> <form action="kalender-installer.php?step=install" method='POST'> <input type='hidden' name='step' value='install'> <table width='400' border='1' cellspacing='0' bgcolor='#dddddd'> <tr> <td> <table cellpadding='8' cellspacing='0' width='100%' align='center' border='0'> <tr> <td> <table width='100%' cellspacing='1' cellpadding='0' align='center' border='0'> <tr> <td> <table width='100%' cellspacing='2' cellpadding='3' align='center' border='0'> <tr> <td align='center' colspan='2'><font face='Verdana' size='3'><b>Konfiguration</b><br><font face='Verdana' size='1'>Geben Sie ihre SQL-Daten ein</td> </tr> <tr> <td><font face='Verdana' size='1'>User:</td> <td align='center'><input type='text' name='user' style="width: 200; font-size: 8pt; font-family: verdana; vertical-align:middle; border:1px solid Black;"></td> </tr><tr> <td><font face='Verdana' size='1'>Passwort:</td> <td align='center'><input type='password' name='pwd' style="width: 200; font-size: 8pt; font-family: verdana; vertical-align:middle; border:1px solid Black;"></td> </tr><tr> <td><font face='Verdana' size='1'>Host:</td> <td align='center'><input type='text' name='host' style="width: 200; font-size: 8pt; font-family: verdana; vertical-align:middle; border:1px solid Black;"></td> </tr><tr> <td><font face='Verdana' size='1'>Datenbank:</td> <td align='center'><input type='text' name='dbname' style="width: 200; font-size: 8pt; font-family: verdana; vertical-align:middle; border:1px solid Black;"></td> </tr><tr> <td><font face='Verdana' size='1'>IBF-Tabellenprefix:</td> <td align='center'><input type='text' name='prefix' style="width: 200; font-size: 8pt; font-family: verdana; vertical-align:middle; border:1px solid Black;"></td> </tr><tr> <td colspan='2' align='center'><input type='submit' style="font-size: 8pt; font-family: verdana; vertical-align:middle; border:1px solid Black;"></td> </tr> </table> </td> </tr> </table> </td> </tr> </table> </table> </form><br>$v </body></html> EOF; }
function result() { $v = phpversion(); echo <<<EOF <html><body bgcolor='#eeeeee'> <center><br><br><font face='Verdana' size='4'><b>KALENDER AUTO INSTALLER</b> <table width='400' border='1' cellspacing='0' bgcolor='#dddddd'> <tr> <td> <table cellpadding='8' cellspacing='0' width='100%' align='center' border='0'> <tr> <td> <table width='100%' cellspacing='1' cellpadding='0' align='center' border='0'> <tr> <td> <table width='100%' cellspacing='2' cellpadding='3' align='center' border='0'> <tr> <td align='center'><font face='Verdana' size='3'><b>Resultat</b><br></td> </tr> <tr> <td><font face='Verdana' size='1'>Erstellen der SQL-Tabelle kalender : ...ok</td> </tr><tr> <td><font face='Verdana' size='1'>Update der Boards.php : ...ok</td> </tr> </table> </td> </tr> </table> </td> </tr> </table> </table><br>$v </body></html> EOF; }
function error($error) { $v = phpversion(); echo <<<EOF <html><body bgcolor='#eeeeee'> <center><br><br><font face='Verdana' size='4'><b>KALENDER AUTO INSTALLER</b> <table width='400' border='1' cellspacing='0' bgcolor='#dddddd'> <tr> <td> <table cellpadding='8' cellspacing='0' width='100%' align='center' border='0'> <tr> <td> <table width='100%' cellspacing='1' cellpadding='0' align='center' border='0'> <tr> <td> <table width='100%' cellspacing='2' cellpadding='3' align='center' border='0'> <tr> <td align='center'><font face='Verdana' size='3'><b>Fehler</b><br></td> </tr> <tr> <td align='center'><font face='Verdana' size='1' color='#ff0000'>$error</td> </tr> </table> </td> </tr> </table> </td> </tr> </table> </table><br>$v </body></html> EOF; }
?>
|
|
|
|
|
Sattu |
Дата 9.8.2002, 04:10 (ссылка)
| (нет голосов)
Загрузка ...
|
|
|
Шустрый
Профиль
Группа: Участник
Сообщений: 133
Регистрация: 7.8.2002
Где: Західна Україна
Репутация: 3 Всего: 4
|
Дорогой товарисч Voodoo - Вы извращенец !!! Поймите: НЕЛЬЗЯ ТАК ДЕЛАТЬ !!! (я, в смисле, о Вашем Скрипте, именно Скрипте с большой буквы ). Это называется ФЛУД. За такое больно пинают модераторы (в нашем случае модератор наверное слишком добр ). Кстати о Вашем Скрипте. Скорее всего ошибка не в Скрипте, не в кодировке, а в плохом знании HTML'a. Найдите в вашем Скрипте тег <HTML>, после него должны быть теги <head>.......</head> (если нет - допишите). Между ними вставте: Цитата | <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=windows-1251">
|
По идее должно работать . ЗЫ. Это ничего, что я к тебе на Вы ?
--------------------
тссссс.... «ЖЖ»
|
|
|
|
Oska |
Дата 9.8.2002, 06:30 (ссылка)
| (нет голосов)
Загрузка ...
|
|
|
Новичок
Профиль
Группа: Участник Клуба
Сообщений: 39
Регистрация: 27.3.2002
Где: 99 rus ©
Репутация: нет Всего: нет
|
Цитата(Sattu @ 08.8.2002, 21:10) | Дорогой товарисч Voodoo - Вы извращенец !!! Поймите: НЕЛЬЗЯ ТАК ДЕЛАТЬ !!! (я, в смисле, о Вашем Скрипте, именно Скрипте с большой буквы ). Это называется ФЛУД. За такое больно пинают модераторы (в нашем случае модератор наверное слишком добр ).
Кстати о Вашем Скрипте. Скорее всего ошибка не в Скрипте, не в кодировке, а в плохом знании HTML'a. Найдите в вашем Скрипте тег <HTML>, после него должны быть теги <head>.......</head> (если нет - допишите). Между ними вставте:
Цитата | <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=windows-1251">
|
По идее должно работать .
ЗЫ. Это ничего, что я к тебе на Вы ? |
НАсчет флуда понятно. Я конечно понимаю, что никто в скрипте разбираться не будет. Я и не прошу. Просто может кто знает, он просто через поиске найдет проблемку и исправит. Раз никто особо не знает в чем трабла. Придется и вправду искать концы до хеадера и там просто в наглую прописывать. P.S. Я польщен, что меня на вы называют. Значит давно не был здесь P.S.S. Просто у меня на Invision Board весь сайт работать будет
|
|
|
|
Правила форума "PHP" |
|
Новичкам:
- PHP редакторы собираются и обсуждаются здесь
- Электронные книги по PHP, документацию можно найти здесь
- Интерпретатор PHP, полную документацию можно скачать на PHP.NET
Важно:
- Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
- Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
- Действия модераторов можно обсудить здесь
Внимание:
- Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
- Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.
|
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
|
0 Пользователей:
|
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности
Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |
|
|