From 2380890428a12f8b415430add931a56d7cb479dc Mon Sep 17 00:00:00 2001 From: Francis Lachapelle Date: Tue, 9 Feb 2016 14:29:15 -0500 Subject: [PATCH] (js) Allow mail filters to be sortable Added dependency to https://github.com/RubaXa/Sortable --- NEWS | 1 + UI/Templates/PreferencesUI/UIxPreferences.wox | 11 ++++++----- UI/WebServerResources/Gruntfile.js | 11 ++++++++++- UI/WebServerResources/bower.json | 1 + .../js/Preferences/Preferences.app.js | 2 +- .../scss/components/list/list.scss | 15 +++++++++++++++ 6 files changed, 34 insertions(+), 7 deletions(-) diff --git a/NEWS b/NEWS index 6be09f19f..deb58e3a3 100644 --- a/NEWS +++ b/NEWS @@ -5,6 +5,7 @@ Enhancements - [web] added Junk handling feature from v2 - [web] updated Material Icons font to version 2.1.3 - [web] don't offer forward/vacation options in filters if not enabled + - [web] mail filters are now sortable Bug fixes - [web] handle birthday dates before 1970 diff --git a/UI/Templates/PreferencesUI/UIxPreferences.wox b/UI/Templates/PreferencesUI/UIxPreferences.wox index 57d751225..8c16d575c 100644 --- a/UI/Templates/PreferencesUI/UIxPreferences.wox +++ b/UI/Templates/PreferencesUI/UIxPreferences.wox @@ -8,7 +8,7 @@ xmlns:label="OGo:label" className="UIxPageFrame" title="title" - const:jsFiles="Common.js, Preferences.js, Preferences.services.js, Mailer.services.js, Contacts.services.js, vendor/ckeditor/ckeditor.js, vendor/ckeditor/ck.js"> + const:jsFiles="Common.js, vendor/ng-sortable.js, Preferences.js, Preferences.services.js, Mailer.services.js, Contacts.services.js, vendor/ckeditor/ckeditor.js, vendor/ckeditor/ck.js">
@@ -612,11 +612,12 @@
-
+
+ ng-repeat="item in app.preferences.defaults.SOGoSieveFilters track by $index"> + + drag_handle + =2.4.2" }, "resolutions": { diff --git a/UI/WebServerResources/js/Preferences/Preferences.app.js b/UI/WebServerResources/js/Preferences/Preferences.app.js index e3c6bd9c3..cf8b8e6fc 100644 --- a/UI/WebServerResources/js/Preferences/Preferences.app.js +++ b/UI/WebServerResources/js/Preferences/Preferences.app.js @@ -4,7 +4,7 @@ (function() { 'use strict'; - angular.module('SOGo.PreferencesUI', ['ui.router', 'ck', 'SOGo.Common', 'SOGo.MailerUI', 'SOGo.ContactsUI', 'SOGo.Authentication']) + angular.module('SOGo.PreferencesUI', ['ui.router', 'ck', 'SOGo.Common', 'SOGo.MailerUI', 'SOGo.ContactsUI', 'SOGo.Authentication', 'ng-sortable']) .config(configure) .run(runBlock); diff --git a/UI/WebServerResources/scss/components/list/list.scss b/UI/WebServerResources/scss/components/list/list.scss index 8b1134a9d..6d5093b00 100644 --- a/UI/WebServerResources/scss/components/list/list.scss +++ b/UI/WebServerResources/scss/components/list/list.scss @@ -202,6 +202,21 @@ div.md-tile-left { margin: 1px 2px; } } + + /* Classes for ng-sortable */ + &-sortable-grip { + &:hover { + cursor: move; + } + } + + &-sortable-ghost { + opacity: 0.5; + } + + &-sortable-chosen { + background-color: white; + } } .card-picture {