Exemplo n.º 1
0
 function print_data_subcamp_class($data, $pid)
 {
     $this->pid = $pid;
     $this->id = $data['id'];
     $this->camp_id = $data['camp_id'];
     $this->start = $data['start'];
     $this->length = $data['length'];
     $c_date = new c_date();
     $this->ustart = $c_date->setDay2000($this->start)->getUnix();
     $this->uend = $c_date->setDay2000($this->start + $this->length)->getUnix();
 }
Exemplo n.º 2
0
 function overview($pdf)
 {
     $row_num = count($data->subcamp) + count($data->day);
     foreach ($this->data->subcamp as $subcamp) {
         $this->y += 10;
         $subcamp_str = strtr(date('d.m.Y', $subcamp->ustart), $GLOBALS[en_to_de]);
         $subcamp_str .= " - ";
         $subcamp_str .= strtr(date('d.m.Y', $subcamp->uend), $GLOBALS[en_to_de]);
         $pdf->SetXY(10, $this->y);
         $pdf->SetFont('', 'B', 20);
         $pdf->drawTextBox($subcamp_str, 190, 10, 'L', 'M', 0);
         $this->y += 12;
         $pdf->SetFont('', 'B', 12);
         foreach ($subcamp->get_sorted_day() as $day) {
             $pdf->SetFillColor(0, 0, 0);
             $pdf->RoundedRect(0, $this->y + 0.3, 6, 7.4, 0, '0000', 'F');
             $pdf->RoundedRect(204, $this->y + 0.3, 6, 7.4, 0, '0000', 'F');
             $pdf->RoundedRect(6, $this->y, 198, 8, 0, '0000', 'D');
             $pdf->Link(6, $this->y, 198, 8, $day->get_linker($pdf));
             $day->set_marker($this->y);
             $c_date = new c_date();
             $pdf->SetFont('', 'B', 12);
             $pdf->SetTextColor(0, 0, 0);
             $day_str = strtr($c_date->setDay2000($day->date)->getString('d.m.Y - l'), $GLOBALS[en_to_de]);
             $pdf->SetXY(15, $this->y);
             $pdf->drawTextBox($day_str, 190, 8, 'L', 'M', 0);
             $pdf->SetFont('', 'B', 8);
             $pdf->SetTextColor(255, 255, 255);
             $day_str = strtr($c_date->setDay2000($day->date)->getString('D'), $GLOBALS[en_to_de]);
             $pdf->SetXY(0, $this->y);
             $pdf->drawTextBox($day_str, 6, 8, 'C', 'M', 0);
             $pdf->SetXY(204, $this->y);
             $pdf->drawTextBox($day_str, 6, 8, 'C', 'M', 0);
             $this->y += 8;
         }
         $pdf->SetTextColor(0, 0, 0);
     }
 }
Exemplo n.º 3
0
 public function Header()
 {
     global $print_data;
     $first_day = new c_date();
     $first_day->setDay2000($print_data->camp->first_day);
     $last_day = new c_date();
     $last_day->setDay2000($print_data->camp->last_day);
     $w = $this->getPageWidth();
     $fs = $this->getFontSize();
     $this->SetFontSize(8);
     $this->SetXY(10, 4);
     $this->drawTextBox($print_data->camp->slogan, $w - 20, 4, 'C', 'T', 0);
     $this->SetXY(10, 4);
     $this->drawTextBox($print_data->camp->group_name, $w - 20, 4, 'L', 'T', 0);
     $this->SetXY(10, 4);
     $this->drawTextBox($print_data->camp->name, $w - 20, 4, 'R', 'T', 0);
     $this->SetXY(10, 7);
     $this->drawTextBox($first_day->getString('d.m.Y') . " - " . $last_day->getString('d.m.Y'), $w - 20, 4, 'L', 'T', 0);
     $this->SetXY(10, 7);
     $this->drawTextBox($print_data->camp->ca_city, $w - 20, 4, 'R', 'T', 0);
     $this->Line(10, 10.5, $w - 10, 10.5);
     $this->SetFontSize($fs);
     return;
 }
Exemplo n.º 4
0
$move_to = ereg("([0-9]{1,2})[\\/\\. -]+([0-9]{1,2})[\\/\\. -]+([0-9]{1,4})", $move_to, $regs);
$move_to = gmmktime(0, 0, 0, $regs[2], $regs[1], $regs[3]);
$_camp->subcamp($subcamp_move_id) || die("error");
// Subcamp suchen
$query = "SELECT * FROM subcamp WHERE id={$subcamp_move_id} AND camp_id={$_camp->id}";
$result = mysql_query($query);
$subcamp = mysql_fetch_assoc($result);
if (!$subcamp) {
    //header( "Location: index.php?app=camp" );
    $ans = array("error" => true, "msg" => "Fehler");
    echo json_encode($ans);
    die;
}
// Überschneidungen prüfen
$start = new c_date();
$start->setUnix($move_to);
$end = new c_date();
$end->setDay2000($start->getValue() + $subcamp[length] - 1);
$query = "SELECT * FROM `subcamp` WHERE camp_id=" . $_camp->id . " AND NOT id=" . $subcamp[id] . " AND(`start` BETWEEN -10000 AND " . ($start->getValue() + $subcamp[length] - 1) . ") AND ((`start`+`length`-1) BETWEEN " . $start->getValue() . " AND 32000)";
$result = mysql_query($query);
if (mysql_num_rows($result) >= 1) {
    $ans = array("error" => true, "msg" => "Der ausgewählte Zeitabschnitt überschneidet sich mit einem anderen Lagerabschnitt. Wähle einen freien Lagerabschnitt aus!");
    echo json_encode($ans);
    die;
}
// Verschiebung durchführen
$query = "UPDATE subcamp SET start=" . $start->getValue() . " WHERE id=" . $subcamp[id];
mysql_query($query);
$ans = array("error" => false, "subcamp_start" => $start->getString("d.m.Y"), "subcamp_end" => $end->getString("d.m.Y"));
echo json_encode($ans);
die;
Exemplo n.º 5
0
 function EventInstance($event_instance_id)
 {
     $Data = EventInstanceData($event_instance_id);
     // Reicht der Platz aus, um den Block zu drucken...
     $y = $this->GetY();
     $head = $Data[head];
     $this->pdf->SetFillColor(hexdec(substr($head[color], 0, 2)), hexdec(substr($head[color], 2, 2)), hexdec(substr($head[color], 4, 2)));
     $this->pdf->RoundedRect(10, $y, 190, 18, $this->R, 'DF', '1234');
     $display = "(" . $head[day_nr] . "." . $head[event_nr] . ") " . $head[short_name] . ": " . $head[name];
     $this->pdf->setFontSize(20);
     $this->pdf->SetFontStyle('B');
     $this->SetXY(15, $y);
     $this->pdf->Cell(120, 18, $display, 0, 1, 'L', 0);
     $this->pdf->setFontSize(10);
     $this->pdf->SetFontStyle('B');
     $this->SetXY(140, $y + 1);
     $this->pdf->Write(5, "Datum:");
     $this->SetXY(140, $y + 6.5);
     $this->pdf->Write(5, "Zeit:");
     $this->SetXY(140, $y + 12);
     $this->pdf->Write(5, "Ort:");
     $start_date = new c_date();
     $start_date->setDay2000($head[start]);
     $this->SetXY(160, $y + 1);
     $this->pdf->Write(5, strtr($start_date->getString("D d.m.Y"), $GLOBALS[en_to_de]));
     $start_time = new c_time();
     $start_time->setValue($head[starttime]);
     $end_time = new c_time();
     $end_time->setValue($head[starttime] + $head[length]);
     $this->SetXY(160, $y + 6.5);
     $this->pdf->Write(5, $start_time->getString("H:i") . " - " . $end_time->getString("H:i"));
     $this->SetXY(160, $y + 12);
     $this->pdf->Write(5, $head[place]);
     $this->SetXY(10, $y + 18);
     $this->Space(4);
     $this->LabeldTable(190, $Data[info]);
     $this->Space(4);
     $this->LabeldCols(190, $Data[detail]);
 }
