implement shared calendar activation on server side

This commit is contained in:
Georg Ehrke 2012-04-18 11:50:12 +02:00
parent 8959e0af3d
commit de71842888
4 changed files with 24 additions and 2 deletions

View File

@ -0,0 +1,12 @@
<?php
/**
* Copyright (c) 2012 Georg Ehrke <ownclouddev@georgswebsite.de>
* This file is licensed under the Affero General Public License version 3 or
* later.
* See the COPYING-README file.
*/
require_once('../../../../lib/base.php');
$id = strip_tags($_GET['id']);
$activation = strip_tags($_GET['activation']);
OC_Calendar_Share::set_active(OC_User::getUser(), $id, $activation);
OC_JSON::success();

View File

@ -501,6 +501,7 @@ Calendar={
idtype: '', idtype: '',
activation:function(object,owner,id){ activation:function(object,owner,id){
$.getJSON(OC.filePath('calendar', 'ajax/share', 'activation.php'),{id:id, idtype:'calendar', activation:object.checked?1:0}); $.getJSON(OC.filePath('calendar', 'ajax/share', 'activation.php'),{id:id, idtype:'calendar', activation:object.checked?1:0});
$('#calendar_holder').fullCalendar('refetchEvents');
}, },
dropdown:function(userid, calid){ dropdown:function(userid, calid){
$('.calendar_share_dropdown').remove(); $('.calendar_share_dropdown').remove();

View File

@ -247,4 +247,13 @@ class OC_Calendar_Share{
} }
return $return; return $return;
} }
/*
* @brief sets the active status of the calendar
* @param (string) $
*/
public static function set_active($share, $id, $active){
$stmt = OC_DB::prepare('UPDATE *PREFIX*calendar_share_calendar SET active = ? WHERE share = ? AND sharetype = "user" AND calendarid = ?');
$stmt->execute(array($active, $share, $id));
}
} }

View File

@ -18,7 +18,7 @@ for($i = 0; $i < count($option_calendars); $i++){
</tr> </tr>
<tr> <tr>
<td colspan="6"> <td colspan="6">
<p style="margin: 0 auto;width: 90%;"><input style="display:none;width: 90%;float: left;" type="text" id="caldav_url" onmouseover="$('#caldav_url').select();" title="<?php echo $l->t("CalDav Link"); ?>"><img id="caldav_url_close" style="height: 20px;vertical-align: middle;display: none;" src="../../core/img/actions/delete.svg" alt="close" onclick="$('#caldav_url').hide();$('#caldav_url_close').hide();"/></p> <p style="margin: 0 auto;width: 90%;"><input style="display:none;width: 90%;float: left;" type="text" id="caldav_url" onmouseover="$('#caldav_url').select();" title="<?php echo $l->t("CalDav Link"); ?>"><img id="caldav_url_close" style="height: 20px;vertical-align: middle;display: none;" src="../../core/img/actions/delete.svg" alt="close" onclick="$('#caldav_url').hide();$('#caldav_url_close').hide();"/></p>
</td> </td>
</tr> </tr>
</table><br> </table><br>
@ -28,7 +28,7 @@ for($i = 0; $i < count($option_calendars); $i++){
$share = OC_Calendar_Share::allSharedwithuser(OC_User::getUser(), OC_Calendar_Share::CALENDAR); $share = OC_Calendar_Share::allSharedwithuser(OC_User::getUser(), OC_Calendar_Share::CALENDAR);
$count = count($share); $count = count($share);
for($i = 0; $i < $count; $i++){ for($i = 0; $i < $count; $i++){
$share[$i]['calendar'] = OC_Calendar_App::getCalendar($share[$i]['calendarid']); $share[$i]['calendar'] = OC_Calendar_App::getCalendar($share[$i]['calendarid'], false, false);
echo '<tr>'; echo '<tr>';
$tmpl = new OC_Template('calendar', 'part.choosecalendar.rowfields.shared'); $tmpl = new OC_Template('calendar', 'part.choosecalendar.rowfields.shared');
$tmpl->assign('share', $share[$i]); $tmpl->assign('share', $share[$i]);