Changelog
=========


3.0 (2021-07-16)
----------------

- Fixed `test_ws_getItemInfosRequest` now that observers may access item since
  WF initial state, make sure we use a member that does not have access to item
  at all and fixed `test_ws_getConfigInfosItemPositiveDecidedStates`, field
  `MeetingConfig.itemPositiveDecidedStates` was removed and is now managed by
  `MeetingConfig.getItemPositiveDecidedStates` method.
  [gbastien]
- Fixed `getItemInfosRequest/getSingleItemInfosRequest` that was breaking when
  no result and `showEmptyValues=0`.
  [gbastien]
- Adapted tests and code regarding fact that Meeting was moved from AT to DX
  (`linkedMeetingUID` index is renamed to `meeting_uid`, `Meeting.date` attribute
  holds a `datetime` instead a `DateTime`, `attendees` related methods use
  snake_case instead camelCase on both `Meeting` and `MeetingItem`,
  every methods on Meeting use snake_case).
  [gbastien]
- Adapted code now that `MeetingItem.getCategory` does only return the real
  category and not the `proposingGroup` when category not used.
  [gbastien]

2.16 (2020-06-11)
-----------------

- When adding `wf_transition_triggered_by_application` comment to
  `workflow_history`, do not use a `zope.i18nmessageid.message.Message` or
  it is stored this way in workflow_history, use a simple string and
  it will be translated by `imio.history`.
  [gbastien]

2.15 (2020-05-28)
-----------------

- Fixed `test_ws_getItemInfosWithShowAssembly` as default value in
  `PloneMeeting` testing profile changed to test held position having a
  `&` character (non XHTML character).
  [gbastien]
- When library `chardet` is available, it wrongly detect utf-8 passed string to
  `BeautifulSoup` as being `iso-8859-1` leading to incorrect special characters.
  `chardet` is now availabe because a dependency of `collective.zamqp`.
  So pass `unicode` string to `BeautifulSoup` to avoid this.
  [gbastien]

2.14 (2020-03-17)
-----------------

- Added method `getSingleItemInfos` that return a single item informations,
  not a list of `ItemInfo` instances.
  Result and paramaters are exactly same as `getItemInfos`.
  [gbastien]
- Make most most of data returned by `getItemInfos` nillable.
  [gbastien]
- Added parameter `showEmptyValues=1` by default to `getItemInfos`,
  making it possible to remove empty values from returned result.
  [gbastien]

2.13 (2020-02-18)
-----------------

- Manage field `toDiscuss` while creating new item.
  [gbastien]
- Changed the way `wfTransitions` are managed in `createItem`: if a transition
  is not available, it is ignored and next transition is tried, this way it is
  easier to manage cases where item validation WF is different for proposing
  groups.
  [gbastien]

2.12 (2019-10-14)
-----------------

- Do not fail in 'getItemInfos' when returning POD templates if a POD template
  is using the odt_file of another POD template.
  [gbastien]

2.11 (2019-10-01)
-----------------

- Make it easier to detect if an item was created using the createItem SOAP WS
  by adding a specific line to the item workflow_history like it is the case
  when creating an item from an item template or from a recurring item.
  [gbastien]

2.10 (2019-09-30)
-----------------

- 'getItemInfos' returns 'meeting' containing the meeting UID if any.
  [gbastien]
- 'searchItems' now accepts an additional search parameter 'linkedMeetingUID'.
  [gbastien]

2.9 (2019-09-24)
----------------

- In 'getItemInfos' when 'showAssembly=True', changed separator between list of
  assembly members from '|' to '\n' so it is easier to parse as '|' is already
  the separator between types of attendees (attendees, absents, excused, ...).
  [gbastien]

2.8 (2019-09-23)
----------------

- In createItem, added possibility to define associatedGroups and
  groupsInCharge as lists of organization UIDs.
  [gbastien]
- Added parameter 'wfTransitions' to createItem making it possible to trigger
  given WF transitions on the newly created item.
  [gbastien]
- In createItem, added possibility to define optionalAdvisers.
  [gbastien]
- Force catalog query in getItemInfos to use 'sort_on=created'.
  [gbastien]
- In getItemInfos, added 'showAssembly=False' parameter making it possible to
  receive the item assembly in the _item_assembly attribute when item is in a
  meeting.
  [gbastien]