Exemplo n.º 6
0
    $camp_detail['change_camp'] = "index.php?app=camp&cmd=action_change_camp&camp=" . $camp_detail[id];
    $active_camp_list[] = $camp_detail;
    $active_camp_sort[] = $camp_detail['sort'];
}
if (is_array($active_camp_sort)) {
    array_multisort($active_camp_sort, SORT_DESC, $active_camp_list);
}
$query = "SELECT camp.*,\r\n\t\t\tuser.mail,\r\n\t\t\tuser.scoutname,\r\n\t\t\tuser.surname,\r\n\t\t\tuser.firstname,\r\n\t\t\tuser_camp.id AS user_camp_id\r\n\t\tFROM\r\n\t\t\tcamp,\r\n\t\t\tuser_camp\r\n\t\t\tLEFT JOIN user ON user.id=user_camp.invitation_id\r\n\t\tWHERE\r\n\t\t\tuser_camp.user_id = '{$_user->id}' AND\r\n\t\t\tuser_camp.camp_id = camp.id AND\r\n\t\t\tuser_camp.active = 0";
$result = mysql_query($query);
$request_camp_show = mysql_num_rows($result) > 0;
while ($camp_detail = mysql_fetch_assoc($result)) {
    $subquery = "SELECT \r\n\t\t\t\t\t\tMIN( subcamp.start ) AS start , \r\n\t\t\t\t\t\tMAX( subcamp.start + subcamp.length ) AS end\r\n\t\t\t\t\tFROM \r\n\t\t\t\t\t\tcamp, \r\n\t\t\t\t\t\tsubcamp \r\n\t\t\t\t\tWHERE \r\n\t\t\t\t\t\tsubcamp.camp_id = camp.id AND\r\n\t\t\t\t\t\tcamp.id = {$camp_detail['id']}";
    $subresult = mysql_query($subquery);
    $camp_time = mysql_fetch_assoc($subresult);
    $c_start = new c_date();
    $c_end = new c_date();
    $c_start->setDay2000($camp_time['start']);
    $c_end->setDay2000($camp_time['end']);
    $camp_detail['start'] = date("d.m.Y", $c_start->getUnix());
    $camp_detail['end'] = date("d.m.Y", $c_end->getUnix());
    $camp_detail[scout] = $camp_detail[scout];
    $camp_detail[name] = $camp_detail[name];
    $camp_detail[slogan] = $camp_detail[slogan];
    if ($camp_detail[mail] == "") {
        $camp_detail[from] = "<unbekannt>";
    } else {
        $camp_detail[from] = $camp_detail[scoutname] . " / " . $camp_detail[firstname] . " " . $camp_detail[surname];
    }
    $request_camp_list[] = $camp_detail;
}
$show_list = $_REQUEST['show_list'] == 1 ? true : false;
Exemplo n.º 7
0
 *
 * eCamp is free software: you can redistribute it and/or modify
 * it under the terms of the GNU Affero General Public License as published by
 * the Free Software Foundation, either version 3 of the License, or
 * (at your option) any later version.
 *
 * eCamp is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU Affero General Public License for more details.
 *
 * You should have received a copy of the GNU Affero General Public License
 * along with eCamp.  If not, see <http://www.gnu.org/licenses/>.
 */
