summaryrefslogtreecommitdiff
path: root/frontend/gamma/js/Clipperz/PM/UI/Web/Controllers/DirectLoginsController.js
Side-by-side diff
Diffstat (limited to 'frontend/gamma/js/Clipperz/PM/UI/Web/Controllers/DirectLoginsController.js') (more/less context) (ignore whitespace changes)
-rw-r--r--frontend/gamma/js/Clipperz/PM/UI/Web/Controllers/DirectLoginsController.js145
1 files changed, 145 insertions, 0 deletions
diff --git a/frontend/gamma/js/Clipperz/PM/UI/Web/Controllers/DirectLoginsController.js b/frontend/gamma/js/Clipperz/PM/UI/Web/Controllers/DirectLoginsController.js
new file mode 100644
index 0000000..28401a2
--- a/dev/null
+++ b/frontend/gamma/js/Clipperz/PM/UI/Web/Controllers/DirectLoginsController.js
@@ -0,0 +1,145 @@
+/*
+
+Copyright 2008-2011 Clipperz Srl
+
+This file is part of Clipperz's Javascript Crypto Library.
+Javascript Crypto Library provides web developers with an extensive
+and efficient set of cryptographic functions. The library aims to
+obtain maximum execution speed while preserving modularity and
+reusability.
+For further information about its features and functionalities please
+refer to http://www.clipperz.com
+
+* Javascript Crypto Library is free software: you can redistribute
+ it and/or modify it under the terms of the GNU Affero General Public
+ License as published by the Free Software Foundation, either version
+ 3 of the License, or (at your option) any later version.
+
+* Javascript Crypto Library is distributed in the hope that it will
+ be useful, but WITHOUT ANY WARRANTY; without even the implied
+ warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+ See the GNU Affero General Public License for more details.
+
+* You should have received a copy of the GNU Affero General Public
+ License along with Javascript Crypto Library. If not, see
+ <http://www.gnu.org/licenses/>.
+
+*/
+
+/*
+Clipperz.Base.module('Clipperz.PM.UI.Web.Controllers');
+
+Clipperz.PM.UI.Web.Controllers.DirectLoginsController = function() {
+ Clipperz.PM.UI.Web.Controllers.DirectLoginsController.superclass.constructor.apply(this, arguments);
+
+ return this;
+};
+
+Clipperz.Base.extend(Clipperz.PM.UI.Web.Controllers.DirectLoginsController, Clipperz.PM.UI.Web.Controllers.GridController, {
+
+ 'createGrid': function () {
+ return new Clipperz.PM.UI.Web.Components.GridComponent({columnsManagers: [
+ new Clipperz.PM.UI.Web.Components.FaviconColumnManager({
+ 'name': 'DirectLogins.favicon',
+ 'selector': MochiKit.Base.methodcaller('favicon'),
+ 'cssClass': 'favicon'
+ }),
+// new Clipperz.PM.UI.Web.Components.LinkColumnManager({
+ new Clipperz.PM.UI.Web.Components.DirectLoginColumnManager({
+ 'name': 'DirectLogins.title',
+ 'selector': MochiKit.Base.methodcaller('label'),
+ 'label': 'title',
+ 'cssClass': 'title',
+ 'comparator': Clipperz.Base.caseInsensitiveCompare,
+ 'sortable': true,
+ 'sorted': 'ASCENDING',
+ 'actionMethod': MochiKit.Base.methodcaller('runDirectLogin')
+ }),
+// new Clipperz.PM.UI.Web.Components.TextColumnManager({ //should be StrengthColumnManager
+// 'label': 'strength',
+// 'cssClass': 'title',
+// 'selector': MochiKit.Base.methodcaller('label') //should be 'strength' or a strenght evaluation function
+// }),
+ new Clipperz.PM.UI.Web.Components.LinkColumnManager({
+ 'name': 'DirectLogins.cardTitle',
+ 'selector': MochiKit.Base.compose(MochiKit.Base.methodcaller('label'), MochiKit.Base.methodcaller('record')),
+ 'label': 'card',
+ 'cssClass': 'cardTitle',
+ 'comparator': Clipperz.Base.caseInsensitiveCompare,
+ 'sortable': true,
+ 'sorted': 'UNSORTED',
+ 'actionMethod': MochiKit.Base.method(this, 'handleShowCard')
+ }),
+// new Clipperz.PM.UI.Web.Components.TextColumnManager({ //should be StrengthColumnManager
+// 'label': 'last access',
+// 'cssClass': 'title',
+// 'selector': MochiKit.Base.methodcaller('label')
+// // 'sortable': true,
+// // 'sorted': 'UNSORTED'
+// }),
+// new Clipperz.PM.UI.Web.Components.TextColumnManager({
+// 'label': 'commands',
+// 'cssClass': 'title',
+// 'selector': MochiKit.Base.methodcaller('label'), //should be a function for commands display
+// }),
+ new Clipperz.PM.UI.Web.Components.DeleteObjectColumnManager({
+ 'name': 'DirectLogins.delete',
+ 'selector': MochiKit.Base.noop,
+ 'cssClass': 'delete',
+// 'actionMethod': function(anObject, anEvent) { MochiKit.Signal.signal(Clipperz.Signal.NotificationCenter, 'deleteDirectLogin', {objectData:anObject, element:anEvent.src()})}
+ 'actionMethod': MochiKit.Base.method(this, 'handleDeleteDirectLogin')
+ })
+ ]});
+
+ },
+
+ //-----------------------------------------------------------------------------
+
+ 'getRows': function () {
+ // TODO: relying on user() in GridController, bad code smell :|
+ return this.user().getDirectLogins();
+ },
+
+ //-----------------------------------------------------------------------------
+
+ 'handleShowCard': function (anObject, anEvent) {
+ var cardDialogController;
+
+ cardDialogController = new Clipperz.PM.UI.Web.Controllers.CardDialogController({record:anObject.record()})
+ cardDialogController.run(anEvent.src());
+ },
+
+ //-----------------------------------------------------------------------------
+
+ 'handleDeleteDirectLogin': function (anObject, anEvent) {
+ var deferredResult;
+ var confirmationDialog;
+
+ confirmationDialog = new Clipperz.PM.UI.Common.Components.SimpleMessagePanel({
+ title: "Delete DirectLogin",
+ text: "Do you want to delete …",
+ type: 'ALERT',
+ buttons: [
+ {text:"Cancel", result:'CANCEL', isDefault:true},
+ {text:"Delete", result:'OK'}
+ ]
+ });
+
+ deferredResult = new Clipperz.Async.Deferred("AppController.handleDeleteCard", {trace:false});
+// deferredResult = confirmationDialog.deferredShow({openFromElement:anEvent.src(), onOkCloseToElement:MochiKit.DOM.currentDocument().body, onCancelCloseToElement:anEvent.src()});
+ deferredResult.addMethod(confirmationDialog, 'deferredShow', {
+ 'openFromElement': anEvent.src(),
+ 'onOkCloseToElement': null, // MochiKit.DOM.currentDocument().body,
+ 'onCancelCloseToElement': anEvent.src()
+ });
+ deferredResult.addCallback(function () { Clipperz.log("DELETE: " + anObject.toString(), anObject); });
+ deferredResult.addErrbackPass(function () { Clipperz.log("skip deletion: " + anObject.toString(), anObject); });
+ deferredResult.callback();
+
+ return deferredResult;
+ },
+
+ //-----------------------------------------------------------------------------
+ __syntaxFix__: "syntax fix"
+});
+*/ \ No newline at end of file