View Issue Details

IDProjectCategoryView StatusLast Update
0003472SOGoWeb Calendarpublic2016-02-04 15:53
ReporterValerioDC Assigned Toludovic  
PrioritynormalSeverityminorReproducibilityalways
Status resolvedResolutionfixed 
Platform[Server] LinuxOSUbuntuOS Version14.04 LTS
Product Version3.0.0 
Fixed in Version3.0.1 
Summary0003472: New event added is not visible in web Calendar
Description

Adding a new event without repetition via the web interface, the event is added in the db, but it's not displayed in the web calendar.

Adding the event with repetition, is seen as aspected.

Steps To Reproduce

Add a new event in the calendar without repetition.

Additional Information

I've elevated the debug level and find something interesting:

when I add the event without repetition, the insert is made with the "c_iscycle" field set to '1' and the value of "c_cycleinfo" to '{rules = (""); }' as you can see from the log:
INSERT INTO sogovalerio001061d620b_quick (c_cycleinfo, c_isopaque, c_partstates, c_isallday, c_nextalarm, c_cycleenddate, c_status, c_sequence, c_component, c_priority, c_enddate, c_description, c_category, c_iscycle, c_location, c_title, c_uid, c_classification, c_startdate, c_orgmail, c_name) VALUES ('{rules = (""); }', 1, '', 0, 0, 2147483647, 1, 0, 'vevent', 0, 1454071800, 'ccccc', null, 1, 'ccdscdc', 'dd', '3D2E-56AB5200-1-5139FB80', 0, 1454068200, '', '3D2E-56AB5200-1-5139FB80.ics');

