⚝
One Hat Cyber Team
⚝
Your IP:
216.73.216.97
Server IP:
41.128.143.86
Server:
Linux host.raqmix.cloud 6.8.0-1025-azure #30~22.04.1-Ubuntu SMP Wed Mar 12 15:28:20 UTC 2025 x86_64
Server Software:
Apache
PHP Version:
8.3.23
Buat File
|
Buat Folder
Eksekusi
Dir :
~
/
usr
/
share
/
psa-horde
/
kronolith
/
Edit File: search.php
<?php /** * Copyright 2004-2017 Horde LLC (http://www.horde.org/) * * See the enclosed file COPYING for license information (GPL). If you * did not receive this file, see http://www.horde.org/licenses/gpl. * * @author Meilof Veeningen <meilof@gmail.com> */ require_once __DIR__ . '/lib/Application.php'; Horde_Registry::appInit('kronolith'); if (Kronolith::showAjaxView()) { Horde::url('', true)->redirect(); } /* Get search parameters. */ $search_mode = Horde_Util::getFormData('search_mode', 'basic'); $search_calendar = explode('|', Horde_Util::getFormData('calendar', '|__any'), 2); $events = null; if ($search_mode == 'basic') { $desc = Horde_Util::getFormData('pattern_desc'); $title = Horde_Util::getFormData('pattern_title'); if (strlen($desc) || strlen($title)) { $event = Kronolith::getDriver()->getEvent(); $event->description = $desc; $event->title = $title; $event->status = null; $time1 = $_SERVER['REQUEST_TIME']; $range = Horde_Util::getFormData('range'); if ($range == '+') { $event->start = new Horde_Date($time1); $event->end = null; } elseif ($range == '-') { $event->start = null; $event->end = new Horde_Date($time1); } else { $time2 = $time1 + $range; $event->start = new Horde_Date(min($time1, $time2)); $event->end = new Horde_Date(max($time1, $time2)); } $events = Kronolith::search($event); } } else { /* Make a new empty event object with default values. */ $event = Kronolith::getDriver($search_calendar[0], $search_calendar[1])->getEvent(); $event->title = $event->location = $event->status = $event->description = null; /* Set start on today, stop on tomorrow. */ $event->start = new Horde_Date(mktime(0, 0, 0)); $event->end = new Horde_Date($event->start); $event->end->mday++; /* We need to set the event to initialized, otherwise we will end up with * a default end date. */ $event->initialized = true; if (Horde_Util::getFormData('actionID') == 'search_calendar') { $event->readForm(); if (Horde_Util::getFormData('status') == Kronolith::STATUS_NONE) { $event->status = null; } $events = Kronolith::search($event, $search_calendar[1] == '__any' ? null : $search_calendar[0] . '|' . $search_calendar[1]); } $optgroup = $GLOBALS['browser']->hasFeature('optgroup'); $current_user = $GLOBALS['registry']->getAuth(); $calendars = array(); foreach (Kronolith::listInternalCalendars(false, Horde_Perms::READ) as $id => $cal) { if ($cal->get('owner') && $cal->get('owner') == $current_user) { $calendars[_("My Calendars:")]['|' . $id] = $cal->get('name'); } else { $calendars[_("Shared Calendars:")]['|' . $id] = Kronolith::getLabel($cal); } } foreach ($GLOBALS['calendar_manager']->get(Kronolith::ALL_EXTERNAL_CALENDARS) as $id => $cal) { $app = $GLOBALS['registry']->get('name', $GLOBALS['registry']->hasInterface($cal->api())); if (!$cal->display()) { continue; } $calendars[$app . ':']['Horde|external_' . $id] = $cal->name(); } foreach ($GLOBALS['calendar_manager']->get(Kronolith::ALL_REMOTE_CALENDARS) as $id => $cal) { $calendars[_("Remote Calendars:")]['Ical|' . $id] = $cal->name(); } foreach ($GLOBALS['calendar_manager']->get(Kronolith::ALL_HOLIDAYS) as $id => $holiday) { $calendars[_("Holidays:")]['Holidays|' . $id] = $holiday->name(); } } if ($search_mode == 'basic') { $page_output->addInlineScript(array( '$("pattern_title").focus()' ), true); } else { $page_output->addInlineScript(array( '$("title").focus()' ), true); Horde_Core_Ui_JsCalendar::init(array('full_weekdays' => true)); $page_output->addScriptFile('edit.js'); } $page_output->addScriptFile('tooltips.js', 'horde'); $page_output->header(array( 'title' => _("Search") )); require KRONOLITH_TEMPLATES . '/javascript_defs.php'; $notification->notify(array('listeners' => 'status')); echo '<div id="page">'; if ($search_mode == 'basic') { require KRONOLITH_TEMPLATES . '/search/search.inc'; } else { require KRONOLITH_TEMPLATES . '/search/search_advanced.inc'; } /* Display search results. */ if (!is_null($events)) { if (count($events)) { require KRONOLITH_TEMPLATES . '/search/header.inc'; require KRONOLITH_TEMPLATES . '/search/event_headers.inc'; foreach ($events as $day => $day_events) { foreach ($day_events as $event) { require KRONOLITH_TEMPLATES . '/search/event_summaries.inc'; } } require KRONOLITH_TEMPLATES . '/search/event_footers.inc'; } else { require KRONOLITH_TEMPLATES . '/search/empty.inc'; } } echo '</div>'; $page_output->footer();
Simpan