function prepare_duedate($duedate) { $lang = Lang::instance(); $a = array('class' => '', 'str' => '', 'formatted' => '', 'timestamp' => 0); if ($duedate == '' || $duedate == 0) { return $a; } $ad = explode('-', $duedate); $at = explode('-', date('Y-m-d')); $a['timestamp'] = mktime(0, 0, 0, $ad[1], $ad[2], $ad[0]); $diff = mktime(0, 0, 0, $ad[1], $ad[2], $ad[0]) - mktime(0, 0, 0, $at[1], $at[2], $at[0]); if ($diff < -604800 && $ad[0] == $at[0]) { $a['class'] = 'past'; $a['str'] = formatDate3(Config::get('dateformatshort'), (int) $ad[0], (int) $ad[1], (int) $ad[2], $lang); } elseif ($diff < -604800) { $a['class'] = 'past'; $a['str'] = formatDate3(Config::get('dateformat2'), (int) $ad[0], (int) $ad[1], (int) $ad[2], $lang); } elseif ($diff < -86400) { $a['class'] = 'past'; $a['str'] = sprintf($lang->get('daysago'), ceil(abs($diff) / 86400)); } elseif ($diff < 0) { $a['class'] = 'past'; $a['str'] = $lang->get('yesterday'); } elseif ($diff < 86400) { $a['class'] = 'today'; $a['str'] = $lang->get('today'); } elseif ($diff < 172800) { $a['class'] = 'today'; $a['str'] = $lang->get('tomorrow'); } elseif ($diff < 691200) { $a['class'] = 'soon'; $a['str'] = sprintf($lang->get('indays'), ceil($diff / 86400)); } elseif ($ad[0] == $at[0]) { $a['class'] = 'future'; $a['str'] = formatDate3(Config::get('dateformatshort'), (int) $ad[0], (int) $ad[1], (int) $ad[2], $lang); } else { $a['class'] = 'future'; $a['str'] = formatDate3(Config::get('dateformat2'), (int) $ad[0], (int) $ad[1], (int) $ad[2], $lang); } $a['formatted'] = formatTime(Config::get('dateformat2'), $a['timestamp']); return $a; }
} $listData['_feed_title'] = sprintf($lang->get('feed_title'), $listData['name']) . ' - ' . $listData['_feed_descr']; htmlarray_ref($listData); $data = array(); $q = $db->dq("SELECT * FROM {$db->prefix}todolist WHERE list_id={$listId} {$sqlWhere} ORDER BY " . $listData['_uid_field'] . " DESC LIMIT 100"); while ($r = $q->fetch_assoc($q)) { if ($r['prio'] > 0) { $r['prio'] = '+' . $r['prio']; } $a = array(); if ($r['prio']) { $a[] = $lang->get('priority') . ": {$r['prio']}"; } if ($r['duedate'] != '') { $ad = explode('-', $r['duedate']); $a[] = $lang->get('due') . ": " . formatDate3(Config::get('dateformat'), (int) $ad[0], (int) $ad[1], (int) $ad[2], $lang); } if ($r['tags'] != '') { $a[] = $lang->get('tags') . ": " . str_replace(',', ', ', $r['tags']); } if ($r['compl']) { $a[] = $lang->get('taskdate_completed') . ": " . timestampToDatetime($r['d_completed']); } $r['title'] = strip_tags($r['title']); $r['note'] = escapeTags($r['note']); $r['_descr'] = nl2br($r['note']) . ($a && $r['note'] != '' ? "<br/><br/>" : "") . implode("<br/>", htmlarray($a)); $data[] = $r; } printRss($listData, $data); function printRss($listData, $data) {
function prepare_duedate($duedate, $tz = null) { global $lang, $config; $a = array('class' => '', 'str' => '', 'formatted' => ''); if ($duedate == '') { return $a; } if (is_null($tz)) { $ad = explode('-', $duedate); $at = explode('-', date('Y-m-d')); } else { $ad = explode('-', $duedate); $at = explode('-', gmdate('Y-m-d', time() + $tz * 60)); } $diff = mktime(0, 0, 0, $ad[1], $ad[2], $ad[0]) - mktime(0, 0, 0, $at[1], $at[2], $at[0]); if ($diff < -604800 && $ad[0] == $at[0]) { $a['class'] = 'past'; $a['str'] = formatDate3($config['dateformatshort'], (int) $ad[0], (int) $ad[1], (int) $ad[2]); } elseif ($diff < -604800) { $a['class'] = 'past'; $a['str'] = formatDate3($config['dateformat'], (int) $ad[0], (int) $ad[1], (int) $ad[2]); } elseif ($diff < -86400) { $a['class'] = 'past'; $a['str'] = sprintf($lang->get('daysago'), ceil(abs($diff) / 86400)); } elseif ($diff < 0) { $a['class'] = 'past'; $a['str'] = $lang->get('yesterday'); } elseif ($diff < 86400) { $a['class'] = 'today'; $a['str'] = $lang->get('today'); } elseif ($diff < 172800) { $a['class'] = 'today'; $a['str'] = $lang->get('tomorrow'); } elseif ($diff < 691200) { $a['class'] = 'soon'; $a['str'] = sprintf($lang->get('indays'), ceil($diff / 86400)); } elseif ($ad[0] == $at[0]) { $a['class'] = 'future'; $a['str'] = formatDate3($config['dateformatshort'], (int) $ad[0], (int) $ad[1], (int) $ad[2]); } else { $a['class'] = 'future'; $a['str'] = formatDate3($config['dateformat'], (int) $ad[0], (int) $ad[1], (int) $ad[2]); } if ($config['duedateformat'] == 2) { $a['formatted'] = (int) $ad[1] . '/' . (int) $ad[2] . '/' . $ad[0]; } elseif ($config['duedateformat'] == 3) { $a['formatted'] = $ad[2] . '.' . $ad[1] . '.' . $ad[0]; } elseif ($config['duedateformat'] == 4) { $a['formatted'] = $ad[2] . '/' . $ad[1] . '/' . $ad[0]; } else { $a['formatted'] = $duedate; } return $a; }