updating the db manually and setting "c_iscycle" to '0' (how I suppose it has to be if I don't insert any repetition), I can see the event in the web calendar.

if I insert a new event with repetition, the value of "c_iscycle" is also set to '1', but the value of "c_cycleinfo" is (for example) '{rules = ("FREQ=YEARLY"); }' and this make the event viewable from the web calendar, so i think is related to the fact that it need the field "c_cycleinfo" populated when the flag "c_iscycle" is set to 1, but this may be also related to an enviroment like mine.

my sogo.conf:

{
/ Database configuration (mysql:// or postgresql://) /
SOGoProfileURL = "mysql://sogo:sogo@localhost:3306/sogo/sogo_user_profile";
OCSFolderInfoURL = "mysql://sogo:sogo@localhost:3306/sogo/sogo_folder_info";
OCSSessionsFolderURL = "mysql://sogo:sogo@localhost:3306/sogo/sogo_sessions_folder";

/ Mail /
SOGoDraftsFolderName = Drafts;
SOGoSentFolderName = Sent;
SOGoTrashFolderName = Trash;
SOGoIMAPServer = mail.xxxxxxxxxx.it;
SOGoSMTPServer = mail.xxxxxxxxxx.it;
SOGoMailDomain = xxxxxxxxxx.it;
SOGoMailingMechanism = smtp;

/ Notifications /
SOGoAppointmentSendEMailNotifications = YES;
SOGoACLsSendEMailNotifications = YES;

/ SQL authentication example /
SOGoUserSources =
(
{
type = sql;
id = directory;
viewURL = "mysql://sogo:sogo@127.0.0.1:3306/sogo/sogo_view";
canAuthenticate = YES;
isAddressBook = NO;
userPasswordAlgorithm = md5;
}
);

/ Web Interface /
SOGoPageTitle = SOGo;
SOGoVacationEnabled = NO;
SOGoForwardEnabled = NO;
SOGoSieveScriptsEnabled = NO;
SOGoMailAuxiliaryUserAccountsEnabled = YES;

/ General /
SOGoLanguage = Italian;
SOGoTimeZone = Europe/Rome;

/ Debug /
SOGoDebugRequests = YES;
SoDebugBaseURL = YES;
ImapDebugEnabled = YES;
LDAPDebugEnabled = YES;
PGDebugEnabled = YES;
MySQL4DebugEnabled = YES;
SOGoUIxDebugEnabled = YES;
WODontZipResponse = YES;
WOLogFile = /var/log/sogo/sogo.log;
}

TagsNo tags attached.

Activities

steve

steve

2016-02-01 07:31

reporter   ~0009377

I can confirm this and I'm using 3.0.0 on CentOS 7. Interestingly enough, if you go into Thunderbird connected the same DB, the event appears after a sync. If you open the event in TB and re-save it, then it appears in the 3.0.0 WebUI

Thinking it was some sort of strange caching issue, I logged out and back in again with no luck either. Also, if I log into a 2.3.x version of the WebUI, the 3.0.0-created event doesn't appear either.

Christian Mack

Christian Mack

2016-02-01 09:43

developer   ~0009378

Added SOGo Version

ValerioDC

ValerioDC

2016-02-01 13:33

reporter   ~0009381

Added my enviroment:

ubuntu 14.04 lts
sogo 3.0.0
apache 2.4.7-1ubuntu4.9
mysql Ver 14.14 Distrib 5.5.47
sope 4.9

ludovic

ludovic

2016-02-01 15:04

administrator   ~0009383

Provide a complete list of installed SOGo/SOPE packages.

ValerioDC

ValerioDC

2016-02-01 15:11

reporter   ~0009384

following the requested packages:

sogo/unknown,now 3.0.0-1 amd64 [installed]

libsope-appserver4.9/unknown,now 4.9.r1664.20160127 amd64 [installed,automatic]
libsope-core4.9/unknown,now 4.9.r1664.20160127 amd64 [installed,automatic]
libsope-gdl1-4.9/unknown,now 4.9.r1664.20160127 amd64 [installed,automatic]
libsope-ldap4.9/unknown,now 4.9.r1664.20160127 amd64 [installed,automatic]
libsope-mime4.9/unknown,now 4.9.r1664.20160127 amd64 [installed,automatic]
libsope-xml4.9/unknown,now 4.9.r1664.20160127 amd64 [installed,automatic]
sope4.9-gdl1-mysql/unknown,now 4.9.r1664.20160127 amd64 [installed,automatic]
sope4.9-libxmlsaxdriver/unknown,now 4.9.r1664.20160127 amd64 [installed,automatic]

McMichaeli

McMichaeli

2016-02-01 20:10

reporter   ~0009392

Just reproduced the same problem using the released 3.0.0 web calendar on Ubuntu 14.04 LTS.

A newly created (non-repeating, all day) event via web calendar does not appear in the events bar or the calendar view. Checking the database shows a new ICS entry, which appears valid. Opening Thunderbird displays the entry fine. The entry syncs to mobile devices via EAS without a problem.

McMichaeli

McMichaeli

2016-02-01 21:07

reporter   ~0009395

Here is a new (one hour, non-repeating) event created using the v3.0.0 web interface, which displays via Thunderbird and EAS but not in the web calendar itself:

BEGIN:VCALENDAR PRODID:-//Inverse inc./SOGo 3.0.0//EN VERSION:2.0 BEGIN:VTIMEZONE TZID:Europe/London X-LIC-LOCATION:Europe/London BEGIN:DAYLIGHT TZOFFSETFROM:+0000 TZOFFSETTO:+0100 TZNAME:BST DTSTART:19700329T010000 RRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU END:DAYLIGHT BEGIN:STANDARD TZOFFSETFROM:+0100 TZOFFSETTO:+0000 TZNAME:GMT DTSTART:19701025T020000 RRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU END:STANDARD END:VTIMEZONE BEGIN:VEVENT UID:21C7-56AFC600-1-4FE6AD00 SUMMARY:test2 CLASS:PUBLIC STATUS:NOT-SPECIFIED DTSTART;TZID=Europe/London:20160201T210000 DTEND;TZID=Europe/London:20160201T220000 CREATED:20160201T205535Z DTSTAMP:20160201T205535Z LAST-MODIFIED:20160201T205535Z END:VEVENT END:VCALENDAR

This is another (one hour, non-repeating) event initially created through the web interface but then re-saved in Thunderbird. Doing so makes it appear correctly in Thunderbird, via EAS and in the web calendar:

BEGIN:VCALENDAR PRODID:-//Mozilla.org/NONSGML Mozilla Calendar V1.1//EN VERSION:2.0 BEGIN:VTIMEZONE TZID:Europe/London BEGIN:DAYLIGHT TZOFFSETFROM:+0000 TZOFFSETTO:+0100 TZNAME:BST DTSTART:19700329T010000 RRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU END:DAYLIGHT BEGIN:STANDARD TZOFFSETFROM:+0100 TZOFFSETTO:+0000 TZNAME:GMT DTSTART:19701025T020000 RRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU END:STANDARD END:VTIMEZONE BEGIN:VEVENT CREATED:20160201T205405Z LAST-MODIFIED:20160201T205844Z DTSTAMP:20160201T205844Z UID:1A94-56AFC580-1-2D2FD3C0 SUMMARY:test DTSTART;TZID=Europe/London:20160203T084500 DTEND;TZID=Europe/London:20160203T094500 CLASS:PUBLIC X-MOZ-GENERATION:1 END:VEVENT END:VCALENDAR

I have not managed to spot the key difference yet, but there is clearly something the web page code has problems parsing in the first of these two.

ludovic

ludovic

2016-02-01 21:08

administrator   ~0009396

Can you try to sniff using "tcpflow -c" on lo / port 20 000 and add an event? Show us what SOGo receives/reponds.

ValerioDC

ValerioDC

2016-02-02 08:48

reporter  

SogoInsertErr.txt (33,662 bytes)   
127.000.000.001.43752-127.000.000.001.20000: GET /SOGo/so/valerio/Calendar/personal/newguid HTTP/1.1
Host: 172.17.10.79
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.11; rv:43.0) Gecko/20100101 Firefox/43.0
Accept: application/json, text/plain, */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
DNT: 1
Referer: http://172.17.10.79/SOGo/so/valerio/Calendar/view
Cookie: 0xHIGHFLYxSOGo=basic%20VXZNcEJZQXMyWTRvUFhycEZ4MTNjQ1VYQ2I5d3RWVWxkU2gra2VJNGVUd2hhUTFoQ0QwZFl1dnNTNjNlUGd6RitOWDFickdHb2lBV0ZIbnFXTUtBMUpmek5HL3pHL3VOakFMVkN5NGEvZ2NBcW05ZWI4YkhqbnRuM3ZEVVppcU83WUlIQStPc0ovai9aaVp0ZG5EU25vUGxsdnlQQytWZzNqc2NVQ3YyaWNnenZ5d2NxTWZTd1NVTXZpSG5mNUE2UkVQWHhJdWdNSVduVlJBK3kyaXhZdz09OlF3QzZLNEtTaFI5ZnNCNDkyVC93NWc9PQ%3D%3D
x-webobjects-server-port: 443
x-webobjects-server-protocol: HTTP/1.0
X-Forwarded-For: 172.17.10.86
X-Forwarded-Host: 172.17.10.79
X-Forwarded-Server: 127.0.1.1
Connection: close


write error to stdout

127.000.000.001.43753-127.000.000.001.20000: GET /SOGo/so/valerio/Calendar/UIxAppointmentEditorTemplate HTTP/1.1
Host: 172.17.10.79
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.11; rv:43.0) Gecko/20100101 Firefox/43.0
Accept: application/json, text/plain, */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
DNT: 1
Referer: http://172.17.10.79/SOGo/so/valerio/Calendar/view
Cookie: 0xHIGHFLYxSOGo=basic%20VXZNcEJZQXMyWTRvUFhycEZ4MTNjQ1VYQ2I5d3RWVWxkU2gra2VJNGVUd2hhUTFoQ0QwZFl1dnNTNjNlUGd6RitOWDFickdHb2lBV0ZIbnFXTUtBMUpmek5HL3pHL3VOakFMVkN5NGEvZ2NBcW05ZWI4YkhqbnRuM3ZEVVppcU83WUlIQStPc0ovai9aaVp0ZG5EU25vUGxsdnlQQytWZzNqc2NVQ3YyaWNnenZ5d2NxTWZTd1NVTXZpSG5mNUE2UkVQWHhJdWdNSVduVlJBK3kyaXhZdz09OlF3QzZLNEtTaFI5ZnNCNDkyVC93NWc9PQ%3D%3D
x-webobjects-server-port: 443
x-webobjects-server-protocol: HTTP/1.0
X-Forwarded-For: 172.17.10.86
X-Forwarded-Host: 172.17.10.79
X-Forwarded-Server: 127.0.1.1
Connection: close