- Removed manual handling of currentWSDL.txt.  Now dumpedWSDL.txt is generated
  by calling 'http://portal_url/@@ws4pm.wsdl?dump_wsdl:boolean=True'.
  [gbastien]
- Added parameter 'allowed_annexes_types' and 'include_annex_binary' to 
  getItemInfos() method.
  [sdelcourt]
- Add attribute 'id' to the AnnexInfo data type.
  [sdelcourt]

2.7 (2019-05-16)
----------------

- Override plone.transformchain transformer to not apply on SOAP request.
  [gbastien]
- Jenkinsfile for CI [odelaere]
- Removed dependency on unittest2.
  [gbastien]

2.6 (2018-12-04)
----------------

- Adapted to changes in Products.PloneMeeting following integration of
  collective.contact.
  [gbastien]
- Manage 'category_title' using MeetingItem.getCategory(theObject=True).
  [gbastien]

2.5 (2018-01-15)
----------------

- Use a simpleType 'List' for the 'ConfigInfo.itemPositiveDecidedStates' data
  to avoid using a 'xsd:Array' type that is not recognized correctly by 'soapUI'.
  [gbastien]

2.4 (2017-10-24)
----------------

- testConnection.version now returns the distribution version (2.4) and not
  the GenericSetup version (2000) that only changes when an upgrade step is
  required.
  [gbastien]

2.3 (2017-10-13)
----------------

- Add preferred_meeting_date attribute on ItemInfos.
  [sdelcourt]

2.2 (2017-08-04)
----------------

- Fixed tests regarding new format used for annex.content_category.
  [gbastien]

2.1 (2017-03-27)
----------------

- Adapted code now that ToolPloneMeeting.userIsAmong receives a list of suffixes
  instead one single suffix before.
  [gbastien]
- Added parameter 'cleanHtml' to createItem method that is True by default and 
  that will enable or disable Html cleaning when item is created.
  [gbastien]
- getConfigInfos now returns also MeetingConfig.itemPositiveDecidedStates as an
  array.
  [gbastien]
- Refactored getConfigInfos to manage groups using GroupInfo complexType instead
  ConfigInfo complexType.
  [gbastien]

2.0 (2017-01-25)
----------------

- Adapted code regarding integration of imio.annex into Products.PloneMeeting

1.8 (2016-08-17)
----------------

- Make sure history is saved when we patch it to change the creation comment
- Do no more create the item before checking for category validity, this could lead
  to problem where item was not deletable (validated while created for example)

1.7 (2016-08-03)
----------------

- Added possibility to pass aribitraty extra attributes when creating an item,
  for now it must correspond to an existing RichText field

1.6 (2016-05-13)
----------------
- Adapted code regarding changes in Products.PloneMeeting 4

1.5 (2015-04-01)
----------------
- If no 'preferredMeeting' is provided when creating an item, use 'whatever'
  or created item is not consistent

1.4 (2015-03-06)
----------------
- Calling getItemInfos will now also return the 'detailedDescription'
  as it can be used when creating an item
- Added parameter 'attribute' to CreationData and ItemInfo so we can specify
  a preferredMeeting when creating an item and we get the preferredMeeting when
  using getItemInfos

1.3 (2015-03-05)
----------------
- Added item creation date and modification date in ItemInfo (getItemInfo and searchItems)
- Added package version in the testConnection call
- Added SOAP call to getMeetingsAcceptingItems

1.2 (2015-02-27)
----------------
- Use with Products.PloneMeeting 3.3+
- Adapted tests to use IAnnexable.getAnnexesInOrder as IAnnexable.getAnnexes was removed

1.1 (2014-02-12)
----------------
- Use with Products.PloneMeeting 3.2+
- Handle case where libmagic could not determinate annex mimetype correctly (and added test)

1.0 (2014-01-07)
-----------------
- Renamed package from communesplone.ws4plonemeeting to imio.pm.ws
- Moved to Plone 4.3
- Use ZSI 2.1a1
- Avoid error if item created without a description or a decision (empty HTML field)

0.1 (2012-10-15)
----------------
- Initial release
- Added methods to 'getItemInfos', 'createItem', 'getConfigInfos', 'searchItems'
