summaryrefslogtreecommitdiff
path: root/frontend/beta/js/Clipperz/PM/Components/RecordDetail/FieldTypeComponent.js
Unidiff
Diffstat (limited to 'frontend/beta/js/Clipperz/PM/Components/RecordDetail/FieldTypeComponent.js') (more/less context) (ignore whitespace changes)
-rw-r--r--frontend/beta/js/Clipperz/PM/Components/RecordDetail/FieldTypeComponent.js22
1 files changed, 10 insertions, 12 deletions
diff --git a/frontend/beta/js/Clipperz/PM/Components/RecordDetail/FieldTypeComponent.js b/frontend/beta/js/Clipperz/PM/Components/RecordDetail/FieldTypeComponent.js
index 489258a..3108885 100644
--- a/frontend/beta/js/Clipperz/PM/Components/RecordDetail/FieldTypeComponent.js
+++ b/frontend/beta/js/Clipperz/PM/Components/RecordDetail/FieldTypeComponent.js
@@ -1,154 +1,152 @@
1/* 1/*
2 2
3Copyright 2008-2011 Clipperz Srl 3Copyright 2008-2013 Clipperz Srl
4 4
5This file is part of Clipperz Community Edition. 5This file is part of Clipperz, the online password manager.
6Clipperz Community Edition is an online password manager.
7For further information about its features and functionalities please 6For further information about its features and functionalities please
8refer to http://www.clipperz.com. 7refer to http://www.clipperz.com.
9 8
10* Clipperz Community Edition is free software: you can redistribute 9* Clipperz is free software: you can redistribute it and/or modify it
11 it and/or modify it under the terms of the GNU Affero General Public 10 under the terms of the GNU Affero General Public License as published
12 License as published by the Free Software Foundation, either version 11 by the Free Software Foundation, either version 3 of the License, or
13 3 of the License, or (at your option) any later version. 12 (at your option) any later version.
14 13
15* Clipperz Community Edition is distributed in the hope that it will 14* Clipperz is distributed in the hope that it will be useful, but
16 be useful, but WITHOUT ANY WARRANTY; without even the implied 15 WITHOUT ANY WARRANTY; without even the implied warranty of
17 warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 16 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
18 See the GNU Affero General Public License for more details. 17 See the GNU Affero General Public License for more details.
19 18
20* You should have received a copy of the GNU Affero General Public 19* You should have received a copy of the GNU Affero General Public
21 License along with Clipperz Community Edition. If not, see 20 License along with Clipperz. If not, see http://www.gnu.org/licenses/.
22 <http://www.gnu.org/licenses/>.
23 21
24*/ 22*/
25 23
26if (typeof(Clipperz) == 'undefined') { Clipperz = {}; } 24if (typeof(Clipperz) == 'undefined') { Clipperz = {}; }
27if (typeof(Clipperz.PM) == 'undefined') { Clipperz.PM = {}; } 25if (typeof(Clipperz.PM) == 'undefined') { Clipperz.PM = {}; }
28if (typeof(Clipperz.PM.Components) == 'undefined') { Clipperz.PM.Components = {}; } 26if (typeof(Clipperz.PM.Components) == 'undefined') { Clipperz.PM.Components = {}; }
29if (typeof(Clipperz.PM.Components.RecordDetail) == 'undefined') { Clipperz.PM.Components.RecordDetail = {}; } 27if (typeof(Clipperz.PM.Components.RecordDetail) == 'undefined') { Clipperz.PM.Components.RecordDetail = {}; }
30 28
31//############################################################################# 29//#############################################################################
32 30
33Clipperz.PM.Components.RecordDetail.FieldTypeComponent = function(anElement, args) { 31Clipperz.PM.Components.RecordDetail.FieldTypeComponent = function(anElement, args) {
34 args = args || {}; 32 args = args || {};
35 33
36 Clipperz.PM.Components.RecordDetail.FieldTypeComponent.superclass.constructor.call(this, anElement, args); 34 Clipperz.PM.Components.RecordDetail.FieldTypeComponent.superclass.constructor.call(this, anElement, args);
37 35
38 this._inputElement = null; 36 this._inputElement = null;
39 37
40 this.render(); 38 this.render();
41 39
42 return this; 40 return this;
43} 41}
44 42
45//============================================================================= 43//=============================================================================
46 44
47YAHOO.extendX(Clipperz.PM.Components.RecordDetail.FieldTypeComponent, Clipperz.PM.Components.RecordDetail.AbstractFieldSubComponent, { 45YAHOO.extendX(Clipperz.PM.Components.RecordDetail.FieldTypeComponent, Clipperz.PM.Components.RecordDetail.AbstractFieldSubComponent, {
48 46
49 'toString': function() { 47 'toString': function() {
50 return "Clipperz.PM.Components.RecordDetail.FieldTypeComponent component"; 48 return "Clipperz.PM.Components.RecordDetail.FieldTypeComponent component";
51 }, 49 },
52 50
53 //------------------------------------------------------------------------- 51 //-------------------------------------------------------------------------
54 52
55 'inputElement': function() { 53 'inputElement': function() {
56 return this._inputElement; 54 return this._inputElement;
57 }, 55 },
58 56
59 'setInputElement': function(aValue) { 57 'setInputElement': function(aValue) {
60 this._inputElement = aValue; 58 this._inputElement = aValue;
61 }, 59 },
62 60
63 //------------------------------------------------------------------------- 61 //-------------------------------------------------------------------------
64 62
65 'value': function() { 63 'value': function() {
66 return this.recordField().type(); 64 return this.recordField().type();
67 }, 65 },
68 66
69 'canChangeType': function() { 67 'canChangeType': function() {
70 var value; 68 var value;
71 var result; 69 var result;
72 70
73 value = this.value(); 71 value = this.value();
74 result = ((value == 'TXT') || (value == 'PWD') || (value == 'URL') || (value == 'DATE') || (value == 'ADDR')); 72 result = ((value == 'TXT') || (value == 'PWD') || (value == 'URL') || (value == 'DATE') || (value == 'ADDR'));
75 73
76 return result 74 return result
77 }, 75 },
78 76
79 //------------------------------------------------------------------------- 77 //-------------------------------------------------------------------------
80 78
81 'updateViewMode': function() { 79 'updateViewMode': function() {
82 this.element().update(""); 80 this.element().update("");
83 if (this.canChangeType()) { 81 if (this.canChangeType()) {
84 varwidth; 82 varwidth;
85 var element; 83 var element;
86 84
87 width = this.element().getWidth(true); 85 width = this.element().getWidth(true);
88 element = Clipperz.YUI.DomHelper.append(this.element().dom, {tag:'div', html:this.recordField().typeShortDescription()}, true); 86 element = Clipperz.YUI.DomHelper.append(this.element().dom, {tag:'div', html:this.recordField().typeShortDescription()}, true);
89 element.setWidth(width-1); 87 element.setWidth(width-1);
90 } 88 }
91 }, 89 },
92 90
93 //------------------------------------------------------------------------- 91 //-------------------------------------------------------------------------
94 92
95 'updateEditMode': function() { 93 'updateEditMode': function() {
96 this.element().update(""); 94 this.element().update("");
97 95
98 if (this.canChangeType()) { 96 if (this.canChangeType()) {
99 varwidth; 97 varwidth;
100 98
101 width = this.element().getWidth(true); 99 width = this.element().getWidth(true);
102 this.setInputElement(Clipperz.YUI.DomHelper.append(this.element().dom, {tag:'select', children:[ 100 this.setInputElement(Clipperz.YUI.DomHelper.append(this.element().dom, {tag:'select', children:[
103 {tag:'option', value:'TXT', htmlString:Clipperz.PM.Strings['recordFieldTypologies']['TXT']['shortDescription']}, 101 {tag:'option', value:'TXT', htmlString:Clipperz.PM.Strings['recordFieldTypologies']['TXT']['shortDescription']},
104 {tag:'option', value:'PWD', htmlString:Clipperz.PM.Strings['recordFieldTypologies']['PWD']['shortDescription']}, 102 {tag:'option', value:'PWD', htmlString:Clipperz.PM.Strings['recordFieldTypologies']['PWD']['shortDescription']},
105 {tag:'option', value:'URL', htmlString:Clipperz.PM.Strings['recordFieldTypologies']['URL']['shortDescription']}, 103 {tag:'option', value:'URL', htmlString:Clipperz.PM.Strings['recordFieldTypologies']['URL']['shortDescription']},
106 {tag:'option', value:'DATE', htmlString:Clipperz.PM.Strings['recordFieldTypologies']['DATE']['shortDescription']}, 104 {tag:'option', value:'DATE', htmlString:Clipperz.PM.Strings['recordFieldTypologies']['DATE']['shortDescription']},
107 {tag:'option', value:'ADDR', htmlString:Clipperz.PM.Strings['recordFieldTypologies']['ADDR']['shortDescription']} 105 {tag:'option', value:'ADDR', htmlString:Clipperz.PM.Strings['recordFieldTypologies']['ADDR']['shortDescription']}
108 106
109 // {tag:'option', value:'CHECK', html:Clipperz.PM.DataModel.RecordField.TypeDescriptions['CHECK']['shortDescription']}, 107 // {tag:'option', value:'CHECK', html:Clipperz.PM.DataModel.RecordField.TypeDescriptions['CHECK']['shortDescription']},
110 // {tag:'option', value:'RADIO', html:Clipperz.PM.DataModel.RecordField.TypeDescriptions['RADIO']['shortDescription']}, 108 // {tag:'option', value:'RADIO', html:Clipperz.PM.DataModel.RecordField.TypeDescriptions['RADIO']['shortDescription']},
111 // {tag:'option', value:'CHECK', html:Clipperz.PM.DataModel.RecordField.TypeDescriptions['SELECT']['shortDescription']} 109 // {tag:'option', value:'CHECK', html:Clipperz.PM.DataModel.RecordField.TypeDescriptions['SELECT']['shortDescription']}
112 // {tag:'option', value:'NOTE', html:Clipperz.PM.DataModel.RecordField.TypeDescriptions['NOTE']['shortDescription']} 110 // {tag:'option', value:'NOTE', html:Clipperz.PM.DataModel.RecordField.TypeDescriptions['NOTE']['shortDescription']}
113 ]}, true)); 111 ]}, true));
114 this.inputElement().setWidth(width-1); 112 this.inputElement().setWidth(width-1);
115 this.inputElement().addHandler('change', true, this.onChange, this, true); 113 this.inputElement().addHandler('change', true, this.onChange, this, true);
116 // this.selectCorrectOption(); 114 // this.selectCorrectOption();
117 Clipperz.DOM.selectOptionMatchingValue(this.inputElement().dom, this.value()); 115 Clipperz.DOM.selectOptionMatchingValue(this.inputElement().dom, this.value());
118 } 116 }
119 }, 117 },
120 118
121 //------------------------------------------------------------------------- 119 //-------------------------------------------------------------------------
122 120
123 'onChange': function() { 121 'onChange': function() {
124 this.synchronizeComponentValues(); 122 this.synchronizeComponentValues();
125 this.fieldComponent().valueComponent().handleTypeChange(); 123 this.fieldComponent().valueComponent().handleTypeChange();
126 }, 124 },
127 125
128 //------------------------------------------------------------------------- 126 //-------------------------------------------------------------------------
129/* 127/*
130 'selectCorrectOption': function() { 128 'selectCorrectOption': function() {
131 varoptions; 129 varoptions;
132 var i,c; 130 var i,c;
133 131
134 options = this.inputElement().getChildrenByTagName('option'); 132 options = this.inputElement().getChildrenByTagName('option');
135 c = options.length; 133 c = options.length;
136 for (i=0; i<c; i++) { 134 for (i=0; i<c; i++) {
137 if (options[i].dom.value == this.value()) { 135 if (options[i].dom.value == this.value()) {
138 options[i].dom.selected = true; 136 options[i].dom.selected = true;
139 } 137 }
140 } 138 }
141 }, 139 },
142 */ 140 */
143 //------------------------------------------------------------------------- 141 //-------------------------------------------------------------------------
144 142
145 'synchronizeComponentValues': function() { 143 'synchronizeComponentValues': function() {
146 if (this.inputElement() != null) { 144 if (this.inputElement() != null) {
147 this.recordField().setType(this.inputElement().dom.value); 145 this.recordField().setType(this.inputElement().dom.value);
148 } 146 }
149 }, 147 },
150 148
151 //------------------------------------------------------------------------- 149 //-------------------------------------------------------------------------
152 __syntaxFix__: "syntax fix" 150 __syntaxFix__: "syntax fix"
153}); 151});
154 152