write error to stdout

127.000.000.001.20000-127.000.000.001.43752: HTTP/1.1 200 OK

write error to stdout

127.000.000.001.20000-127.000.000.001.43752: Sogo-Request-Duration: 0.010493
Content-Length: 56
Content-Type: text/plain; charset=utf-8

write error to stdout

127.000.000.001.20000-127.000.000.001.43752:

write error to stdout

127.000.000.001.20000-127.000.000.001.43752: {"pid": "personal", "id": "4E6-56B06B80-1-300EAA00.ics"}
write error to stdout

127.000.000.001.20000-127.000.000.001.43753: HTTP/1.1 200 OK

write error to stdout

127.000.000.001.20000-127.000.000.001.43753: Sogo-Request-Duration: 0.031753
Content-Length: 23039
Content-Type: text/html; charset=utf-8

write error to stdout

127.000.000.001.20000-127.000.000.001.43753:

write error to stdout

127.000.000.001.20000-127.000.000.001.43753:
  <md-dialog flex-sm="80" flex-xs="100" flex="60">
    <form method="post" ng-submit="editor.save(eventForm)" name="eventForm">
      <md-toolbar ng-class="editor.component.getClassName('bg')">
        <div class="md-toolbar-tools">

          <md-icon ng-if="editor.component.classification == 'confidential'">visibility_off</md-icon>
          <md-icon ng-if="editor.component.classification == 'private'">vpn_key</md-icon>
          <md-input-container class="md-flex">
            <label>Titolo</l
write error to stdout

127.000.000.001.20000-127.000.000.001.43753: abel>
            <input type="text" name="1.1.1.1.6.3" value="" required="required" md-autofocus="true" ng-model="editor.component.summary" class="md-title" />
          </md-input-container>
        </div>
      </md-toolbar>
      <md-dialog-content class="sg-has-form-sections">
        <div class="sg-form-section">
          <div layout-wrap="layout-wrap" layout="row">

            <md-input-container flex="50" flex-xs="100">
              <label>Luogo</label>
              <input type="text
write error to stdout

