Apply Craig Ricciuto's patch for Conify grp_tree i18n, with some modifications:
authordbs <dbs@dcc99617-32d9-48b4-a31d-7c20da2025e4>
Wed, 29 Oct 2008 18:33:42 +0000 (18:33 +0000)
committerdbs <dbs@dcc99617-32d9-48b4-a31d-7c20da2025e4>
Wed, 29 Oct 2008 18:33:42 +0000 (18:33 +0000)
  * Add the DTD header to grp_tree.html to pull in entity definitions
  * Change CONFIRM EXIT to CONFIRM_EXIT to avoid a JavaScript syntax error
  * Add i18n Makefile build instructions

Patch Description:
This patch i18n-izes the grp_tree.html and grp_tree.js files in conify.

Files changed are:
- Open-ILS/web/conify/global/permission/grp_tree.html
- Open-ILS/web/conify/global/permission/grp_tree.js

- Open-ILS/web/opac/locale/en-US/conify.dtd

Files added are:
- Open-ILS/web/js/dojo/openils/conify/nls/pgt.js

Developer's Certificate of Origin 1.1
By making a contribution to this project, I certify that:

(a) The contribution was created in whole or in part by me and I
   have the right to submit it under the open source license
   indicated in the file; or

(b) The contribution is based upon previous work that, to the best
   of my knowledge, is covered under an appropriate open source
   license and I have the right under that license to submit that
   work with modifications, whether created in whole or in part
   by me, under the same open source license (unless I am
   permitted to submit under a different license), as indicated
   in the file; or

(c) The contribution was provided directly to me by some other
   person who certified (a), (b) or (c) and I have not modified
   it.

(d) I understand and agree that this project and the contribution
   are public and that a record of the contribution (including all
   personal information I submit with it, including my sign-off) is
   maintained indefinitely and may be redistributed consistent with
   this project or the open source license(s) involved.

Signed-off-by: Craig Ricciuto - slazer@gmail.com
git-svn-id: svn://svn.open-ils.org/ILS/trunk@10980 dcc99617-32d9-48b4-a31d-7c20da2025e4

Open-ILS/web/conify/global/permission/grp_tree.html
Open-ILS/web/conify/global/permission/grp_tree.js
Open-ILS/web/js/dojo/openils/conify/nls/pgt.js [new file with mode: 0644]
Open-ILS/web/opac/locale/en-US/conify.dtd
build/i18n/Makefile

index e718b70..78afbb2 100644 (file)
 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 # GNU General Public License for more details.
 -->
+<!DOCTYPE html PUBLIC 
+       "-//W3C//DTD XHTML 1.0 Transitional//EN" 
+       "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd" [
+       <!--#include virtual="/opac/locale/${locale}/conify.dtd"-->
+]>
 <html xmlns="http://www.w2.org/1999/xhtml">
        <head>
-               <title>Conify :: Global :: Permission :: Group Tree</title>
+               <title>&conify.grp_tree.group_tree.title;</title>
 
                <style type="text/css">
                        @import url('/js/dojo/dojox/grid/_grid/tundraGrid.css');
@@ -82,7 +87,7 @@
                         method : 'open-ils.permacrud.search.pgt.atomic',
                         timeout : 10,
                         params : [ ses, { id : { "!=" : null } }, { order_by : { pgt : 'name' } } ],
