184 lines
6.8 KiB
PHP
184 lines
6.8 KiB
PHP
<form id="calendar">
|
|
<p><b><?php p($l->t('Your calendars')); ?>:</b></p>
|
|
<table width="100%" style="border: 0;">
|
|
<?php
|
|
// get user's calendars
|
|
$option_calendars = OC_Calendar_Calendar::allCalendars(OCP\USER::getUser());
|
|
|
|
// let's look at them, one by one
|
|
for($i = 0; $i < count($option_calendars); $i++) {
|
|
|
|
// flags init
|
|
$shared = false; // is the calendar shared at all (with or by the current user, including link-sharing)?
|
|
$sharedBy = false; // is the calendar shared *with* the current user?
|
|
$linkShare = array(); // is the calendar publicly link-shared
|
|
$sharedWith = array(); // with whom is the calendar shared within this ownCloud instance?
|
|
|
|
// starting off the calendar row
|
|
print_unescaped("<tr data-id='".OC_Util::sanitizeHTML($option_calendars[$i]['id'])."'>");
|
|
|
|
// calendar row contents template
|
|
$tmpl = new OCP\Template('calendar', 'part.choosecalendar.rowfields');
|
|
|
|
// calendar data assigned to the template
|
|
$tmpl->assign('calendar', $option_calendars[$i]);
|
|
|
|
// is this owned by the user?
|
|
if ($option_calendars[$i]['userid'] != OCP\User::getUser()) {
|
|
// nope! apparently shared *with* the user!
|
|
$sharedBy = OCP\Share::getItemSharedWithBySource('calendar', $option_calendars[$i]['id']);
|
|
}
|
|
|
|
// check sharing status
|
|
$sw = OCP\Share::getItemShared('calendar', $option_calendars[$i]['id']);
|
|
if(is_array($sw)) {
|
|
foreach($sw as $share) {
|
|
// sharing with a group or user, are we?
|
|
if($share['share_type'] == OCP\Share::SHARE_TYPE_USER || $share['share_type'] == OCP\Share::SHARE_TYPE_GROUP) {
|
|
// noted!
|
|
$sharedWith[] = $share;
|
|
// public link-sharing
|
|
} elseif($share['share_type'] == OCP\Share::SHARE_TYPE_LINK) {
|
|
// noted also!
|
|
$linkShare = $share;
|
|
}
|
|
}
|
|
}
|
|
|
|
// set the shared flag -- true if shared by, link-shared, or shared with
|
|
$shared = ( !empty($sharedBy) or !empty($linkShare) or !empty($sharedWith) );
|
|
|
|
// shared/sharing info passed to the template
|
|
$tmpl->assign('shared', $shared);
|
|
$tmpl->assign('shared_by', $sharedBy);
|
|
$tmpl->assign('link_share', $linkShare);
|
|
$tmpl->assign('shared_with', $sharedWith);
|
|
// share status icon
|
|
if (!$shared) {
|
|
// not shared
|
|
$tmpl->assign('share_icon', OCP\Util::imagePath('core', 'actions/share.svg'));
|
|
// link-shared
|
|
} elseif (!empty($linkShare)) {
|
|
$tmpl->assign('share_icon', OCP\Util::imagePath('core', 'actions/public.svg'));
|
|
// shared
|
|
} else {
|
|
$tmpl->assign('share_icon', OCP\Util::imagePath('core', 'actions/shared.svg'));
|
|
}
|
|
// print the template, yo
|
|
$tmpl->printpage();
|
|
// finish the job
|
|
print_unescaped("</tr>");
|
|
}
|
|
?>
|
|
<tr>
|
|
<td colspan="6">
|
|
<input type="button" value="<?php p($l->t('New Calendar')) ?>" id="newCalendar">
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td colspan="6">
|
|
<p style="margin: 0 auto;width: 90%;"><input style="display:none;width: 90%;float: left;" type="text" id="caldav_url" title="<?php p($l->t("CalDav Link")); ?>"><img id="caldav_url_close" style="height: 20px;vertical-align: middle;display: none;" src="<?php p(OCP\Util::imagePath('core', 'actions/delete.svg')) ?>" alt="close"/></p>
|
|
</td>
|
|
</tr>
|
|
</table><br>
|
|
</fieldset>
|
|
</form>
|
|
<h2 id="title_general"><?php p($l->t('General')); ?></h2>
|
|
<div id="general">
|
|
<table class="nostyle">
|
|
<tr>
|
|
<td>
|
|
<label for="timezone" class="bold"><?php p($l->t('Timezone'));?></label>
|
|
|
|
</td>
|
|
<td>
|
|
<select style="display: none;" id="timezone" name="timezone">
|
|
<?php
|
|
$continent = '';
|
|
foreach($_['timezones'] as $timezone):
|
|
$ex=explode('/', $timezone, 2);//obtain continent,city
|
|
if (!isset($ex[1])) {
|
|
$ex[1] = $ex[0];
|
|
$ex[0] = "Other";
|
|
}
|
|
if ($continent!=$ex[0]):
|
|
if ($continent!="") print_unescaped('</optgroup>');
|
|
print_unescaped('<optgroup label="'.OC_Util::sanitizeHTML($ex[0]).'">');
|
|
endif;
|
|
$city=strtr($ex[1], '_', ' ');
|
|
$continent=$ex[0];
|
|
print_unescaped('<option value="'.OC_Util::sanitizeHTML($timezone).'"'.($_['timezone'] == $timezone?' selected="selected"':'').'>'.OC_Util::sanitizeHTML($city).'</option>');
|
|
endforeach;?>
|
|
</select>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>
|
|
|
|
</td>
|
|
<td>
|
|
<input type="checkbox" name="timezonedetection" id="timezonedetection">
|
|
|
|
<label for="timezonedetection"><?php p($l->t('Update timezone automatically')); ?></label>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>
|
|
<label for="timeformat" class="bold"><?php p($l->t('Time format'));?></label>
|
|
|
|
</td>
|
|
<td>
|
|
<select style="display: none; width: 60px;" id="timeformat" title="<?php p("timeformat"); ?>" name="timeformat">
|
|
<option value="24" id="24h"><?php p($l->t("24h")); ?></option>
|
|
<option value="ampm" id="ampm"><?php p($l->t("12h")); ?></option>
|
|
</select>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>
|
|
<label for="firstday" class="bold"><?php p($l->t('Start week on'));?></label>
|
|
|
|
</td>
|
|
<td>
|
|
<select style="display: none;" id="firstday" title="<?php p("First day"); ?>" name="firstday">
|
|
<option value="mo" id="mo"><?php p($l->t("Monday")); ?></option>
|
|
<option value="su" id="su"><?php p($l->t("Sunday")); ?></option>
|
|
<option value="sa" id="sa"><?php p($l->t("Saturday")); ?></option>
|
|
</select>
|
|
</td>
|
|
</tr>
|
|
<tr class="advancedsettings">
|
|
<td>
|
|
<label for="" class="bold"><?php p($l->t('Cache'));?></label>
|
|
|
|
</td>
|
|
<td>
|
|
<input id="cleancalendarcache" type="button" class="button" value="<?php p($l->t('Clear cache for repeating events'));?>">
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
</div>
|
|
<h2 id="title_urls"><?php p($l->t('URLs')); ?></h2>
|
|
<div id="urls">
|
|
<?php p($l->t('Calendar CalDAV syncing addresses')); ?> (<a href="http://owncloud.org/synchronisation/" target="_blank" class="link"><?php p($l->t('more info')); ?></a>)
|
|
<dl>
|
|
<dt><?php p($l->t('Primary address (Kontact et al)')); ?></dt>
|
|
<dd><input type="text" style="width: 90%;float: left;" value="<?php print_unescaped(OCP\Util::linkToRemote('caldav')); ?>" readonly></dd>
|
|
<dt><?php p($l->t('iOS/OS X')); ?></dt>
|
|
<dd><input type="text" style="width: 90%;float: left;" value="<?php print_unescaped(OCP\Util::linkToRemote('caldav')); ?>principals/<?php p(urlencode(OCP\USER::getUser())); ?>/" readonly></dd>
|
|
<dt><?php p($l->t('Read only iCalendar link(s)')); ?></dt>
|
|
<dd>
|
|
<?php foreach($_['calendars'] as $calendar) {
|
|
if($calendar['userid'] == OCP\USER::getUser()){
|
|
$uri = rawurlencode(html_entity_decode($calendar['uri'], ENT_QUOTES, 'UTF-8'));
|
|
}else{
|
|
$uri = rawurlencode(html_entity_decode($calendar['uri'], ENT_QUOTES, 'UTF-8')) . '_shared_by_' . $calendar['userid'];
|
|
}
|
|
?>
|
|
<a href="<?php p(OCP\Util::linkToRemote('caldav').'calendars/'.urlencode(OCP\USER::getUser().'/'.$uri)) ?>?export" class="link"><?php p($calendar['displayname']) ?></a><br />
|
|
<?php } ?>
|
|
</dd>
|
|
</dl>
|
|
</div>
|
|
</div>
|