127.000.000.001.20000-127.000.000.001.43753: " name="1.1.3.1.1.2.3" value="" ng-model="editor.component.location" />
            </md-input-container>

            <md-input-container flex="50" flex-xs="100">
              <label>Calendario</label>
              <md-select ng-model="editor.component.destinationCalendar">
                <md-option ng-value="calendar.id" ng-repeat="calendar in editor.service.$findAll(null, true)">{{calendar.name}}</md-option>
              </md-select>
            </md-input-container>
          </div>

          <md-input-container class="md-block md-flex">
            <label>Descrizione</label>
            <textarea name="1.1.3.1.4.3" ng-model="editor.component.comment"></textarea>
          </md-input-container>

          <md-chips ng-model="editor.component.categories">
            <md-autocomplete md-min-length="0" placeholder="Add a category" md-items="category in editor.component.constructor.filterCategories(editor.categories.searchText)" md-search-text="editor.categories.searchText" md-selected-item="editor.categories.selected">
              <span md-highlight-text="editor.categories.searchText">{{category}}</span>
            </md-autocomplete>
          </md-chips>
          <div layout-wrap="layout-wrap" layout-align="space-between center" layout="row">

            <md-radio-group ng-model="editor.component.classification" layout="row">
              <md-radio-button value="public">
                Pubblico
              </md-radio-button>
              <md-radio-button value="confidential">
                Confidenziale
              </md-radio-button>
              <md-radio-button value="private">
                Privato
              </md-radio-button>
            </md-radio-group>

            <div flex-xs="100" class="pseudo-input-container" flex="50">
              <label class="pseudo-input-label">Priorit&#224;</label>
              <md-slider max="9" aria-label="Priorit&#224;" min="0" md-discrete="true" class="md-flex" step="1" ng-model="editor.component.priority"></md-slider>
            </div>
          </div>

          <md-input-container>
          <md-checkbox aria-label="Send Appointment Notifications" ng-false-value="0" ng-true-value="1" ng-model="editor.component.sendAppointmentNotifications">
            Send Appointment Notifications
          </md-checkbox>
          </md-input-container>

          <div ng-repeat="attach in editor.component.attachUrls" class="attr">
            <div layout-align="start center" layout="row">
              <md-input-container class="md-block md-flex">
                <label>
                  URL
                </label>
                <input type="url" name="1.1.3.1.15.1.1.3" value="" sg-focus-on="attachUrl_{{$index}}" ng-model="attach.value" />
              </md-input-container>
              <md-button ng-click="editor.component.deleteAttachUrl($index)" type="button" class="md-icon-button">
                <md-icon>remove_circle</md-icon>
              </md-button>
            </div>
          </div>
          <div layout-align="start center" layout="row">
            <md-button ng-click="editor.addAttachUrl($event)" type="button" class="md-icon-button">
              <md-icon>add_circle</md-icon>
            </md-button>
            <label class="button-label">
              Allega
            </label>
          </div>
        </div>

        <div class="sg-form-section">

          <div layout="row">
            <md-checkbox aria-label="Tutta la giornata" ng-false-value="0" ng-true-value="1" ng-model="editor.component.isAllDay" flex="50">
              Tutta la giornata
            </md-checkbox>

            <md-checkbox aria-label="Mostra comunque come libero" ng-false-value="0" ng-true-value="1" ng-model="editor.component.isTransparent" flex="50">
              Mostra comunque come libero
            </md-checkbox>
          </div>

          <div layout="row">
            <div flex="50">
              <div class="pseudo-input-container">
                <label class="pseudo-input-label">From</label>
              </div>
              <div layout-wrap="layout-wrap" layout-align="start center" layout="row">
                <md-datepicker md-placeholder="From" ng-change="editor.updateStartTime()" ng-model="editor.component.start"></md-datepicker>
                <sg-timepicker ng-change="editor.adjustStartTime()" ng-model="editor.component.start" ng-hide="editor.component.isAllDay"></sg-timepicker>
              </div>
            </div>
            <div flex="50">
              <div class="pseudo-input-container">
                <label class="pseudo-input-label">To</label>
              </div>
              <div layout-wrap="layout-wrap" layout-align="start center" layout="row">
                <md-datepicker md-placeholder="To" ng-change="editor.updateEndTime()" ng-model="editor.component.end"></md-datepicker>
                <sg-timepicker ng-change="editor.adjustEndTime()" ng-model="editor.component.end" ng-hide="editor.component.isAllDay"></sg-timepicker>
              </div>
            </div>
          </div>
        </div>

        <div class="sg-form-section">
          <div layout-align="start center" layout="row">
            <md-input-container class="md-block md-flex">
              <label>Ripetizione</label>
              <md-select ng-model="editor.component.repeat.frequency" ng-disabled="editor.component.occurrenceId">

                  <md-option value="never">Non si ripete</md-option>

                  <md-option value="daily">Quotidianamente</md-option>

                  <md-option value="weekly">Settimanalmente</md-option>

                  <md-option value="monthly">Mensilmente</md-option>

                  <md-option value="yearly">Annualmente</md-option>

              </md-select>
            </md-input-container>
            <md-button ng-show="editor.component.repeat.frequency != 'never'" ng-disabled="editor.component.occurrenceId" aria-label="Personalizza..." ng-click="editor.toggleRecurrenceEditor()" class="sg-icon-button" type="button">
              <md-icon ng-class="{'md-rotate-45': editor.showRecurrenceEditor}">add</md-icon>
            </md-button>
          </div>
          <div flex-offset="5" ng-show="editor.showRecurrenceEditor">


  <div ng-show="editor.component.repeat.frequency == 'daily'" layout-align="start center" layout="row">
    Ogni
    <md-input-container class="md-input-number">
      <input type="number" name="1.1.3.6.3.1.2.3.1" value="" aria-label="Ogni" ng-model="editor.component.repeat.interval" />
    </md-input-container>
    Giorni
  </div>


  <div ng-show="editor.component.repeat.frequency == 'weekly'">
    <div layout-align="start center" layout="row">
      Ogni
      <md-input-container class="md-input-number">
        <input type="number" name="1.1.3.6.3.1.5.1.3.1" value="" aria-label="Ogni" ng-model="editor.component.repeat.interval" />
      </md-input-container>
      Settimana/e
    </div>
    <div layout-align="center center" layout="row" class="pseudo-input-container layout-padding">
      <label class="pseudo-input-label">Il</label>
      <md-grid-list md-row-height="2em" flex-xs="100" flex-sm="80" sg-toggle-grid-attr="day" md-cols="7" flex="50" md-gutter="0.5em" sg-toggle-grid="editor.component.repeat.days">

          <md-grid-tile value="SU">Dom</md-grid-tile>

          <md-grid-tile value="MO">Lun</md-grid-tile>

          <md-grid-tile value="TU">Mar</md-grid-tile>

          <md-grid-tile value="WE">Mer</md-grid-tile>

          <md-grid-tile value="TH">Gio</md-grid-tile>

          <md-grid-tile value="FR">Ven</md-grid-tile>

          <md-grid-tile value="SA">Sab</md-grid-tile>

      </md-grid-list>
    </div>
  </div>


  <div ng-show="editor.component.repeat.frequency == 'monthly'">
    <div layout-align="start center" layout="row">
      Ogni
      <md-input-container class="md-input-number">
        <input type="number" name="1.1.3.6.3.1.8.1.3.1" value="" aria-label="Ogni" ng-model="editor.component.repeat.interval" />
      </md-input-container>
      Mese/i
    </div>
    <md-radio-group ng-model="editor.component.repeat.month.type">
      <md-radio-button value="bymonthday">
        Ricorre il giorno/i
      </md-radio-button>
      <div layout-align="start center" layout="row">
        <md-grid-list md-row-height="2em" flex-xs="100" flex-sm="80" md-cols="7" flex="50" md-gutter="0.5em" sg-toggle-grid="editor.component.repeat.monthdays">
          <md-grid-tile value="1">1</md-grid-tile>
          <md-grid-tile value="2">2</md-grid-tile>
          <md-grid-tile value="3">3</md-grid-tile>
          <md-grid-tile value="4">4</md-grid-tile>
          <md-grid-tile value="5">5</md-grid-tile>
          <md-grid-tile value="6">6</md-grid-tile>
          <md-grid-tile value="7">7</md-grid-tile>
          <md-grid-tile value="8">8</md-grid-tile>
          <md-grid-tile value="9">9</md-grid-tile>
          <
write error to stdout

127.000.000.001.20000-127.000.000.001.43753: md-grid-tile value="10">10</md-grid-tile>
          <md-grid-tile value="11">11</md-grid-tile>
          <md-grid-tile value="12">12</md-grid-tile>
          <md-grid-tile value="13">13</md-grid-tile>
          <md-grid-tile value="14">14</md-grid-tile>
          <md-grid-tile value="15">15</md-grid-tile>
          <md-grid-tile value="16">16</md-grid-tile>
          <md-grid-tile value="17">17</md-grid-tile>
          <md-grid-tile value="18">18</md-grid-tile>
          <md-grid-tile value="19">19</md-grid
write error to stdout

127.000.000.001.20000-127.000.000.001.43753: -tile>
          <md-grid-tile value="20">20</md-grid-tile>
          <md-grid-tile value="21">21</md-grid-tile>
          <md-grid-tile value="22">22</md-grid-tile>
          <md-grid-tile value="23">23</md-grid-tile>
          <md-grid-tile value="24">24</md-grid-tile>
          <md-grid-tile value="25">25</md-grid-tile>
          <md-grid-tile value="26">26</md-grid-tile>
          <md-grid-tile value="27">27</md-grid-tile>
          <md-grid-tile value="28">28</md-grid-tile>
          <md-grid-tile valu
write error to stdout

