示例#1
0
 function title($pdf, $day)
 {
     $pdf->SetLink($day->get_linker($pdf));
     $date = new c_date();
     $date->setDay2000($day->date);
     $pdf->SetFillColor(200, 200, 200);
     $pdf->SetDrawColor(0, 0, 0);
     $pdf->RoundedRect(10, 15, 190, 30, 5, '1111', 'DF');
     $pdf->SetXY(10, 15);
     $pdf->SetFont('', 'B', 30);
     $pdf->drawTextBox(strtr($date->getString('D, d.m.Y'), $GLOBALS[en_to_de]), 190, 15, 'C', 'M', 0);
     $pdf->SetFont('', 'B', 20);
     $pdf->drawTextBox('Tagesübersicht:', 190, 10, 'C', 'M', 0);
     $pdf->Bookmark(strtr($date->getString('D, d.m.Y'), $GLOBALS[en_to_de]), 1, 0);
 }
示例#2
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;
 }
示例#3
0
文件: main.php 项目: nchiapol/ecamp
        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]);
$_page->html->set("js_list", $list[1]);
/* Wechsel zu neuen Checklisten zulassen */
示例#4
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;
示例#5
0
文件: home.php 项目: nchiapol/ecamp
$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);
示例#6
0
文件: home.php 项目: nchiapol/ecamp
$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);
示例#7
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;
示例#8
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]);
 }
示例#9
0
 function title($pdf, $event_instance)
 {
     $pdf->SetLink($event_instance->get_linker($pdf), $this->y);
     $color = $this->color($event_instance->event->category->color);
     $pdf->SetLineWidth(0.5);
     $pdf->SetFillColor($color['r'], $color['g'], $color['b']);
     $pdf->RoundedRect(10, $this->y, 190, 17, 5, '1001', 'DF');
     $pdf->SetLineWidth(0.2);
     $pdf->SetXY(15, $this->y + 1);
     $pdf->SetFont('', 'B', 30);
     $name = "(" . $event_instance->day->day_nr . "." . $event_instance->event_nr . ") ";
     $name .= $event_instance->event->category->short_name . ": ";
     $name .= $event_instance->event->name;
     $name_width = $pdf->GetStringWidth($name);
     if ($name_width > 120) {
         $name_font_size = max(15, 30 * 120 / $name_width);
         $pdf->SetFont('', 'B', $name_font_size);
         //$name_dy = ( 30 - $name_font_size ) / 4;
         //$pdf->SetXY( 15, $this->y + $name_dy );
     }
     $pdf->MultiCell(130, 30, $name, '', 'L');
     $pdf->SetFont('', 'B', 10);
     $date = new c_date();
     $date->SetDay2000($event_instance->day->subcamp->start + $event_instance->day->day_nr - 1);
     $time = new c_time();
     $time->SetValue($event_instance->starttime);
     $pdf->SetXY(155, $this->y + 1);
     $pdf->drawTextBox('Datum:', 15, 5, 'L', 'M', 0);
     $pdf->SetXY(170, $this->y + 1);
     $pdf->drawTextBox(strtr($date->getString('D d.m.Y'), $GLOBALS[en_to_de]), 30, 5, 'L', 'M', 0);
     $pdf->Link(170, $this->y + 1, 30, 5, $event_instance->day->get_linker($pdf));
     $pdf->SetXY(155, $this->y + 6);
     $pdf->drawTextBox('Zeit:', 15, 5, 'L', 'M', 0);
     $pdf->SetXY(170, $this->y + 6);
     $pdf->drawTextBox($time->getString('H:i') . " Uhr", 30, 5, 'L', 'M', 0);
     $pdf->SetXY(155, $this->y + 11);
     $pdf->drawTextBox('Ort:', 15, 5, 'L', 'M', 0);
     $pdf->SetXY(170, $this->y + 11);
     $pdf->drawTextBox($event_instance->event->place, 30, 5, 'L', 'M', 0);
     $pdf->Bookmark($name, 2, $this->y);
     //$this->y += 22;
     $this->y += 17;
 }
