Projects
Kolab:16:Testing
roundcubemail-plugins-kolab
Log In
Username
Password
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
Expand all
Collapse all
Changes of Revision 86
View file
roundcubemail-plugins-kolab.spec
Changed
@@ -35,13 +35,13 @@ %global confdir %{_sysconfdir}/roundcubemail %global tmpdir %{_var}/lib/roundcubemail -%global rc_version 3.5.8 +%global rc_version 3.5.9 #%%global rc_rel_suffix beta1 %global dot_rel_suffix %{?rc_rel_suffix:.%{rc_rel_suffix}} %global dash_rel_suffix %{?rc_rel_suffix:-%{rc_rel_suffix}} Name: roundcubemail-plugins-kolab -Version: 3.5.8 +Version: 3.5.9 Release: 1%{?dot_rel_suffix}%{?dist} @@ -2792,6 +2792,9 @@ %defattr(-,root,root,-) %changelog +* Fri Oct 1 2021 Jeroen van Meeuwen <vanmeeuwen@apheleia-it.ch> - 3.5.9-1 +- Release of version 3.5.9 + * Wed Sep 1 2021 Jeroen van Meeuwen <vanmeeuwen@apheleia-it.ch> - 3.5.8-1 - Release of version 3.5.8
View file
debian.changelog
Changed
@@ -1,3 +1,9 @@ +roundcubemail-plugins-kolab (1:3.5.9-0~kolab1) unstable; urgency=low + + * Release version 3.5.9 + + -- Jeroen van Meeuwen <vanmeeuwen@apheleia-it.ch> Fri, 1 Oct 2021 11:11:11 +0200 + roundcubemail-plugins-kolab (1:3.5.8-0~kolab1) unstable; urgency=low * Release version 3.5.8
View file
roundcubemail-plugins-kolab-3.5.8.tar.gz/plugins/calendar/calendar.php -> roundcubemail-plugins-kolab-3.5.9.tar.gz/plugins/calendar/calendar.php
Changed
@@ -2102,43 +2102,44 @@ if ($organizer === null && !empty($event'organizer')) { $organizer = $event'organizer'; $organizer'role' = 'ORGANIZER'; - if (!is_array($event'attendees')) + if (!is_array($event'attendees')) { $event'attendees' = $organizer; } + } - // Convert HTML description into plain text - if ($this->is_html($event)) { - $h2t = new rcube_html2text($event'description', false, true, 0); - $event'description' = trim($h2t->get_text()); - } - - // mapping url => vurl, allday => allDay because of the fullcalendar client script - $event'vurl' = $event'url'; - $event'allDay' = !empty($event'allday'); - unset($event'url'); - unset($event'allday'); - - $event'className' = !empty($event'className') ? explode(' ', $event'className') : ; - - if ($event'allDay') { - $event'end' = $event'end'->add(new DateInterval('P1D')); - } - - if (!empty($_GET'mode') && $_GET'mode' == 'print') { - $event'editable' = false; - } - - return - '_id' => $event'calendar' . ':' . $event'id', // unique identifier for fullcalendar - 'start' => $this->lib->adjust_timezone($event'start', $event'allDay')->format('c'), - 'end' => $this->lib->adjust_timezone($event'end', $event'allDay')->format('c'), - // 'changed' might be empty for event recurrences (Bug #2185) - 'changed' => !empty($event'changed') ? $this->lib->adjust_timezone($event'changed')->format('c') : null, - 'created' => !empty($event'created') ? $this->lib->adjust_timezone($event'created')->format('c') : null, - 'title' => strval($event'title'), - 'description' => strval($event'description'), - 'location' => strval($event'location'), - + $event; + // Convert HTML description into plain text + if ($this->is_html($event)) { + $h2t = new rcube_html2text($event'description', false, true, 0); + $event'description' = trim($h2t->get_text()); + } + + // mapping url => vurl, allday => allDay because of the fullcalendar client script + $event'vurl' = $event'url'; + $event'allDay' = !empty($event'allday'); + unset($event'url'); + unset($event'allday'); + + $event'className' = !empty($event'className') ? explode(' ', $event'className') : ; + + if ($event'allDay') { + $event'end' = $event'end'->add(new DateInterval('P1D')); + } + + if (!empty($_GET'mode') && $_GET'mode' == 'print') { + $event'editable' = false; + } + + return + '_id' => $event'calendar' . ':' . $event'id', // unique identifier for fullcalendar + 'start' => $this->lib->adjust_timezone($event'start', $event'allDay')->format('c'), + 'end' => $this->lib->adjust_timezone($event'end', $event'allDay')->format('c'), + // 'changed' might be empty for event recurrences (Bug #2185) + 'changed' => !empty($event'changed') ? $this->lib->adjust_timezone($event'changed')->format('c') : null, + 'created' => !empty($event'created') ? $this->lib->adjust_timezone($event'created')->format('c') : null, + 'title' => strval($event'title'), + 'description' => strval($event'description'), + 'location' => strval($event'location'), + + $event; } /** @@ -2390,7 +2391,7 @@ } // set new organizer identity - if ($organizer !== false && $identity) { + if ($organizer !== false && !empty($identity)) { $event'attendees'$organizer'name' = $identity'name'; $event'attendees'$organizer'email' = $identity'email'; } @@ -2400,7 +2401,7 @@ unset($event'attendees'$owner'rsvp'); } // fallback to the selected identity - else if ($organizer === false && $identity) { + else if ($organizer === false && !empty($identity)) { $event'attendees' = 'role' => 'ORGANIZER', 'name' => $identity'name',
View file
roundcubemail-plugins-kolab-3.5.8.tar.gz/plugins/calendar/composer.json -> roundcubemail-plugins-kolab-3.5.9.tar.gz/plugins/calendar/composer.json
Changed
@@ -4,7 +4,7 @@ "description": "Calendar plugin", "homepage": "https://git.kolab.org/diffusion/RPK/", "license": "AGPLv3", - "version": "3.5.8", + "version": "3.5.9", "authors": { "name": "Thomas Bruederli",
View file
roundcubemail-plugins-kolab-3.5.8.tar.gz/plugins/calendar/drivers/database/SQL/mysql.initial.sql -> roundcubemail-plugins-kolab-3.5.9.tar.gz/plugins/calendar/drivers/database/SQL/mysql.initial.sql
Changed
@@ -8,8 +8,7 @@ * @licence GNU AGPL * @copyright (c) 2010 Lazlo Westerhof - Netherlands * @copyright (c) 2014 Kolab Systems AG - * - **/ + */ CREATE TABLE IF NOT EXISTS `calendars` ( `calendar_id` int(11) UNSIGNED NOT NULL AUTO_INCREMENT, @@ -82,4 +81,4 @@ REFERENCES `users`(`user_id`) ON DELETE CASCADE ON UPDATE CASCADE ) /*!40000 ENGINE=INNODB */ /*!40101 CHARACTER SET utf8 COLLATE utf8_general_ci */; -REPLACE INTO system (name, value) VALUES ('calendar-database-version', '2015022700'); +REPLACE INTO `system` (`name`, `value`) VALUES ('calendar-database-version', '2015022700');
View file
roundcubemail-plugins-kolab-3.5.8.tar.gz/plugins/calendar/drivers/database/SQL/postgres.initial.sql -> roundcubemail-plugins-kolab-3.5.9.tar.gz/plugins/calendar/drivers/database/SQL/postgres.initial.sql
Changed
@@ -9,9 +9,7 @@ * @licence GNU AGPL * @copyright (c) 2010 Lazlo Westerhof - Netherlands * @copyright (c) 2014 Kolab Systems AG - * - **/ - + */ CREATE SEQUENCE calendars_seq INCREMENT BY 1
View file
roundcubemail-plugins-kolab-3.5.8.tar.gz/plugins/calendar/drivers/database/SQL/sqlite.initial.sql -> roundcubemail-plugins-kolab-3.5.9.tar.gz/plugins/calendar/drivers/database/SQL/sqlite.initial.sql
Changed
@@ -9,8 +9,7 @@ * @licence GNU AGPL * @copyright (c) 2010 Lazlo Westerhof - Netherlands * @copyright (c) 2014 Kolab Systems AG - * - **/ + */ CREATE TABLE calendars ( calendar_id integer NOT NULL PRIMARY KEY,
View file
roundcubemail-plugins-kolab-3.5.8.tar.gz/plugins/calendar/drivers/kolab/SQL/mysql.initial.sql -> roundcubemail-plugins-kolab-3.5.9.tar.gz/plugins/calendar/drivers/kolab/SQL/mysql.initial.sql
Changed
@@ -1,7 +1,6 @@ /** * Roundcube Calendar Kolab backend * - * @version @package_version@ * @author Thomas Bruederli * @licence GNU AGPL **/ @@ -29,4 +28,4 @@ REFERENCES `users`(`user_id`) ON DELETE CASCADE ON UPDATE CASCADE ) /*!40000 ENGINE=INNODB */ /*!40101 CHARACTER SET utf8 COLLATE utf8_general_ci */; -REPLACE INTO system (name, value) VALUES ('calendar-kolab-version', '2014041700'); +REPLACE INTO `system` (`name`, `value`) VALUES ('calendar-kolab-version', '2014041700');
View file
roundcubemail-plugins-kolab-3.5.8.tar.gz/plugins/calendar/drivers/kolab/SQL/sqlite.initial.sql -> roundcubemail-plugins-kolab-3.5.9.tar.gz/plugins/calendar/drivers/kolab/SQL/sqlite.initial.sql
Changed
@@ -1,7 +1,6 @@ /** * Roundcube Calendar Kolab backend * - * @version @package_version@ * @author Thomas Bruederli * @licence GNU AGPL **/
View file
roundcubemail-plugins-kolab-3.5.8.tar.gz/plugins/calendar/drivers/kolab/kolab_driver.php -> roundcubemail-plugins-kolab-3.5.9.tar.gz/plugins/calendar/drivers/kolab/kolab_driver.php
Changed
@@ -823,6 +823,7 @@ { $ret = true; $success = false; + $savemode = isset($event'_savemode') ? $event'_savemode' : null; if (!$force) { unset($event'attendees'); @@ -832,6 +833,7 @@ } if (($storage = $this->get_calendar($event'calendar')) && ($event = $storage->get_event($event'id'))) { + $event'_savemode' = $savemode; $decline = $event'_decline'; $savemode = 'all'; $master = $event;
View file
roundcubemail-plugins-kolab-3.5.8.tar.gz/plugins/libcalendaring/composer.json -> roundcubemail-plugins-kolab-3.5.9.tar.gz/plugins/libcalendaring/composer.json
Changed
@@ -4,7 +4,7 @@ "description": "Library providing common functions for calendaring plugins", "homepage": "https://git.kolab.org/diffusion/RPK/", "license": "AGPLv3", - "version": "3.5.6", + "version": "3.5.9", "authors": { "name": "Thomas Bruederli",
View file
roundcubemail-plugins-kolab-3.5.8.tar.gz/plugins/libcalendaring/lib/Horde_Date.php -> roundcubemail-plugins-kolab-3.5.9.tar.gz/plugins/libcalendaring/lib/Horde_Date.php
Changed
@@ -292,7 +292,7 @@ */ public function toDateTime() { - $date = new DateTime(null, new DateTimeZone($this->_timezone)); + $date = new DateTime('now', new DateTimeZone($this->_timezone)); $date->setDate($this->_year, $this->_month, $this->_mday); $date->setTime($this->_hour, $this->_min, $this->_sec); return $date;
View file
roundcubemail-plugins-kolab-3.5.8.tar.gz/plugins/libcalendaring/libcalendaring.js -> roundcubemail-plugins-kolab-3.5.9.tar.gz/plugins/libcalendaring/libcalendaring.js
Changed
@@ -371,7 +371,7 @@ */ this.text2html = function(str, maxlen, maxlines) { - var html = Q(String(str)); + var html = Q($.trim(String(str))); // limit visible text length if (maxlen) { @@ -411,21 +411,35 @@ // simple link parser (similar to rcube_string_replacer class in PHP) var utf_domain = '^?&@"\'/\\(\\)\\s\\r\\t\\n+\\.(^\x00-\x2f\x3b-\x40\x5b-\x60\x7b-\x7f{2,}|xn--a-z0-9{2,})'; - var url1 = '.:;,', url2 = 'a-z0-9%=#@+?&/_~\\\\-'; + var url1 = '.;,', url2 = 'a-z0-9%=:#@+?&/_~\\\\-'; var link_pattern = new RegExp('(hft+ps?://)('+utf_domain+'('+url1+'?'+url2+'+)*)', 'ig'); var mailto_pattern = new RegExp('(^\\s\\n\\(\\);+@'+utf_domain+')', 'ig'); var link_replace = function(matches, p1, p2) { - var title = '', text = p2; + var title = '', suffix = ''; + if (p2 && p2.substr(-3) == '>') { + suffix = '>'; + p2 = p2.substr(0, p2.length - 3); + } + var href = p1 + p2; if (p2 && p2.length > 55) { - text = p2.substr(0, 45) + '...' + p2.substr(-8); title = p1 + p2; + p2 = p2.substr(0, 45) + '...' + p2.substr(-8); } - return '<a href="'+p1+p2+'" class="extlink" target="_blank" title="'+title+'">'+p1+text+'</a>' + + return '<a href="'+href+'" class="extlink" target="_blank" title="'+title+'">' + p1 + p2 + '</a>' + suffix + }; + + var mailto_replace = function(matches, p1, p2) { + // ignore links (created in link_replace() above + if (matches.match(/^(title|href)=/)) + return matches; + else + return '<a href="mailto:' + p1 + '">' + p1 + '</a>'; }; return html .replace(link_pattern, link_replace) - .replace(mailto_pattern, '<a href="mailto:$1">$1</a>') + .replace(mailto_pattern, mailto_replace) .replace(/(mailto:)(^"+)"/g, '$1$2" onclick="rcmail.command(\'compose\', \'$2\');return false"') .replace(/\n/g, "<br/>"); };
View file
roundcubemail-plugins-kolab-3.5.8.tar.gz/plugins/libcalendaring/libcalendaring.php -> roundcubemail-plugins-kolab-3.5.9.tar.gz/plugins/libcalendaring/libcalendaring.php
Changed
@@ -553,13 +553,18 @@ */ public static function alarm_text($alarm) { + $related = null; + if (is_string($alarm)) { list($trigger, $action) = explode(':', $alarm); } else { $trigger = $alarm'trigger'; $action = $alarm'action'; - $related = $alarm'related'; + + if (!empty($alarm'related')) { + $related = $alarm'related'; + } } $text = ''; @@ -1119,10 +1124,12 @@ // check all message parts for .ics files foreach ((array)$this->ical_message->mime_parts as $part) { if (self::part_is_vcalendar($part, $this->ical_message)) { - if ($part->ctype_parameters'method') + if (!empty($part->ctype_parameters'method')) { $itip_part = $part->mime_id; - else + } + else { $this->ical_parts = $part->mime_id; + } } }
View file
roundcubemail-plugins-kolab-3.5.8.tar.gz/plugins/libkolab/SQL/mysql.initial.sql -> roundcubemail-plugins-kolab-3.5.9.tar.gz/plugins/libkolab/SQL/mysql.initial.sql
Changed
@@ -4,7 +4,7 @@ * @version 1.2 * @author Thomas Bruederli * @licence GNU AGPL - **/ + */ /*!40014 SET FOREIGN_KEY_CHECKS=0 */;
View file
roundcubemail-plugins-kolab-3.5.8.tar.gz/plugins/libkolab/bin/modcache.sh -> roundcubemail-plugins-kolab-3.5.9.tar.gz/plugins/libkolab/bin/modcache.sh
Changed
@@ -201,7 +201,7 @@ // prompt for password if (empty($opts'password') && ($opts'username' || $opts'user')) { - $opts'password' = prompt_silent("Password: "); + $opts'password' = rcube_utils::prompt_silent("Password: "); } // simulate "login as" feature @@ -210,9 +210,22 @@ else if (empty($opts'user')) $opts'user' = $opts'username'; + // parse $host URL + $url = parse_url(trim($opts'host')); + if (!empty($url'host')) { + $imap_host = $url'host'; + $imap_ssl = isset($url'scheme') && in_array($url'scheme', array('ssl','imaps','tls')) ? $url'scheme' : false; + $imap_port = isset($url'port') ? $url'port' : ($imap_ssl && $imap_ssl != 'tls' ? 993 : 143); + } + else { + $imap_host = trim($opts'host'); + $imap_port = 143; + $imap_ssl = false; + } + // let the kolab_auth plugin do its magic $auth = $rcmail->plugins->exec_hook('authenticate', array( - 'host' => trim($opts'host'), + 'host' => $imap_host, 'user' => trim($opts'user'), 'pass' => $opts'password', 'cookiecheck' => false, @@ -221,7 +234,7 @@ if ($auth'valid') { $storage = $rcmail->get_storage(); - if ($storage->connect($auth'host', $auth'user', $auth'pass', 143, false)) { + if ($storage->connect($imap_host, $auth'user', $auth'pass', $imap_port, $imap_ssl)) { if ($opts'verbose') echo "IMAP login succeeded.\n"; if (($user = rcube_user::query($opts'username', $auth'host')) && $user->ID)
View file
roundcubemail-plugins-kolab-3.5.8.tar.gz/plugins/libkolab/composer.json -> roundcubemail-plugins-kolab-3.5.9.tar.gz/plugins/libkolab/composer.json
Changed
@@ -4,7 +4,7 @@ "description": "Plugin to setup a basic environment for the interaction with a Kolab server.", "homepage": "https://git.kolab.org/diffusion/RPK/", "license": "AGPLv3", - "version": "3.5.6", + "version": "3.5.9", "authors": { "name": "Thomas Bruederli",
View file
roundcubemail-plugins-kolab-3.5.8.tar.gz/plugins/tasklist/composer.json -> roundcubemail-plugins-kolab-3.5.9.tar.gz/plugins/tasklist/composer.json
Changed
@@ -4,7 +4,7 @@ "description": "Task management plugin", "homepage": "https://git.kolab.org/diffusion/RPK/", "license": "AGPLv3", - "version": "3.5.6", + "version": "3.5.9", "authors": { "name": "Thomas Bruederli",
View file
roundcubemail-plugins-kolab-3.5.8.tar.gz/plugins/tasklist/drivers/database/SQL/mysql.initial.sql -> roundcubemail-plugins-kolab-3.5.9.tar.gz/plugins/tasklist/drivers/database/SQL/mysql.initial.sql
Changed
@@ -1,7 +1,6 @@ /** * Roundcube Tasklist plugin database * - * @version @package_version@ * @author Thomas Bruederli * @licence GNU AGPL * @copyright (C) 2012, Kolab Systems AG
View file
roundcubemail-plugins-kolab-3.5.8.tar.gz/plugins/tasklist/drivers/database/SQL/postgres.initial.sql -> roundcubemail-plugins-kolab-3.5.9.tar.gz/plugins/tasklist/drivers/database/SQL/postgres.initial.sql
Changed
@@ -1,7 +1,6 @@ /** * Roundcube Tasklist plugin database * - * @version @package_version@ * @author Thomas Bruederli * @licence GNU AGPL * @copyright (C) 2014, Kolab Systems AG
View file
roundcubemail-plugins-kolab.dsc
Changed
@@ -2,7 +2,7 @@ Source: roundcubemail-plugins-kolab Binary: roundcubemail-plugins-kolab Architecture: all -Version: 1:3.5.8-0~kolab1 +Version: 1:3.5.9-0~kolab1 Maintainer: Jeroen van Meeuwen <vanmeeuwen@kolabsys.com> Uploaders: Jeroen van Meeuwen <vanmeeuwen@kolabsys.com> Standards-Version: 3.9.3 @@ -37,5 +37,5 @@ roundcubemail-plugin-tinymce-config deb web extra roundcubemail-plugin-wap-client deb web extra Files: - 00000000000000000000000000000000 0 roundcubemail-plugins-kolab-3.5.8.tar.gz + 00000000000000000000000000000000 0 roundcubemail-plugins-kolab-3.5.9.tar.gz 00000000000000000000000000000000 0 debian.tar.gz
Locations
Projects
Search
Status Monitor
Help
Open Build Service
OBS Manuals
API Documentation
OBS Portal
Reporting a Bug
Contact
Mailing List
Forums
Chat (IRC)
Twitter
Open Build Service (OBS)
is an
openSUSE project
.