127.000.000.001.20000-127.000.000.001.43753: e="29">29</md-grid-tile>
          <md-grid-tile value="30">30</md-grid-tile>
          <md-grid-tile value="31">31</md-grid-tile>
        </md-grid-list>
      </div>
      <div layout-align="start center" layout="row">
        <md-radio-button value="byday">
          Il
        </md-radio-button>
        <md-input-container>
          <md-select ng-model="editor.component.repeat.month.occurrence">

              <md-option value="1">Primo</md-option>

              <md-option valu
write error to stdout

127.000.000.001.20000-127.000.000.001.43753: e="2">Secondo</md-option>

              <md-option value="3">Terzo</md-option>

              <md-option value="4">Quarto</md-option>

              <md-option value="5">Quinto</md-option>

              <md-option value="-1">Ultimo</md-option>

          </md-select>
        </md-input-container>
        <md-input-container>
          <md-select ng-model="editor.component.repeat.month.day">

              <md-option value="SU">Domenic
write error to stdout

127.000.000.001.20000-127.000.000.001.43753: a</md-option>

              <md-option value="MO">Lunedi</md-option>

              <md-option value="TU">Martedi</md-option>

              <md-option value="WE">Mercoledi</md-option>

              <md-option value="TH">Giovedi</md-option>

              <md-option value="FR">Venerdi</md-option>

              <md-option value="SA">Sabato</md-option>

              <md-option value="">Giorno del mese</md-option>

write error to stdout

127.000.000.001.20000-127.000.000.001.43753:
          </md-select>
        </md-input-container>
      </div>
    </md-radio-group>
  </div>


  <div ng-show="editor.component.repeat.frequency == 'yearly'">
    <div layout-align="start center" layout="row">
      Ogni
      <md-input-container class="md-input-number">
        <input type="number" name="1.1.3.6.3.1.11.1.3.1" value="" aria-label="Ogni" ng-model="editor.component.repeat.interval" />
      </md-input-container>
      Anno/i
    </div>
    <div layout-align="start center" layout="ro
write error to stdout

127.000.000.001.20000-127.000.000.001.43753: w">
      <md-grid-list md-row-height="2em" flex-xs="100" flex-sm="80" md-cols="6" flex="50" md-gutter="0.5em" sg-toggle-grid="editor.component.repeat.months">

          <md-grid-tile value="1">Gen</md-grid-tile>

          <md-grid-tile value="2">Feb</md-grid-tile>

          <md-grid-tile value="3">Mar</md-grid-tile>

          <md-grid-tile value="4">Apr</md-grid-tile>

          <md-grid-tile value="5">Mag</md-grid-tile>

          <md-grid-tile value="6"
write error to stdout

127.000.000.001.20000-127.000.000.001.43753: >Giu</md-grid-tile>

          <md-grid-tile value="7">Lug</md-grid-tile>

          <md-grid-tile value="8">Ago</md-grid-tile>

          <md-grid-tile value="9">Set</md-grid-tile>

          <md-grid-tile value="10">Ott</md-grid-tile>

          <md-grid-tile value="11">Nov</md-grid-tile>

          <md-grid-tile value="12">Dic</md-grid-tile>

      </md-grid-list>
    </div>
    <div layout-align="start center" layout="row">
      <md-checkbox ng-mo
write error to stdout

127.000.000.001.20000-127.000.000.001.43753: del="editor.component.repeat.year.byday">
        Il
      </md-checkbox>
      <md-select ng-model="editor.component.repeat.month.occurrence">

          <md-option value="1">Primo</md-option>

          <md-option value="2">Secondo</md-option>

          <md-option value="3">Terzo</md-option>

          <md-option value="4">Quarto</md-option>

          <md-option value="5">Quinto</md-option>

          <md-option value="-1">Ultimo</md-option>


write error to stdout

127.000.000.001.20000-127.000.000.001.43753:  </md-select>
      <md-select ng-model="editor.component.repeat.month.day">

          <md-option value="SU">Domenica</md-option>

          <md-option value="MO">Lunedi</md-option>

          <md-option value="TU">Martedi</md-option>

          <md-option value="WE">Mercoledi</md-option>

          <md-option value="TH">Giovedi</md-option>

          <md-option value="FR">Venerdi</md-option>

          <md-option value="SA">Sabato</md-option>

write error to stdout

127.000.000.001.20000-127.000.000.001.43753:
      </md-select>
    </div>
  </div>


          </div>

          <div layout="row">
            <md-input-container flex-xs="100" ng-show="editor.component.repeat.frequency != 'never'" class="md-block" flex="50">
              <label>End Repeat</label>
              <md-select ng-model="editor.component.repeat.end" ng-disabled="editor.component.occurrenceId">
                <md-option value="never">Never</md-option>
                <md-option value="count">After</md-option>

write error to stdout

127.000.000.001.20000-127.000.000.001.43753: <md-option value="until">On Date</md-option>
              </md-select>
            </md-input-container>
            <md-input-container ng-show="editor.component.repeat.end == 'count'" class="md-block md-input-number">
              <label>times</label>
              <input type="number" name="1.1.3.6.6.3.3" value="" aria-label="times" ng-model="editor.component.repeat.count" />
            </md-input-container>
            <md-datepicker md-placeholder="On Date" ng-model="editor.component.repeat.until" n
write error to stdout

127.000.000.001.20000-127.000.000.001.43753: g-show="editor.component.repeat.end == 'until'"></md-datepicker>
          </div>
        </div>

        <div class="sg-form-section">
          <div layout-align="start start" layout="row">
            <md-icon>search</md-icon>
            <md-autocomplete md-item-text="card.empty" md-selected-item-change="editor.addAttendee(card)" md-items="card in editor.cardFilter(editor.searchText)" md-search-text="editor.searchText" md-delay="300" md-floating-label="Invita partecipanti" class="md-flex" sg-ent
write error to stdout