-                        onerror : function (r) { status_update('Problem fetching groups') },
+                        onerror : function (r) { status_update( pgt_strings.ERROR_FETCHING_GROUPS ) },
                         oncomplete : function (r) {
                             window._group_list = r.recv().content();
                             window._group_data = pgt.toStoreData( window._group_list );
                                 });
 
                                 if (dirtyStore.length > 0) {
-                                    var confirmation = confirm(
-                                        'There are unsaved modified Groups!  '+
-                                        'OK to save these changes, Cancel to abandon them.'
-                                    );
+                                    var confirmation = confirm( pgt_strings.CONFIRM_EXIT );
 
                                     if (confirmation) {
                                         for (var i in window.dirtyStore) {
                     server.actor.request({
                         method : 'open-ils.actor.org_types.retrieve',
                         timeout : 10,
-                        onerror : function (r) { status_update('Problem fetching types') },
+                        onerror : function (r) { status_update( pgt_strings.ERROR_FETCHING_TYPES ) },
                         oncomplete : function (r) {
                             window._ou_type_list = r.recv().content();
                             window._ou_type_data = aout.toStoreData( window._ou_type_list );
                     server.actor.request({
                         method : 'open-ils.actor.permissions.retrieve',
                         timeout : 10,
-                        onerror : function (r) { status_update('Problem fetching perms') },
+                        onerror : function (r) { status_update( pgt_strings.ERROR_FETCHING_PERMS ) },
                         oncomplete : function (r) {
     
                             window._perm_list = r.recv().content();
                         method : 'open-ils.permacrud.search.pgpm.atomic',
                         timeout : 10,
                         params : [ ses, { id : { "!=" : null } } ],
-                        onerror : function (r) { status_update('Problem fetching perm maps') },
+                        onerror : function (r) { status_update( pgt_strings.ERROR_FETCHING_PERM_MAPS ) },
                         oncomplete : function (r) {
                             window._perm_map_list = r.recv().content();
                             window._perm_map_data = pgpm.toStoreData( window._perm_map_list, 'id' );
                                </script>
                                <div
                                  id="group_tree"
-                                 label="Permission Groups"
+                                 label="&conify.grp_tree.permission_groups.label;"
                                  query="{'_top':'true'}"
                                  dojoType="dijit.Tree"
                                  store="group_store"
                                                perm_grid.refresh();
 
                                                highlighter.editor_pane.green.play();
-                                               status_update( 'Now editing ' + this.store.getValue( item, 'name' ) );
+                                               status_update( dojo.string.substitute( pgt_strings.STATUS_EDITING, [this.store.getValue( item, 'name' )]) );
 
                                                new_kid_button.disabled = false;
                                                save_group_button.disabled = false;
                                </script>
 
                                <div dojoType="dijit.layout.TabContainer">
-                                       <div id="editor_pane" dojoType="dijit.layout.ContentPane" title="Group Configuration">
+                                       <div id="editor_pane" dojoType="dijit.layout.ContentPane" title="&conify.grp_tree.group_config.label;">
                                                <script type="dojo/method">
                                                        highlighter.group_tree = {};
                                                        highlighter.editor_pane = {};
        
                                                <table class="tundra" style="margin:10px;">
                                                        <tr>
-                                                               <th>Group Name</th>
+                                                               <th>&conify.grp_tree.group_name.label;</th>
                                                                <td>
                                                                        <span id="editor_pane_name" dojoType="dijit.form.ValidationTextBox" jsId="editor_pane_name" regExp=".+" required="true">
                                                                                <script type="dojo/connect" event="onChange">
                                                                </td>
                                                        </tr>
                                                        <tr>
-                                                               <th>Description</th>
+                                                               <th>&conify.grp_tree.description.label;</th>
                                                                <td>
                                                                        <span>
                                                                                <textarea
                                                                </td>
                                                        </tr>
                                                        <tr>
-                                                               <th>Permission Interval</th>
+                                                               <th>&conify.grp_tree.permission_interval.label;</th>
                                                                <td>
                                                                        <span id="editor_pane_perm_interval" dojoType="dijit.form.ValidationTextBox" jsId="editor_pane_perm_interval" regExp="^\d+ (?:y.*|mo.*|d.*)$" required="true">
                                                                                <script type="dojo/connect" event="onChange">
                                                                </td>
                                                        </tr>
                                                        <tr>
-                                                               <th>Editing Permission</th>
+                                                               <th>&conify.grp_tree.editing_permission.label;</th>
                                                                <td>
                                                                        <div
                                                                          id="editor_pane_application_perm"
                                                                </td>
                                                        </tr>
                                                        <tr>
-                                                               <th>Parent Group</th>
+                                                               <th>&conify.grp_tree.parent_group.label;</th>
                                                                <td>
                                                                        <div
                                                                          id="editor_pane_parent"
                                                                </td>
                                                        </tr>
                                                        <tr>
-                                                               <th>User Group</th>
+                                                               <th>&conify.grp_tree.user_group.label;</th>
                                                                <td>
                                                                        <input
                                                                          id="editor_pane_usergroup"
        
                                                <div dojoType="dijit.layout.ContentPane" orientation="horizontal" style="margin-bottom: 20px;">
        
-                                                       <button jsId="save_group_button" dojoType="dijit.form.Button" label="Save" onClick="save_group()">
+                                                       <button jsId="save_group_button" dojoType="dijit.form.Button" label="&conify.grp_tree.save_button.label;" onClick="save_group()">
                                                                <script type="dojo/connect" event="startup">
                                                                        this.disabled = true;
                                                                </script>
                                                        </button>
        
-                                                       <button jsId="delete_group_button" dojoType="dijit.form.Button" label="Delete">
+                                                       <button jsId="delete_group_button" dojoType="dijit.form.Button" label="&conify.grp_tree.delete_button.label;">
                                                                <script type="dojo/connect" event="startup">
                                                                        this.disabled = true;
                                                                </script>
        
                                                                        if (group_store.getValue( current_group, '_trueRoot' ) == 'true') {
                                                                                highlighter.editor_pane.red.play();
-                                                                               status_update( 'Cannot delete' + group_store.getValue( current_group, 'name' ) + ', you need at least one.' );
+                                                                               status_update( dojo.string.substitute( pgt_strings.STATUS_ERR_DELETING, [group_store.getValue( current_group, 'name' )])  );
                                                                                return false;
                                                                        }
 
                                                                                );
                                                                                if ( existing_kids.length > 0) {
                                                                                        highlighter.editor_pane.red.play();
-                                                                                       status_update( 'Cannot delete' + group_store.getValue( current_group, 'name' ) + ', ' + existing_kids.length + ' subordinates still exist.' );
+                                                                                       status_update( dojo.string.substitute( pgt_strings.STATUS_ERR_DELETING_DEPENDENCY, [group_store.getValue( current_group, 'name' ), existing_kids.length]) );
                                                                                        return;
                                                                                }
                                                                        }
        
-                                                                       if ( confirm('Are you sure you want to delete ' + current_group.name + '?')) {
+                                                                       if ( confirm( dojo.string.substitute( pgt_strings.CONFIRM_DELETE, [current_group.name]) ) ) {
                                                                                group_store.setValue( current_group, 'isdeleted', 1 );
        
                                                                                var modified_pgt = new pgt().fromStoreItem( current_group );
                                                                                        params : [ ses, modified_pgt ],
                                                                                        onerror : function (r) {
                                                                                                highlighter.editor_pane.red.play();
-                                                                                               status_update( 'Problem deleting ' + group_store.getValue( current_group, 'name' ) );
+                                                                                               status_update( dojo.string.substitute( pgt_strings.CONFIRM_DELETE, [group_store.getValue( current_group, 'name' )]) );
                                                                                        },
                                                                                        oncomplete : function (r) {
                                                                                                var res = r.recv();
                                                                                                        window["editor_pane_usergroup"].setChecked( false ); // unset the value
                        
                                                                                                        highlighter.editor_pane.green.play();
-                                                                                                       status_update( old_name + ' deleted' );
+                                                                                                       status_update( dojo.string.substitute( pgt_strings.STATUS_DELETED, [old_name]) );
                                                                                                } else {
                                                                                                        highlighter.editor_pane.red.play();
-                                                                                                       status_update( 'Problem deleting ' + old_name );
+                                                                                                       status_update( dojo.string.substitute( pgt_strings.ERROR_DELETING, [old_name]) );
                                                                                                }
                                                                                        }
                                                                                }).send();
        
                                                </div>
        
-                                               <button jsId="new_kid_button" dojoType="dijit.form.Button" label="New Child">
+                                               <button jsId="new_kid_button" dojoType="dijit.form.Button" label="&conify.grp_tree.new_child_button.label;">
                                                        <script type="dojo/connect" event="startup">
                                                                this.disabled = true;
                                                        </script>
        
                                                                var new_fm_obj = new pgt().fromHash({
                                                                        isnew                   : 1,
-                                                                       name                    : 'New Group',
+                                                                       name                    : pgt_strings.LABEL_NEW_GROUP,
                                                                        usergroup               : 'f',
                                                                        parent                  : group_store.getValue( current_group, 'id' )
                                                                });
                                                                        params : [ ses, new_fm_obj ],
                                                                        onerror : function (r) {
                                                                                highlighter.editor_pane.red.play();
-                                                                               status_update( 'Problem calling method to create child Group' );
+                                                                               status_update( pgt_strings.ERROR_CALLING_METHOD );
                                                                                err = true;
                                                                        },
                                                                        oncomplete : function (r) {
                                                                                        );
                                                                                } else {
                                                                                        highlighter.editor_pane.red.play();
-                                                                                       status_update( 'Problem creating child Group' );
+                                                                                       status_update( pgt_strings.ERROR_CREATING_CHILD_GROUP );
                                                                                        err = true;
                                                                                }
                                                                        },
                                                                if (!err) {
                                                                        highlighter.editor_pane.green.play();
                                                                        highlighter.group_tree.green.play();
-                                                                       status_update( 'New child Group created for ' + group_store.getValue( current_group, 'name' ) );
+                                                                       status_update( dojo.string.substitute( pgt_strings.SUCCESS_NEW_CHILD_GROUP, [group_store.getValue( current_group, 'name' )]) );
                                                                }
 -->    
                                                        </script>
        
                                        </div>
 
-                                       <div id="perm_pane" dojoType="dijit.layout.ContentPane" title="Group Permissions">
+                                       <div id="perm_pane" dojoType="dijit.layout.ContentPane" title="&conify.grp_tree.group_permissions.title;">
                                                <script type="dojo/connect" event="onShow">
                                                        perm_map_model.query = { grp : current_group ? current_group.id[0] : -1 };
                                                        perm_map_model.refresh();
                                                    window.current_perm_grid_layout = [
                                                        {   cells : [
                                                                    [
-                                                                           {   name : "Code",
+                                                                           {   name : pgt_strings.LABEL_CODE,
                                                                                                                        field: "perm",
                                                                                                                        formatter : dojo.partial(get_item_part, "perm", "id", "code", perm_map_model, perm_store),
                                                                                                                        width : "auto"
                                                                                                                },
-                                                                                               {       name : "Depth",
+                                                                                               {       name : pgt_strings.LABEL_DEPTH,
                                                                                                                        field : "depth",
                                                                                                                        formatter : dojo.partial(get_item_part, "depth", "depth", "name", perm_map_model, ou_type_store),
                                                                                                                        editor : dojox.grid.editors.select,
                                                                                                                        options : dojo.map( _ou_type_list, function (x) { return x.name() } ),
                                                                                                                        values : dojo.map( _ou_type_list, function (x) { return x.depth() } )
                                                                                                                }, 
-                                                                   {   name : "Grantable",
+                                                                   {   name : pgt_strings.LABEL_GRANTABLE,
                                                                                                                        field : "grantable",
                                                                                                                        editor : dojox.grid.editors.bool,
                                                                                                                        get : function (row) {
                                                        <div id="new_perm_container" dojoType="dijit.layout.ContentPane" sizeShare="1" layoutAlign="client">
 
                                                                <div dojoType="dijit.form.DropDownButton" id="new_popup" jsId="new_popup">
-                                                                       <span>New Mapping</span>
+                                                                       <span>&conify.grp_tree.new_mapping.label;</span>
                                                                        <div  dojoType="dijit.TooltipDialog"> 
                                                                                <table class="tundra">
                                                                                        <tr>
-                                                                                               <td>Permission:</td>
+                                                                                               <td>&conify.grp_tree.permission.label;</td>
                                                                                                <td>
                                                                                                        <div
                                                                                                          dojoType="dijit.form.FilteringSelect"
                                                                                                </td>
                                                                                        </tr>
                                                                                        <tr>
-                                                                                               <td>Depth:</td>
+                                                                                               <td>&conify.grp_tree.depth.label;</td>
                                                                                                <td>
                                                                                                        <div
                                                                                                          dojoType="dijit.form.FilteringSelect"
                                                                                                </td>
                                                                                        </tr>
                                                                                        <tr>
-                                                                                               <td>Grantable:</td>
+                                                                                               <td>&conify.grp_tree.grantable.label;</td>
                                                                                                <td>
                                                                                                        <input
                                                                                                          type="checkbox"
                                                                                        </tr>
                                                                                </table>
 
-                                                                               <button dojoType="dijit.form.Button" jsId="new_mapping_add" label="Add Mapping">
+                                                                               <button dojoType="dijit.form.Button" jsId="new_mapping_add" label="&conify.grp_tree.add_mapping_button.label;">
                                                                    <script type="dojo/connect" event="onClick">
 <!--
                                                                        var new_perm = new_perm_select.getValue();
                                                                            params : [ ses, new_fm_obj ],
                                                                            onerror : function (r) {
                                                                                highlighter.group_tree.red.play();
-                                                                               status_update( 'Problem calling method to create new Permission Map' );
+                                                                               status_update( pgt_strings.ERROR_CALLING_METHOD_PERM_MAP );
                                                                                err = true;
                                                                            },
                                                                            oncomplete : function (r) {
                                                                                if ( res && res.content() ) {
                                                                                    var new_item_hash = res.content().toHash();
                                                                                    perm_map_store.newItem( new_item_hash );
-                                                                                   status_update( 'New permission map created' );
+                                                                                   status_update( pgt_strings.SUCCESS_NEW_PERM_MAP );
                                                                                    highlighter.group_tree.green.play();
                
                                                                                            perm_map_model.query = { grp : current_group ? current_group.id[0] : -1 };
                
                                                                                } else {
                                                                                    highlighter.group_tree.red.play();
-                                                                                   status_update( 'Problem creating new Permission Map' );
+                                                                                   status_update( pgt_strings.ERROR_CREATING_PERM_MAP );
                                                                                    err = true;
                                                                                }
                                                                            }
                                                                        </div>
                                                                </div>
 
-                                                               <button jsId="save_pgpm_button" dojoType="dijit.form.Button" label="Save Changes" onClick="save_them_all()"></button><br/>
+                                                               <button jsId="save_pgpm_button" dojoType="dijit.form.Button" label="&conify.grp_tree.save_changes.label;" onClick="save_them_all()"></button><br/>
 
-                                               <button jsId="delete_pgpm_button" dojoType="dijit.form.Button" label="Remove Selected">
+                                               <button jsId="delete_pgpm_button" dojoType="dijit.form.Button" label="&conify.grp_tree.remove_selected.label;">
                                                        <script type="dojo/connect" event="onClick">
 <!--
                                                        var selected_rows = perm_grid.selection.getSelected();
                                                                params : [ ses, modified_pgpm ],
                                                                    onerror : function (r) {
                                                                                                        highlighter.editor_pane.red.play();
-                                                                               status_update( 'Problem deleting permission mapping ' + perm_map_store.getValue( window.current_perm_map, 'id' ) );
+                                                                               status_update( dojo.string.substitute( pgt_strings.ERROR_DELETING_PERM_MAPPING, [perm_map_store.getValue( window.current_perm_map, 'id' )] ) );
                                                                                },
                                                                                    oncomplete : function (r) {
                                                                                            var res = r.recv();
                                                                                                        window.current_perm_map = null;
                                                
                                                                                                                highlighter.editor_pane.green.play();
-                                                                                       status_update( 'Permission mapping deleted' );
+                                                                                       status_update( pgt_strings.SUCCESS_DELETED_PERM_MAP );
                                                                                        } else {
                                                                                                                highlighter.editor_pane.red.play();
-                                                                                                   status_update( 'Problem deleting permission mapping ' + perm_map_store.getValue( window.current_perm_map, 'id' ));
+                                                                                                   status_update( dojo.string.substitute( pgt_strings.ERROR_DELETING_PERM_MAPPING, [perm_map_store.getValue( window.current_perm_map, 'id' )]) );
                                                                                                    }
                                                            }
                                                        }).send();
index 308298c..4ad2536 100644 (file)
@@ -37,6 +37,7 @@ dojo.require('dijit.layout.SplitContainer');
 dojo.require('dojox.widget.Toaster');
 dojo.require('dojox.fx');
 dojo.require('dojox.grid.Grid');
+dojo.requireLocalization("openils.conify", "pgt");
 
 // some handy globals
 var cgi = new CGI();
@@ -46,6 +47,8 @@ var server = {};
 server.pCRUD = new OpenSRF.ClientSession('open-ils.permacrud');
 server.actor = new OpenSRF.ClientSession('open-ils.actor');
 
+var pgt_strings = dojo.i18n.getLocalization('openils.conify', 'pgt');
+
 var current_group;
 var virgin_out_id = -1;
 
@@ -70,17 +73,17 @@ function save_group () {
                params : [ ses, modified_pgt ],
                onerror : function (r) {
                        highlighter.editor_pane.red.play();
-                       status_update( 'Problem saving data for ' + group_store.getValue( current_group, 'name' ) );
+                       status_update( dojo.string.substitute( pgt_strings.ERROR_SAVING_DATA, [group_store.getValue( current_group, 'name' )]) );
                },
                oncomplete : function (r) {
                        var res = r.recv();
                        if ( res && res.content() ) {
                                group_store.setValue( current_group, 'ischanged', 0 );
                                highlighter.editor_pane.green.play();
-                               status_update( 'Saved changes to ' + group_store.getValue( current_group, 'name' ) );
+                               status_update( dojo.string.substitute(pgt_strings.SUCCESS_SAVE, [group_store.getValue( current_group, 'name' )]) );
                        } else {
                                highlighter.editor_pane.red.play();
-                               status_update( 'Problem saving data for ' + group_store.getValue( current_group, 'name' ) );
+                               status_update( dojo.string.substitute(pgt_strings.ERROR_SAVING_DATA, [group_store.getValue( current_group, 'name' )]) );
                        }
                },
        }).send();
@@ -97,17 +100,17 @@ function save_perm_map (storeItem) {
                params : [ ses, modified_pgpm ],
                onerror : function (r) {
                        highlighter.editor_pane.red.play();
-                       status_update( 'Problem saving permission data for ' + group_store.getValue( current_group, 'name' ) );
+                       status_update( dojo.string.substitute(pgt_strings.ERROR_SAVING_PERM_DATA, [group_store.getValue( current_group, 'name' )]) );
                },
                oncomplete : function (r) {
                        var res = r.recv();
                        if ( res && res.content() ) {
                                perm_map_store.setValue( storeItem, 'ischanged', 0 );
                                highlighter.editor_pane.green.play();
-                               status_update( 'Saved permission changes to ' + group_store.getValue( current_group, 'name' ) );
+                               status_update( dojo.string.substitute(pgt_strings.SUCCESS_SAVE_PERM, [group_store.getValue( current_group, 'name' )]) );
                        } else {
                                highlighter.editor_pane.red.play();
-                               status_update( 'Problem saving permission data for ' + group_store.getValue( current_group, 'name' ) );
+                               status_update( dojo.string.substitute(pgt_strings.ERROR_SAVING_PERM_DATA, [group_store.getValue( current_group, 'name' )]) );
                        }
                },
        }).send();
@@ -127,10 +130,7 @@ function save_them_all (event) {
 
 
     if (event && dirtyMaps.length > 0) {
-        confirmation = confirm(
-            'There are unsaved modified Permission Maps!  '+
-            'OK to save these changes, Cancel to abandon them.'
-        );
+        confirmation = confirm( pgt_strings.CONFIRM_EXIT);
     }
 
     if (confirmation) {
diff --git a/Open-ILS/web/js/dojo/openils/conify/nls/pgt.js b/Open-ILS/web/js/dojo/openils/conify/nls/pgt.js
new file mode 100644 (file)
index 0000000..1cf90e3
--- /dev/null
@@ -0,0 +1,28 @@
+{
+       "CONFIRM_DELETE": "Are you sure you want to delete ${0}?",
+       "CONFIRM_EXIT": "There are unsaved modified Permission Maps! OK to save these changes, Cancel to abandon them.",
+       "ERROR_CALLING_METHOD": "Problem calling method to create child Group",
+       "ERROR_CALLING_METHOD_PERM_MAP": "Problem calling method to create new Permission Map",
+       "ERROR_CREATING_CHILD_GROUP": "Problem creating child Group",
+       "ERROR_CREATING_PERMISSION": "Problem creating new Permission",
+       "ERROR_CREATING_PERM_MAP": "Problem creating new Permission Map",
+       "ERROR_DELETING": "Problem deleting ${0}",
+       "ERROR_DELETING_PERM_MAPPING": "Problem deleting permission mapping ${0}",
+       "ERROR_FETCHING_GROUPS": "Problem fetching groups",
+       "ERROR_FETCHING_PERMS": "Problem fetching perms",
+       "ERROR_FETCHING_PERM_MAPS": "Problem fetching perm maps",
+       "ERROR_FETCHING_TYPES": "Problem fetching types",
+       "ERROR_SAVING_DATA": "Problem saving data for ${0}",
+       "ERROR_SAVING_PERM_DATA": "Problem saving permission data for ${0}",
+       "LABEL_CODE ": "Code",
+       "LABEL_DEPTH": "Depth",
+       "LABEL_GRANTABLE": "Grantable",
+       "LABEL_NEW_GROUP": "New Group",
+       "STATUS_DELETED": "${0} deleted",
+       "STATUS_EDITING": "Now editing ${0}",
+       "SUCCESS_DELETED_PERM_MAP": "Permission mapping deleted",
+       "SUCCESS_NEW_CHILD_GROUP": "New child Group created for ${0}",
+       "SUCCESS_NEW_PERM_MAP": "New permission map created",
+       "SUCCESS_SAVE": "Saved changes to ${0}",
+       "SUCCESS_SAVE_PERM": "Saved permission changes to ${0}"
+}
index dfec4c8..8b3648a 100644 (file)
 <!ENTITY conify.marc_code_maps.video.new.label "New Video Recording Format:">
 
 <!-- perm_list.html Entities -->
-<!ENTITY conify.perm_list.permission_list.title "Conify :: Global :: Permission :: Permission List">
+<!ENTITY conify.perm_list.permission_list.title "Global :: Permission :: Permission List">
 <!ENTITY conify.perm_list.new_code.label "New Code">
 <!ENTITY conify.perm_list.add_button.label "Add">
 <!ENTITY conify.perm_list.save_changes.label "Save Changes">
 <!ENTITY conify.perm_list.delete_selected.label "Delete Selected">
 <!ENTITY conify.perm_list.new_permission.label "New Permission:">
+ <!-- grp_tree.html Entities -->
+ <!ENTITY conify.grp_tree.group_tree.title "Global :: Permission :: Group Tree">
+ <!ENTITY conify.grp_tree.permission_groups.label "Permission Groups">
+ <!ENTITY conify.grp_tree.group_config.label "Group Configuration">
+ <!ENTITY conify.grp_tree.group_name.label "Group Name">
+ <!ENTITY conify.grp_tree.description.label "Description">
+ <!ENTITY conify.grp_tree.permission_interval.label "Permission Interval">
+ <!ENTITY conify.grp_tree.editing_permission.label "Editing Permission">
+ <!ENTITY conify.grp_tree.parent_group.label "Parent Group">
+ <!ENTITY conify.grp_tree.user_group.label "User Group">
+ <!ENTITY conify.grp_tree.save_button.label "Save">
+ <!ENTITY conify.grp_tree.delete_button.label "Delete">
+ <!ENTITY conify.grp_tree.new_child_button.label "New Child">
+ <!ENTITY conify.grp_tree.group_permissions.title "Group Permissions">
+ <!ENTITY conify.grp_tree.new_mapping.label "New Mapping">
+ <!ENTITY conify.grp_tree.permission.label "Permission:">
+ <!ENTITY conify.grp_tree.depth.label "Depth:">
+ <!ENTITY conify.grp_tree.grantable.label "Grantable:">
+ <!ENTITY conify.grp_tree.add_mapping_button.label "Add Mapping">
+ <!ENTITY conify.grp_tree.save_changes.label "Save Changes">
+ <!ENTITY conify.grp_tree.remove_selected.label "Delete Selected">
index 1c34f98..9ac2fdc 100644 (file)
@@ -86,6 +86,7 @@ dojo2pot:
        @scripts/dojo_resource.py --pot $(DOJOSRC)/cam.js --output $(POTSRC)/conify.cam.pot
        @scripts/dojo_resource.py --pot $(DOJOSRC)/ccs.js --output $(POTSRC)/conify.ccs.pot
        @scripts/dojo_resource.py --pot $(DOJOSRC)/pgt.js --output $(POTSRC)/conify.pgt.pot
+       @scripts/dojo_resource.py --pot $(DOJOSRC)/ppl.js --output $(POTSRC)/conify.ppl.pot
 
 po2dojo:
        @scripts/dojo_resource.py --create $(POINDIR)/$(LOCALE)/conify.aou.po --output $(PROJECT)/$(LOCALE)/conify.aou.js
@@ -93,6 +94,7 @@ po2dojo:
        @scripts/dojo_resource.py --create $(POINDIR)/$(LOCALE)/conify.cam.po --output $(PROJECT)/$(LOCALE)/conify.cam.js
        @scripts/dojo_resource.py --create $(POINDIR)/$(LOCALE)/conify.ccs.po --output $(PROJECT)/$(LOCALE)/conify.ccs.js
        @scripts/dojo_resource.py --create $(POINDIR)/$(LOCALE)/conify.pgt.po --output $(PROJECT)/$(LOCALE)/conify.pgt.js
+       @scripts/dojo_resource.py --create $(POINDIR)/$(LOCALE)/conify.ppl.po --output $(PROJECT)/$(LOCALE)/conify.ppl.js
 
 ils2pot:
        @scripts/ils_events.py --pot $(EVTSRC) --output $(POTSRC)/$(EVTOUT)
@@ -157,3 +159,4 @@ install: updatepo project fmidl2fmidlent
        cp $(PROJECT)/$(LOCALE)/conify.cam.js $(DOJOSRC)/$(DOJO_LOCALE)/cam.js
        cp $(PROJECT)/$(LOCALE)/conify.ccs.js $(DOJOSRC)/$(DOJO_LOCALE)/ccs.js
        cp $(PROJECT)/$(LOCALE)/conify.pgt.js $(DOJOSRC)/$(DOJO_LOCALE)/pgt.js
+       cp $(PROJECT)/$(LOCALE)/conify.ppl.js $(DOJOSRC)/$(DOJO_LOCALE)/ppl.js