You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

systemtagmodel.js 1.3KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. /*
  2. * Copyright (c) 2015
  3. *
  4. * This file is licensed under the Affero General Public License version 3
  5. * or later.
  6. *
  7. * See the COPYING-README file.
  8. *
  9. */
  10. (function(OC) {
  11. var NS_OWNCLOUD = 'http://owncloud.org/ns';
  12. /**
  13. * @class OCA.SystemTags.SystemTagsCollection
  14. * @classdesc
  15. *
  16. * System tag
  17. *
  18. */
  19. var SystemTagModel = OC.Backbone.Model.extend(
  20. /** @lends OCA.SystemTags.SystemTagModel.prototype */ {
  21. sync: OC.Backbone.davSync,
  22. defaults: {
  23. userVisible: true,
  24. userAssignable: true,
  25. canAssign: true
  26. },
  27. davProperties: {
  28. 'id': '{' + NS_OWNCLOUD + '}id',
  29. 'name': '{' + NS_OWNCLOUD + '}display-name',
  30. 'userVisible': '{' + NS_OWNCLOUD + '}user-visible',
  31. 'userAssignable': '{' + NS_OWNCLOUD + '}user-assignable',
  32. // read-only, effective permissions computed by the server,
  33. 'canAssign': '{' + NS_OWNCLOUD + '}can-assign'
  34. },
  35. parse: function(data) {
  36. return {
  37. id: data.id,
  38. name: data.name,
  39. userVisible: data.userVisible === true || data.userVisible === 'true',
  40. userAssignable: data.userAssignable === true || data.userAssignable === 'true',
  41. canAssign: data.canAssign === true || data.canAssign === 'true'
  42. };
  43. }
  44. });
  45. OC.SystemTags = OC.SystemTags || {};
  46. OC.SystemTags.SystemTagModel = SystemTagModel;
  47. })(OC);