示例#10
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);
         }
     }
 }
示例#11
0
文件: home.php 项目: nchiapol/ecamp
$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 {
    $main_job = "Undefiniert";
    $_js_env->add('EnableMainJobResp', false);
示例#12
0
文件: home.php 项目: nchiapol/ecamp
$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;
    $events[$event['date']]['day_offset'] = $event['day_offset'];
    $events[$event['date']]['date'] = $date->getString('d.m.Y');
    $events[$event['date']]['data'][] = $event;
}
//echo "events => ";
//print_r($events);
// day_jobs
$day_jobs = array();
$query = "\tSELECT\r\n    \t\t\t\tjob.job_name,\r\n    \t\t\t\tday.id,\r\n    \t\t\t\t(day.day_offset + subcamp.start) as date,\r\n    \t\t\t\t(\r\n    \t\t\t\t\tSELECT\r\n    \t\t\t\t\t\tIFNULL( SUM( s.length ), 0 )\r\n    \t\t\t\t\tFROM\r\n    \t\t\t\t\t\tsubcamp s\r\n    \t\t\t\t\tWHERE\r\n    \t\t\t\t\t\ts.camp_id = subcamp.camp_id AND\r\n    \t\t\t\t\t\ts.start < subcamp.start\r\n    \t\t\t\t) + day.day_offset + 1 as day_offset \r\n    \t\t\tFROM\r\n    \t\t\t\tjob, \r\n    \t\t\t\tjob_day,\r\n    \t\t\t\tday,\r\n    \t\t\t\tsubcamp\r\n    \t\t\tWHERE\r\n    \t\t\t\tjob.camp_id = " . $_camp->id . " AND\r\n    \t\t\t\tjob_day.user_camp_id = " . $_user_camp->id . " AND\r\n    \t\t\t\tjob.id = job_day.job_id AND\r\n    \t\t\t\tjob_day.day_id = day.id AND\r\n    \t\t\t\tday.subcamp_id = subcamp.id\r\n    \t\t\tORDER BY day_offset";
$result = mysql_query($query);
while ($day_job = mysql_fetch_assoc($result)) {
    $date->setDay2000($day_job['date']);
    $day_job['date_string'] = $date->getString("d.m.Y");
    $day_jobs[$day_job['date']]['link'] = "index.php?app=day&cmd=home&day_id=" . $day_job['id'];
    $day_jobs[$day_job['date']]['date'] = $day_job['date_string'];
    $day_jobs[$day_job['date']]['day_offset'] = $day_job['day_offset'];
    $day_jobs[$day_job['date']]['data'][] = $day_job;
示例#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);
示例#14
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);
示例#15
0
文件: vcard.php 项目: nchiapol/ecamp
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}");
echo $output;
die;
示例#16
0
文件: home.php 项目: nchiapol/ecamp
 */
$_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);
//print_r( $day );
$_page->html->set('day', $day);
示例#17
0
文件: home.php 项目: nchiapol/ecamp
 * 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:
// ========
$todo_list[date("Ym")]['name'] = strtr(date("F Y"), $GLOBALS[en_to_de]);
$todo_list[date("Ym")]['todos'][date("d")][] = array("date" => strtr(date("D d. M"), $GLOBALS[en_to_de]), "camptime" => false, "entry" => false, "today" => true);
ksort($todo_list[date("Ym")]['todos']);
$query = "\tSELECT\r\n\t\t\t\t\ttodo.*\r\n\t\t\t\tFROM\r\n\t\t\t\t\ttodo\r\n\t\t\t\tWHERE\r\n\t\t\t\t\ttodo.camp_id = {$_camp->id}\r\n\t\t\t\tORDER BY\r\n\t\t\t\t\ttodo.date";
$result = mysql_query($query);
while ($todo = mysql_fetch_assoc($result)) {
    if ($date->getUnix() < time()) {