66import com .logicaldoc .gui .common .client .i18n .I18N ;
77import com .logicaldoc .gui .common .client .util .GridUtil ;
88import com .logicaldoc .gui .common .client .util .LD ;
9- import com .logicaldoc .gui .common .client .util .Util ;
109import com .logicaldoc .gui .common .client .widgets .HTMLPanel ;
1110import com .logicaldoc .gui .common .client .widgets .InfoPanel ;
11+ import com .logicaldoc .gui .common .client .widgets .grid .EnabledListGridField ;
1212import com .logicaldoc .gui .common .client .widgets .grid .RefreshableListGrid ;
1313import com .logicaldoc .gui .frontend .client .administration .AdminPanel ;
1414import com .logicaldoc .gui .frontend .client .impex .folders .ImportFolderDetailsPanel ;
1515import com .logicaldoc .gui .frontend .client .services .RetentionPoliciesService ;
1616import com .smartgwt .client .data .AdvancedCriteria ;
1717import com .smartgwt .client .data .Record ;
1818import com .smartgwt .client .types .Alignment ;
19- import com .smartgwt .client .types .ListGridFieldType ;
2019import com .smartgwt .client .types .OperatorId ;
2120import com .smartgwt .client .types .SelectionStyle ;
2221import com .smartgwt .client .widgets .Canvas ;
@@ -91,14 +90,7 @@ public void onDraw() {
9190
9291 ListGridField action = prepareActionField ();
9392
94- ListGridField enabled = new ListGridField (EENABLED , " " , 24 );
95- enabled .setType (ListGridFieldType .IMAGE );
96- enabled .setCanSort (false );
97- enabled .setAlign (Alignment .CENTER );
98- enabled .setShowDefaultContextMenu (false );
99- enabled .setImageURLPrefix (Util .imagePrefix ());
100- enabled .setImageURLSuffix (".gif" );
101- enabled .setCanFilter (false );
93+ ListGridField enabled = new EnabledListGridField ();
10294
10395 list = new RefreshableListGrid ();
10496 list .setEmptyMessage (I18N .message ("notitemstoshow" ));
@@ -231,31 +223,29 @@ public void onSuccess(Void result) {
231223
232224 MenuItem enable = new MenuItem ();
233225 enable .setTitle (I18N .message ("enable" ));
226+ enable .setEnabled (!rec .getAttributeAsBoolean ("eenabled" ));
234227 enable .addClickHandler (event -> RetentionPoliciesService .Instance .get ()
235228 .changeStatus (Long .parseLong (rec .getAttributeAsString ("id" )), true , new DefaultAsyncCallback <>() {
236229 @ Override
237230 public void onSuccess (Void result ) {
238- rec .setAttribute (EENABLED , "0" );
231+ rec .setAttribute (EENABLED , true );
239232 list .refreshRow (list .getRecordIndex (rec ));
240233 }
241234 }));
242235
243236 MenuItem disable = new MenuItem ();
244237 disable .setTitle (I18N .message ("disable" ));
238+ disable .setEnabled (rec .getAttributeAsBoolean ("eenabled" ));
245239 disable .addClickHandler (event -> RetentionPoliciesService .Instance .get ()
246240 .changeStatus (Long .parseLong (rec .getAttributeAsString ("id" )), false , new DefaultAsyncCallback <>() {
247241 @ Override
248242 public void onSuccess (Void result ) {
249- rec .setAttribute (EENABLED , "2" );
243+ rec .setAttribute (EENABLED , false );
250244 list .refreshRow (list .getRecordIndex (rec ));
251245 }
252246 }));
253247
254- if ("0" .equals (rec .getAttributeAsString (EENABLED )))
255- contextMenu .setItems (disable , delete );
256- else
257- contextMenu .setItems (enable , delete );
258-
248+ contextMenu .setItems (enable , disable , delete );
259249 contextMenu .showContextMenu ();
260250 }
261251
@@ -293,6 +283,7 @@ public void updateRecord(GUIRetentionPolicy policy) {
293283 rec .setAttribute (TEMPLATE , policy .getTemplateName () != null ? policy .getTemplateName () : null );
294284 rec .setAttribute ("position" , "" + policy .getPosition ());
295285 rec .setAttribute (ACTION , "" + policy .getAction ());
286+ rec .setAttribute ("eenabled" , policy .getEnabled () == 1 );
296287
297288 list .refreshRow (list .getRecordIndex (rec ));
298289 }
@@ -303,7 +294,7 @@ public void refresh() {
303294 details = SELECT_POLICY ;
304295 detailsContainer .setMembers (details );
305296 }
306-
297+
307298 @ Override
308299 public boolean equals (Object other ) {
309300 return super .equals (other );
0 commit comments