127.000.000.001.20000-127.000.000.001.43753: er="editor.addAttendee(editor.searchText)" md-min-length="3" md-no-cache="true" md-selected-item="attendeeToAdd">
              <md-item-template>
                <div class="md-contact-suggestion">
                  <span md-highlight-flags="^i" md-highlight-text="editor.searchText" class="md-contact-name">{{card.$$fullname}}</span>
                  <span md-highlight-flags="^i" md-highlight-text="editor.searchText" class="md-contact-email">{{card.$$email}}</span>
                </div>
              </md
write error to stdout

127.000.000.001.20000-127.000.000.001.43753: -item-template>
            </md-autocomplete>
            <md-button ng-click="editor.toggleAttendeesEditor()" aria-label="Personalizza..." class="sg-icon-button" type="button">
              <md-icon ng-class="{'md-rotate-180': editor.showAttendeesEditor}">expand_more</md-icon>
            </md-button>
          </div>

          <md-chips readonly="true" ng-model="editor.component.attendees" class="md-contact-chips sg-readonly" ng-hide="editor.showAttendeesEditor">
            <md-chip-template
write error to stdout

127.000.000.001.20000-127.000.000.001.43753: >
              <div class="md-contact-avatar">
                <sg-avatar-image size="32" sg-email="$chip.email"></sg-avatar-image>
              </div>
              <div class="md-contact-name">{{$chip.name || $chip.email}}</div>
              <md-icon ng-class="'icon-' + $chip.status"></md-icon>
              <md-icon ng-click="editor.component.deleteAttendee($chip)" aria-label="Rimuovi" class="sg-chip-remove">close</md-icon>
            </md-chip-template>
          </md-chips>
          <div class="at
write error to stdout

127.000.000.001.20000-127.000.000.001.43753: tendees" ng-show="editor.showAttendeesEditor">

  <script type="text/javascript">
    var dayStartHour = 8;
    var dayEndHour = 18;
    var timeFormat = '%H:%M';
  </script>
  <md-content>

    <md-list>
      <md-list-item>
        <div class="md-tile-left"></div>
      </md-list-item>
      <md-list-item ng-repeat="currentAttendee in editor.component.attendees track by currentAttendee.email">
        <sg-avatar-image size="40" sg-email="currentAttendee.email" class="md-avatar"></sg-avatar
write error to stdout

127.000.000.001.20000-127.000.000.001.43753: -image>
        <div class="sg-tile-content">
          <div class="sg-md-subhead"><div>{{currentAttendee.name}}</div></div>
          <div class="sg-md-body"><div>{{currentAttendee.email}}</div></div>
        </div>
        <md-button ng-click="editor.component.deleteAttendee(currentAttendee)" aria-label="Rimuovi" class="md-icon-button">
          <md-icon>close</md-icon>
        </md-button>
      </md-list-item>
    </md-list>

    <md-list ng-repeat="day in editor.attendeesEditor.days" class="day">

write error to stdout

127.000.000.001.20000-127.000.000.001.43753:       <md-list-item layout-align="end start" layout="column">
        <div>{{day.stringWithSeparator}}</div>
        <div layout-fill="layout-fill" layout-align="space-between center" layout="row" class="hours">
          <div ng-repeat="hour in ::editor.attendeesEditor.hours" class="hour">{{hour}}</div>
        </div>
      </md-list-item>
      <md-list-item ng-repeat="currentAttendee in editor.component.attendees track by currentAttendee.email">
        <div ng-repeat="hour in ::editor.attendeesEditor.ho
write error to stdout

127.000.000.001.20000-127.000.000.001.43753: urs" class="hour" ng-class="{'sg-no-freebusy': !currentAttendee.uid}">
          <div class="quarter" ng-class="{event: editor.component.coversFreeBusy(day.getDayString, hour, 0)}">
            <div ng-show="currentAttendee.freebusy[day.getDayString][hour][0]" class="busy"></div>
          </div>
          <div class="quarter" ng-class="{event: editor.component.coversFreeBusy(day.getDayString, hour, 1)}">
            <div ng-show="currentAttendee.freebusy[day.getDayString][hour][1]" class="busy"></div>

write error to stdout

127.000.000.001.20000-127.000.000.001.43753:       </div>
          <div class="quarter" ng-class="{event: editor.component.coversFreeBusy(day.getDayString, hour, 2)}">
            <div ng-show="currentAttendee.freebusy[day.getDayString][hour][2]" class="busy"></div>
          </div>
          <div class="quarter" ng-class="{event: editor.component.coversFreeBusy(day.getDayString, hour, 3)}">
            <div ng-show="currentAttendee.freebusy[day.getDayString][hour][3]" class="busy"></div>
          </div>
        </div>
        <md-divider></md-divid
write error to stdout

127.000.000.001.20000-127.000.000.001.43753: er>
      </md-list-item>
    </md-list>
  </md-content>

          </div>
        </div>
        <div class="sg-form-section">

          <md-checkbox ng-model="editor.component.$hasAlarm" aria-label="Promemoria">
            Promemoria
          </md-checkbox>
          <div flex-offset="5" ng-show="editor.component.$hasAlarm">

  <div layout-wrap="layout-wrap" layout="row">
    <md-input-container class="md-input-number">
      <input type="number" name="1.1.3.11.4.1.1.1.1" value=""
write error to stdout

127.000.000.001.20000-127.000.000.001.43753:  aria-label="quantity" ng-model="editor.component.alarm.quantity" />
    </md-input-container>
    <md-input-container>
      <md-select ng-model="editor.component.alarm.unit">

          <md-option value="MINUTES">minuti</md-option>

          <md-option value="HOURS">ore</md-option>

          <md-option value="DAYS">giorni</md-option>

          <md-option value="WEEKS">reminder_WEEKS</md-option>

      </md-select>
    </md-input-container>
    <md-input-container>
      <md-select ng-model="editor.component.alarm.reference">

          <md-option value="BEFORE">prima</md-option>

          <md-option value="AFTER">dopo</md-option>

      </md-select>
    </md-input-container>
    <md-input-container>
      <md-select ng-model="editor.component.alarm.relation">

          <md-option value="START">l'evento inizia</md-option>

          <md-option value="END">l'evento termina</md-option>

      </md-select>
    </md-input-container>
  </div>




          </div>
        </div>
      </md-dialog-content>

      <md-dialog-actions>
        <md-button ng-click="editor.cancel()" type="button">
          Annulla
        </md-button>
        <md-button ng-click="editor.component.$reset()" type="button">
          Reset
        </md-button>
        <md-button ng-disabled="editor.eventForm.$invalid" type="submit" class="md-primary">
          Save
        </md-button>
      </md-dialog-actions>
    </form>
  </md-dialog>