$event_list = array();
$event_date = new c_date();
$event_time = new c_time();
$query = "\tSELECT\n\t\t\t\t\tevent.id as event_id,\n\t\t\t\t\tevent.name,\n\t\t\t\t\tcategory.id as category_id,\n\t\t\t\t\tcategory.short_name,\n\t\t\t\t\tcategory.form_type,\n\t\t\t\t\tcategory.color,\n\t\t\t\t\tevent_instance.id,\n\t\t\t\t\tevent_instance.starttime,\n\t\t\t\t\tevent_instance.length,\n\t\t\t\t\t(subcamp.start + day.day_offset) as event_date,\n\t\t\t\t\tevent.progress,\n\t\t\t\t\tday.id as day_id,\n\t\t\t\t\t(day.day_offset + 1) as daynr,\n\t\t\t\t\t(\t\n\t\t\t\t\t\tSELECT\n\t\t\t\t\t\t\tcount(event_instance_down.id)\n\t\t\t\t\t\tFROM\n\t\t\t\t\t\t\tevent_instance as event_instance_up,\n\t\t\t\t\t\t\tevent_instance as event_instance_down,\n\t\t\t\t\t\t\tevent,\n\t\t\t\t\t\t\tcategory\n\t\t\t\t\t\tWHERE\n\t\t\t\t\t\t\tevent_instance_up.id = event_instance.id AND\n\t\t\t\t\t\t\tevent_instance_up.day_id = event_instance_down.day_id AND\n\t\t\t\t\t\t\tevent_instance_down.event_id = event.id AND\n\t\t\t\t\t\t\tevent.category_id = category.id AND\n\t\t\t\t\t\t\tcategory.form_type > 0 AND\n\t\t\t\t\t\t\t(\n\t\t\t\t\t\t\t\tevent_instance_down.starttime < event_instance_up.starttime OR\n\t\t\t\t\t\t\t\t(\n\t\t\t\t\t\t\t\t\tevent_instance_down.starttime = event_instance_up.starttime AND\n\t\t\t\t\t\t\t\t\t(\n\t\t\t\t\t\t\t\t\t\tevent_instance_down.dleft < event_instance_up.dleft OR\n\t\t\t\t\t\t\t\t\t\t(\n\t\t\t\t\t\t\t\t\t\t\tevent_instance_down.dleft = event_instance_up.dleft AND\n\t\t\t\t\t\t\t\t\t\t\tevent_instance_down.id <= event_instance_up.id\n\t\t\t\t\t\t\t)\t)\t)\t)\n\t\t\t\t\t) as eventnr\n\t\t\t\tFROM\n\t\t\t\t\tevent,\n\t\t\t\t\tevent_instance,\n\t\t\t\t\tcategory,\n\t\t\t\t\tday,\n\t\t\t\t\tsubcamp\n\t\t\t\tWHERE\n\t\t\t\t\tsubcamp.camp_id = {$_camp->id} AND\n\t\t\t\t\tday.id = {$day_id} AND\n\t\t\t\t\tday.subcamp_id = subcamp.id AND\n\t\t\t\t\tevent_instance.day_id = day.id AND\n\t\t\t\t\t\n\t\t\t\t\tevent.camp_id = {$_camp->id} AND\n\t\t\t\t\tevent.category_id = category.id AND\n\t\t\t\t\t\n\t\t\t\t\tevent.id = event_instance.event_id\n\t\t\t\tORDER BY\n\t\t\t\t\tevent_instance.starttime, eventnr";
$query = "\tSELECT\n\t\t\t\t\tevent.id as event_id,\n\t\t\t\t\tevent.name,\n\t\t\t\t\tcategory.id as category_id,\n\t\t\t\t\tcategory.short_name,\n\t\t\t\t\tcategory.form_type,\n\t\t\t\t\tcategory.color,\n\t\t\t\t\tevent_instance.id,\n\t\t\t\t\tevent_instance.starttime,\n\t\t\t\t\tevent_instance.length,\n\t\t\t\t\t(subcamp.start + day.day_offset) as event_date,\n\t\t\t\t\tevent.progress,\n\t\t\t\t\tday.id as day_id,\n\t\t\t\t\tv_event_nr.day_nr as daynr,\n\t\t\t\t\tv_event_nr.event_nr as eventnr\n\t\t\t\tFROM\n\t\t\t\t\tv_event_nr,\n\t\t\t\t\tevent,\n\t\t\t\t\tevent_instance,\n\t\t\t\t\tcategory,\n\t\t\t\t\tday,\n\t\t\t\t\tsubcamp\n\t\t\t\tWHERE\n\t\t\t\t\tv_event_nr.event_instance_id = event_instance.id AND\n\t\t\t\t\tsubcamp.camp_id = {$_camp->id} AND\n\t\t\t\t\tday.id = {$day_id} AND\n\t\t\t\t\tday.subcamp_id = subcamp.id AND\n\t\t\t\t\tevent_instance.day_id = day.id AND\n\t\t\t\t\t\n\t\t\t\t\tevent.camp_id = {$_camp->id} AND\n\t\t\t\t\tevent.category_id = category.id AND\n\t\t\t\t\t\n\t\t\t\t\tevent.id = event_instance.event_id\n\t\t\t\tORDER BY\n\t\t\t\t\tevent_instance.starttime, eventnr";
$result = mysql_query($query);
while ($event_instance = mysql_fetch_assoc($result)) {
    $event_instance['event_date_str'] = $event_date->setDay2000($event_instance['event_date'])->getString('d.m.Y');
    $event_instance['starttime_str'] = $event_time->setValue($event_instance['starttime'])->getString('H:i');
    $event_instance['endtime'] = $event_instance['starttime'] + $event_instance['length'];
    $event_instance['endtime_str'] = $event_time->setValue($event_instance['endtime'])->getString('H:i');
    if ($event_instance['length_str'] = $event_time->setValue($event_instance['length'])->getMin()) {
        $event_instance['length_str'] = $event_time->setValue($event_instance['length'])->getString('G\\h i\\m\\i\\n');
    } else {
        $event_instance['length_str'] = $event_time->setValue($event_instance['length'])->getString('G\\h');
    }
    if ($event_instance['short_name']) {
Exemplo n.º 8
0
<?php

/*
 * Copyright (C) 2010 Urban Suppiger, Pirmin Mattmann
 *
 * This file is part of eCamp.
 *
 * eCamp is free software: you can redistribute it and/or modify
 * it under the terms of the GNU Affero General Public License as published by
 * the Free Software Foundation, either version 3 of the License, or
 * (at your option) any later version.
 *
 * eCamp is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU Affero General Public License for more details.
 *
 * You should have received a copy of the GNU Affero General Public License
 * along with eCamp.  If not, see <http://www.gnu.org/licenses/>.
 */
$query = "\tSELECT\n    \t\t\t\tevent.id,\n    \t\t\t\tevent.name,\n    \t\t\t\tevent.progress,\n    \t\t\t\tevent_instance.id as event_instance_id,\n    \t\t\t\tcategory.short_name,\n    \t\t\t\t(day.day_offset + subcamp.start) as date,\n    \t\t\t\t(day.day_offset + 1) as day_offset,\n    \t\t\t\t(\tSELECT\n\t\t\t\t\t\t\tcount(event_instance_down.id)\n\t\t\t\t\t\tFROM\n\t\t\t\t\t\t\tevent_instance as event_instance_up,\n\t\t\t\t\t\t\tevent_instance as event_instance_down,\n\t\t\t\t\t\t\tevent,\n\t\t\t\t\t\t\tcategory\n\t\t\t\t\t\tWHERE\n\t\t\t\t\t\t\tevent_instance_up.id = event_instance.id AND\n\t\t\t\t\t\t\tevent_instance_up.day_id = event_instance_down.day_id AND\n\t\t\t\t\t\t\tevent_instance_down.event_id = event.id AND\n\t\t\t\t\t\t\tevent.category_id = category.id AND\n\t\t\t\t\t\t\tcategory.form_type > 0 AND\n\t\t\t\t\t\t\t(\n\t\t\t\t\t\t\t\tevent_instance_down.starttime < event_instance_up.starttime OR\n\t\t\t\t\t\t\t\t(\n\t\t\t\t\t\t\t\t\tevent_instance_down.starttime = event_instance_up.starttime AND\n\t\t\t\t\t\t\t\t\t(\n\t\t\t\t\t\t\t\t\t\tevent_instance_down.dleft < event_instance_up.dleft OR\n\t\t\t\t\t\t\t\t\t\t(\n\t\t\t\t\t\t\t\t\t\t\tevent_instance_down.dleft = event_instance_up.dleft AND\n\t\t\t\t\t\t\t\t\t\t\tevent_instance_down.id <= event_instance_up.id\n\t\t\t\t\t\t\t)\t)\t)\t)\n\t\t\t\t\t) as event_nr,\n\t\t\t\t\tcategory.form_type,\n\t\t\t\t\tevent_instance.starttime\n    \t\t\tFROM\n    \t\t\t\tevent,\n    \t\t\t\tcategory,\n    \t\t\t\tevent_instance,\n    \t\t\t\tday,\n    \t\t\t\tsubcamp\n    \t\t\tWHERE\n    \t\t\t\tevent.camp_id = " . $_camp->id . " AND\n    \t\t\t\tevent.category_id = category.id AND\n    \t\t\t\tevent_instance.event_id = event.id AND\n    \t\t\t\tevent_instance.day_id = day.id AND\n    \t\t\t\tday.subcamp_id = subcamp.id\n    \t\t\tORDER BY date, starttime";
$query = "\tSELECT\n    \t\t\t\tevent.id,\n    \t\t\t\tevent.name,\n    \t\t\t\tevent.progress,\n    \t\t\t\tevent_instance.id as event_instance_id,\n    \t\t\t\tcategory.short_name,\n    \t\t\t\t(day.day_offset + subcamp.start) as date,\n    \t\t\t\tv_event_nr.day_nr as day_offset,\n    \t\t\t\tv_event_nr.event_nr,\n\t\t\t\t\tcategory.form_type,\n\t\t\t\t\tevent_instance.starttime\n    \t\t\tFROM\n    \t\t\t\tv_event_nr,\n    \t\t\t\tevent,\n    \t\t\t\tcategory,\n    \t\t\t\tevent_instance,\n    \t\t\t\tday,\n    \t\t\t\tsubcamp\n    \t\t\tWHERE\n    \t\t\t\tv_event_nr.event_instance_id = event_instance.id AND\n    \t\t\t\tevent.camp_id = " . $_camp->id . " AND\n    \t\t\t\tevent.category_id = category.id AND\n    \t\t\t\tevent_instance.event_id = event.id AND\n    \t\t\t\tevent_instance.day_id = day.id AND\n    \t\t\t\tday.subcamp_id = subcamp.id\n    \t\t\tORDER BY date, starttime";
$result = mysql_query($query);
$events = array();
$c_date = new c_date();
while ($row = mysql_fetch_assoc($result)) {
    $c_date->setDay2000($row['date']);
    $events[$row['date']]['day_str'] = $c_date->getString('d.m.Y');
    $events[$row['date']]['events'][] = $row;
}
$_page->html->set('events', $events);
Exemplo n.º 9
0
 *
 * eCamp is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU Affero General Public License for more details.
 *
 * You should have received a copy of the GNU Affero General Public License
 * along with eCamp.  If not, see <http://www.gnu.org/licenses/>.
 */
$valid_fields = array("scoutname", "firstname", "surname", "street", "zipcode", "city", "homenr", "mobilnr", "birthday", "ahv", "sex", "jspersnr", "jsedu", "pbsedu");
$field = mysql_real_escape_string($_REQUEST[field]);
$value = $_REQUEST[value];
$value_save = mysql_real_escape_string($value);
if (!in_array($field, $valid_fields)) {
    die;
}
if ($field == "birthday") {
    $birthday = new c_date();
    $birthday->setString($value_save);
    $value_save = $birthday->getValue();
}
$query = "UPDATE user SET {$field} = '{$value_save}' WHERE id = '{$_user->id}'";
mysql_query($query);
if ($field == "birthday") {
    $value_save = $birthday->getString("d.m.Y");
}
// XML-Response senden
header("Content-type: application/json");
$ans_array = array("field" => $field, "value" => $value);
echo json_encode($ans_array);
die;
Exemplo n.º 10
0
$jsedu_content = array();
$jsedu_selected = "false";
$query = "\tSELECT \r\n\t\t\t\t\tdropdown.*, \r\n\t\t\t\t\t(\r\n\t\t\t\t\t\tSELECT \r\n\t\t\t\t\t\t\tcount(*) \r\n\t\t\t\t\t\tFROM \r\n\t\t\t\t\t\t\tuser \r\n\t\t\t\t\t\tWHERE \r\n\t\t\t\t\t\t\tuser.jsedu = dropdown.item_nr AND \r\n\t\t\t\t\t\t\tuser.id = '{$_user->id}'\r\n\t\t\t\t\t) as selected \r\n\t\t\t\tFROM \r\n\t\t\t\t\tdropdown, \r\n\t\t\t\t\tuser \r\n\t\t\t\tWHERE \r\n\t\t\t\t\tlist = 'jsedu' AND \r\n\t\t\t\t\tuser.id = '{$_user->id}'";
$result = mysql_query($query);
while ($row = mysql_fetch_assoc($result)) {
    $jsedu_content[] = array("value" => $row[item_nr], "content" => $row[entry], "selected" => $row[selected]);
    if ($row['selected']) {
        $jsedu_selected = $row[item_nr];
    }
}
//  PBS-Ausbildung
// ================
$pbsedu_content = array();
$pbsedu_selected = "false";
$query = "SELECT * FROM dropdown WHERE list = 'pbsedu'";
$query = "\tSELECT \r\n\t\t\t\t\tdropdown.*, \r\n\t\t\t\t\t(\r\n\t\t\t\t\t\tSELECT \r\n\t\t\t\t\t\t\tcount(*) \r\n\t\t\t\t\t\tFROM \r\n\t\t\t\t\t\t\tuser \r\n\t\t\t\t\t\tWHERE \r\n\t\t\t\t\t\t\tuser.pbsedu = dropdown.item_nr AND \r\n\t\t\t\t\t\t\tuser.id = '{$_user->id}'\r\n\t\t\t\t\t) as selected \r\n\t\t\t\tFROM \r\n\t\t\t\t\tdropdown, \r\n\t\t\t\t\tuser \r\n\t\t\t\tWHERE \r\n\t\t\t\t\tlist = 'pbsedu' AND \r\n\t\t\t\t\tuser.id = '{$_user->id}'";
$result = mysql_query($query);
while ($row = mysql_fetch_assoc($result)) {
    $pbsedu_content[] = array("value" => $row[item_nr], "content" => $row[entry], "selected" => $row[selected]);
    if ($row['selected']) {
        $pbsedu_selected = $row[item_nr];
    }
}
$query = "SELECT * FROM user WHERE id = '{$_user->id}'";
$result = mysql_query($query);
$row = mysql_fetch_assoc($result);
$birthday = new c_date();
$birthday->setDay2000($row[birthday]);
$profile = array("img_src" => "index.php?app=user_profile&cmd=show_avatar&show_user_id=" . $_user->id, "scoutname" => array("name" => "scoutname", "value" => $row[scoutname]), "firstname" => array("name" => "firstname", "value" => $row[firstname]), "surname" => array("name" => "surname", "value" => $row[surname]), "street" => array("name" => "street", "value" => $row[street]), "zipcode" => array("name" => "zipcode", "value" => $row[zipcode]), "city" => array("name" => "city", "value" => $row[city]), "homenr" => array("name" => "homenr", "value" => $row[homenr]), "mobilnr" => array("name" => "mobilnr", "value" => $row[mobilnr]), "birthday" => array("name" => "birthday", "value" => $birthday->getString("d.m.Y")), "ahv" => array("name" => "ahv", "value" => $row[ahv]), "jspersnr" => array("name" => "jspersnr", "value" => $row[jspersnr]), "sex" => array("name" => "sex", "value" => $sex_content, "selected" => $sex_selected), "jsedu" => array("name" => "jsedu", "value" => $jsedu_content, "selected" => $jsedu_selected), "pbsedu" => array("name" => "pbsedu", "value" => $pbsedu_content, "selected" => $pbsedu_selected), "pw_change" => "", "avatar" => "");
$_page->html->set('profile', $profile);
//print_r($profile);
Exemplo n.º 11
0
$change_end = gmmktime(0, 0, 0, $regs[2], $regs[1], $regs[3]);
$_camp->subcamp($subcamp_change_id) || die("error");
// Subcamp suchen
$query = "SELECT * FROM subcamp WHERE id={$subcamp_change_id} AND camp_id='{$_camp->id}'";
$result = mysql_query($query);
if (mysql_num_rows($result) == 0) {
    //header( "Location: index.php?app=camp" );
    $ans = array("error" => true, "msg" => "Fehler");
    echo json_encode($ans);
    die;
}
$subcamp = mysql_fetch_assoc($result);
$subcamp[end] = $subcamp[start] + $subcamp[length] - 1;
// Datum auslesen
$c_start = new c_date();
$c_end = new c_date();
$c_start->setUnix($change_start);
$c_end->setUnix($change_end);
$start = $c_start->getValue();
$end = $c_end->getValue();
$length = $end - $start + 1;
// Verkehrt rum
if ($length <= 0) {
    $ans = array("error" => true, "msg" => "Das Enddatum darf nicht vor dem Startdatum liegen!");
    echo json_encode($ans);
    die;
} else {
    if ($length > 40) {
        $ans = array("error" => true, "msg" => "Die maximale Länge eines Lagerabschnitts beträgt 40 Tage. Verwende bitte mehrere Lagerabschnitt für überlange Lager!");
        echo json_encode($ans);
        die;
Exemplo n.º 12
0
 * the Free Software Foundation, either version 3 of the License, or
 * (at your option) any later version.
 *
 * eCamp is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU Affero General Public License for more details.
 *
 * You should have received a copy of the GNU Affero General Public License
 * along with eCamp.  If not, see <http://www.gnu.org/licenses/>.
 */
require_once "application/day/inc/prog_color.php";
$_page->html->set('main_macro', $GLOBALS[tpl_dir] . '/global/content_box_fit.tpl/predefine');
$_page->html->set('box_content', $GLOBALS[tpl_dir] . '/application/my_resp/home.tpl/home');
$_page->html->set('box_title', "Meine Verantwortung");
$date = new c_date();
// Events
$events = array();
$query = "\tSELECT\r\n    \t\t\t\tevent.id,\r\n    \t\t\t\tevent.name,\r\n    \t\t\t\tevent.progress,\r\n    \t\t\t\tcategory.form_type,\r\n    \t\t\t\tcategory.short_name,\r\n    \t\t\t\tcategory.color,\r\n    \t\t\t\t(day.day_offset + subcamp.start) as date,\r\n    \t\t\t\t(day.day_offset + 1) as day_offset,\r\n    \t\t\t\t(\tSELECT\r\n\t\t\t\t\t\t\tcount(event_instance_down.id)\r\n\t\t\t\t\t\tFROM\r\n\t\t\t\t\t\t\tevent_instance as event_instance_up,\r\n\t\t\t\t\t\t\tevent_instance as event_instance_down,\r\n\t\t\t\t\t\t\tevent,\r\n\t\t\t\t\t\t\tcategory\r\n\t\t\t\t\t\tWHERE\r\n\t\t\t\t\t\t\tevent_instance_up.id = event_instance.id AND\r\n\t\t\t\t\t\t\tevent_instance_up.day_id = event_instance_down.day_id AND\r\n\t\t\t\t\t\t\tevent_instance_down.event_id = event.id AND\r\n\t\t\t\t\t\t\tevent.category_id = category.id AND\r\n\t\t\t\t\t\t\tcategory.form_type > 0 AND\r\n\t\t\t\t\t\t\t(\r\n\t\t\t\t\t\t\t\tevent_instance_down.starttime < event_instance_up.starttime OR\r\n\t\t\t\t\t\t\t\t(\r\n\t\t\t\t\t\t\t\t\tevent_instance_down.starttime = event_instance_up.starttime AND\r\n\t\t\t\t\t\t\t\t\t(\r\n\t\t\t\t\t\t\t\t\t\tevent_instance_down.dleft < event_instance_up.dleft OR\r\n\t\t\t\t\t\t\t\t\t\t(\r\n\t\t\t\t\t\t\t\t\t\t\tevent_instance_down.dleft = event_instance_up.dleft AND\r\n\t\t\t\t\t\t\t\t\t\t\tevent_instance_down.id <= event_instance_up.id\r\n\t\t\t\t\t\t\t)\t)\t)\t)\r\n\t\t\t\t\t) as event_nr,\r\n\t\t\t\t\tcategory.form_type,\r\n\t\t\t\t\tevent_instance.starttime\r\n    \t\t\tFROM\r\n    \t\t\t\tevent,\r\n    \t\t\t\tevent_responsible,\r\n    \t\t\t\tcategory,\r\n    \t\t\t\tevent_instance,\r\n    \t\t\t\tday,\r\n    \t\t\t\tsubcamp\r\n    \t\t\tWHERE\r\n    \t\t\t\tevent_responsible.user_id = " . $_user->id . " AND\r\n    \t\t\t\tevent.camp_id = " . $_camp->id . " AND\r\n    \t\t\t\tevent_responsible.event_id = event.id AND\r\n    \t\t\t\tevent.category_id = category.id AND\r\n    \t\t\t\tevent_instance.event_id = event.id AND\r\n    \t\t\t\tevent_instance.day_id = day.id AND\r\n    \t\t\t\tday.subcamp_id = subcamp.id\r\n    \t\t\tORDER BY date, starttime";
$query = "\tSELECT\r\n    \t\t\t\tevent.id,\r\n    \t\t\t\tevent.name,\r\n    \t\t\t\tevent.progress,\r\n    \t\t\t\tcategory.form_type,\r\n    \t\t\t\tcategory.short_name,\r\n    \t\t\t\tcategory.color,\r\n    \t\t\t\t(day.day_offset + subcamp.start) as date,\r\n    \t\t\t\tv_event_nr.day_nr as day_offset,\r\n    \t\t\t\tv_event_nr.event_nr,\r\n\t\t\t\t\tcategory.form_type,\r\n\t\t\t\t\tevent_instance.starttime\r\n    \t\t\tFROM\r\n    \t\t\t\tv_event_nr,\r\n    \t\t\t\tevent,\r\n    \t\t\t\tevent_responsible,\r\n    \t\t\t\tcategory,\r\n    \t\t\t\tevent_instance,\r\n    \t\t\t\tday,\r\n    \t\t\t\tsubcamp\r\n    \t\t\tWHERE\r\n    \t\t\t\tv_event_nr.event_instance_id = event_instance.id AND\r\n    \t\t\t\tevent_responsible.user_id = " . $_user->id . " AND\r\n    \t\t\t\tevent.camp_id = " . $_camp->id . " AND\r\n    \t\t\t\tevent_responsible.event_id = event.id AND\r\n    \t\t\t\tevent.category_id = category.id AND\r\n    \t\t\t\tevent_instance.event_id = event.id AND\r\n    \t\t\t\tevent_instance.day_id = day.id AND\r\n    \t\t\t\tday.subcamp_id = subcamp.id\r\n    \t\t\tORDER BY date, starttime";
$result = mysql_query($query);
while ($event = mysql_fetch_assoc($result)) {
    $date->setDay2000($event['date']);
    $event['link'] = '$event.edit(' . $event[id] . ')';
    $event['color_str'] = "background-color:#" . $event['color'];
    if ($event['form_type']) {
        $event['prog_color'] = get_progress_color($event['progress']);
    } else {
        $event['prog_color'] = "#000000";
    }
    $event['show_event_nr'] = $event[form_type] > 0;
Exemplo n.º 13
0
    $user['sex_str'] = "";
    $user['sex_symbol'] = "";
}
// J+S Edu:
$query = "\tSELECT \tentry\n\t\t\t\tFROM \tdropdown\n\t\t\t\tWHERE\tlist = 'jsedu'\n\t\t\t\tAND\t\titem_nr = '" . $user['jsedu'] . "'";
$result = mysql_query($query);
if (mysql_num_rows($result) == 1) {
    $jsedu_array = mysql_fetch_assoc($result);
    $user['jsedu_str'] = $jsedu_array['entry'];
} else {
    $user['jsedu_str'] = "";
}
// PBS Edu:
$query = "\tSELECT \tentry\n\t\t\t\tFROM \tdropdown\n\t\t\t\tWHERE\tlist = 'pbsedu'\n\t\t\t\tAND\t\titem_nr = '" . $user['pbsedu'] . "'";
$result = mysql_query($query);
if (mysql_num_rows($result) == 1) {
    $pbsedu_array = mysql_fetch_assoc($result);
    $user['pbsedu_str'] = $pbsedu_array['entry'];
} else {
    $user['pbsedu_str'] = "";
}
// birthday:
$user['birthday_str'] = "";
if (is_numeric($user['birthday'])) {
    $date = new c_date();
    $date->setDay2000($user['birthday']);
    $user['birthday_str'] = $date->getString("d.m.Y");
}
// Profile Pic:
$user['avatar'] = "index.php?app=user_profile&cmd=show_avatar&show_user_id=" . $id;
$_page->html->set('user_detail', $user);
Exemplo n.º 14
0
 * it under the terms of the GNU Affero General Public License as published by
 * the Free Software Foundation, either version 3 of the License, or
 * (at your option) any later version.
 *
 * eCamp is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU Affero General Public License for more details.
 *
 * You should have received a copy of the GNU Affero General Public License
 * along with eCamp.  If not, see <http://www.gnu.org/licenses/>.
 */
# Search for all camps, the user is working
#
#########################################################
$c_date = new c_date();
$c_date->setUnix(time());
$dropdown = array();
$query = "\tSELECT\n\t\t\t\t\tcamp.*,\n\t\t\t\t\tgroups.id as groups_id,\n\t\t\t\t\tgroups.short_prefix,\n\t\t\t\t\tgroups.name as groups_name\n\t\t\t\tFROM\n\t\t\t\t\tuser_camp,\n\t\t\t\t\tcamp\n\t\t\t\tLEFT JOIN\n\t\t\t\t\tgroups\n\t\t\t\tON\n\t\t\t\t\tgroups.id = camp.group_id\n\t\t\t\tWHERE\n\t\t\t\t\tuser_camp.active = 1 AND\n\t\t\t\t\tuser_camp.camp_id = camp.id AND\n\t\t\t\t\tuser_camp.user_id = {$_user->id}";
$result = mysql_query($query);
while ($camp = mysql_fetch_assoc($result)) {
    $subquery = "\tSELECT\tMAX( subcamp.start + subcamp.length - 1 ) as camp_end\n\t\t\t\t\t\tFROM\tsubcamp\n\t\t\t\t\t\tWHERE\tsubcamp.camp_id = " . $camp['id'];
    $subresult = mysql_query($subquery);
    $camp_end = mysql_result($subresult, 0, 'camp_end');
    //$dropdown[$camp[groups_id]] = array();
    $dropdown[$camp[groups_id]][group_name] = $camp[short_prefix] . " " . $camp[groups_name];
    //$dropdown[$camp[groups_id]][camp_list]  = array();
    //$dropdown[$camp[groups_id]][camp_list][$camp[id]] = array();
    $dropdown[$camp[groups_id]][camp_list][$camp[id]][short_name] = $camp[short_name];
    $dropdown[$camp[groups_id]][camp_list][$camp[id]][id] = $camp[id];
    $dropdown[$camp[groups_id]][camp_list][$camp[id]][past] = $camp_end < $c_date->getValue();
Exemplo n.º 15
0
 * You should have received a copy of the GNU Affero General Public License
 * along with eCamp.  If not, see <http://www.gnu.org/licenses/>.
 */
// Authentifizierung überprüfen
$start = mysql_real_escape_string($_REQUEST['subcamp_start']);
$end = mysql_real_escape_string($_REQUEST['subcamp_end']);
$start = ereg("([0-9]{1,2})[\\/\\. -]+([0-9]{1,2})[\\/\\. -]+([0-9]{1,4})", $start, $regs);
$start = gmmktime(0, 0, 0, $regs[2], $regs[1], $regs[3]);
//$start = preg_replace("/^\s*([0-9]{1,2})[\/\. -]+([0-9]{1,2})[\/\. -]+([0-9]{1,4})/", "\\2/\\1/\\3", $start);
//$start = strtotime($start);
$end = ereg("([0-9]{1,2})[\\/\\. -]+([0-9]{1,2})[\\/\\. -]+([0-9]{1,4})", $end, $regs);
$end = gmmktime(0, 0, 0, $regs[2], $regs[1], $regs[3]);
//$end = preg_replace("/^\s*([0-9]{1,2})[\/\. -]+([0-9]{1,2})[\/\. -]+([0-9]{1,4})/", "\\2/\\1/\\3", $end);
//$end = strtotime($end);
$c_start = new c_date();
$c_end = new c_date();
$c_start->setUnix($start);
$c_end->setUnix($end);
$start = $c_start->getValue();
$length = $c_end->getValue() - $c_start->getValue() + 1;
if ($length <= 0) {
    $ans = array("error" => true, "msg" => "Das Enddatum darf nicht vor dem Startdatum liegen!");
    echo json_encode($ans);
    die;
} else {
    if ($length > 40) {
        $ans = array("error" => true, "msg" => "Die maximale Länge eines Lagerabschnitts beträgt 40 Tage. Verwende bitte mehrere Lagerabschnitt für überlange Lager!");
        echo json_encode($ans);
        die;
    }
}
Exemplo n.º 16
0
##############################################
$all_days_query = " SELECT day.id, day.day_offset, subcamp.start\r\n\t\t\t\t\t\tFROM day, subcamp\r\n\t\t\t\t\t\tWHERE \tday.subcamp_id = subcamp.id AND\r\n\t\t\t\t\t\t\t\tsubcamp.camp_id = {$_camp->id}\r\n\t\t\t\t\t\tORDER BY start ASC, day_offset ASC";
$all_days_result = mysql_query($all_days_query);
$events = "";
$days = array();
$day_nr = 0;
while ($day = mysql_fetch_assoc($all_days_result)) {
    $leader_query = "\tSELECT\r\n\t\t\t\t\t\t\t\tuser_camp.user_id\r\n\t\t\t\t\t\t\tFROM\r\n\t\t\t\t\t\t\t\tjob,\r\n\t\t\t\t\t\t\t\tjob_day,\r\n\t\t\t\t\t\t\t\tuser_camp\r\n\t\t\t\t\t\t\tWHERE\r\n\t\t\t\t\t\t\t\tjob.show_gp = 1 AND\r\n\t\t\t\t\t\t\t\tjob_day.day_id = " . $day[id] . " AND\r\n\t\t\t\t\t\t\t\tjob_day.user_camp_id = user_camp.id AND\r\n\t\t\t\t\t\t\t\tjob_day.job_id = job.id";
    $leader_result = mysql_query($leader_query);
    if (mysql_num_rows($leader_result)) {
        $leader = mysql_result($leader_result, 'user_id', 0);
    } else {
        $leader = "0";
    }
    $day_nr++;
    $date = new c_date();
    $date->setDay2000($day[start] + $day[day_offset]);
    $days[] = array("day_id" => $day[id], "day_id_string" => "day_id_" . $day[id], "style" => "left:" . $day_width * ($day_nr - 1) . "px; width:" . $day_width . "px", "date" => strtr($date->getString('D d.m.Y'), $GLOBALS[en_to_de]), "link" => "index.php?app=day&cmd=home&day_id=" . $day[id], "leader" => $leader, "class" => $day_nr % 2 ? "bg1" : "bg2", "body_class" => ($day_nr % 2 ? "bg1" : "bg2") . " day_body");
}
$leaders = array();
$all_leader_query = "\tSELECT\r\n\t\t\t\t\t\t\t\tuser.id,\r\n\t\t\t\t\t\t\t\tuser.scoutname,\r\n\t\t\t\t\t\t\t\tuser.firstname,\r\n\t\t\t\t\t\t\t\tuser.surname\r\n\t\t\t\t\t\t\tFROM\r\n\t\t\t\t\t\t\t\tuser,\r\n\t\t\t\t\t\t\t\tuser_camp,\r\n\t\t\t\t\t\t\t\tdropdown\r\n\t\t\t\t\t\t\tWHERE\r\n\t\t\t\t\t\t\t\tuser_camp.function_id = dropdown.id AND\r\n\t\t\t\t\t\t\t\tdropdown.entry != 'Support' AND\r\n\t\t\t\t\t\t\t\tuser.id = user_camp.user_id AND\r\n\t\t\t\t\t\t\t\tuser_camp.camp_id = {$_camp->id}";
$all_leader_result = mysql_query($all_leader_query);
while ($leader = mysql_fetch_assoc($all_leader_result)) {
    $leaders[$leader['id']] = array("value" => $leader['id'], "content" => $leader['scoutname'], "selected" => 0);
}
$query = "\tSELECT job_name\r\n\t\t\t\tFROM job\r\n\t\t\t\tWHERE\r\n\t\t\t\t\tjob.camp_id = {$_camp->id} AND\r\n\t\t\t\t\tjob.show_gp = 1";
$result = mysql_query($query);
if (mysql_num_rows($result)) {
    $main_job = mysql_result($result, 'job_name', 0);
    $_js_env->add('EnableMainJobResp', true);
} else {
Exemplo n.º 17
0
$camp_info["subcamps"] = $subcamps;
$camp_info['show_map_coor'] .= $camp_data['ca_coor1'] . $camp_data['ca_coor2'] . "," . $camp_data['ca_coor3'] . $camp_data['ca_coor4'];
if ($_REQUEST['show'] == 'firsttime') {
    $camp_info['firsttime'] = true;
} else {
    $camp_info['firsttime'] = false;
}
if ($camp_data['is_course']) {
    $query = "\tSELECT dropdown.entry\r\n\t\t\t\t\tFROM dropdown \r\n\t\t\t\t\tWHERE\r\n\t\t\t\t\t\tvalue = " . $camp_data['type'] . " AND\r\n\t\t\t\t\t\tlist = 'coursetype'";
    $result = mysql_query($query);
    if (mysql_error() || !mysql_num_rows($result)) {
        $camp_info['type'] = "asdf";
    } else {
        $camp_info['type'] = mysql_result($result, 0, 'entry');
    }
}
$_page->html->set('camp_info', $camp_info);
//#####################################################
// Load Blocked Data:
$cdate = new c_date();
$blocked_days = array();
$query = "\tSELECT \r\n\t\t\t\t\t(subcamp.start + day.day_offset) as day,\r\n\t\t\t\t\tsubcamp.id\r\n\t\t\t\tFROM\r\n\t\t\t\t\tday,\r\n\t\t\t\t\tsubcamp\r\n\t\t\t\tWHERE\r\n\t\t\t\t\tday.subcamp_id = subcamp.id AND\r\n\t\t\t\t\tsubcamp.camp_id = " . $_camp->id;
$result = mysql_query($query);
while ($day = mysql_fetch_assoc($result)) {
    if (!isset($blocked_days[$day['id']])) {
        $blocked_days[$day['id']] = array();
    }
    $cdate->setDay2000($day['day']);
    array_push($blocked_days[$day['id']], $cdate->getString('j n Y'));
}
$_js_env->add('blocked_days', $blocked_days);
Exemplo n.º 18
0
 function page_content($pdf, $subcamp, $start_row, $end_row)
 {
     $date = new c_date();
     $num_row = $end_row - $start_row + 1;
     $row_width = ($this->pw - 60) / $num_row;
     for ($row = $start_row; $row <= $end_row; $row++) {
         $day = $subcamp->get_day_by_nr($row);
         $day->gen_event_nr();
         $base_left = 30 + ($row - $start_row) * $row_width;
         $base_top = 30;
         $pdf->RoundedRect($base_left, 22, $row_width, 4, 2, '1001', '');
         $pdf->RoundedRect($base_left, 26, $row_width, 4, 2, '0000', '');
         $pdf->Link($base_left, 22, $row_width, 4, $day->get_linker($pdf));
         $date->setDay2000($day->subcamp->start + $day->day_offset);
         $pdf->SetXY($base_left, 22);
         $pdf->SetFontSize(8);
         $pdf->drawTextBox(strtr($date->getString('D, d.m.Y'), $GLOBALS[en_to_de]), $row_width, 4, 'C', 'M', 0);
         if ($row % 2) {
             $pdf->SetFillColor(0, 0, 0);
             $pdf->SetAlpha(0.1);
             $pdf->RoundedRect($base_left, 30, $row_width, $this->ph - 50, 0, '0000', 'F');
             $pdf->SetAlpha(1);
         }
         //	MAIN DAY-JOB
         if ($day->user) {
             $pdf->SetXY($base_left, 26);
             $pdf->SetFontSize(8);
             $pdf->drawTextBox($day->user->get_name(), $row_width, 4, 'C', 'M', 0);
         }
         foreach ($day->event_instance as $event_instance) {
             $m = 0.3;
             $p = 0.5;
             $s = $this->time_mm($event_instance->starttime);
             $e = $this->time_mm($event_instance->starttime + $event_instance->length);
             $x = $base_left + $row_width * $event_instance->dleft + $m;
             $y = $base_top + $s + $m;
             $w = $row_width * $event_instance->width - 2 * $m;
             $h = $e - $s - 2 * $m;
             $color = $this->color($event_instance->event->category->color);
             $pdf->SetFillColor($color['r'], $color['g'], $color['b']);
             $pdf->SetAlpha(0.85);
             $pdf->RoundedRect($x, $y, $w, $h, 1.5, '1111', 'FD');
             $pdf->Link($x, $y, $w, $h, $event_instance->get_linker($pdf));
             $pdf->SetAlpha(1);
             $pdf->SetFontSize(6);
             $pdf->SetXY($x + $p, $y + $p);
             if ($event_instance->event->category->form_type) {
                 $name = "(" . $day->day_nr . "." . $event_instance->event_nr . ") ";
             } else {
                 $name = "";
             }
             if ($event_instance->event->category->short_name != "") {
                 $name .= $event_instance->event->category->short_name . ": ";
             }
             $name .= $event_instance->event->name . "\n";
             if ($this->data->camp->is_course) {
                 // ChkLst:
                 $chklst = array();
                 foreach ($event_instance->event->event_checklist as $chkpnt) {
                     $chklst[] = $chkpnt->short;
                 }
                 if (count($chklst)) {
                     $name .= "[" . implode("; ", $chklst) . "]\n";
                 }
             }
             if (count($event_instance->event->event_responsible)) {
                 $name .= "[";
                 foreach ($event_instance->event->event_responsible as $user) {
                     $name .= $user->scoutname . "; ";
                 }
                 $name = substr($name, 0, -2);
                 $name .= "]";
             }
             $pdf->MultiCell($w - 2 * $p, $h - 2 * $p, $name, 0, 'C');
             $pdf->SetTextColor(0, 0, 0);
         }
     }
 }
Exemplo n.º 19
0
 function marker($pdf, $day)
 {
     $c_date = new c_date();
     if (!$day->marker) {
         return;
     }
     $pdf->SetFillColor(0, 0, 0);
     $pdf->RoundedRect(0, $day->marker + 0.3, 6, 7.4, 0, '0000', 'F');
     $pdf->RoundedRect(204, $day->marker + 0.3, 6, 7.4, 0, '0000', 'F');
     $pdf->Link(0, $day->marker + 0.3, 6, 7.4, $day->linker);
     $pdf->Link(204, $day->marker + 0.3, 6, 7.4, $day->linker);
     $pdf->SetFont('', 'B', 8);
     $pdf->SetTextColor(255, 255, 255);
     $day_str = strtr($c_date->setDay2000($day->date)->getString('D'), $GLOBALS[en_to_de]);
     $pdf->SetXY(0, $day->marker);
     $pdf->drawTextBox($day_str, 6, 8, 'C', 'M', 0);
     $pdf->SetXY(204, $day->marker);
     $pdf->drawTextBox($day_str, 6, 8, 'C', 'M', 0);
     $pdf->SetTextColor(0, 0, 0);
 }
Exemplo n.º 20
0
// =========
$query = "\tSELECT\n\t\t\t\t\tuser.scoutname,\n\t\t\t\t\tuser.firstname,\n\t\t\t\t\tuser.surname\n\t\t\t\tFROM\n\t\t\t\t\tevent_responsible,\n\t\t\t\t\tuser\n\t\t\t\tWHERE\n\t\t\t\t\tevent_responsible.event_id = {$event_id} AND\n\t\t\t\t\tevent_responsible.user_id = user.id ";
$result = mysql_query($query);
$users = array();
$dp_header = array("users" => $users);
while ($row = mysql_fetch_assoc($result)) {
    if (!empty($row[scoutname])) {
        array_push($dp_header['users'], $row[scoutname]);
    } else {
        array_push($dp_header['users'], $row[firstname] . " " . $row[surname]);
    }
}
$dp_header['place'] = array("value" => $event_place, "event_id" => $event_id, "script" => "action_change_place");
$query = "\tSELECT\n\t\t\t\t\tevent_instance.starttime,\n\t\t\t\t\tevent_instance.length,\n\t\t\t\t\tday.day_offset + subcamp.start as startdate\n\t\t\t\tFROM\n\t\t\t\t\tevent_instance,\n\t\t\t\t\tday,\n\t\t\t\t\tsubcamp\n\t\t\t\tWHERE\n\t\t\t\t\tevent_instance.event_id = {$event_id} AND\n\t\t\t\t\tevent_instance.day_id = day.id AND\n\t\t\t\t\tday.subcamp_id = subcamp.id";
$result = mysql_query($query);
$date = new c_date();
$start = new c_time();
$end = new c_time();
$dp_header['event_instance'] = array();
while ($row = mysql_fetch_assoc($result)) {
    $date->setDay2000($row['startdate']);
    $start->setValue($row['starttime']);
    $end->setValue($row['starttime'] + $row['length']);
    $dp_header['event_instance'][] = array('startdate' => date("d.m.Y", $date->getUnix()), 'starttime' => $start->getString("H:i") . " - " . $end->getString("H:i"));
}
$_page->html->set('dp_header', $dp_header);
//	HEAD:
// =======
$dp_head_show = array();
$query = "\tSELECT\n\t\t\t\t\tdropdown.value as form,\n\t\t\t\t\t(dropdown.value = category.form_type) as show_form\n\t\t\t\tFROM\n\t\t\t\t\tevent,\n\t\t\t\t\tcategory,\n\t\t\t\t\tdropdown\n\t\t\t\tWHERE\n\t\t\t\t\tevent.id = {$event_id} AND\n\t\t\t\t\tevent.category_id = category.id AND\n\t\t\t\t\tdropdown.list = 'form'";
$result = mysql_query($query);
Exemplo n.º 21
0
        $result2 = mysql_query($query);
        $level2 = array();
        while ($this_level2 = @mysql_fetch_assoc($result2)) {
            // Events suchen, die die Checkliste erfüllen
            $events = array();
            $query = "SELECT \r\n\t\t\t\t\t\t\t  i.id\r\n\t\t\t\t\t\t\tFROM\r\n\t\t\t\t\t\t\t  event_checklist ch,\r\n\t\t\t\t\t\t\t  event e,\r\n\t\t\t\t\t\t\t  event_instance i\r\n\t\t\t\t\t\t\tWHERE \r\n\t\t\t\t\t\t\t    ch.checklist_id = {$this_level2['id']}\r\n\t\t\t\t\t\t\tAND e.camp_id={$_camp->id}\r\n\t\t\t\t\t\t\tAND e.id = ch.event_id\r\n\t\t\t\t\t\t\tAND i.event_id = e.id\r\n\t\t\t\t\t\t\tORDER BY i.day_id, i.starttime";
            $result3 = mysql_query($query);
            $no_events = true;
            while ($this_level3_instance = @mysql_fetch_assoc($result3)) {
                $this_level3 = $campevents[$this_level3_instance["id"]];
                $no_events = false;
                $start = new c_time();
                $start->setValue($this_level3[start]);
                $end = new c_time();
                $end->setValue($this_level3[end]);
                $date = new c_date();
                $date->setDay2000($this_level3[day]);
                $this_level3[date] = $GLOBALS[en_to_de][$date->getString("D")] . ", " . $date->getString("j.n.") . " " . $start->getString("G:i") . "-" . $end->getString("G:i");
                //"Fr, 5.10. 17:15-18:00";
                if ($this_level3['short_name']) {
                    $this_level3['short_name'] .= ": ";
                }
                $events[] = $this_level3;
            }
            $level2[] = array("short" => $this_level2[short], "name" => $this_level2[name], "no_events" => $no_events, "events" => $events);
        }
        $list[$i][] = array("level2" => $level2, "short" => $this_level1[short], "name" => $this_level1[name]);
    }
}
// PHPTAL Variablen setzen
$_page->html->set("pbs_list", $list[0]);
Exemplo n.º 22
0
Header("Content-Length: ".strlen($output));
Header("Connection: close");
Header("Content-Type: text/x-vCard; name=$filename");

echo $output;
?>
*/
$user_id = $_REQUEST['user_id'];
$user_id = mysql_real_escape_string($user_id);
$query = "\tSELECT\n\t\t\t\t\tuser.homenr,\n\t\t\t\t\tuser.mobilnr,\n\t\t\t\t\tuser.scoutname,\n\t\t\t\t\tuser.firstname,\n\t\t\t\t\tuser.surname,\n\t\t\t\t\tuser.birthday,\n\t\t\t\t\tuser.street,\n\t\t\t\t\tuser.zipcode,\n\t\t\t\t\tuser.city,\n\t\t\t\t\tuser.mail\n\t\t\t\tFROM\n\t\t\t\t\tuser,\n\t\t\t\t\tuser as my_user,\n\t\t\t\t\tuser_camp,\n\t\t\t\t\tuser_camp as my_user_camp\n\t\t\t\tWHERE\n\t\t\t\t\tuser.id = {$user_id} AND\n\t\t\t\t\tmy_user.id = {$_user->id} AND\n\t\t\t\t\tmy_user.id = my_user_camp.user_id AND\n\t\t\t\t\tuser.id = user_camp.user_id AND\n\t\t\t\t\tuser_camp.camp_id = my_user_camp.camp_id";
$result = mysql_query($query);
if (mysql_num_rows($result) < 1) {
    die("no result");
}
$user_data = mysql_fetch_assoc($result);
$birthday = new c_date();
$birthday->setDay2000($user_data[birthday]);
$v = new vCard();
$v->setPhoneNumber($user_data[homenr], "PREF;HOME;VOICE");
$v->setPhoneNumber($user_data[mobilnr], "PREF;CELL;VOICE");
$v->setName($user_data[surname], $user_data[firstname], $user_data[scoutname], "");
$v->setBirthday($birthday->getString("Y-m-d"));
$v->setAddress("", "", $user_data[street], $user_data[city], "", $user_data[zipcode], "");
$v->setEmail($user_data[mail]);
$v->setNote("Automatisch generiert auf Basis der Daten von eCamp");
$output = $v->getVCard();
$filename = $v->getFileName();
Header("Content-Disposition: attachment; filename={$filename}");
Header("Content-Length: " . strlen($output));
Header("Connection: close");
Header("Content-Type: text/x-vCard; name={$filename}");
Exemplo n.º 23
0
 * You should have received a copy of the GNU Affero General Public License
 * along with eCamp.  If not, see <http://www.gnu.org/licenses/>.
 */
$_page->html->set('main_macro', $GLOBALS[tpl_dir] . '/application/day/border.tpl/border');
$day_id = mysql_real_escape_string($_REQUEST['day_id']);
if (is_numeric($day_id)) {
    $_camp->day($day_id) || die("error");
}
include 'load_day_list.php';
if (is_numeric($day_id)) {
    $_page->html->set('day_selected', true);
    include 'load_job_list.php';
    include 'load_event_list.php';
    $query = "\tSELECT\n\t\t\t\t\t\tday.story,\n\t\t\t\t\t\tday.notes,\n\t\t\t\t\t\t(day.day_offset + subcamp.start) as day_date\n\t\t\t\t\tFROM\n\t\t\t\t\t\tday,\n\t\t\t\t\t\tsubcamp\n\t\t\t\t\tWHERE\n\t\t\t\t\t\tday.id = {$day_id} AND\n\t\t\t\t\t\tday.subcamp_id = subcamp.id";
    $result = mysql_query($query);
    $day_date = new c_date();
    $day_date->setDay2000(mysql_result($result, 0, 'day_date'));
    $day_str = strtr($day_date->getString('l d.m.Y'), $GLOBALS[en_to_de]);
    $day_story = mysql_result($result, 0, 'story');
    $day_notes = mysql_result($result, 0, 'notes');
} else {
    $_page->html->set('day_selected', false);
}
$query = "\tSELECT category.*\n\t\t\t\tFROM category\n\t\t\t\tWHERE category.camp_id = {$_camp->id}";
$result = mysql_query($query);
$categories = array();
while ($category = mysql_fetch_assoc($result)) {
    $categories[] = $category;
}
$_js_env->add('categories', $categories);
$day = array("list_border" => array("title" => "Liste aller Tage", "macro" => $GLOBALS[tpl_dir] . "/application/day/list.tpl/list"), "day_border" => array("title" => "Tagesübersicht", "macro" => $GLOBALS[tpl_dir] . "/application/day/day.tpl/day"), "day_list" => $day_list, "job_list" => $job_list, "event_list" => $event_list, "day_str" => $day_str, "day_id" => $day_id, "day_story" => $day_story, "day_notes" => $day_notes);
Exemplo n.º 24
0
 * eCamp is free software: you can redistribute it and/or modify
 * it under the terms of the GNU Affero General Public License as published by
 * the Free Software Foundation, either version 3 of the License, or
 * (at your option) any later version.
 *
 * eCamp is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU Affero General Public License for more details.
 *
 * You should have received a copy of the GNU Affero General Public License
 * along with eCamp.  If not, see <http://www.gnu.org/licenses/>.
 */
$title = mysql_escape_string($_REQUEST['title']);
$text = mysql_escape_string($_REQUEST['text']);
$date = mysql_escape_string($_REQUEST['date']);
$id = mysql_escape_string($_REQUEST['id']);
$_camp->todo($id) || die("error");
if ($title == "" || $date == "") {
    header("Location: index.php?app=todo");
}
$date = ereg("([0-9]{1,2})[\\/\\. -]+([0-9]{1,2})[\\/\\. -]+([0-9]{1,4})", $date, $regs);
$date = gmmktime(0, 0, 0, $regs[2], $regs[1], $regs[3]);
$todo_date = new c_date();
$todo_date->setUnix($date);
$query = "UPDATE todo SET title='{$title}', short='{$text}', date='" . $todo_date->getValue() . "' WHERE id = {$id}";
mysql_query($query);
header("Location: index.php?app=todo");
die;
?>
 
Exemplo n.º 25
0
 * This file is part of eCamp.
 *
 * eCamp is free software: you can redistribute it and/or modify
 * it under the terms of the GNU Affero General Public License as published by
 * the Free Software Foundation, either version 3 of the License, or
 * (at your option) any later version.
 *
 * eCamp is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU Affero General Public License for more details.
 *
 * You should have received a copy of the GNU Affero General Public License
 * along with eCamp.  If not, see <http://www.gnu.org/licenses/>.
 */
$date = new c_date();
$day_list = array();
$query = "\tSELECT\n\t\t\t\t\tsubcamp.id,\n\t\t\t\t\tsubcamp.start,\n\t\t\t\t\tsubcamp.length\n\t\t\t\tFROM\n\t\t\t\t\tsubcamp\n\t\t\t\tWHERE\n\t\t\t\t\tsubcamp.camp_id = {$_camp->id}\n\t\t\t\tORDER BY\n\t\t\t\t\tsubcamp.start";
$result = mysql_query($query);
while ($subcamp = mysql_fetch_assoc($result)) {
    $subcamp['end'] = $subcamp['start'] + $subcamp['length'];
    $subcamp['start_str'] = $date->setDay2000($subcamp['start'])->getString('d.m.Y');
    $subcamp['end_str'] = $date->setDay2000($subcamp['end'])->getString('d.m.Y');
    $day_list[$subcamp['id']]['subcamp'] = $subcamp;
    $day_list[$subcamp['id']]['days'] = array();
    $query = "\tSELECT\n\t\t\t\t\t\tday.id,\n\t\t\t\t\t\tday.day_offset\n\t\t\t\t\tFROM\n\t\t\t\t\t\tday\n\t\t\t\t\tWHERE\n\t\t\t\t\t\tday.subcamp_id = " . $subcamp['id'];
    $day_result = mysql_query($query);
    while ($day = mysql_fetch_assoc($day_result)) {
        if (!is_numeric($day_id)) {
            $day_id = $day['id'];
        }
Exemplo n.º 26
0
$short_name = mysql_real_escape_string($_REQUEST['camp_short_name']);
$group_name = mysql_real_escape_string($_REQUEST['scout']);
$function = mysql_real_escape_string($_REQUEST['function_id']);
$jstype = mysql_real_escape_string($_REQUEST['jstype']);
$is_course = mysql_real_escape_string($_REQUEST['is_course']);
$camp_type = mysql_real_escape_string($_REQUEST['camp_type']);
$course_type = mysql_real_escape_string($_REQUEST['course_type']);
$course_type_text = mysql_real_escape_string($_REQUEST['course_type_text']);
$start = mysql_real_escape_string($_REQUEST['camp_start']);
$end = mysql_real_escape_string($_REQUEST['camp_end']);
$start = ereg("([0-9]{1,2})[\\/\\. -]+([0-9]{1,2})[\\/\\. -]+([0-9]{1,4})", $start, $regs);
$start = gmmktime(0, 0, 0, $regs[2], $regs[1], $regs[3]);
$end = ereg("([0-9]{1,2})[\\/\\. -]+([0-9]{1,2})[\\/\\. -]+([0-9]{1,4})", $end, $regs);
$end = gmmktime(0, 0, 0, $regs[2], $regs[1], $regs[3]);
$c_start = new c_date();
$c_end = new c_date();
$c_start->setUnix($start);
$c_end->setUnix($end);
$length = $c_end->getValue() - $c_start->getValue() + 1;
$start = $c_start->getValue();
$ende = $c_end->getValue();
$is_course = (bool) $is_course;
if (!$is_course) {
    $type = 0;
} else {
    $type = $course_type;
}
if ($length <= 0) {
    echo "Das Enddatum darf nicht vor dem Startdatum liegen!";
    echo "<br /><a href='javascript:history.back()'>Zur&uuml;ck</a>";
    die;
Exemplo n.º 27
0
 * This file is part of eCamp.
 *
 * eCamp is free software: you can redistribute it and/or modify
 * it under the terms of the GNU Affero General Public License as published by
 * the Free Software Foundation, either version 3 of the License, or
 * (at your option) any later version.
 *
 * eCamp is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU Affero General Public License for more details.
 *
 * You should have received a copy of the GNU Affero General Public License
 * along with eCamp.  If not, see <http://www.gnu.org/licenses/>.
 */
$title = mysql_escape_string($_REQUEST['title']);
$text = mysql_escape_string($_REQUEST['text']);
$date = mysql_escape_string($_REQUEST['date']);
if ($title == "" || $date == "") {
    header("Location: index.php?app=todo");
}
$date = ereg("([0-9]{1,2})[\\/\\. -]+([0-9]{1,2})[\\/\\. -]+([0-9]{1,4})", $date, $regs);
$date = gmmktime(0, 0, 0, $regs[2], $regs[1], $regs[3]);
$todo_date = new c_date();
$todo_date->setUnix($date);
$query = "INSERT INTO todo \t(camp_id, title, short, date, done) VALUES \n\t\t\t\t\t\t\t\t({$_camp->id}, '{$title}', '{$text}', " . $todo_date->getValue() . ", 0)";
mysql_query($query);
header("Location: index.php?app=todo");
die;
?>
 
Exemplo n.º 28
0
 * eCamp is free software: you can redistribute it and/or modify
 * it under the terms of the GNU Affero General Public License as published by
 * the Free Software Foundation, either version 3 of the License, or
 * (at your option) any later version.
 *
 * eCamp is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU Affero General Public License for more details.
 *
 * You should have received a copy of the GNU Affero General Public License
 * along with eCamp.  If not, see <http://www.gnu.org/licenses/>.
 */
$_page->html->set('main_macro', $GLOBALS[tpl_dir] . '/application/todo/border.tpl/border');
$todo_list = array();
$date = new c_date();
//	SUBCAMPS:
// ===========
$query = "\tSELECT camp.id, subcamp.start , subcamp.start + subcamp.length as end\r\n\t\t\t\tFROM camp, subcamp\r\n\t\t\t\tWHERE camp.id = subcamp.camp_id AND camp_id = " . $_camp->id;
$result = mysql_query($query);
while ($subcamp = mysql_fetch_assoc($result)) {
    $date->setDay2000($subcamp['end']);
    $end = $date->getString('d.m.Y');
    $date->setDay2000($subcamp['start']);
    $start = $date->getString('d.m.Y');
    $todo_list[$date->getString('Ym')]['name'] = strtr($date->getString("F Y"), $GLOBALS[en_to_de]);
    $todo_list[$date->getString('Ym')]['todos'][$date->getString('d')][] = array("date" => $start, "camptime" => true, "entry" => false, "today" => false, "short" => $start . " - " . $end);
    ksort($todo_list[$date->getString("Ym")]['todos']);
}
//  TODAY:
// ========