本文整理汇总了PHP中Kronolith::backgroundColor方法的典型用法代码示例。如果您正苦于以下问题:PHP Kronolith::backgroundColor方法的具体用法?PHP Kronolith::backgroundColor怎么用?PHP Kronolith::backgroundColor使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Kronolith
的用法示例。
在下文中一共展示了Kronolith::backgroundColor方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: toHash
/**
* Returns a hash representing this calendar.
*
* @return array A simple hash.
*/
public function toHash()
{
global $calendar_manager, $conf, $injector, $registry;
$owner = $registry->getAuth() && $this->_share->get('owner') == $registry->getAuth();
$hash = parent::toHash();
$hash['name'] = Kronolith::getLabel($this->_share);
$hash['desc'] = (string) $this->_share->get('desc');
$hash['owner'] = $owner;
$hash['users'] = Kronolith::listShareUsers($this->_share);
$hash['fg'] = Kronolith::foregroundColor($this->_share);
$hash['bg'] = Kronolith::backgroundColor($this->_share);
$hash['show'] = in_array('tasks/' . $this->_share->getName(), $calendar_manager->get(Kronolith::DISPLAY_EXTERNAL_CALENDARS));
$hash['edit'] = $this->_share->hasPermission($registry->getAuth(), Horde_Perms::EDIT);
$hash['caldav'] = $this->caldavUrl();
$hash['sub'] = Horde::url($registry->get('webroot', 'horde') . ($conf['urls']['pretty'] == 'rewrite' ? '/rpc/nag/' : '/rpc.php/nag/'), true, -1) . ($this->_share->get('owner') ? $registry->convertUsername($this->_share->get('owner'), false) : '-system-') . '/' . $this->_share->getName() . '.ics';
if ($owner) {
$hash['perms'] = Kronolith::permissionToJson($this->_share->getPermission(), is_null($this->_share->get('owner')));
}
return $hash;
}
示例2: array
$owner = $GLOBALS['registry']->getAuth() && $calendar->owner() == $GLOBALS['registry']->getAuth();
if ($my && $owner || !$my && !$owner) {
$code['conf']['calendars']['internal'][$id] = array('name' => ($owner || !$calendar->owner() ? '' : '[' . $GLOBALS['registry']->convertUsername($calendar->owner(), false) . '] ') . $calendar->name(), 'desc' => $calendar->description(), 'owner' => $owner, 'fg' => $calendar->foreground(), 'bg' => $calendar->background(), 'show' => in_array($id, $GLOBALS['calendar_manager']->get(Kronolith::DISPLAY_CALENDARS)), 'edit' => $calendar->hasPermission(Horde_Perms::EDIT), 'feed' => (string) Kronolith::feedUrl($id), 'embed' => Kronolith::embedCode($id));
if ($owner) {
$code['conf']['calendars']['internal'][$id]['perms'] = Kronolith::permissionToJson($calendar->share()->getPermission());
}
}
}
// Tasklists
if (!$has_tasks) {
continue;
}
foreach ($registry->tasks->listTasklists($my, Horde_Perms::SHOW) as $id => $tasklist) {
$owner = $GLOBALS['registry']->getAuth() && $tasklist->get('owner') == $GLOBALS['registry']->getAuth();
if ($my && $owner || !$my && !$owner) {
$code['conf']['calendars']['tasklists']['tasks/' . $id] = array('name' => Kronolith::getLabel($tasklist), 'desc' => $tasklist->get('desc'), 'owner' => $owner, 'fg' => Kronolith::foregroundColor($tasklist), 'bg' => Kronolith::backgroundColor($tasklist), 'show' => in_array('tasks/' . $id, $GLOBALS['calendar_manager']->get(Kronolith::DISPLAY_EXTERNAL_CALENDARS)), 'edit' => $tasklist->hasPermission($GLOBALS['registry']->getAuth(), Horde_Perms::EDIT));
if ($owner) {
$code['conf']['calendars']['tasklists']['tasks/' . $id]['perms'] = Kronolith::permissionToJson($tasklist->getPermission());
}
}
}
}
// Timeobjects
foreach ($GLOBALS['calendar_manager']->get(Kronolith::ALL_EXTERNAL_CALENDARS) as $id => $calendar) {
if ($calendar->api() == 'tasks') {
continue;
}
if (!$calendar->display()) {
continue;
}
$code['conf']['calendars']['external'][$id] = array('name' => $calendar->name(), 'fg' => $calendar->foreground(), 'bg' => $calendar->background(), 'api' => $registry->get('name', $registry->hasInterface($calendar->api())), 'show' => in_array($id, $GLOBALS['calendar_manager']->get(Kronolith::DISPLAY_EXTERNAL_CALENDARS)));
示例3: sidebar
/**
* Adds additional items to the sidebar.
*
* This is for the traditional view. For the dynamic view, see
* Kronolith_View_Sidebar.
*
* @param Horde_View_Sidebar $sidebar The sidebar object.
*/
public function sidebar($sidebar)
{
global $calendar_manager, $conf, $injector, $prefs, $registry, $session;
$admin = $registry->isAdmin();
$perms = $injector->getInstance('Horde_Core_Perms');
if (Kronolith::getDefaultCalendar(Horde_Perms::EDIT) && ($perms->hasAppPermission('max_events') === true || $perms->hasAppPermission('max_events') > Kronolith::countEvents())) {
$sidebar->addNewButton(_("_New Event"), Horde::url('new.php')->add('url', Horde::selfUrl(true, false, true)));
}
if (strlen($session->get('kronolith', 'display_cal'))) {
$calendars = Kronolith::displayedCalendars();
$sidebar->containers['calendars'] = array('header' => array('id' => 'kronolith-toggle-calendars', 'label' => ngettext("Showing calendar:", "Showing calendars:", count($calendars)), 'collapsed' => false));
foreach ($calendars as $calendar) {
$row = array('label' => $calendar->name(), 'color' => $calendar->background(), 'type' => 'checkbox');
$sidebar->addRow($row, 'calendars');
}
return;
}
$user = $registry->getAuth();
$url = Horde::selfUrl();
$edit = Horde::url('calendars/edit.php');
$sidebar->containers['my'] = array('header' => array('id' => 'kronolith-toggle-my', 'label' => _("My Calendars"), 'collapsed' => false));
if (!$prefs->isLocked('default_share')) {
$sidebar->containers['my']['header']['add'] = array('url' => Horde::url('calendars/create.php'), 'label' => _("Create a new Local Calendar"));
}
if ($admin) {
$sidebar->containers['system'] = array('header' => array('id' => 'kronolith-toggle-system', 'label' => _("System Calendars"), 'collapsed' => true));
$sidebar->containers['system']['header']['add'] = array('url' => Horde::url('calendars/create.php')->add('system', 1), 'label' => _("Create a new System Calendar"));
}
$sidebar->containers['shared'] = array('header' => array('id' => 'kronolith-toggle-shared', 'label' => _("Shared Calendars"), 'collapsed' => true));
foreach (Kronolith::listInternalCalendars() as $id => $calendar) {
$owner = $calendar->get('owner');
if ($admin && empty($owner)) {
continue;
}
$row = array('selected' => in_array($id, $calendar_manager->get(Kronolith::DISPLAY_CALENDARS)), 'url' => $url->copy()->add('toggle_calendar', $id), 'label' => Kronolith::getLabel($calendar), 'color' => Kronolith::backgroundColor($calendar), 'edit' => $edit->add('c', $calendar->getName()), 'type' => 'checkbox');
if ($calendar->get('owner') && $calendar->get('owner') == $user) {
$sidebar->addRow($row, 'my');
} else {
$sidebar->addRow($row, 'shared');
}
}
if ($admin) {
foreach ($injector->getInstance('Kronolith_Shares')->listSystemShares() as $id => $calendar) {
$row = array('selected' => in_array($id, $calendar_manager->get(Kronolith::DISPLAY_CALENDARS)), 'url' => $url->copy()->add('toggle_calendar', $id), 'label' => $calendar->get('name'), 'color' => Kronolith::backgroundColor($calendar), 'edit' => $edit->add('c', $calendar->getName()), 'type' => 'checkbox');
$sidebar->addRow($row, 'system');
}
}
if (!empty($conf['resources']['enabled']) && ($admin || $perms->hasAppPermission('resource_management'))) {
$sidebar->containers['groups'] = array('header' => array('id' => 'kronolith-toggle-groups', 'label' => _("Resource Groups"), 'collapsed' => true, 'add' => array('url' => Horde::url('resources/groups/create.php'), 'label' => _("Create a new Resource Group"))));
$editGroups = Horde::url('resources/groups/edit.php');
$sidebar->containers['resources'] = array('header' => array('id' => 'kronolith-toggle-resources', 'label' => _("Resources"), 'collapsed' => true, 'add' => array('url' => Horde::url('resources/create.php'), 'label' => _("Create a new Resource"))));
$edit = Horde::url('resources/edit.php');
foreach (Kronolith::getDriver('Resource')->listResources() as $resource) {
if ($resource->get('isgroup')) {
$row = array('label' => $resource->get('name'), 'color' => '#dddddd', 'edit' => $editGroups->add('c', $resource->getId()), 'type' => 'radiobox');
$sidebar->addRow($row, 'groups');
} else {
$calendar = new Kronolith_Calendar_Resource(array('resource' => $resource));
$row = array('selected' => in_array($resource->get('calendar'), $calendar_manager->get(Kronolith::DISPLAY_RESOURCE_CALENDARS)), 'url' => $url->copy()->add('toggle_calendar', 'resource_' . $resource->get('calendar')), 'label' => $calendar->name(), 'color' => $calendar->background(), 'edit' => $edit->add('c', $resource->getId()), 'type' => 'checkbox');
$sidebar->addRow($row, 'resources');
}
}
}
foreach ($calendar_manager->get(Kronolith::ALL_EXTERNAL_CALENDARS) as $id => $calendar) {
if (!$calendar->display()) {
continue;
}
$app = $registry->get('name', $registry->hasInterface($calendar->api()));
if (!strlen($app)) {
$app = _("Other events");
}
$container = 'external_' . $app;
if (!isset($sidebar->containers[$container])) {
$sidebar->containers[$container] = array('header' => array('id' => 'kronolith-toggle-external-' . $calendar->api(), 'label' => $app, 'collapsed' => true));
}
$row = array('selected' => in_array($id, $calendar_manager->get(Kronolith::DISPLAY_EXTERNAL_CALENDARS)), 'url' => $url->copy()->add('toggle_calendar', 'external_' . $id), 'label' => $calendar->name(), 'color' => $calendar->background(), 'type' => 'checkbox');
$sidebar->addRow($row, $container);
}
$sidebar->containers['remote'] = array('header' => array('id' => 'kronolith-toggle-remote', 'label' => _("Remote Calendars"), 'collapsed' => true, 'add' => array('url' => Horde::url('calendars/remote_subscribe.php'), 'label' => _("Subscribe to a Remote Calendar"))));
$edit = Horde::url('calendars/remote_edit.php');
foreach ($calendar_manager->get(Kronolith::ALL_REMOTE_CALENDARS) as $calendar) {
$row = array('selected' => in_array($calendar->url(), $calendar_manager->get(Kronolith::DISPLAY_REMOTE_CALENDARS)), 'url' => $url->copy()->add('toggle_calendar', 'remote_' . $calendar->url()), 'label' => $calendar->name(), 'color' => $calendar->background(), 'edit' => $edit->add('url', $calendar->url()), 'type' => 'checkbox');
$sidebar->addRow($row, 'remote');
}
if (!empty($conf['holidays']['enable'])) {
$sidebar->containers['holidays'] = array('header' => array('id' => 'kronolith-toggle-holidays', 'label' => _("Holidays"), 'collapsed' => true));
foreach ($calendar_manager->get(Kronolith::ALL_HOLIDAYS) as $id => $calendar) {
$row = array('selected' => in_array($id, $calendar_manager->get(Kronolith::DISPLAY_HOLIDAYS)), 'url' => $url->copy()->add('toggle_calendar', 'holiday_' . $id), 'label' => $calendar->name(), 'color' => $calendar->background(), 'type' => 'checkbox');
$sidebar->addRow($row, 'holidays');
}
}
}
示例4: fromDriver
/**
* Imports a backend specific event object.
*
* @param mixed $event Backend specific event object that this object
* will represent.
*/
public function fromDriver($event)
{
$this->id = '_' . $this->_api . $event['id'];
$this->icon = !empty($event['icon']) ? $event['icon'] : null;
$this->title = $event['title'];
$this->description = isset($event['description']) ? $event['description'] : '';
if (isset($event['location'])) {
$this->location = $event['location'];
}
try {
$this->start = new Horde_Date($event['start']);
$this->end = new Horde_Date($event['end']);
} catch (Horde_Date_Exception $e) {
throw new Kronolith_Exception($e);
}
if (isset($event['status'])) {
switch ($event['status']) {
case 'confirmed':
$this->status = Kronolith::STATUS_CONFIRMED;
break;
case 'tentative':
$this->status = Kronolith::STATUS_TENTATIVE;
break;
default:
$this->status = Kronolith::STATUS_FREE;
}
} else {
$this->status = Kronolith::STATUS_FREE;
}
if (isset($event['private'])) {
$this->private = $event['private'];
}
$this->_params = $event['params'];
$this->_link = !empty($event['link']) ? $event['link'] : null;
$this->url = !empty($event['url']) ? (string) $event['url'] : null;
$this->_editLink = !empty($event['edit_link']) ? $event['edit_link'] : null;
$this->_deleteLink = !empty($event['delete_link']) ? $event['delete_link'] : null;
$this->_ajaxLink = !empty($event['ajax_link']) ? $event['ajax_link'] : null;
$this->_backgroundColor = Kronolith::backgroundColor($event);
$this->_foregroundColor = Kronolith::foregroundColor($event);
if (isset($event['recurrence'])) {
$recurrence = new Horde_Date_Recurrence($this->start);
$recurrence->setRecurType($event['recurrence']['type']);
if (isset($event['recurrence']['end'])) {
$recurrence->setRecurEnd(new Horde_Date($event['recurrence']['end']));
}
if (isset($event['recurrence']['interval'])) {
$recurrence->setRecurInterval($event['recurrence']['interval']);
}
if (isset($event['recurrence']['count'])) {
$recurrence->setRecurCount($event['recurrence']['count']);
}
if (isset($event['recurrence']['days'])) {
$recurrence->setRecurOnDay($event['recurrence']['days']);
}
if (isset($event['recurrence']['exceptions'])) {
foreach ($event['recurrence']['exceptions'] as $exception) {
$recurrence->addException(substr($exception, 0, 4), substr($exception, 4, 2), substr($exception, 6, 2));
}
}
if (isset($event['recurrence']['completions'])) {
foreach ($event['recurrence']['completions'] as $completion) {
$recurrence->addCompletion(substr($completion, 0, 4), substr($completion, 4, 2), substr($completion, 6, 2));
}
}
$this->recurrence = $recurrence;
}
if (isset($event['owner'])) {
$this->_owner = $event['owner'];
}
if (isset($event['permissions'])) {
$this->_permissions = $event['permissions'];
}
if (isset($event['variable_length'])) {
$this->_variableLength = $event['variable_length'];
}
$this->initialized = true;
$this->stored = true;
}