dhis2-devs team mailing list archive
-
dhis2-devs team
-
Mailing list archive
-
Message #26332
[Branch ~dhis2-devs-core/dhis2/trunk] Rev 13046: implement context menus instead of icons in datadictionary-module, wip
------------------------------------------------------------
revno: 13046
committer: Morten Olav Hansen <mortenoh@xxxxxxxxx>
branch nick: dhis2
timestamp: Thu 2013-11-28 11:34:47 +0100
message:
implement context menus instead of icons in datadictionary-module, wip
modified:
dhis-2/dhis-web/dhis-web-commons-resources/src/main/webapp/dhis-web-commons/javascripts/commons.js
dhis-2/dhis-web/dhis-web-commons-resources/src/main/webapp/dhis-web-commons/javascripts/dhis2/dhis2.contextmenu.js
dhis-2/dhis-web/dhis-web-commons-resources/src/main/webapp/dhis-web-commons/javascripts/dhis2/dhis2.sharing.js
dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/resources/struts.xml
dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/dataDictionary.vm
dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/dataElement.vm
dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/dataElementGroup.vm
dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/dataElementGroupSet.vm
dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/indicator.vm
dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/indicatorGroup.vm
dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/indicatorGroupSet.vm
dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/indicatorType.vm
dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/javascript/category.js
dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/javascript/categoryCombo.js
dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/javascript/dataDictionary.js
dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/javascript/dataElement.js
dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/javascript/dataElementGroup.js
dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/javascript/dataElementGroupSet.js
dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/javascript/indicator.js
dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/javascript/indicatorGroup.js
dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/javascript/indicatorGroupSet.js
dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/multidimensional/category.vm
dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/multidimensional/categoryCombo.vm
dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/multidimensional/categoryOption.vm
dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/multidimensional/concept.vm
--
lp:dhis2
https://code.launchpad.net/~dhis2-devs-core/dhis2/trunk
Your team DHIS 2 developers is subscribed to branch lp:dhis2.
To unsubscribe from this branch go to https://code.launchpad.net/~dhis2-devs-core/dhis2/trunk/+edit-subscription
=== modified file 'dhis-2/dhis-web/dhis-web-commons-resources/src/main/webapp/dhis-web-commons/javascripts/commons.js'
--- dhis-2/dhis-web/dhis-web-commons-resources/src/main/webapp/dhis-web-commons/javascripts/commons.js 2013-11-20 14:47:27 +0000
+++ dhis-2/dhis-web/dhis-web-commons-resources/src/main/webapp/dhis-web-commons/javascripts/commons.js 2013-11-28 10:34:47 +0000
@@ -83,7 +83,16 @@
/**
* Redirects to the translate GUI.
- *
+ *
+ * @param context Context vars from context menu
+ */
+function translateWithContext( context ) {
+ translate( context.type, context.id );
+}
+
+/**
+ * Redirects to the translate GUI.
+ *
* @param className the name of the object class.
* @param objectId the identifier of the object.
*/
=== modified file 'dhis-2/dhis-web/dhis-web-commons-resources/src/main/webapp/dhis-web-commons/javascripts/dhis2/dhis2.contextmenu.js'
--- dhis-2/dhis-web/dhis-web-commons-resources/src/main/webapp/dhis-web-commons/javascripts/dhis2/dhis2.contextmenu.js 2013-11-27 17:34:02 +0000
+++ dhis-2/dhis-web/dhis-web-commons-resources/src/main/webapp/dhis-web-commons/javascripts/dhis2/dhis2.contextmenu.js 2013-11-28 10:34:47 +0000
@@ -49,7 +49,7 @@
listId: 'list',
menuId: 'menu',
menuItemActiveClass: 'menuItemActive',
- listItemProps: ['id', 'uid', 'name'],
+ listItemProps: ['id', 'uid', 'name', 'type'],
functionResolver: dhis2.contextmenu.utils.findFnInWindowScope
};
=== modified file 'dhis-2/dhis-web/dhis-web-commons-resources/src/main/webapp/dhis-web-commons/javascripts/dhis2/dhis2.sharing.js'
--- dhis-2/dhis-web/dhis-web-commons-resources/src/main/webapp/dhis-web-commons/javascripts/dhis2/dhis2.sharing.js 2013-08-13 13:44:04 +0000
+++ dhis-2/dhis-web/dhis-web-commons-resources/src/main/webapp/dhis-web-commons/javascripts/dhis2/dhis2.sharing.js 2013-11-28 10:34:47 +0000
@@ -140,6 +140,12 @@
return v;
}
+function showSharingDialogWithContext( context ) {
+ // context always give type which starts with UpperCase
+ var type = context.type.charAt(0).toLowerCase() + context.type.slice(1);
+ showSharingDialog( type, context.uid );
+}
+
function showSharingDialog( type, uid ) {
loadSharingSettings( type, uid ).done( function ( data ) {
setPublicAccess( data.object.publicAccess );
=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/resources/struts.xml'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/resources/struts.xml 2013-10-13 16:15:28 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/resources/struts.xml 2013-11-28 10:34:47 +0000
@@ -457,7 +457,6 @@
<action name="showAddIndicatorTypeForm" class="org.hisp.dhis.dd.action.NoAction">
<result name="success" type="velocity">/main.vm</result>
<param name="page">/dhis-web-maintenance-datadictionary/addIndicatorTypeForm.vm</param>
- <param name="javascripts">javascript/indicatorType.js</param>
<param name="requiredAuthorities">F_INDICATORTYPE_ADD</param>
</action>
@@ -469,7 +468,6 @@
<action name="showUpdateIndicatorTypeForm" class="org.hisp.dhis.dd.action.indicatortype.GetIndicatorTypeAction">
<result name="success" type="velocity">/main.vm</result>
<param name="page">/dhis-web-maintenance-datadictionary/updateIndicatorTypeForm.vm</param>
- <param name="javascripts">javascript/indicatorType.js</param>
<param name="requiredAuthorities">F_INDICATORTYPE_ADD</param>
</action>
=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/dataDictionary.vm'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/dataDictionary.vm 2013-06-29 14:16:34 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/dataDictionary.vm 2013-11-28 10:34:47 +0000
@@ -14,6 +14,16 @@
<h3>$i18n.getString( "data_dictionary_management" ) #openHelp( "dataDictionary" )</h3>
+<div id="contextMenu" class="contextMenu">
+ <ul id="contextMenuItems" class="contextMenuItems">
+ #if( $security.canManage( $dataDictionary ) )<li><a data-target-fn="showSharingDialogWithContext" href="#">$i18n.getString( "sharing_settings" )</a></li>#end
+ #if( $security.canUpdate( $dataDictionary ) )<li><a data-target-fn="showUpdateDataDictionaryForm" href="#">$i18n.getString( "edit" )</a></li>#end
+ #if( $security.canUpdate( $dataDictionary ) )<li><a data-target-fn="translateWithContext" href="#">$i18n.getString( "translation_translate" )</a></li>#end
+ #if( $security.canDelete( $dataDictionary ) )<li><a data-target-fn="removeDataDictionary" href="#">$i18n.getString( "remove" )</a></li>#end
+ <li><a data-target-fn="showDataDictionaryDetails" href="#">$i18n.getString( "show_details" )</a></li>
+ </ul>
+</div>
+
<table class="mainPageTable">
<tr>
<td style="vertical-align:top">
@@ -24,49 +34,18 @@
</tr>
</table>
<table class="listTable" id="listTable">
- <col/>
- <col width="145px"/>
- <thead>
+ <thead>
<tr>
<th>$i18n.getString( "name" )</th>
- <th class="{sorter: false}">$i18n.getString( "operations" )</th>
</tr>
- </thead>
+ </thead>
<tbody id="list">
#foreach( $dataDictionary in $dataDictionaries )
-
- <tr id="tr${dataDictionary.id}">
- <td onclick="showDataDictionaryDetails( $dataDictionary.id )">$encoder.htmlEncode( $dataDictionary.name )</td>
- <td style="text-align:right">
-
- #if ( $security.canManage( $dataDictionary ) )
- <a href="javascript:showSharingDialog('dataDictionary', '$dataDictionary.uid');" title="$i18n.getString( 'sharing_settings' )"><img src="../images/relationship.png" alt="$i18n.getString( 'sharing_settings' )"></a>
- #else
- <img src="../images/relationship-denied.png">
- #end
-
- #if( $security.canUpdate( $dataDictionary ) )
- <a href="showUpdateDataDictionaryForm.action?id=$dataDictionary.id" title="$i18n.getString( 'edit' )"><img src="../images/edit.png" alt="$i18n.getString( 'edit' )"/></a>
- #else
- <img src="../images/edit-denied.png">
- #end
-
- #if( $security.canUpdate( $dataDictionary ) )
- <a href="javascript:translate( 'DataDictionary', '$dataDictionary.id' )"><img src="../images/i18n.png" alt="$i18n.getString( 'translation_translate' )"/></a>
- #else
- <img src="../images/i18n-denied.png">
- #end
-
- #if( $security.canDelete( $dataDictionary ) )
- <a href="javascript:removeDataDictionary( $dataDictionary.id, '$encoder.jsEncode( $dataDictionary.name )' )" title="$i18n.getString( 'remove' )"><img src="../images/delete.png" alt="$i18n.getString( 'remove' )"/></a>
- #else
- <img src="../images/delete-denied.png">
- #end
-
- <a href="javascript:showDataDictionaryDetails( $dataDictionary.id )" title="$i18n.getString( 'show_details' )"><img src="../images/information.png" alt="$i18n.getString( 'show_details' )"/></a>
- </td>
+ <tr id="tr${dataDictionary.id}" style="height: 40px;">
+ <td data-id="$!dataDictionary.id" data-uid="$!dataDictionary.uid" data-type="DataDictionary" data-name="$encoder.htmlEncode( $!dataDictionary.displayName )">
+ $encoder.htmlEncode( $!dataDictionary.displayName )
+ </td>
</tr>
-
#end
</tbody>
</table>
@@ -74,8 +53,8 @@
#parse( "/dhis-web-commons/paging/paging.vm" )
</td>
+
<td id="detailsData">
-
<div id="detailsArea">
<div id="hideDetailsArea">
<a href="javascript:hideDetails()" title="$i18n.getString( 'hide_details' )"><img src="../images/hide.png" alt="$i18n.getString( 'hide_details' )"/></a>
@@ -85,12 +64,12 @@
<p><label>$i18n.getString( "region" ):</label><br/><span id="regionField"></span></p>
</div>
- <div id="warningArea" style="position:fixed;right:10px;top:200px;display:none">
- <div id="hideDetailsArea">
- <a href="javascript:hideWarning()" title="$i18n.getString( 'hide_warning' )"><img src="../images/close.png" alt="$i18n.getString( 'hide_warning' )"/></a>
- </div>
- <p><span id="warningField"></span></p>
- </div>
+ <div id="warningArea" style="position:fixed;right:10px;top:200px;display:none">
+ <div id="hideDetailsArea">
+ <a href="javascript:hideWarning()" title="$i18n.getString( 'hide_warning' )"><img src="../images/close.png" alt="$i18n.getString( 'hide_warning' )"/></a>
+ </div>
+ <p><span id="warningField"></span></p>
+ </div>
</td>
</tr>
=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/dataElement.vm'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/dataElement.vm 2013-11-21 09:39:43 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/dataElement.vm 2013-11-28 10:34:47 +0000
@@ -30,6 +30,16 @@
<h3>$i18n.getString( "data_element_management" ) #openHelp( "dataElement" )</h3>
+<div id="contextMenu" class="contextMenu">
+ <ul id="contextMenuItems" class="contextMenuItems">
+ #if( $security.canManage( $dataElement ) )<li><a data-target-fn="showSharingDialogWithContext" href="#">$i18n.getString( "sharing_settings" )</a></li>#end
+ #if( $security.canUpdate( $dataElement ) )<li><a data-target-fn="showUpdateDataElementForm" href="#">$i18n.getString( "edit" )</a></li>#end
+ #if( $security.canUpdate( $dataElement ) )<li><a data-target-fn="translateWithContext" href="#">$i18n.getString( "translation_translate" )</a></li>#end
+ #if( $security.canDelete( $dataElement ) )<li><a data-target-fn="removeDataElement" href="#">$i18n.getString( "remove" )</a></li>#end
+ <li><a data-target-fn="showDataElementDetails" href="#">$i18n.getString( "show_details" )</a></li>
+ </ul>
+</div>
+
<table class="mainPageTable" >
<tr>
<td style="vertical-align:top">
@@ -53,50 +63,21 @@
</table>
<div id="content">
<table class="listTable" id="dataElementList">
- <col/>
- <col width="145px"/>
- <thead>
- <tr>
- <th>$i18n.getString( "name" )</th>
- <th class="{sorter: false}">$i18n.getString( "operations" )</th>
- </tr>
- </thead>
- <tbody id="list">
- #foreach( $dataElement in $dataElements )
- <tr id="tr${dataElement.id}">
- <td onclick="showDataElementDetails( $dataElement.id )">$encoder.htmlEncode( $dataElement.displayName )</td>
- <td style="text-align:right">
-
- #if ( $security.canManage( $dataElement ) )
- <a href="javascript:showSharingDialog('dataElement', '$dataElement.uid');" title="$i18n.getString( 'sharing_settings' )"><img src="../images/relationship.png" alt="$i18n.getString( 'sharing_settings' )"></a>
- #else
- <img src="../images/relationship-denied.png">
- #end
-
- #if( $security.canUpdate( $dataElement ) )
- <a href="showUpdateDataElementForm.action?id=$dataElement.id&update=true" title="$i18n.getString( 'edit' )"><img src="../images/edit.png" alt="$i18n.getString( 'edit' )"/></a>
- #else
- <img src="../images/edit-denied.png">
- #end
-
- #if( $security.canUpdate( $dataElement ) )
- <a href="javascript:translate( 'DataElement', '$dataElement.id' )" title="$i18n.getString( 'translation_translate' )"><img src="../images/i18n.png" alt="$i18n.getString( 'translation_translate' )"/></a>
- #else
- <img src="../images/edit-denied.png">
- #end
-
- #if( $security.canDelete( $dataElement ) )
- <a href="javascript:removeDataElement( $dataElement.id, '$encoder.jsEncode( $dataElement.displayName )' )" title="$i18n.getString( 'remove' )"><img src="../images/delete.png" alt="$i18n.getString( 'remove' )"/></a>
- #else
- <img src="../images/delete-denied.png">
- #end
-
- <a href="javascript:showDataElementDetails( $dataElement.id )" title="$i18n.getString( 'show_details' )"><img src="../images/information.png" alt="$i18n.getString( 'show_details' )"/></a>
- </td>
- </tr>
- #end
- </tbody>
- </table>
+ <thead>
+ <tr>
+ <th>$i18n.getString( "name" )</th>
+ </tr>
+ </thead>
+ <tbody id="list">
+ #foreach( $dataElement in $dataElements )
+ <tr id="tr${dataElement.id}" style="height: 40px;">
+ <td data-id="$!dataElement.id" data-uid="$!dataElement.uid" data-type="DataElement" data-name="$encoder.htmlEncode( $!dataElement.displayName )">
+ $encoder.htmlEncode( $!dataElement.displayName )
+ </td>
+ </tr>
+ #end
+ </tbody>
+ </table>
<p></p>
#parse( "/dhis-web-commons/paging/paging.vm" )
</div>
@@ -117,16 +98,16 @@
<p><label>$i18n.getString( "aggregation_operator" ):</label><br/><span id="aggregationOperatorField"></span></p>
<p><label>$i18n.getString( "category_combination" ):</label><br/><span id="categoryComboField"></span></p>
<p><label>$i18n.getString( "url" ):</label><br/><span id="urlField"></span></p>
- <p><label>$i18n.getString( "last_updated" ):</label><br/><span id="lastUpdatedField"></span></p>
- <p><label>$i18n.getString( "data_sets" ):</label><br/><span id="dataSetsField"></span></p>
+ <p><label>$i18n.getString( "last_updated" ):</label><br/><span id="lastUpdatedField"></span></p>
+ <p><label>$i18n.getString( "data_sets" ):</label><br/><span id="dataSetsField"></span></p>
</div>
- <div id="warningArea">
- <div id="hideDetailsArea">
- <a href="javascript:hideWarning()" title="$i18n.getString( 'hide_warning' )"><img src="../images/hide.png" alt="$i18n.getString( 'hide_warning' )"/></a>
- </div>
- <p><span id="warningField"></span></p>
- </div>
+ <div id="warningArea">
+ <div id="hideDetailsArea">
+ <a href="javascript:hideWarning()" title="$i18n.getString( 'hide_warning' )"><img src="../images/hide.png" alt="$i18n.getString( 'hide_warning' )"/></a>
+ </div>
+ <p><span id="warningField"></span></p>
+ </div>
</td>
</tr>
=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/dataElementGroup.vm'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/dataElementGroup.vm 2013-06-29 14:16:34 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/dataElementGroup.vm 2013-11-28 10:34:47 +0000
@@ -1,18 +1,25 @@
-#* #sharingDialog() *#
-
<script type="text/javascript">
jQuery(document).ready(function(){
tableSorter( 'dataElementGroupList' );
});
- var i18n_confirm_delete = '$encoder.jsEscape( $i18n.getString( "confirm_delete_data_element_group" ) , "'")';
+ var i18n_confirm_delete = '$encoder.jsEscape( $i18n.getString( "confirm_delete_data_element_group" ) , "'")';
var i18n_adding_data_element_group_failed = '$encoder.jsEscape( $i18n.getString( "adding_data_element_group_failed" ) , "'")';
var i18n_saving_data_element_group_failed = '$encoder.jsEscape( $i18n.getString( "saving_data_element_group_failed" ) , "'")';
</script>
<h3>$i18n.getString( "data_element_group_management" ) #openHelp( "dataElementGroup" )</h3>
+<div id="contextMenu" class="contextMenu">
+ <ul id="contextMenuItems" class="contextMenuItems">
+ <li><a data-target-fn="showUpdateDataElementGroupForm" href="#">$i18n.getString( "edit" )</a></li>
+ <li><a data-target-fn="translateWithContext" href="#">$i18n.getString( "translation_translate" )</a></li>
+ <li><a data-target-fn="removeDataElementGroup" href="#">$i18n.getString( "remove" )</a></li>
+ <li><a data-target-fn="showDataElementGroupDetails" href="#">$i18n.getString( "show_details" )</a></li>
+ </ul>
+</div>
+
<table class="mainPageTable">
<tr>
<td style="vertical-align:top">
@@ -24,51 +31,17 @@
</table>
<div id="content">
<table class="listTable" id="dataElementGroupList">
- <col/>
- <col width="145px"/>
- <thead>
+ <thead>
<tr>
<th>$i18n.getString( "name" )</th>
- <th class="{sorter: false}">$i18n.getString( "operations" )</th>
</tr>
</thead>
<tbody id="list">
#foreach( $dataElementGroup in $dataElementGroups )
- <tr id="tr${dataElementGroup.id}">
- <td onclick="showDataElementGroupDetails( $dataElementGroup.id )">$encoder.htmlEncode( $dataElementGroup.displayName )</td>
- <td style="text-align:right">
-
- #* #if ( $security.canManage( $dataElementGroup ) )
- <a href="javascript:showSharingDialog('dataElementGroup', '$dataElementGroup.uid');"><img src="../images/relationship.png" alt="$i18n.getString( 'sharing_settings' )"></a>
- #else
- <img src="../images/relationship-denied.png">
- #end *#
-
- #* #if( $security.canUpdate( $dataElementGroup ) ) *#
- <a href="showUpdateDataElementGroupForm.action?id=$dataElementGroup.id" title="$i18n.getString( 'edit' )"><img src="../images/edit.png" alt="$i18n.getString( 'edit' )"/></a>
- #*
- #else
- <img src="../images/edit-denied.png">
- #end *#
-
- #* #if( $security.canUpdate( $dataElementGroup ) ) *#
- <a href="javascript:translate( 'DataElementGroup', '$dataElementGroup.id' )"><img src="../images/i18n.png" alt="$i18n.getString( 'translation_translate' )"/></a>
- #*
- #else
- <img src="../images/i18n-denied.png">
- #end
- *#
-
- #* #if( $security.canDelete( $dataElementGroup ) ) *#
- <a href="javascript:removeDataElementGroup( $dataElementGroup.id, '$encoder.jsEncode( $dataElementGroup.displayName )' )" title="$i18n.getString( 'remove' )"><img src="../images/delete.png" alt="$i18n.getString( 'remove' )"/></a>
- #* #else
- <img src="../images/delete-denied.png">
- #end
- *#
-
- <a href="javascript:showDataElementGroupDetails( $dataElementGroup.id )" title="$i18n.getString( 'show_details' )"><img src="../images/information.png" alt="$i18n.getString( 'show_details' )"/></a>
-
- </td>
+ <tr id="tr${dataElementGroup.id}" style="height: 40px;">
+ <td data-id="$!dataElementGroup.id" data-uid="$!dataElementGroup.uid" data-type="DataElementGroup" data-name="$encoder.htmlEncode( $!dataElementGroup.displayName )">
+ $encoder.htmlEncode( $!dataElementGroup.displayName )
+ </td>
</tr>
#end
</tbody>
@@ -77,8 +50,8 @@
#parse( "/dhis-web-commons/paging/paging.vm" )
</div>
</td>
+
<td id="detailsData">
-
<div id="detailsArea">
<div id="hideDetailsArea">
<a href="javascript:hideDetails()" title="$i18n.getString( 'hide_details' )"><img src="../images/hide.png" alt="$i18n.getString( 'hide_details' )"/></a>
@@ -90,11 +63,11 @@
</div>
<div id="warningArea">
- <div id="hideDetailsArea">
- <a href="javascript:hideWarning()" title="$i18n.getString( 'hide_warning' )"><img src="../images/hide.png" alt="$i18n.getString( 'hide_warning' )"/></a>
- </div>
- <p><span id="warningField"></span></p>
- </div>
+ <div id="hideDetailsArea">
+ <a href="javascript:hideWarning()" title="$i18n.getString( 'hide_warning' )"><img src="../images/hide.png" alt="$i18n.getString( 'hide_warning' )"/></a>
+ </div>
+ <p><span id="warningField"></span></p>
+ </div>
</td>
</tr>
=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/dataElementGroupSet.vm'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/dataElementGroupSet.vm 2013-06-29 14:16:34 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/dataElementGroupSet.vm 2013-11-28 10:34:47 +0000
@@ -1,6 +1,4 @@
-#* #sharingDialog() *#
-
<script type="text/javascript">
jQuery(document).ready(function(){
tableSorter( 'groupSetList' );
@@ -14,61 +12,36 @@
<h3>$i18n.getString( "data_element_group_set" ) #openHelp( "dataElementGroupSet" )</h3>
+<div id="contextMenu" class="contextMenu">
+ <ul id="contextMenuItems" class="contextMenuItems">
+ <li><a data-target-fn="showUpdateDataElementGroupSetForm" href="#">$i18n.getString( "edit" )</a></li>
+ <li><a data-target-fn="translateWithContext" href="#">$i18n.getString( "translation_translate" )</a></li>
+ <li><a data-target-fn="deleteDataElementGroupSet" href="#">$i18n.getString( "remove" )</a></li>
+ <li><a data-target-fn="showDataElementGroupSetDetails" href="#">$i18n.getString( "show_details" )</a></li>
+ </ul>
+</div>
+
<table class="mainPageTable">
<tr>
<td style="vertical-align:top">
<table width="100%">
<tr>
- <td>#filterDiv( "dataElementGroupSet" )</td>
+ <td>#filterDiv( "dataElementGroupSet" )</td>
<td colspan="4" style="text-align:right"><input type="button" value="$i18n.getString( 'add_new' )" onclick="window.location='openAddDataElementGroupSet.action'"/></td>
</tr>
</table>
<table class="listTable" id="groupSetList">
- <col/>
- <col width="145"/>
- <thead>
+ <thead>
<tr>
<th>$i18n.getString( "name" )</th>
- <th colspan="4" class="{sorter: false}">$i18n.getString( "operations" )</th>
</tr>
</thead>
<tbody id="list">
#foreach( $dataElementGroupSet in $dataElementGroupSets )
- <tr id="tr${dataElementGroupSet.id}">
- <td onclick="showDataElementGroupSetDetails( $dataElementGroupSet.id )">$encoder.htmlEncode( $dataElementGroupSet.displayName )</td>
- <td style="text-align:right">
-
- #* #if ( $security.canManage( $dataElementGroupSet ) )
- <a href="javascript:showSharingDialog('dataElementGroupSet', '$dataElementGroupSet.uid');"><img src="../images/relationship.png" alt="$i18n.getString( 'sharing_settings' )"></a>
- #else
- <img src="../images/relationship-denied.png">
- #end
- *#
-
- #* #if( $security.canUpdate( $dataElementGroupSet ) ) *#
- <a href="openUpdateDataElementGroupSet.action?id=$dataElementGroupSet.id" title="$i18n.getString( 'edit' )"><img src="../images/edit.png" alt="$i18n.getString( 'edit' )"/></a>
- #*
- #else
- <img src="../images/edit-denied.png">
- #end
- *#
-
- #* #if( $security.canUpdate( $dataElementGroupSet ) ) *#
- <a href="javascript:translate( 'DataElementGroupSet', '$dataElementGroupSet.id' )"><img src="../images/i18n.png" alt="$i18n.getString( 'translation_translate' )"/></a>
- #* #else
- <img src="../images/i18n-denied.png">
- #end *#
-
- #* #if( $security.canDelete( $dataElementGroupSet ) ) *#
- <a href="javascript:deleteDataElementGroupSet( $dataElementGroupSet.id, '$encoder.jsEncode( $dataElementGroupSet.displayName )' )" title="$i18n.getString( 'remove' )"><img src="../images/delete.png" alt="$i18n.getString( 'remove' )"/></a>
- #* #else
- <img src="../images/delete-denied.png">
- #end
- *#
-
- <a href="javascript:showDataElementGroupSetDetails( $dataElementGroupSet.id )" title="$i18n.getString( 'show_details' )"><img src="../images/information.png" alt="$i18n.getString( 'show_details' )"/></a>
-
- </td>
+ <tr id="tr${dataElementGroupSet.id}" style="height: 40px;">
+ <td data-id="$!dataElementGroupSet.id" data-uid="$!dataElementGroupSet.uid" data-type="DataElementGroupSet" data-name="$encoder.htmlEncode( $!dataElementGroupSet.displayName )">
+ $encoder.htmlEncode( $!dataElementGroupSet.displayName )
+ </td>
</tr>
#end
</tbody>
@@ -76,25 +49,24 @@
<p></p>
#parse( "/dhis-web-commons/paging/paging.vm" )
</td>
-
+
<td id="detailsData">
-
- <div id="detailsArea">
- <div id="hideDetailsArea">
+ <div id="detailsArea">
+ <div id="hideDetailsArea">
<a href="javascript:hideDetails()" title="$i18n.getString( 'hide_details' )"><img src="../images/hide.png" alt="$i18n.getString( 'hide_details' )"/></a>
</div>
<p><label>$i18n.getString( "name" ):</label><br/><span id="nameField"></span></p>
<p><label>$i18n.getString( "number_of_members" ):</label><br/><span id="memberCountField"></span></p>
</div>
-
+
<div id="warningArea">
- <div id="hideDetailsArea">
- <a href="javascript:hideWarning()" title="$i18n.getString( 'hide_warning' )"><img src="../images/hide.png" alt="$i18n.getString( 'hide_warning' )"/></a>
- </div>
- <p><span id="warningField"></span></p>
- </div>
-
+ <div id="hideDetailsArea">
+ <a href="javascript:hideWarning()" title="$i18n.getString( 'hide_warning' )"><img src="../images/hide.png" alt="$i18n.getString( 'hide_warning' )"/></a>
+ </div>
+ <p><span id="warningField"></span></p>
+ </div>
+
</td>
-
+
</tr>
</table>
=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/indicator.vm'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/indicator.vm 2013-10-13 16:15:28 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/indicator.vm 2013-11-28 10:34:47 +0000
@@ -6,17 +6,27 @@
tableSorter( 'listTable' );
});
- var i18n_confirm_delete = '$encoder.jsEscape( $i18n.getString( "confirm_delete_indicator" ) , "'")';
+ var i18n_confirm_delete = '$encoder.jsEscape( $i18n.getString( "confirm_delete_indicator" ) , "'")';
// Are you sure you want to delete this?
var i18n_none = '$encoder.jsEscape( $i18n.getString( "none" ) , "'")';
var i18n_yes = '$encoder.jsEscape( $i18n.getString( "yes" ) , "'")';
- var i18n_no = '$encoder.jsEscape( $i18n.getString( "no" ) , "'")';
+ var i18n_no = '$encoder.jsEscape( $i18n.getString( "no" ) , "'")';
var i18n_adding_indicator_failed = '$encoder.jsEscape( $i18n.getString( "adding_indicator_failed" ) , "'")';
var i18n_saving_indicator_failed = '$encoder.jsEscape( $i18n.getString( "saving_indicator_failed" ) , "'")';
</script>
<h3>$i18n.getString( "indicator_management" ) #openHelp( "indicator" )</h3>
+<div id="contextMenu" class="contextMenu">
+ <ul id="contextMenuItems" class="contextMenuItems">
+ #if( $security.canManage( $indicator ) )<li><a data-target-fn="showSharingDialogWithContext" href="#">$i18n.getString( "sharing_settings" )</a></li>#end
+ #if( $security.canUpdate( $indicator ) )<li><a data-target-fn="showUpdateIndicatorForm" href="#">$i18n.getString( "edit" )</a></li>#end
+ #if( $security.canUpdate( $indicator ) )<li><a data-target-fn="translateWithContext" href="#">$i18n.getString( "translation_translate" )</a></li>#end
+ #if( $security.canDelete( $indicator ) )<li><a data-target-fn="removeIndicator" href="#">$i18n.getString( "remove" )</a></li>#end
+ <li><a data-target-fn="showIndicatorDetails" href="#">$i18n.getString( "show_details" )</a></li>
+ </ul>
+</div>
+
<table class="mainPageTable">
<tr>
<td style="vertical-align:top">
@@ -44,46 +54,17 @@
</tr>
</table>
<table class="listTable" id="listTable">
- <col/>
- <col width="145px"/>
- <thead>
+ <thead>
<tr>
<th>$i18n.getString( "name" )</th>
- <th class="{sorter: false}">$i18n.getString( "operations" )</th>
</tr>
</thead>
<tbody id="list">
#foreach( $indicator in $indicators )
- <tr id="tr${indicator.id}">
- <td onclick="showIndicatorDetails( $indicator.id )">$encoder.htmlEncode( $indicator.displayName )</td>
- <td style="text-align:right">
-
- #if ( $security.canManage( $indicator ) )
- <a href="javascript:showSharingDialog('indicator', '$indicator.uid');" title="$i18n.getString( 'sharing_settings' )"><img src="../images/relationship.png" alt="$i18n.getString( 'sharing_settings' )"></a>
- #else
- <img src="../images/relationship-denied.png">
- #end
-
- #if( $security.canUpdate( $indicator ) )
- <a href="showUpdateIndicatorForm.action?id=$indicator.id" title="$i18n.getString( 'edit' )"><img src="../images/edit.png" alt="$i18n.getString( 'edit' )"/></a>
- #else
- <img src="../images/edit-denied.png">
- #end
-
- #if( $security.canUpdate( $indicator ) )
- <a href="javascript:translate( 'Indicator', '$indicator.id' )" title="$i18n.getString( 'translation_translate' )"><img src="../images/i18n.png" alt="$i18n.getString( 'translation_translate' )"/></a>
- #else
- <img src="../images/i18n-denied.png">
- #end
-
- #if( $security.canDelete( $indicator ) )
- <a href="javascript:removeIndicator( $indicator.id, '$encoder.jsEncode( $indicator.displayName )' )" title="$i18n.getString( 'remove' )"><img src="../images/delete.png" alt="$i18n.getString( 'remove' )"/></a>
- #else
- <img src="../images/delete-denied.png">
- #end
-
- <a href="javascript:showIndicatorDetails( $indicator.id )" title="$i18n.getString( 'show_details' )"><img src="../images/information.png" alt="$i18n.getString( 'show_details' )"/></a>
- </td>
+ <tr id="tr${indicator.id}" style="height: 40px;">
+ <td data-id="$!indicator.id" data-uid="$!indicator.uid" data-type="Indicator" data-name="$encoder.htmlEncode( $!indicator.displayName )">
+ $encoder.htmlEncode( $!indicator.displayName )
+ </td>
</tr>
#end
</tbody>
=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/indicatorGroup.vm'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/indicatorGroup.vm 2013-06-29 14:16:34 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/indicatorGroup.vm 2013-11-28 10:34:47 +0000
@@ -6,7 +6,7 @@
tableSorter( 'listTable' );
});
- var i18n_confirm_delete = '$encoder.jsEscape($i18n.getString( "confirm_delete_indicator_group" ) , "'")';
+ var i18n_confirm_delete = '$encoder.jsEscape($i18n.getString( "confirm_delete_indicator_group" ) , "'")';
// Are you sure you want to delete this?
var i18n_adding_indicator_group_failed = '$encoder.jsEscape($i18n.getString( "adding_indicator_group_failed" ) , "'")';
var i18n_saving_indicator_group_failed = '$encoder.jsEscape($i18n.getString( "saving_indicator_group_failed" ) , "'")';
@@ -14,6 +14,16 @@
<h3>$i18n.getString( "indicator_group_management" ) #openHelp( "indicatorGroup" )</h3>
+<div id="contextMenu" class="contextMenu">
+ <ul id="contextMenuItems" class="contextMenuItems">
+ #if( $security.canManage( $indicatorGroup ) )<li><a data-target-fn="showSharingDialogWithContext" href="#">$i18n.getString( "sharing_settings" )</a></li>#end
+ #if( $security.canUpdate( $indicatorGroup ) )<li><a data-target-fn="showUpdateIndicatorGroupForm" href="#">$i18n.getString( "edit" )</a></li>#end
+ #if( $security.canUpdate( $indicatorGroup ) )<li><a data-target-fn="translateWithContext" href="#">$i18n.getString( "translation_translate" )</a></li>#end
+ #if( $security.canDelete( $indicatorGroup ) )<li><a data-target-fn="removeIndicatorGroup" href="#">$i18n.getString( "remove" )</a></li>#end
+ <li><a data-target-fn="showIndicatorGroupDetails" href="#">$i18n.getString( "show_details" )</a></li>
+ </ul>
+</div>
+
<table class="mainPageTable">
<tr>
<td style="vertical-align:top">
@@ -24,47 +34,17 @@
</tr>
</table>
<table class="listTable" id="listTable">
- <col/>
- <col width="145px"/>
- <thead>
+ <thead>
<tr>
<th>$i18n.getString( "name" )</th>
- <th class="{sorter: false}">$i18n.getString( "operations" )</th>
</tr>
- </thead>
+ </thead>
<tbody id="list">
#foreach( $indicatorGroup in $indicatorGroups )
- <tr id="tr${indicatorGroup.id}">
- <td onclick="showIndicatorGroupDetails( $indicatorGroup.id )">$encoder.htmlEncode( $indicatorGroup.displayName )</td>
- <td style="text-align:right">
-
- #if ( $security.canManage( $indicatorGroup ) )
- <a href="javascript:showSharingDialog('indicatorGroup', '$indicatorGroup.uid');" title="$i18n.getString( 'sharing_settings' )"><img src="../images/relationship.png" alt="$i18n.getString( 'sharing_settings' )"></a>
- #else
- <img src="../images/relationship-denied.png">
- #end
-
- #if( $security.canUpdate( $indicatorGroup ) )
- <a href="showUpdateIndicatorGroupForm.action?id=$indicatorGroup.id" title="$i18n.getString( 'edit' )"><img src="../images/edit.png" alt="$i18n.getString( 'edit' )"/></a>
- #else
- <img src="../images/edit-denied.png">
- #end
-
- #if( $security.canUpdate( $indicatorGroup ) )
- <a href="javascript:translate( 'IndicatorGroup', '$indicatorGroup.id' )" title="$i18n.getString( 'translation_translate' )"><img src="../images/i18n.png" alt="$i18n.getString( 'translation_translate' )"/></a>
- #else
- <img src="../images/i18n-denied.png">
- #end
-
- #if( $security.canDelete( $indicatorGroup ) )
- <a href="javascript:removeIndicatorGroup( $indicatorGroup.id, '$encoder.jsEncode( $indicatorGroup.displayName )' )" title="$i18n.getString( 'remove' )"><img src="../images/delete.png" alt="$i18n.getString( 'remove' )"/></a>
- #else
- <img src="../images/delete-denied.png">
- #end
-
- <a href="javascript:showIndicatorGroupDetails( $indicatorGroup.id )" title="$i18n.getString( 'show_details' )"><img src="../images/information.png" alt="$i18n.getString( 'show_details' )"/></a>
-
- </td>
+ <tr id="tr${indicatorGroup.id}" style="height: 40px;">
+ <td data-id="$!indicatorGroup.id" data-uid="$!indicatorGroup.uid" data-type="IndicatorGroup" data-name="$encoder.htmlEncode( $!indicatorGroup.displayName )">
+ $encoder.htmlEncode( $!indicatorGroup.displayName )
+ </td>
</tr>
#end
</tbody>
@@ -74,21 +54,20 @@
</td>
<td id="detailsData">
+ <div id="detailsArea">
+ <div id="hideDetailsArea">
+ <a href="javascript:hideDetails()" title="$i18n.getString( 'hide_details' )"><img src="../images/hide.png" alt="$i18n.getString( 'hide_details' )"/></a>
+ </div>
+ <p><label>$i18n.getString( "name" ):</label><br/><span id="nameField"></span></p>
+ <p><label>$i18n.getString( "number_of_members" ):</label><br/><span id="memberCountField"></span></p>
+ </div>
- <div id="detailsArea">
- <div id="hideDetailsArea">
- <a href="javascript:hideDetails()" title="$i18n.getString( 'hide_details' )"><img src="../images/hide.png" alt="$i18n.getString( 'hide_details' )"/></a>
- </div>
- <p><label>$i18n.getString( "name" ):</label><br/><span id="nameField"></span></p>
- <p><label>$i18n.getString( "number_of_members" ):</label><br/><span id="memberCountField"></span></p>
- </div>
-
<div id="warningArea">
- <div id="hideDetailsArea">
- <a href="javascript:hideWarning()" title="$i18n.getString( 'hide_warning' )"><img src="../images/hide.png" alt="$i18n.getString( 'hide_warning' )"/></a>
- </div>
- <p><span id="warningField"></span></p>
- </div>
+ <div id="hideDetailsArea">
+ <a href="javascript:hideWarning()" title="$i18n.getString( 'hide_warning' )"><img src="../images/hide.png" alt="$i18n.getString( 'hide_warning' )"/></a>
+ </div>
+ <p><span id="warningField"></span></p>
+ </div>
</td>
</tr>
=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/indicatorGroupSet.vm'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/indicatorGroupSet.vm 2013-06-29 14:16:34 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/indicatorGroupSet.vm 2013-11-28 10:34:47 +0000
@@ -14,57 +14,37 @@
<h3>$i18n.getString( "indicator_group_set" ) #openHelp( "indicatorGroupSet" )</h3>
+<div id="contextMenu" class="contextMenu">
+ <ul id="contextMenuItems" class="contextMenuItems">
+ #if( $security.canManage( $indicatorGroupSet ) )<li><a data-target-fn="showSharingDialogWithContext" href="#">$i18n.getString( "sharing_settings" )</a></li>#end
+ #if( $security.canUpdate( $indicatorGroupSet ) )<li><a data-target-fn="showUpdateIndicatorGroupSetForm" href="#">$i18n.getString( "edit" )</a></li>#end
+ #if( $security.canUpdate( $indicatorGroupSet ) )<li><a data-target-fn="translateWithContext" href="#">$i18n.getString( "translation_translate" )</a></li>#end
+ #if( $security.canDelete( $indicatorGroupSet ) )<li><a data-target-fn="deleteIndicatorGroupSet" href="#">$i18n.getString( "remove" )</a></li>#end
+ <li><a data-target-fn="showIndicatorGroupSetDetails" href="#">$i18n.getString( "show_details" )</a></li>
+ </ul>
+</div>
+
<table class="mainPageTable">
<tr>
<td style="vertical-align:top">
<table width="100%">
<tr>
- <td>#filterDiv( "indicatorGroupSet" )</td>
+ <td>#filterDiv( "indicatorGroupSet" )</td>
<td colspan="4" style="text-align:right"><input type=button value="$i18n.getString( 'add_new' )" onclick="window.location='openAddIndicatorGroupSet.action'"/></td>
</tr>
<table>
<table class="listTable" id="listTable">
- <col/>
- <col width="145px"/>
- <thead>
+ <thead>
<tr>
<th>$i18n.getString( "name" )</th>
- <th class="{sorter: false}">$i18n.getString( "operations" )</th>
</tr>
- </thead>
- <tbody id="list">
+ </thead>
+ <tbody id="list">
#foreach( $indicatorGroupSet in $indicatorGroupSets )
- <tr id="tr${indicatorGroupSet.id}">
- <td onclick="showIndicatorGroupSetDetails( $indicatorGroupSet.id )">$encoder.htmlEncode( $indicatorGroupSet.displayName )</td>
- <td style="text-align:right">
-
- #if ( $security.canManage( $indicatorGroupSet ) )
- <a href="javascript:showSharingDialog('indicatorGroupSet', '$indicatorGroupSet.uid');" title="$i18n.getString( 'sharing_settings' )"><img src="../images/relationship.png" alt="$i18n.getString( 'sharing_settings' )"></a>
- #else
- <img src="../images/relationship-denied.png">
- #end
-
- #if( $security.canUpdate( $indicatorGroupSet ) )
- <a href="openUpdateIndicatorGroupSet.action?id=$indicatorGroupSet.id" title="$i18n.getString( 'edit' )"><img src="../images/edit.png" alt="$i18n.getString( 'edit' )"/></a>
- #else
- <img src="../images/edit-denied.png">
- #end
-
- #if( $security.canUpdate( $indicatorGroupSet ) )
- <a href="javascript:translate( 'IndicatorGroupSet', '$indicatorGroupSet.id' )"><img src="../images/i18n.png" alt="$i18n.getString( 'translation_translate' )"/></a>
- #else
- <img src="../images/i18n-denied.png">
- #end
-
- #if( $security.canDelete( $indicatorGroupSet ) )
- <a href="javascript:deleteIndicatorGroupSet( $indicatorGroupSet.id, '$encoder.jsEncode( $indicatorGroupSet.displayName )' )" title="$i18n.getString( 'remove' )"><img src="../images/delete.png" alt="$i18n.getString( 'remove' )"/></a>
- #else
- <img src="../images/delete-denied.png">
- #end
-
- <a href="javascript:showIndicatorGroupSetDetails( $indicatorGroupSet.id )" title="$i18n.getString( 'show_details' )"><img src="../images/information.png" alt="$i18n.getString( 'show_details' )"/></a>
-
- </td>
+ <tr id="tr${indicatorGroupSet.id}" style="height: 40px;">
+ <td data-id="$!indicatorGroupSet.id" data-uid="$!indicatorGroupSet.uid" data-type="IndicatorGroupSet" data-name="$encoder.htmlEncode( $!indicatorGroupSet.displayName )">
+ $encoder.htmlEncode( $!indicatorGroupSet.displayName )
+ </td>
</tr>
#end
</tbody>
@@ -74,21 +54,20 @@
</td>
<td id="detailsData">
-
- <div id="detailsArea">
- <div id="hideDetailsArea">
- <a href="javascript:hideDetails()" title="$i18n.getString( 'hide_details' )"><img src="../images/hide.png" alt="$i18n.getString( 'hide_details' )"/></a>
+ <div id="detailsArea">
+ <div id="hideDetailsArea">
+ <a href="javascript:hideDetails()" title="$i18n.getString( 'hide_details' )"><img src="../images/hide.png" alt="$i18n.getString( 'hide_details' )"/></a>
</div>
<p><label>$i18n.getString( "name" ):</label><br/><span id="nameField"></span></p>
<p><label>$i18n.getString( "number_of_members" ):</label><br/><span id="memberCountField"></span></p>
</div>
<div id="warningArea">
- <div id="hideDetailsArea">
- <a href="javascript:hideWarning()" title="$i18n.getString( 'hide_warning' )"><img src="../images/hide.png" alt="$i18n.getString( 'hide_warning' )"/></a>
- </div>
- <p><span id="warningField"></span></p>
- </div>
+ <div id="hideDetailsArea">
+ <a href="javascript:hideWarning()" title="$i18n.getString( 'hide_warning' )"><img src="../images/hide.png" alt="$i18n.getString( 'hide_warning' )"/></a>
+ </div>
+ <p><span id="warningField"></span></p>
+ </div>
</td>
=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/indicatorType.vm'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/indicatorType.vm 2013-06-29 14:16:34 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/indicatorType.vm 2013-11-28 10:34:47 +0000
@@ -1,31 +1,46 @@
<script type="text/javascript">
- jQuery(document).ready(function(){
+ jQuery(document).ready(function() {
tableSorter( 'listTable' );
+
+ dhis2.contextmenu.makeContextMenu({
+ menuId: 'contextMenu',
+ menuItemActiveClass: 'contextMenuItemActive'
+ });
});
- function showIndicatorTypeDetails( indicatorTypeId )
- {
- jQuery.get( 'getIndicatorType.action', { id: indicatorTypeId },
- function( json ) {
- setInnerHTML( 'nameField', json.indicatorType.name );
- setInnerHTML( 'factorField', json.indicatorType.factor );
+ function showIndicatorTypeDetails( context ) {
+ jQuery.get( 'getIndicatorType.action', { id: context.id }, function( json ) {
+ setInnerHTML( 'nameField', json.indicatorType.name );
+ setInnerHTML( 'factorField', json.indicatorType.factor );
- showDetails();
+ showDetails();
});
}
- function removeIndicatorType( indicatorTypeId, indicatorTypeName )
- {
- removeItem( indicatorTypeId, indicatorTypeName, i18n_confirm_delete, 'removeIndicatorType.action' );
+ function removeIndicatorType( context ) {
+ removeItem( context.id, context.name, i18n_confirm_delete, 'removeIndicatorType.action' );
}
- var i18n_confirm_delete = '$encoder.jsEscape( $i18n.getString( "confirm_delete_indicator_type" ) , "'")';
+ function showUpdateIndicatorTypeForm( context ) {
+ location.href = 'showUpdateIndicatorTypeForm.action?id=' + context.id;
+ }
+
+ var i18n_confirm_delete = '$encoder.jsEscape( $i18n.getString( "confirm_delete_indicator_type" ) , "'")';
var i18n_adding_indicator_type_failed = '$encoder.jsEscape( $i18n.getString( "adding_indicator_type_failed" ) , "'")';
var i18n_saving_indicator_type_failed = '$encoder.jsEscape( $i18n.getString( "saving_indicator_type_failed" ) , "'")';
</script>
<h3>$i18n.getString( "indicator_type_management" ) #openHelp( "indicatorType" )</h3>
+<div id="contextMenu" class="contextMenu">
+ <ul id="contextMenuItems" class="contextMenuItems">
+ <li><a data-target-fn="showUpdateIndicatorTypeForm" href="#">$i18n.getString( "edit" )</a></li>
+ <li><a data-target-fn="translateWithContext" href="#">$i18n.getString( "translation_translate" )</a></li>
+ <li><a data-target-fn="removeIndicatorType" href="#">$i18n.getString( "remove" )</a></li>
+ <li><a data-target-fn="showIndicatorTypeDetails" href="#">$i18n.getString( "show_details" )</a></li>
+ </ul>
+</div>
+
<table class="mainPageTable">
<tr>
<td style="vertical-align:top">
@@ -36,48 +51,40 @@
</tr>
</table>
<table class="listTable" id="listTable">
- <col/>
- <col width="120px"/>
- <thead>
+ <thead>
<tr>
<th>$i18n.getString( "name" )</th>
- <th class="{sorter: false}">$i18n.getString( "operations" )</th>
</tr>
- </thead>
+ </thead>
<tbody id="list">
#foreach( $indicatorType in $indicatorTypes )
- <tr id="tr${indicatorType.id}">
- <td onclick="javascript:showIndicatorTypeDetails( $indicatorType.id )">$encoder.htmlEncode( $indicatorType.displayName )</td>
- <td style="text-align:right">
- <a href="showUpdateIndicatorTypeForm.action?id=$indicatorType.id" title="$i18n.getString( 'edit' )"><img src="../images/edit.png" alt="$i18n.getString( 'edit' )"/></a>
- <a href="javascript:translate( 'IndicatorType', '$indicatorType.id' )" title="$i18n.getString( 'translation_translate' )"><img src="../images/i18n.png" alt="$i18n.getString( 'translation_translate' )"/></a>
- <a href="javascript:removeIndicatorType( $indicatorType.id, '$encoder.jsEncode( $indicatorType.displayName )' )" title="$i18n.getString( 'remove' )"><img src="../images/delete.png" alt="$i18n.getString( 'remove' )"/></a>
- <a href="javascript:showIndicatorTypeDetails( $indicatorType.id )" title="$i18n.getString( 'show_details' )"><img src="../images/information.png" alt="$i18n.getString( 'show_details' )"/></a>
- </td>
+ <tr id="tr${indicatorType.id}" style="height: 40px;">
+ <td data-id="$!indicatorType.id" data-uid="$!indicatorType.uid" data-type="IndicatorType" data-name="$encoder.htmlEncode( $!indicatorType.displayName )">
+ $encoder.htmlEncode( $!indicatorType.displayName )
+ </td>
</tr>
#end
</tbody>
</table>
<p></p>
#parse( "/dhis-web-commons/paging/paging.vm" )
+ </td>
- </td>
<td id="detailsData">
-
- <div id="detailsArea">
- <div id="hideDetailsArea">
+ <div id="detailsArea">
+ <div id="hideDetailsArea">
<a href="javascript:hideDetails()" title="$i18n.getString( 'hide_details' )"><img src="../images/hide.png" alt="$i18n.getString( 'hide_details' )"/></a>
- </div>
+ </div>
<p><label>$i18n.getString( "name"):</label><br/><span id="nameField"></span></p>
<p><label>$i18n.getString( "factor" ):</label><br/><span id="factorField"></span></p>
</div>
<div id="warningArea">
- <div id="hideDetailsArea">
- <a href="javascript:hideWarning()" title="$i18n.getString( 'hide_warning' )"><img src="../images/hide.png" alt="$i18n.getString( 'hide_warning' )"/></a>
- </div>
- <p><span id="warningField"></span></p>
- </div>
+ <div id="hideDetailsArea">
+ <a href="javascript:hideWarning()" title="$i18n.getString( 'hide_warning' )"><img src="../images/hide.png" alt="$i18n.getString( 'hide_warning' )"/></a>
+ </div>
+ <p><span id="warningField"></span></p>
+ </div>
</td>
</tr>
=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/javascript/category.js'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/javascript/category.js 2013-02-22 11:39:14 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/javascript/category.js 2013-11-28 10:34:47 +0000
@@ -1,5 +1,5 @@
-function removeDataElementCategory( categoryId, categoryName )
-{
- removeItem( categoryId, categoryName, i18n_confirm_delete, 'removeDataElementCategory.action' );
+function removeDataElementCategory( context ) {
+ removeItem( context.id, context.name, i18n_confirm_delete, 'removeDataElementCategory.action' );
}
+
=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/javascript/categoryCombo.js'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/javascript/categoryCombo.js 2011-09-27 07:36:07 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/javascript/categoryCombo.js 2013-11-28 10:34:47 +0000
@@ -1,6 +1,13 @@
-function showDataElementCategoryComboDetails( categoryComboId )
-{
- jQuery.post( 'getDataElementCategoryCombo.action', { id: categoryComboId },
+
+$(function() {
+ dhis2.contextmenu.makeContextMenu({
+ menuId: 'contextMenu',
+ menuItemActiveClass: 'contextMenuItemActive'
+ });
+});
+
+function showDataElementCategoryComboDetails( context ) {
+ jQuery.post( 'getDataElementCategoryCombo.action', { id: context.id },
function ( json) {
setInnerHTML( 'nameField', json.dataElementCategoryCombo.name );
setInnerHTML( 'dataElementCategoryCountField', json.dataElementCategoryCombo.dataElementCategoryCount );
@@ -13,17 +20,15 @@
// Delete Category
// -----------------------------------------------------------------------------
-function removeDataElementCategoryCombo( categoryComboId, categoryComboName )
-{
- removeItem( categoryComboId, categoryComboName, i18n_confirm_delete, 'removeDataElementCategoryCombo.action' );
+function removeDataElementCategoryCombo( context ) {
+ removeItem( context.id, context.name, i18n_confirm_delete, 'removeDataElementCategoryCombo.action' );
}
// ----------------------------------------------------------------------
// Validation
// ----------------------------------------------------------------------
-function validateSelectedCategories( form )
-{
+function validateSelectedCategories( form ) {
var url = "validateDataElementCategoryCombo.action?";
url += getParamString( "selectedList", "selectedCategories" );
@@ -37,3 +42,7 @@
} );
}
+
+function showUpdateDataElementCategoryComboForm( context ) {
+ location.href = 'showUpdateDataElementCategoryComboForm.action?id=' + context.id;
+}
=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/javascript/dataDictionary.js'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/javascript/dataDictionary.js 2011-09-27 07:36:07 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/javascript/dataDictionary.js 2013-11-28 10:34:47 +0000
@@ -1,10 +1,17 @@
+
+$(function() {
+ dhis2.contextmenu.makeContextMenu({
+ menuId: 'contextMenu',
+ menuItemActiveClass: 'contextMenuItemActive'
+ });
+});
+
// -----------------------------------------------------------------------------
// View details
// -----------------------------------------------------------------------------
-function showDataDictionaryDetails( dataDictionaryId )
-{
- jQuery.post( 'getDataDictionary.action', { id: dataDictionaryId },
+function showDataDictionaryDetails( context ) {
+ jQuery.post( 'getDataDictionary.action', { id: context.id },
function ( json ) {
setInnerHTML( 'nameField', json.dataDictionary.name );
@@ -22,8 +29,7 @@
// Change DataDictionary
// -----------------------------------------------------------------------------
-function dataDictionaryChanged( list )
-{
+function dataDictionaryChanged( list ) {
var id = list.options[list.selectedIndex].value;
var url = "setCurrentDataDictionary.action?id=" + id;
@@ -35,7 +41,10 @@
// Remove DataDictionary
// -----------------------------------------------------------------------------
-function removeDataDictionary( dataDictionaryId, dataDictionaryName )
-{
- removeItem( dataDictionaryId, dataDictionaryName, i18n_confirm_delete, 'removeDataDictionary.action' );
+function removeDataDictionary( context ) {
+ removeItem( context.id, context.name, i18n_confirm_delete, 'removeDataDictionary.action' );
+}
+
+function showUpdateDataDictionaryForm( context ) {
+ location.href = 'showUpdateDataDictionaryForm.action?id=' + context.id;
}
=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/javascript/dataElement.js'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/javascript/dataElement.js 2013-11-21 09:39:43 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/javascript/dataElement.js 2013-11-28 10:34:47 +0000
@@ -1,157 +1,146 @@
-
$(function() {
- $('#aggregationOperatorSelect').change(updateZeroIsSignificant);
- $('#aggregationOperatorSelect').change();
+ $('#aggregationOperatorSelect').change(updateZeroIsSignificant);
+ $('#aggregationOperatorSelect').change();
+
+ dhis2.contextmenu.makeContextMenu({
+ menuId: 'contextMenu',
+ menuItemActiveClass: 'contextMenuItemActive'
+ });
});
-function updateZeroIsSignificant()
-{
- var $this = $('#aggregationOperatorSelect');
-
- if( $this.val() == 'sum' )
- {
- $( '#zeroIsSignificant' ).removeAttr( 'disabled' );
- }
- else if( $this.val() == 'average' )
- {
- $( '#zeroIsSignificant' ).attr( 'disabled', true );
- }
-}
-
-function exportPDF( type )
-{
- var params = "type=" + type;
- params += "&dataDictionaryId=" + jQuery( '#dataDictionaryList' ).val();
-
- exportPdfByType( type, params );
-}
-
-function changeValueType( value )
-{
- enable('aggregationOperatorSelect');
- if ( value == 'int' )
- {
- showById( 'numberTypeTR' );
- hideById( 'textTypeTR' );
- enable( 'zeroIsSignificant' );
- } else
- {
- disable( 'zeroIsSignificant' );
- hideById( 'numberTypeTR' );
- hideById( 'textTypeTR' );
- disable('aggregationOperatorSelect');
- if( value=='string' ){
- showById( 'textTypeTR' );
- }
- else if(value=='bool'){
- enable('aggregationOperatorSelect');
- }
- }
-
- updateAggreationOperation( value );
-}
-
-function updateAggreationOperation( value )
-{
- if ( value == 'string' || value == 'date' || value == 'trueOnly' )
- {
- hideById( "aggregationOperator" );
- } else
- {
- showById( "aggregationOperator" );
- }
+function updateZeroIsSignificant() {
+ var $this = $('#aggregationOperatorSelect');
+
+ if( $this.val() == 'sum' ) {
+ $('#zeroIsSignificant').removeAttr('disabled');
+ }
+ else if( $this.val() == 'average' ) {
+ $('#zeroIsSignificant').attr('disabled', true);
+ }
+}
+
+function exportPDF( type ) {
+ var params = "type=" + type;
+ params += "&dataDictionaryId=" + jQuery('#dataDictionaryList').val();
+
+ exportPdfByType(type, params);
+}
+
+function changeValueType( value ) {
+ enable('aggregationOperatorSelect');
+ if( value == 'int' ) {
+ showById('numberTypeTR');
+ hideById('textTypeTR');
+ enable('zeroIsSignificant');
+ } else {
+ disable('zeroIsSignificant');
+ hideById('numberTypeTR');
+ hideById('textTypeTR');
+ disable('aggregationOperatorSelect');
+
+ if( value == 'string' ) {
+ showById('textTypeTR');
+ }
+ else if( value == 'bool' ) {
+ enable('aggregationOperatorSelect');
+ }
+ }
+
+ updateAggreationOperation(value);
+}
+
+function updateAggreationOperation( value ) {
+ if( value == 'string' || value == 'date' || value == 'trueOnly' ) {
+ hideById("aggregationOperator");
+ } else {
+ showById("aggregationOperator");
+ }
}
// -----------------------------------------------------------------------------
// Change data element group and data dictionary
// -----------------------------------------------------------------------------
-function criteriaChanged()
-{
- var domainType = getListValue( "domainTypeList" );
-
- var url = "dataElement.action?domainType=" + domainType;
-
- window.location.href = url;
+function criteriaChanged() {
+ var domainType = getListValue("domainTypeList");
+
+ var url = "dataElement.action?domainType=" + domainType;
+
+ window.location.href = url;
}
// -----------------------------------------------------------------------------
// View details
// -----------------------------------------------------------------------------
-function showDataElementDetails( dataElementId )
-{
- jQuery.get( '../dhis-web-commons-ajax-json/getDataElement.action',
- { "id": dataElementId }, function( json ) {
- setInnerHTML( 'nameField', json.dataElement.name );
- setInnerHTML( 'shortNameField', json.dataElement.shortName );
-
- var description = json.dataElement.description;
- setInnerHTML( 'descriptionField', description ? description : '[' + i18n_none + ']' );
-
- var active = json.dataElement.active;
- setInnerHTML( 'activeField', active == 'true' ? i18n_yes : i18n_no );
-
- var typeMap = {
- 'int' : i18n_number,
- 'bool' : i18n_yes_no,
- 'trueOnly' : i18n_yes_only,
- 'string' : i18n_text,
- 'date' : i18n_date,
- 'username' : i18n_user_name
- };
- var type = json.dataElement.valueType;
- setInnerHTML( 'typeField', typeMap[type] );
-
- var domainTypeMap = {
- 'aggregate' : i18n_aggregate,
- 'patient' : i18n_patient
- };
- var domainType = json.dataElement.domainType;
- setInnerHTML( 'domainTypeField', domainTypeMap[domainType] );
-
- var aggregationOperator = json.dataElement.aggregationOperator;
- var aggregationOperatorText = i18n_none;
- if ( aggregationOperator == 'sum' )
- {
- aggregationOperatorText = i18n_sum;
- } else if ( aggregationOperator == 'average' )
- {
- aggregationOperatorText = i18n_average;
- }
- setInnerHTML( 'aggregationOperatorField', aggregationOperatorText );
-
- setInnerHTML( 'categoryComboField', json.dataElement.categoryCombo );
-
- var url = json.dataElement.url;
- setInnerHTML( 'urlField', url ? '<a href="' + url + '">' + url + '</a>' : '[' + i18n_none + ']' );
-
- var lastUpdated = json.dataElement.lastUpdated;
- setInnerHTML( 'lastUpdatedField', lastUpdated ? lastUpdated : '[' + i18n_none + ']' );
-
- var dataSets = joinNameableObjects( json.dataElement.dataSets );
- setInnerHTML( 'dataSetsField', dataSets ? dataSets : '[' + i18n_none + ']' );
-
- showDetails();
- });
-}
-
-// -----------------------------------------------------------------------------
-// Remove data element
-// -----------------------------------------------------------------------------
-
-function removeDataElement( dataElementId, dataElementName )
-{
- removeItem( dataElementId, dataElementName, i18n_confirm_delete, 'removeDataElement.action' );
-}
-
-function domainTypeChange( domainType )
-{
- if( domainType=='aggregate'){
- enable('selectedCategoryComboId');
- }
- else{
- setFieldValue('selectedCategoryComboId', getFieldValue('defaultCategoryCombo'));
- disable('selectedCategoryComboId');
- }
+function showDataElementDetails( context ) {
+ jQuery.get('../dhis-web-commons-ajax-json/getDataElement.action',
+ { "id": context.id }, function( json ) {
+ setInnerHTML('nameField', json.dataElement.name);
+ setInnerHTML('shortNameField', json.dataElement.shortName);
+
+ var description = json.dataElement.description;
+ setInnerHTML('descriptionField', description ? description : '[' + i18n_none + ']');
+
+ var active = json.dataElement.active;
+ setInnerHTML('activeField', active == 'true' ? i18n_yes : i18n_no);
+
+ var typeMap = {
+ 'int': i18n_number,
+ 'bool': i18n_yes_no,
+ 'trueOnly': i18n_yes_only,
+ 'string': i18n_text,
+ 'date': i18n_date,
+ 'username': i18n_user_name
+ };
+ var type = json.dataElement.valueType;
+ setInnerHTML('typeField', typeMap[type]);
+
+ var domainTypeMap = {
+ 'aggregate': i18n_aggregate,
+ 'patient': i18n_patient
+ };
+ var domainType = json.dataElement.domainType;
+ setInnerHTML('domainTypeField', domainTypeMap[domainType]);
+
+ var aggregationOperator = json.dataElement.aggregationOperator;
+ var aggregationOperatorText = i18n_none;
+ if( aggregationOperator == 'sum' ) {
+ aggregationOperatorText = i18n_sum;
+ } else if( aggregationOperator == 'average' ) {
+ aggregationOperatorText = i18n_average;
+ }
+ setInnerHTML('aggregationOperatorField', aggregationOperatorText);
+
+ setInnerHTML('categoryComboField', json.dataElement.categoryCombo);
+
+ var url = json.dataElement.url;
+ setInnerHTML('urlField', url ? '<a href="' + url + '">' + url + '</a>' : '[' + i18n_none + ']');
+
+ var lastUpdated = json.dataElement.lastUpdated;
+ setInnerHTML('lastUpdatedField', lastUpdated ? lastUpdated : '[' + i18n_none + ']');
+
+ var dataSets = joinNameableObjects(json.dataElement.dataSets);
+ setInnerHTML('dataSetsField', dataSets ? dataSets : '[' + i18n_none + ']');
+
+ showDetails();
+ });
+}
+
+function removeDataElement( context ) {
+ removeItem(context.id, context.name, i18n_confirm_delete, 'removeDataElement.action');
+}
+
+function domainTypeChange( domainType ) {
+ if( domainType == 'aggregate' ) {
+ enable('selectedCategoryComboId');
+ }
+ else {
+ setFieldValue('selectedCategoryComboId', getFieldValue('defaultCategoryCombo'));
+ disable('selectedCategoryComboId');
+ }
+}
+
+function showUpdateDataElementForm( context ) {
+ location.href = 'showUpdateDataElementForm.action?id=' + context.id + '&update=true';
}
=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/javascript/dataElementGroup.js'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/javascript/dataElementGroup.js 2013-03-01 04:09:26 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/javascript/dataElementGroup.js 2013-11-28 10:34:47 +0000
@@ -1,38 +1,45 @@
-function beforeSubmit()
-{
- memberValidator = jQuery( "#memberValidator" );
- memberValidator.children().remove();
-
- jQuery.each( jQuery( "#groupMembers" ).children(), function( i, item )
- {
- item.selected = 'selected';
- memberValidator.append( '<option value="' + item.value + '" selected="selected">' + item.value + '</option>' );
- } );
+$(function() {
+ dhis2.contextmenu.makeContextMenu({
+ menuId: 'contextMenu',
+ menuItemActiveClass: 'contextMenuItemActive'
+ });
+});
+
+function beforeSubmit() {
+ memberValidator = jQuery("#memberValidator");
+ memberValidator.children().remove();
+
+ jQuery.each(jQuery("#groupMembers").children(), function( i, item ) {
+ item.selected = 'selected';
+ memberValidator.append('<option value="' + item.value + '" selected="selected">' + item.value + '</option>');
+ });
}
// -----------------------------------------------------------------------------
// View details
// -----------------------------------------------------------------------------
-function showDataElementGroupDetails( dataElementGroupId )
-{
- jQuery.post( '../dhis-web-commons-ajax-json/getDataElementGroup.action',
- { id: dataElementGroupId }, function ( json ) {
-
- setInnerHTML( 'nameField', json.dataElementGroup.name );
- setInnerHTML( 'shortNameField', json.dataElementGroup.shortName );
- setInnerHTML( 'codeField', json.dataElementGroup.code );
- setInnerHTML( 'memberCountField', json.dataElementGroup.memberCount );
-
- showDetails();
- });
+function showDataElementGroupDetails( context ) {
+ jQuery.post('../dhis-web-commons-ajax-json/getDataElementGroup.action',
+ { id: context.id }, function( json ) {
+
+ setInnerHTML('nameField', json.dataElementGroup.name);
+ setInnerHTML('shortNameField', json.dataElementGroup.shortName);
+ setInnerHTML('codeField', json.dataElementGroup.code);
+ setInnerHTML('memberCountField', json.dataElementGroup.memberCount);
+
+ showDetails();
+ });
}
// -----------------------------------------------------------------------------
// Remove data element group
// -----------------------------------------------------------------------------
-function removeDataElementGroup( dataElementGroupId, dataElementGroupName )
-{
- removeItem( dataElementGroupId, dataElementGroupName, i18n_confirm_delete, "removeDataElementGroup.action" );
+function removeDataElementGroup( context ) {
+ removeItem(context.id, context.name, i18n_confirm_delete, "removeDataElementGroup.action");
+}
+
+function showUpdateDataElementGroupForm( context ) {
+ location.href = 'showUpdateDataElementGroupForm.action?id=' + context.id;
}
=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/javascript/dataElementGroupSet.js'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/javascript/dataElementGroupSet.js 2013-04-30 08:12:53 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/javascript/dataElementGroupSet.js 2013-11-28 10:34:47 +0000
@@ -1,35 +1,43 @@
-function beforeSubmit()
-{
- memberValidator = jQuery( "#memberValidator" );
- memberValidator.children().remove();
-
- jQuery.each( jQuery( "#groupMembers" ).children(), function( i, item )
- {
- item.selected = 'selected';
- memberValidator.append( '<option value="' + item.value + '" selected="selected">' + item.value + '</option>' );
- } );
+
+$(function() {
+ dhis2.contextmenu.makeContextMenu({
+ menuId: 'contextMenu',
+ menuItemActiveClass: 'contextMenuItemActive'
+ });
+});
+
+function beforeSubmit() {
+ memberValidator = jQuery("#memberValidator");
+ memberValidator.children().remove();
+
+ jQuery.each(jQuery("#groupMembers").children(), function( i, item ) {
+ item.selected = 'selected';
+ memberValidator.append('<option value="' + item.value + '" selected="selected">' + item.value + '</option>');
+ });
}
// -----------------------------------------------------------------------------
// Delete
// -----------------------------------------------------------------------------
-function deleteDataElementGroupSet( groupSetId, groupSetName )
-{
- removeItem( groupSetId, groupSetName, i18n_confirm_delete, "deleteDataElementGroupSet.action" );
+function deleteDataElementGroupSet( context ) {
+ removeItem(context.id, context.name, i18n_confirm_delete, "deleteDataElementGroupSet.action");
}
// -----------------------------------------------------------------------------
// Show Data Element Group Set details
// -----------------------------------------------------------------------------
-function showDataElementGroupSetDetails( id )
-{
- jQuery.post( '../dhis-web-commons-ajax-json/getDataElementGroupSet.action', { id: id },
- function ( json ) {
- setInnerHTML( 'nameField', json.dataElementGroupSet.name );
- setInnerHTML( 'memberCountField', json.dataElementGroupSet.memberCount );
-
- showDetails();
- });
+function showDataElementGroupSetDetails( context ) {
+ $.post('../dhis-web-commons-ajax-json/getDataElementGroupSet.action', { id: context.id },
+ function( json ) {
+ setInnerHTML('nameField', json.dataElementGroupSet.name);
+ setInnerHTML('memberCountField', json.dataElementGroupSet.memberCount);
+
+ showDetails();
+ });
+}
+
+function showUpdateDataElementGroupSetForm( context ) {
+ location.href = 'openUpdateDataElementGroupSet.action?id=' + context.id;
}
=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/javascript/indicator.js'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/javascript/indicator.js 2012-10-18 13:04:28 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/javascript/indicator.js 2013-11-28 10:34:47 +0000
@@ -1,3 +1,10 @@
+$(function() {
+ dhis2.contextmenu.makeContextMenu({
+ menuId: 'contextMenu',
+ menuItemActiveClass: 'contextMenuItemActive'
+ });
+});
+
function exportPDF( type )
{
var params = "type=" + type;
@@ -45,10 +52,10 @@
// View details
// -----------------------------------------------------------------------------
-function showIndicatorDetails( indicatorId )
+function showIndicatorDetails( context )
{
jQuery.get( '../dhis-web-commons-ajax-json/getIndicator.action',
- { id: indicatorId }, function( json ) {
+ { id: context.id }, function( json ) {
setInnerHTML( 'nameField', json.indicator.name );
@@ -85,7 +92,10 @@
// Remove indicator
// -----------------------------------------------------------------------------
-function removeIndicator( indicatorId, indicatorName )
-{
- removeItem( indicatorId, indicatorName, i18n_confirm_delete, 'removeIndicator.action' );
+function removeIndicator( context ) {
+ removeItem( context.id, context.name, i18n_confirm_delete, 'removeIndicator.action' );
+}
+
+function showUpdateIndicatorForm( context ) {
+ location.href = 'showUpdateIndicatorForm.action?id=' + context.id;
}
=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/javascript/indicatorGroup.js'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/javascript/indicatorGroup.js 2011-09-27 08:14:59 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/javascript/indicatorGroup.js 2013-11-28 10:34:47 +0000
@@ -1,23 +1,32 @@
+$(function() {
+ dhis2.contextmenu.makeContextMenu({
+ menuId: 'contextMenu',
+ menuItemActiveClass: 'contextMenuItemActive'
+ });
+});
+
// -----------------------------------------------------------------------------
// Show Indicator Group details
// -----------------------------------------------------------------------------
-function showIndicatorGroupDetails( indicatorGroupId )
-{
- jQuery.get( '../dhis-web-commons-ajax-json/getIndicatorGroup.action',
- { id: indicatorGroupId }, function( json ) {
- setInnerHTML( 'nameField', json.indicatorGroup.name );
- setInnerHTML( 'memberCountField', json.indicatorGroup.memberCount );
+function showIndicatorGroupDetails( context ) {
+ jQuery.get('../dhis-web-commons-ajax-json/getIndicatorGroup.action',
+ { id: context.id }, function( json ) {
+ setInnerHTML('nameField', json.indicatorGroup.name);
+ setInnerHTML('memberCountField', json.indicatorGroup.memberCount);
- showDetails();
- });
+ showDetails();
+ });
}
// -----------------------------------------------------------------------------
// Remove indicator group
// -----------------------------------------------------------------------------
-function removeIndicatorGroup( indicatorGroupId, indicatorGroupName )
-{
- removeItem( indicatorGroupId, indicatorGroupName, i18n_confirm_delete, 'removeIndicatorGroup.action' );
+function removeIndicatorGroup( context ) {
+ removeItem(context.id, context.name, i18n_confirm_delete, 'removeIndicatorGroup.action');
+}
+
+function showUpdateIndicatorGroupForm( context ) {
+ location.href = 'showUpdateIndicatorGroupForm.action?id=' + context.id;
}
=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/javascript/indicatorGroupSet.js'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/javascript/indicatorGroupSet.js 2011-09-27 08:14:59 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/javascript/indicatorGroupSet.js 2013-11-28 10:34:47 +0000
@@ -1,23 +1,32 @@
+$(function() {
+ dhis2.contextmenu.makeContextMenu({
+ menuId: 'contextMenu',
+ menuItemActiveClass: 'contextMenuItemActive'
+ });
+});
+
// -----------------------------------------------------------------------------
// Show Indicator Group Set details
// -----------------------------------------------------------------------------
-function showIndicatorGroupSetDetails( id )
-{
- jQuery.post( '../dhis-web-commons-ajax-json/getIndicatorGroupSet.action',
- { id: id }, function( json ) {
- setInnerHTML( 'nameField', json.indicatorGroupSet.name );
- setInnerHTML( 'memberCountField', json.indicatorGroupSet.memberCount );
+function showIndicatorGroupSetDetails( context ) {
+ jQuery.post('../dhis-web-commons-ajax-json/getIndicatorGroupSet.action',
+ { id: context.id }, function( json ) {
+ setInnerHTML('nameField', json.indicatorGroupSet.name);
+ setInnerHTML('memberCountField', json.indicatorGroupSet.memberCount);
- showDetails();
- });
+ showDetails();
+ });
}
// -----------------------------------------------------------------------------
// Delete Indicator Group Set
// -----------------------------------------------------------------------------
-function deleteIndicatorGroupSet( groupSetId, groupSetName )
-{
- removeItem( groupSetId, groupSetName, i18n_confirm_delete, "deleteIndicatorGroupSet.action" );
+function deleteIndicatorGroupSet( context ) {
+ removeItem(context.id, context.name, i18n_confirm_delete, "deleteIndicatorGroupSet.action");
+}
+
+function showUpdateIndicatorGroupSetForm( context ) {
+ location.href = 'openUpdateIndicatorGroupSet.action?id=' + context.id;
}
=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/multidimensional/category.vm'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/multidimensional/category.vm 2013-06-29 14:16:34 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/multidimensional/category.vm 2013-11-28 10:34:47 +0000
@@ -1,30 +1,46 @@
<script type="text/javascript">
jQuery(document).ready(function(){
tableSorter( 'categoryList' );
+
+ dhis2.contextmenu.makeContextMenu({
+ menuId: 'contextMenu',
+ menuItemActiveClass: 'contextMenuItemActive'
+ });
});
-
- function showDataElementCategoryDetails( categoryId )
- {
- jQuery.post( 'getDataElementCategory.action', { id: categoryId } ,
- function ( json ) {
-
- setInnerHTML( 'nameField', json.dataElementCategory.name );
- setInnerHTML( 'categoryOptionsCountField', json.dataElementCategory.categoryOptionCount );
-
- showDetails();
- });
- }
-
- function removeDataElementCategory( categoryId, categoryName )
- {
- removeItem( categoryId, categoryName, i18n_confirm_delete, 'removeDataElementCategory.action' );
- }
-
+
+ function showDataElementCategoryDetails( context ) {
+ jQuery.post('getDataElementCategory.action', { id: context.id },
+ function( json ) {
+
+ setInnerHTML('nameField', json.dataElementCategory.name);
+ setInnerHTML('categoryOptionsCountField', json.dataElementCategory.categoryOptionCount);
+
+ showDetails();
+ });
+ }
+
+ function removeDataElementCategory( context ) {
+ removeItem( context.id, context.name, i18n_confirm_delete, 'removeDataElementCategory.action' );
+ }
+
+ function showUpdateDataElementCategoryForm( context ) {
+ location.href = 'showUpdateDataElementCategoryForm.action?id=' + context.id;
+ }
+
var i18n_confirm_delete = '$encoder.jsEscape( $i18n.getString( "confirm_delete_data_element_category" ) , "'" )';
</script>
<h3>$i18n.getString( "data_element_category_management" ) #openHelp( "dataElementCategory" )</h3>
+<div id="contextMenu" class="contextMenu">
+ <ul id="contextMenuItems" class="contextMenuItems">
+ <li><a data-target-fn="showUpdateDataElementCategoryForm" href="#">$i18n.getString( "edit" )</a></li>
+ <li><a data-target-fn="translateWithContext" href="#">$i18n.getString( "translation_translate" )</a></li>
+ <li><a data-target-fn="removeDataElementCategory" href="#">$i18n.getString( "remove" )</a></li>
+ <li><a data-target-fn="showDataElementCategoryDetails" href="#">$i18n.getString( "show_details" )</a></li>
+ </ul>
+</div>
+
<table class="mainPageTable">
<tr>
<td style="vertical-align:top">
@@ -35,38 +51,31 @@
</tr>
</table>
<table class="listTable" id="categoryList">
- <col/>
- <col width="120px"/>
- <thead>
+ <thead>
<tr>
<th>$i18n.getString( "name" )</th>
- <th class="{sorter: false}">$i18n.getString( "operations" )</th>
</tr>
- </thead>
- <tbody id="list">
- #foreach( $dataElementCategory in $dataElementCategories )
- #if( $dataElementCategory.id != $defaultCategory.id )
- <tr id="tr${dataElementCategory.id}">
- <td onclick="showDataElementCategoryDetails( $dataElementCategory.id )">$encoder.htmlEncode( $dataElementCategory.displayName )</td>
- <td style="text-align:right">
- <a href="showUpdateDataElementCategoryForm.action?id=$dataElementCategory.id" title="$i18n.getString( 'edit' )"><img src="../images/edit.png" alt="$i18n.getString( 'edit' )"/></a>
- <a href="javascript:translate( 'DataElementCategory', '$dataElementCategory.id' )" title="$i18n.getString( 'translation_translate' )"><img src="../images/i18n.png" alt="$i18n.getString( 'translation_translate' )"/></a>
- <a href="javascript:removeDataElementCategory( '$dataElementCategory.id', '$encoder.jsEncode( $dataElementCategory.name )' )" title="$i18n.getString( 'remove' )"><img src="../images/delete.png" alt="$i18n.getString( 'remove' )"/></a>
- <a href="javascript:showDataElementCategoryDetails( $dataElementCategory.id )" title="$i18n.getString( 'show_details' )"><img src="../images/information.png" alt="$i18n.getString( 'show_details' )"/></a>
- </td>
- </tr>
- #end
- #end
- </tbody>
+ </thead>
+ <tbody id="list">
+ #foreach( $dataElementCategory in $dataElementCategories )
+ #if( $dataElementCategory.id != $defaultCategory.id )
+ <tr id="tr${dataElementCategory.id}" style="height: 40px;">
+ <td data-id="$!dataElementCategory.id" data-uid="$!dataElementCategory.uid" data-type="DataElementCategory" data-name="$encoder.htmlEncode( $!dataElementCategory.displayName )">
+ $encoder.htmlEncode( $!dataElementCategory.displayName )
+ </td>
+ </tr>
+ #end
+ #end
+ </tbody>
- </table>
+ </table>
<p></p>
#parse( "/dhis-web-commons/paging/paging.vm" )
</td>
+
<td id="detailsData">
-
- <div id="detailsArea">
- <div id="hideDetailsArea">
+ <div id="detailsArea">
+ <div id="hideDetailsArea">
<a href="javascript:hideDetails()" title="$i18n.getString( 'hide_details' )"><img src="../images/hide.png" alt="$i18n.getString( 'hide_details' )"/></a>
</div>
<p><label>$i18n.getString( "name" ):</label><br/><span id="nameField"></span></p>
@@ -74,11 +83,11 @@
</div>
<div id="warningArea">
- <div id="hideDetailsArea">
- <a href="javascript:hideWarning()" title="$i18n.getString( 'hide_warning' )"><img src="../images/hide.png" alt="$i18n.getString( 'hide_warning' )"/></a>
- </div>
- <p><span id="warningField"></span></p>
- </div>
+ <div id="hideDetailsArea">
+ <a href="javascript:hideWarning()" title="$i18n.getString( 'hide_warning' )"><img src="../images/hide.png" alt="$i18n.getString( 'hide_warning' )"/></a>
+ </div>
+ <p><span id="warningField"></span></p>
+ </div>
</td>
</tr>
=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/multidimensional/categoryCombo.vm'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/multidimensional/categoryCombo.vm 2013-06-29 14:16:34 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/multidimensional/categoryCombo.vm 2013-11-28 10:34:47 +0000
@@ -8,6 +8,15 @@
<h3>$i18n.getString( "data_element_category_combo_management" ) #openHelp( "dataElementCategoryCombo" )</h3>
+<div id="contextMenu" class="contextMenu">
+ <ul id="contextMenuItems" class="contextMenuItems">
+ <li><a data-target-fn="showUpdateDataElementCategoryComboForm" href="#">$i18n.getString( "edit" )</a></li>
+ <li><a data-target-fn="translateWithContext" href="#">$i18n.getString( "translation_translate" )</a></li>
+ <li><a data-target-fn="removeDataElementCategoryCombo" href="#">$i18n.getString( "remove" )</a></li>
+ <li><a data-target-fn="showDataElementCategoryComboDetails" href="#">$i18n.getString( "show_details" )</a></li>
+ </ul>
+</div>
+
<table class="mainPageTable">
<tr>
<td style="vertical-align:top">
@@ -17,51 +26,44 @@
<td colspan="3" style="text-align:right"><input type="button" value="$i18n.getString( 'add_new' )" onclick="window.location.href='showAddDataElementCategoryComboForm.action'"/></td>
</tr>
</table>
- <table class="listTable" id="categoryComboList">
- <col/>
- <col width="120px"/>
- <thead>
- <tr>
- <th>$i18n.getString( "name" )</th>
- <th class="{sorter: false}">$i18n.getString( "operations" )</th>
- </tr>
- </thead>
- <tbody id="list">
- #foreach( $dataElementCategoryCombo in $dataElementCategoryCombos )
- #if( $dataElementCategoryCombo.id != $defaultCombo.id )
- <tr id="tr${dataElementCategoryCombo.id}">
- <td onclick="showDataElementCategoryComboDetails( $dataElementCategoryCombo.id )">$encoder.htmlEncode( $dataElementCategoryCombo.displayName )</td>
- <td style="text-align:right">
- <a href="showUpdateDataElementCategoryComboForm.action?id=$dataElementCategoryCombo.id" title="$i18n.getString( 'edit' )"><img src="../images/edit.png" alt="$i18n.getString( 'edit' )"/></a>
- <a href="javascript:translate( 'DataElementCategoryCombo', '$dataElementCategoryCombo.id' )" title="$i18n.getString( 'translation_translate' )"><img src="../images/i18n.png" alt="$i18n.getString( 'translation_translate' )"/></a>
- <a href="javascript:removeDataElementCategoryCombo( '$dataElementCategoryCombo.id', '$encoder.jsEncode( $dataElementCategoryCombo.displayName )' )" title="$i18n.getString( 'remove' )"><img src="../images/delete.png" alt="$i18n.getString( 'remove' )"/></a>
- <a href="javascript:showDataElementCategoryComboDetails( $dataElementCategoryCombo.id )" title="$i18n.getString( 'show_details' )"><img src="../images/information.png" alt="$i18n.getString( 'show_details' )"/></a>
- </td>
- </tr>
- #end
- #end
- </tbody>
+ <table class="listTable" id="categoryComboList">
+ <thead>
+ <tr>
+ <th>$i18n.getString( "name" )</th>
+ </tr>
+ </thead>
- </table>
+ <tbody id="list">
+ #foreach( $dataElementCategoryCombo in $dataElementCategoryCombos )
+ #if( $dataElementCategoryCombo.id != $defaultCombo.id )
+ <tr id="tr${dataElementCategoryCombo.id}" style="height: 40px;">
+ <td data-id="$!dataElementCategoryCombo.id" data-uid="$!dataElementCategoryCombo.uid" data-type="DataElementCategoryCombo" data-name="$encoder.htmlEncode( $!dataElementCategoryCombo.displayName )">
+ $encoder.htmlEncode( $!dataElementCategoryCombo.displayName )
+ </td>
+ </tr>
+ #end
+ #end
+ </tbody>
+ </table>
<p></p>
#parse( "/dhis-web-commons/paging/paging.vm" )
</td>
+
<td id="detailsData">
-
- <div id="detailsArea">
- <div id="hideDetailsArea">
+ <div id="detailsArea">
+ <div id="hideDetailsArea">
<a href="javascript:hideDetails()" title="$i18n.getString( 'hide_details' )"><img src="../images/hide.png" alt="$i18n.getString( 'hide_details' )"/></a>
</div>
<p><label>$i18n.getString( "name" ):</label><br/><span id="nameField"></span></p>
<p><label>$i18n.getString( "number_of_categories" ):</label><br/><span id="dataElementCategoryCountField"></span></p>
</div>
- <div id="warningArea">
- <div id="hideDetailsArea">
- <a href="javascript:hideWarning()" title="$i18n.getString( 'hide_warning' )"><img src="../images/hide.png" alt="$i18n.getString( 'hide_warning' )"/></a>
- </div>
- <p><span id="warningField"></span></p>
- </div>
+ <div id="warningArea">
+ <div id="hideDetailsArea">
+ <a href="javascript:hideWarning()" title="$i18n.getString( 'hide_warning' )"><img src="../images/hide.png" alt="$i18n.getString( 'hide_warning' )"/></a>
+ </div>
+ <p><span id="warningField"></span></p>
+ </div>
</td>
</tr>
=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/multidimensional/categoryOption.vm'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/multidimensional/categoryOption.vm 2013-06-29 14:16:34 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/multidimensional/categoryOption.vm 2013-11-28 10:34:47 +0000
@@ -1,11 +1,15 @@
<script type="text/javascript">
jQuery(document).ready(function(){
tableSorter( 'categoryList' );
+
+ dhis2.contextmenu.makeContextMenu({
+ menuId: 'contextMenu',
+ menuItemActiveClass: 'contextMenuItemActive'
+ });
});
- function showDataElementCategoryOptionDetails( categoryOptionId )
- {
- jQuery.post( 'getDataElementCategoryOption.action', { id: categoryOptionId } ,
+ function showDataElementCategoryOptionDetails( context ) {
+ jQuery.post( 'getDataElementCategoryOption.action', { id: context.id } ,
function ( json ) {
setInnerHTML( 'nameField', json.dataElementCategoryOption.name );
@@ -16,16 +20,28 @@
});
}
- function removeDataElementCategoryOption( categoryOptionId, categoryName )
- {
- removeItem( categoryOptionId, categoryName, i18n_confirm_delete, 'removeDataElementCategoryOption.action' );
+ function removeDataElementCategoryOption( context ) {
+ removeItem( context.id, context.name, i18n_confirm_delete, 'removeDataElementCategoryOption.action' );
}
-
+
+ function showUpdateDataElementCategoryOptionForm( context ) {
+ location.href = 'showUpdateDataElementCategoryOptionForm.action?id=' + context.id;
+ }
+
var i18n_confirm_delete = '$encoder.jsEscape( $i18n.getString( "confirm_delete_data_element_category_option" ) , "'" )';
</script>
<h3>$i18n.getString( "data_element_category_option_management" ) #openHelp( "dataElementCategoryOption" )</h3>
+<div id="contextMenu" class="contextMenu">
+ <ul id="contextMenuItems" class="contextMenuItems">
+ <li><a data-target-fn="showUpdateDataElementCategoryOptionForm" href="#">$i18n.getString( "edit" )</a></li>
+ <li><a data-target-fn="translateWithContext" href="#">$i18n.getString( "translation_translate" )</a></li>
+ <li><a data-target-fn="removeDataElementCategoryOption" href="#">$i18n.getString( "remove" )</a></li>
+ <li><a data-target-fn="showDataElementCategoryOptionDetails" href="#">$i18n.getString( "show_details" )</a></li>
+ </ul>
+</div>
+
<table class="mainPageTable">
<tr>
<td style="vertical-align:top">
@@ -36,27 +52,20 @@
</tr>
</table>
<table class="listTable" id="categoryList">
- <col/>
- <col width="120px"/>
- <thead>
- <tr>
- <th>$i18n.getString( "name" )</th>
- <th class="{sorter: false}">$i18n.getString( "operations" )</th>
- </tr>
- </thead>
+ <thead>
+ <tr>
+ <th>$i18n.getString( "name" )</th>
+ </tr>
+ </thead>
<tbody id="list">
#foreach( $dataElementCategoryOption in $dataElementCategoryOptions )
#if( $dataElementCategoryOption.id != $defaultCategory.id )
- <tr id="tr${dataElementCategoryOption.id}">
- <td onclick="showDataElementCategoryOptionDetails( $dataElementCategoryOption.id )">$encoder.htmlEncode( $dataElementCategoryOption.displayName )</td>
- <td style="text-align:right">
- <a href="showUpdateDataElementCategoryOptionForm.action?id=$dataElementCategoryOption.id" title="$i18n.getString( 'edit' )"><img src="../images/edit.png" alt="$i18n.getString( 'edit' )"/></a>
- <a href="javascript:translate( 'DataElementCategoryOption', '$dataElementCategoryOption.id' )" title="$i18n.getString( 'translation_translate' )"><img src="../images/i18n.png" alt="$i18n.getString( 'translation_translate' )"/></a>
- <a href="javascript:removeDataElementCategoryOption( '$dataElementCategoryOption.id', '$encoder.jsEncode( $dataElementCategoryOption.name )' )" title="$i18n.getString( 'remove' )"><img src="../images/delete.png" alt="$i18n.getString( 'remove' )"/></a>
- <a href="javascript:showDataElementCategoryOptionDetails( $dataElementCategoryOption.id )" title="$i18n.getString( 'show_details' )"><img src="../images/information.png" alt="$i18n.getString( 'show_details' )"/></a>
- </td>
+ <tr id="tr${dataElementCategoryOption.id}" style="height: 40px;">
+ <td data-id="$!dataElementCategoryOption.id" data-uid="$!dataElementCategoryOption.uid" data-type="DataElementCategoryOption" data-name="$encoder.htmlEncode( $!dataElementCategoryOption.displayName )">
+ $encoder.htmlEncode( $!dataElementCategoryOption.displayName )
+ </td>
</tr>
- #end
+ #end
#end
</tbody>
@@ -64,23 +73,23 @@
<p></p>
#parse( "/dhis-web-commons/paging/paging.vm" )
</td>
+
<td id="detailsData">
-
- <div id="detailsArea">
- <div id="hideDetailsArea">
+ <div id="detailsArea">
+ <div id="hideDetailsArea">
<a href="javascript:hideDetails()" title="$i18n.getString( 'hide_details' )"><img src="../images/hide.png" alt="$i18n.getString( 'hide_details' )"/></a>
</div>
- <p><label>$i18n.getString( "name" ):</label><br/><span id="nameField"></span></p>
+ <p><label>$i18n.getString( "name" ):</label><br/><span id="nameField"></span></p>
<p><label>$i18n.getString( "code" ):</label><br/><span id="codeField"></span></p>
<p><label>$i18n.getString( "concept" ):</label><br/><span id="conceptField"></span></p>
</div>
- <div id="warningArea">
- <div id="hideDetailsArea">
- <a href="javascript:hideWarning()" title="$i18n.getString( 'hide_warning' )"><img src="../images/hide.png" alt="$i18n.getString( 'hide_warning' )"/></a>
- </div>
- <p><span id="warningField"></span></p>
- </div>
+ <div id="warningArea">
+ <div id="hideDetailsArea">
+ <a href="javascript:hideWarning()" title="$i18n.getString( 'hide_warning' )"><img src="../images/hide.png" alt="$i18n.getString( 'hide_warning' )"/></a>
+ </div>
+ <p><span id="warningField"></span></p>
+ </div>
</td>
</tr>
=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/multidimensional/concept.vm'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/multidimensional/concept.vm 2013-11-27 17:34:02 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/multidimensional/concept.vm 2013-11-28 10:34:47 +0000
@@ -28,8 +28,6 @@
</tr>
</table>
<table class="listTable" id="listTable">
- <col/>
- <col width="96px"/>
<thead>
<tr>
<th>$i18n.getString( "name" )</th>
@@ -39,8 +37,8 @@
#foreach( $concept in $concepts )
#if( $concept.id != $defaultConcept.id )
<tr id="tr${concept.id}" style="height: 40px;">
- <td data-id="$!concept.id" data-uid="$!concept.uid" data-name="$encoder.htmlEncode( $!concept.name )">
- $encoder.htmlEncode( $!concept.name )
+ <td data-id="$!concept.id" data-uid="$!concept.uid" data-type="Concept" data-name="$encoder.htmlEncode( $!concept.displayName )">
+ $encoder.htmlEncode( $!concept.displayName )
</td>
</tr>
#end