write error to stdout

127.000.000.001.43754-127.000.000.001.20000: POST /SOGo/so/valerio/Calendar/personal/4E6-56B06B80-1-300EAA00.ics/saveAsAppointment HTTP/1.1
Host: 172.17.10.79
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.11; rv:43.0) Gecko/20100101 Firefox/43.0
Accept: application/json, text/plain, */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
DNT: 1
Content-Type: application/json;charset=utf-8
Referer: http://172.17.10.79/SOGo/so/valerio/Calendar/view
Cookie: 0xHIGHFLYxSOGo=basic%20VXZNcEJZQXMyWTRvUFhycEZ4MTNjQ1VYQ2I5d3RWVWxkU2gra2VJNGVUd2hhUTFoQ0QwZFl1dnNTNjNlUGd6RitOWDFickdHb2lBV0ZIbnFXTUtBMUpmek5HL3pHL3VOakFMVkN5NGEvZ2NBcW05ZWI4YkhqbnRuM3ZEVVppcU83WUlIQStPc0ovai9aaVp0ZG5EU25vUGxsdnlQQytWZzNqc2NVQ3YyaWNnenZ5d2NxTWZTd1NVTXZpSG5mNUE2UkVQWHhJdWdNSVduVlJBK3kyaXhZdz09OlF3QzZLNEtTaFI5ZnNCNDkyVC93NWc9PQ%3D%3D
x-webobjects-server-port: 443
x-webobjects-server-protocol: HTTP/1.0
X-Forwarded-For: 172.17.10.86
X-Forwarded-Host: 172.17.10.79
X-Forwarded-Server: 127.0.1.1
Connection: close

write error to stdout

127.000.000.001.43754-127.000.000.001.20000: Content-Length: 559

{"categories":[],"repeat":{"frequency":"never"},"alarm":{},"status":"not-specified","delta":60,"pid":"personal","type":"appointment","start":"2016-02-02T08:45:06.411Z","end":"2016-02-02T09:45:06.411Z","destinationCalendar":"personal","freebusy":{"20160202":{"9":[0,0,0,1],"10":[1,1,1]}},"selected":false,"isNew":true,"classification":"public","id":"4E6-56B06B80-1-300EAA00.ics","summary":"party","location":"new york","comment":"fun with friends","startDate":"2016-02-02","startTime":"09:45","endDate":"2016-02-02","endTime":"10:45","dueDate":"","dueTime":""}
write error to stdout

127.000.000.001.20000-127.000.000.001.43754: HTTP/1.1 200 OK

write error to stdout

127.000.000.001.20000-127.000.000.001.43754: Sogo-Request-Duration: 0.071105
Content-Length: 21
Content-Type: application/json

write error to stdout

127.000.000.001.20000-127.000.000.001.43754:

write error to stdout

127.000.000.001.20000-127.000.000.001.43754: {"status": "success"}
write error to stdout

127.000.000.001.43756-127.000.000.001.20000: GET /SOGo/so/valerio/Calendar/eventsblocks?ed=20160206&sd=20160131&view=weekview HTTP/1.1
Host: 172.17.10.79
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.11; rv:43.0) Gecko/20100101 Firefox/43.0
Accept: application/json, text/plain, */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
DNT: 1
Referer: http://172.17.10.79/SOGo/so/valerio/Calendar/view
Cookie: 0xHIGHFLYxSOGo=basic%20VXZNcEJZQXMyWTRvUFhycEZ4MTNjQ1VYQ2I5d3RWVWxkU2gra2VJNGVUd2hhUTFoQ0QwZFl1dnNTNjNlUGd6RitOWDFickdHb2lBV0ZIbnFXTUtBMUpmek5HL3pHL3VOakFMVkN5NGEvZ2NBcW05ZWI4YkhqbnRuM3ZEVVppcU83WUlIQStPc0ovai9aaVp0ZG5EU25vUGxsdnlQQytWZzNqc2NVQ3YyaWNnenZ5d2NxTWZTd1NVTXZpSG5mNUE2UkVQWHhJdWdNSVduVlJBK3kyaXhZdz09OlF3QzZLNEtTaFI5ZnNCNDkyVC93NWc9PQ%3D%3D
x-webobjects-server-port: 443
x-webobjects-server-protocol: HTTP/1.0
X-Forwarded-For: 172.17.10.86
X-Forwarded-Host: 172.17.10.79
X-Forwarded-Server: 127.0.1.1
Connection: close


write error to stdout

127.000.000.001.43757-127.000.000.001.20000: GET /SOGo/so/valerio/Calendar/alarmslist?browserTime=1454402469 HTTP/1.1
Host: 172.17.10.79
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.11; rv:43.0) Gecko/20100101 Firefox/43.0
Accept: application/json, text/plain, */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
DNT: 1
Referer: http://172.17.10.79/SOGo/so/valerio/Calendar/view
Cookie: 0xHIGHFLYxSOGo=basic%20VXZNcEJZQXMyWTRvUFhycEZ4MTNjQ1VYQ2I5d3RWVWxkU2gra2VJNGVUd2hhUTFoQ0QwZFl1dnNTNjNlUGd6RitOWDFickdHb2lBV0ZIbnFXTUtBMUpmek5HL3pHL3VOakFMVkN5NGEvZ2NBcW05ZWI4YkhqbnRuM3ZEVVppcU83WUlIQStPc0ovai9aaVp0ZG5EU25vUGxsdnlQQytWZzNqc2NVQ3YyaWNnenZ5d2NxTWZTd1NVTXZpSG5mNUE2UkVQWHhJdWdNSVduVlJBK3kyaXhZdz09OlF3QzZLNEtTaFI5ZnNCNDkyVC93NWc9PQ%3D%3D
x-webobjects-server-port: 443
x-webobjects-server-protocol: HTTP/1.0
X-Forwarded-For: 172.17.10.86
X-Forwarded-Host: 172.17.10.79
X-Forwarded-Server: 127.0.1.1
Connection: close


