X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=mod%2Fevents.php;h=94e2ba6b40b597fde1f8a4e99d0d13406972009c;hb=84189ac775b3e1bc36d9e9d8945624c1bca7fb55;hp=2a6fb692eb6b947de9b828d8d99db7556d87e3bb;hpb=757037c3bfe7c8f23a8dbda2f7be7b1dfaacf739;p=friendica.git diff --git a/mod/events.php b/mod/events.php index 2a6fb692eb..94e2ba6b40 100755 --- a/mod/events.php +++ b/mod/events.php @@ -28,7 +28,7 @@ function events_post(&$a) { $adjust = intval($_POST['adjust']); $nofinish = intval($_POST['nofinish']); - // The default setting for the `private` field in event_store() is false, so mirror that + // The default setting for the `private` field in event_store() is false, so mirror that $private_event = false; @@ -57,12 +57,13 @@ function events_post(&$a) { if(strcmp($finish,$start) < 0) $finish = $start; + $summary = escape_tags(trim($_POST['summary'])); $desc = escape_tags(trim($_POST['desc'])); $location = escape_tags(trim($_POST['location'])); $type = 'event'; - if((! $desc) || (! $start)) { - notice( t('Event description and start time are required.') . EOL); + if((! $summary) || (! $start)) { + notice( t('Event title and start time are required.') . EOL); goaway($a->get_baseurl() . '/events/new'); } @@ -107,6 +108,7 @@ function events_post(&$a) { $datarray = array(); $datarray['start'] = $start; $datarray['finish'] = $finish; + $datarray['summary'] = $summary; $datarray['desc'] = $desc; $datarray['location'] = $location; $datarray['type'] = $type; @@ -118,7 +120,7 @@ function events_post(&$a) { $datarray['allow_gid'] = $str_group_allow; $datarray['deny_cid'] = $str_contact_deny; $datarray['deny_gid'] = $str_group_deny; - $datarray['private'] = $private_event; + $datarray['private'] = (($private_event) ? 1 : 0); $datarray['id'] = $event_id; $datarray['created'] = $created; $datarray['edited'] = $edited; @@ -139,9 +141,36 @@ function events_content(&$a) { return; } + if(($a->argc > 2) && ($a->argv[1] === 'ignore') && intval($a->argv[2])) { + $r = q("update event set ignore = 1 where id = %d and uid = %d", + intval($a->argv[2]), + intval(local_user()) + ); + } + + if(($a->argc > 2) && ($a->argv[1] === 'unignore') && intval($a->argv[2])) { + $r = q("update event set ignore = 0 where id = %d and uid = %d", + intval($a->argv[2]), + intval(local_user()) + ); + } + + + $editselect = 'none'; + if( feature_enabled(local_user(), 'richtext') ) + $editselect = 'textareas'; $htpl = get_markup_template('event_head.tpl'); - $a->page['htmlhead'] .= replace_macros($htpl,array('$baseurl' => $a->get_baseurl())); + $a->page['htmlhead'] .= replace_macros($htpl,array( + '$baseurl' => $a->get_baseurl(), + '$editselect' => $editselect + )); + + $etpl = get_markup_template('event_end.tpl'); + $a->page['end'] .= replace_macros($etpl,array( + '$baseurl' => $a->get_baseurl(), + '$editselect' => $editselect + )); $o =""; // tabs @@ -152,6 +181,7 @@ function events_content(&$a) { $mode = 'view'; $y = 0; $m = 0; + $ignored = ((x($_REQUEST,'ignored')) ? intval($_REQUEST['ignored']) : 0); if($a->argc > 1) { if($a->argc > 2 && $a->argv[1] == 'event') { @@ -229,13 +259,16 @@ function events_content(&$a) { } else { $r = q("SELECT `event`.*, `item`.`id` AS `itemid`,`item`.`plink`, `item`.`author-name`, `item`.`author-avatar`, `item`.`author-link` FROM `event` LEFT JOIN `item` ON `item`.`event-id` = `event`.`id` - WHERE `event`.`uid` = %d - AND (( `adjust` = 0 AND `finish` >= '%s' AND `start` <= '%s' ) - OR ( `adjust` = 1 AND `finish` >= '%s' AND `start` <= '%s' )) ", + WHERE `event`.`uid` = %d and event.ignore = %d + AND (( `adjust` = 0 AND ( `finish` >= '%s' OR ( nofinish AND start >= '%s' ) ) AND `start` <= '%s' ) + OR ( `adjust` = 1 AND ( `finish` >= '%s' OR ( nofinish AND start >= '%s' ) ) AND `start` <= '%s' )) ", intval(local_user()), + intval($ignored), + dbesc($start), dbesc($start), dbesc($finish), dbesc($adjust_start), + dbesc($adjust_start), dbesc($adjust_finish) ); } @@ -278,9 +311,11 @@ function events_content(&$a) { $last_date = $d; $edit = ((! $rr['cid']) ? array($a->get_baseurl().'/events/event/'.$rr['id'],t('Edit event'),'','') : null); - - list($title, $_trash) = explode(" $event) { + $event_item = array(); + foreach($event['item'] as $k => $v) { + $k = str_replace('-','_',$k); + $event_item[$k] = $v; + } + $events[$key]['item'] = $event_item; + } + $o = replace_macros($tpl, array( '$baseurl' => $a->get_baseurl(), '$tabs' => $tabs, @@ -326,16 +372,16 @@ function events_content(&$a) { '$previus' => array($a->get_baseurl()."/events/$prevyear/$prevmonth",t('Previous'),'',''), '$next' => array($a->get_baseurl()."/events/$nextyear/$nextmonth",t('Next'),'',''), '$calendar' => cal($y,$m,$links, ' eventcal'), - + '$events' => $events, - - + + )); - + if (x($_GET,'id')){ echo $o; killme(); } - + return $o; - + } if($mode === 'edit' && $event_id) { @@ -351,6 +397,7 @@ function events_content(&$a) { $n_checked = ((x($orig_event) && $orig_event['nofinish']) ? ' checked="checked" ' : ''); $a_checked = ((x($orig_event) && $orig_event['adjust']) ? ' checked="checked" ' : ''); + $t_orig = ((x($orig_event)) ? $orig_event['summary'] : ''); $d_orig = ((x($orig_event)) ? $orig_event['desc'] : ''); $l_orig = ((x($orig_event)) ? $orig_event['location'] : ''); $eid = ((x($orig_event)) ? $orig_event['id'] : 0); @@ -405,10 +452,11 @@ function events_content(&$a) { '$eid' => $eid, '$cid' => $cid, '$uri' => $uri, + '$title' => t('Event details'), - '$desc' => sprintf( t('Format is %s %s. Starting date and Description are required.'),$dateformat,$timeformat), + '$desc' => sprintf( t('Format is %s %s. Starting date and Title are required.'),$dateformat,$timeformat), - '$s_text' => t('Event Starts:') . ' * ', + '$s_text' => t('Event Starts:') . ' *', '$s_dsel' => datesel($f,'start',$syear+5,$syear,false,$syear,$smonth,$sday), '$s_tsel' => timesel('start',$shour,$sminute), '$n_text' => t('Finish date/time is not known or not relevant'), @@ -418,10 +466,12 @@ function events_content(&$a) { '$f_tsel' => timesel('finish',$fhour,$fminute), '$a_text' => t('Adjust for viewer timezone'), '$a_checked' => $a_checked, - '$d_text' => t('Description:') . ' *', + '$d_text' => t('Description:'), '$d_orig' => $d_orig, '$l_text' => t('Location:'), '$l_orig' => $l_orig, + '$t_text' => t('Title:') . ' *', + '$t_orig' => $t_orig, '$sh_text' => t('Share this event'), '$sh_checked' => $sh_checked, '$acl' => (($cid) ? '' : populate_acl(((x($orig_event)) ? $orig_event : $a->user),false)),