write error to stdout

127.000.000.001.20000-127.000.000.001.43757: HTTP/1.1 200 OK

write error to stdout

127.000.000.001.20000-127.000.000.001.43757: Sogo-Request-Duration: 0.003132
Content-Length: 63
Content-Type: application/json

write error to stdout

127.000.000.001.20000-127.000.000.001.43757:

write error to stdout

127.000.000.001.20000-127.000.000.001.43757: {"fields": ["c_folder", "c_name", "c_nextalarm"], "alarms": []}
write error to stdout

127.000.000.001.20000-127.000.000.001.43756: HTTP/1.1 200 OK

write error to stdout

127.000.000.001.20000-127.000.000.001.43756: Sogo-Request-Duration: 0.011196
Content-Length: 448
Content-Type: application/json

write error to stdout

127.000.000.001.20000-127.000.000.001.43756:

write error to stdout

127.000.000.001.20000-127.000.000.001.43756: [{"allDayBlocks": [[], [], [], [], [], [], []], "events": [], "blocks": [[], [], [], [], [], [], []], "eventsFields": ["c_name", "c_folder", "calendarName", "c_status", "c_title", "c_startdate", "c_enddate", "c_location", "c_isallday", "c_classification", "c_category", "c_partmails", "c_partstates", "c_owner", "c_iscycle", "c_nextalarm", "c_recurrence_id", "isException", "viewable", "editable", "erasable", "ownerIsOrganizer", "c_description"]}]
write error to stdout

127.000.000.001.43758-127.000.000.001.20000: GET /SOGo/so/valerio/Calendar/eventslist?asc=1&day=20160202&filterpopup=view_next7&search=title_Category_Location&sort=start&value= HTTP/1.1
Host: 172.17.10.79
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.11; rv:43.0) Gecko/20100101 Firefox/43.0
Accept: application/json, text/plain, */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
DNT: 1
Referer: http://172.17.10.79/SOGo/so/valerio/Calendar/view
Cookie: 0xHIGHFLYxSOGo=basic%20VXZNcEJZQXMyWTRvUFhycEZ4MTNjQ1VYQ2I5d3RWVWxkU2gra2VJNGVUd2hhUTFoQ0QwZFl1dnNTNjNlUGd6RitOWDFickdHb2lBV0ZIbnFXTUtBMUpmek5HL3pHL3VOakFMVkN5NGEvZ2NBcW05ZWI4YkhqbnRuM3ZEVVppcU83WUlIQStPc0ovai9aaVp0ZG5EU25vUGxsdnlQQytWZzNqc2NVQ3YyaWNnenZ5d2NxTWZTd1NVTXZpSG5mNUE2UkVQWHhJdWdNSVduVlJBK3kyaXhZdz09OlF3QzZLNEtTaFI5ZnNCNDkyVC93NWc9PQ%3D%3D
x-webobjects-server-port: 443
x-webobjects-server-protocol: HTTP/1.0
X-Forwarded-For: 172.17.10.86
X-Forwarded-Host: 172.17.10.79
X-Forwarded-Server: 127.0.1.1
Connection: close


write error to stdout

127.000.000.001.20000-127.000.000.001.43758: HTTP/1.1 200 OK

write error to stdout

127.000.000.001.20000-127.000.000.001.43758: Sogo-Request-Duration: 0.029934
Content-Length: 398
Content-Type: application/json

write error to stdout

127.000.000.001.20000-127.000.000.001.43758:

write error to stdout

127.000.000.001.20000-127.000.000.001.43758: {"events": [], "fields": ["c_name", "c_folder", "calendarName", "c_status", "c_title", "c_startdate", "c_enddate", "c_location", "c_isallday", "c_classification", "c_category", "c_partmails", "c_partstates", "c_owner", "c_iscycle", "c_nextalarm", "c_recurrence_id", "isException", "viewable", "editable", "erasable", "ownerIsOrganizer", "c_description", "formatted_startdate", "formatted_enddate"]}
write error to stdout

SogoInsertErr.txt (33,662 bytes)   
ValerioDC

ValerioDC

2016-02-02 08:50

reporter   ~0009400

sniff from tcpflow added in the uploaded file "SogoInsertErr.txt"

ValerioDC

ValerioDC

2016-02-02 09:41

reporter   ~0009401

added the sogo.log part of the inserted event with all the debug activated in the sogo.conf

ValerioDC

ValerioDC

2016-02-02 10:10

reporter  

insertevent.log (33,063 bytes)
ludovic

ludovic

2016-02-04 15:53

administrator   ~0009443

https://github.com/inverse-inc/sogo/commit/a8845d262fea716df3a48dbeea3dc85bd9b65ec8

Issue History

Date Modified Username Field Change
2016-01-29 15:01 ValerioDC New Issue
2016-02-01 07:31 steve Note Added: 0009377
2016-02-01 09:43 Christian Mack Note Added: 0009378
2016-02-01 09:43 Christian Mack Product Version => 3.0.0
2016-02-01 13:33 ValerioDC Note Added: 0009381
2016-02-01 15:04 ludovic Note Added: 0009383
2016-02-01 15:11 ValerioDC Note Added: 0009384
2016-02-01 20:10 McMichaeli Note Added: 0009392
2016-02-01 21:07 McMichaeli Note Added: 0009395
2016-02-01 21:08 ludovic Note Added: 0009396
2016-02-02 08:48 ValerioDC File Added: SogoInsertErr.txt
2016-02-02 08:50 ValerioDC Note Added: 0009400
2016-02-02 09:41 ValerioDC Note Added: 0009401
2016-02-02 10:10 ValerioDC File Added: insertevent.log
2016-02-04 15:53 ludovic Note Added: 0009443
2016-02-04 15:53 ludovic Status new => resolved
2016-02-04 15:53 ludovic Fixed in Version => 3.0.1
2016-02-04 15:53 ludovic Resolution open => fixed
2016-02-04 15:53 ludovic Assigned To => ludovic