[open-ils-commits] [GIT] Evergreen ILS branch master updated. 81dde022ae39ecff8cbe0cbf7c85c7ce8e49df0f

Evergreen Git git at git.evergreen-ils.org
Sun Dec 16 05:31:42 EST 2012


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "Evergreen ILS".

The branch, master has been updated
       via  81dde022ae39ecff8cbe0cbf7c85c7ce8e49df0f (commit)
      from  0fea2393446d8604f703a3fc405743bbedc22996 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit 81dde022ae39ecff8cbe0cbf7c85c7ce8e49df0f
Author: Dan Scott <dscott at laurentian.ca>
Date:   Sun Dec 16 03:20:49 2012 -0500

    I18N: Make everything in tt2 files translatable.
    
    Simply wrap everything that should be translatable inside l().
    Also fixes bug #1088388
    
    Signed-off-by: Pasi Kallinen <pasi.kallinen at pttk.fi>
    
    Conflicts:
    	Open-ILS/src/templates/acq/common/li_table.tt2
    	Open-ILS/src/templates/acq/invoice/view.tt2
    	Open-ILS/src/templates/acq/search/unified.tt2
    	Open-ILS/src/templates/vandelay/inc/item_attrs.tt2
    
    Signed-off-by: Dan Scott <dscott at laurentian.ca>

diff --git a/Open-ILS/examples/web/templates/flattener_test.tt2 b/Open-ILS/examples/web/templates/flattener_test.tt2
index 8f610f6..b15d068 100644
--- a/Open-ILS/examples/web/templates/flattener_test.tt2
+++ b/Open-ILS/examples/web/templates/flattener_test.tt2
@@ -1,5 +1,5 @@
 [% WRAPPER base.tt2 %]
-[% ctx.page_title = 'Flattener Test' %]
+[% ctx.page_title = l('Flattener Test') %]
 <!--
         -->
 <script type="text/javascript">
@@ -9,12 +9,12 @@
 <div dojoType="dijit.layout.ContentPane" layoutAlign="client">
     <div dojoType="dijit.layout.ContentPane"
          layoutAlign="top" class="oils-header-panel">
-        <div>Flattener Test</div>
+        <div>[% l('Flattener Test') %]</div>
         <div>
             <button dojoType="dijit.form.Button"
-                onClick="grid.showCreateDialog()">New Thing</button>
+                onClick="grid.showCreateDialog()">[% l('New Thing') %]</button>
             <button dojoType="dijit.form.Button"
-                onClick="grid.deleteSelected()">Delete Selected Thing</button>
+                onClick="grid.deleteSelected()">[% l('Delete Selected Thing') %]</button>
         </div>
     </div>
     <!-- <div class="oils-acq-basic-roomy">
@@ -34,14 +34,14 @@
         fmClass="'acp'"
         defaultSort="['call_number']"
         mapExtras="{copy_status: {path: 'status.name', filter: true}}"
-        query="{'copy_status': ['Available','Reshelving','In process'],'circ_lib': 'BR1'}">
+        query="{'copy_status': ['[% l('Available') %]','[% l('Reshelving') %]','[% l('In process') %]'],'circ_lib': 'BR1'}">
         <thead>
             <tr>
-                 <th field="barcode" fpath="barcode" ffilter="true">Barcode</th>
-                <th field="circ_lib_name" fpath="circ_lib.name" ffilter="true">Circulation Library Name</th>
-                <th field="circ_lib" fpath="circ_lib.shortname" ffilter="true">Circulation Library</th>
+                 <th field="barcode" fpath="barcode" ffilter="true">[% l('Barcode') %]</th>
+                <th field="circ_lib_name" fpath="circ_lib.name" ffilter="true">[% l('Circulation Library Name') %]</th>
+                <th field="circ_lib" fpath="circ_lib.shortname" ffilter="true">[% l('Circulation Library') %]</th>
                 <th field="call_number" fpath="call_number.label" ffilter="true"></th>
-                <th field="shelving_loc" fpath="location.name" ffilter="true">Shelving Location</th>
+                <th field="shelving_loc" fpath="location.name" ffilter="true">[% l('Shelving Location') %]</th>
             </tr>
         </thead>
     </table>
diff --git a/Open-ILS/examples/web/templates/kpac/home.tt2 b/Open-ILS/examples/web/templates/kpac/home.tt2
index c0d912c..c7cbf5c 100644
--- a/Open-ILS/examples/web/templates/kpac/home.tt2
+++ b/Open-ILS/examples/web/templates/kpac/home.tt2
@@ -53,7 +53,7 @@
                 <td width="3"><div class="clear">&nbsp;</div></td>
                 <td valign="top" class="main_inside_cell" valign="top">
                     <div class="category_wrapper">
-                        <h3 class="c_header_image2"><span class="c_header_hp_or">or</span> click on an image to get started:</h3>
+                        <h3 class="c_header_image2">[% l('<span class="c_header_hp_or">or</span> click on an image to get started:') %]</h3>
                         [% render_kpac_grid(ctx.kpac_layout.page) %]
                     </div>
                 </td>
diff --git a/Open-ILS/examples/web/templates/kpac/parts/header.tt2 b/Open-ILS/examples/web/templates/kpac/parts/header.tt2
index d425b04..cdaa60a 100644
--- a/Open-ILS/examples/web/templates/kpac/parts/header.tt2
+++ b/Open-ILS/examples/web/templates/kpac/parts/header.tt2
@@ -18,11 +18,11 @@
             <a href="[% mkurl(ctx.opac_root _ '/login').replace('^http:', 'https:') %]"><img src="[% ctx.media_prefix %]/images/kpac/login_btn.png"/></a>
         [% END %]
 
-        <a href="javascript:;"><img src="[% ctx.media_prefix %]/images/kpac/get_a_card_btn.png" alt="get a library card" /></a>
-        <a href="javascript:;"><img src="[% ctx.media_prefix %]/images/kpac/help_btn.png" alt="help" /></a>
-        <a href="javascript:window.print()"><img src="[% ctx.media_prefix %]/images/kpac/hp_print_btn.png" alt="print" /></a>
+        <a href="javascript:;"><img src="[% ctx.media_prefix %]/images/kpac/get_a_card_btn.png" alt="[% l('get a library card') %]" /></a>
+        <a href="javascript:;"><img src="[% ctx.media_prefix %]/images/kpac/help_btn.png" alt="[% l('help') %]" /></a>
+        <a href="javascript:window.print()"><img src="[% ctx.media_prefix %]/images/kpac/hp_print_btn.png" alt="[% l('print') %]" /></a>
         <!--
-        <a href="javascript:;"><img src="[% ctx.media_prefix %]/images/kpac/hp_text_size_btn.png" alt="text size" /></a>
+        <a href="javascript:;"><img src="[% ctx.media_prefix %]/images/kpac/hp_text_size_btn.png" alt="[% l('text size') %]" /></a>
         -->
     </div>
     <div class="clear">&nbsp;</div>
diff --git a/Open-ILS/src/templates/acq/common/claim_dialog.tt2 b/Open-ILS/src/templates/acq/common/claim_dialog.tt2
index 741a8a6..e3c2d2e 100644
--- a/Open-ILS/src/templates/acq/common/claim_dialog.tt2
+++ b/Open-ILS/src/templates/acq/common/claim_dialog.tt2
@@ -2,10 +2,10 @@
     <script
         src="[% ctx.media_prefix %]/js/ui/default/acq/common/claim_dialog.js">
     </script>
-    <div><big>Claims</big></div>
-    <div>Against item:
-        <span id="acq-lit-li-claim-dia-li-title"></span>
-        (<span id="acq-lit-li-claim-dia-li-id"></span>)
+    <div><big>[% l('Claims') %]</big></div>
+    <div>[% l('Against item: [_1] ([_2]',
+        '<span id="acq-lit-li-claim-dia-li-title"></span>',
+        '<span id="acq-lit-li-claim-dia-li-id"></span>') %]
     </div>
     <div id="acq-lit-li-claim-dia-show" class="hidden">
         <ul id="acq-lit-li-claim-dia-lid-list">
@@ -16,7 +16,7 @@
                     <li name="claim">
                         <span name="type"></span>
                         <a name="voucher"
-                            href="javascript:void(0);">Show Voucher</a>
+                            href="javascript:void(0);">[% l('Show Voucher') %]</a>
                     </li>
                 </ul>
             </li>
@@ -24,7 +24,7 @@
         <hr />
     </div>
     <div id="acq-lit-li-claim-dia-initiate" class="hidden">
-        <div><big>Initiate New Claims</big></div>
+        <div><big>[% l('Initiate New Claims') %]</big></div>
         <div id="acq-lit-li-claim-dia-lid-list-init">
             <div name="lid_to_claim">
                 <input type="checkbox" name="claimable_lid" />
@@ -36,7 +36,7 @@
         </div>
         <hr />
         <div id="acqclet-display" class="hidden">
-            <div><big>Select Claim Action</big></div>
+            <div><big>[% l('Select Claim Action') %]</big></div>
             <table>
                 <tbody id="acqclet-tbody">
                     <tr name="acqclet-template">
@@ -55,6 +55,6 @@
             </table>
             <hr />
         </div>
-        <button id="acq-lit-li-claim-dia-claim">Claim selected</button>
+        <button id="acq-lit-li-claim-dia-claim">[% l('Claim selected') %]</button>
     </div>
 </div>
diff --git a/Open-ILS/src/templates/acq/common/final_claim_dialog.tt2 b/Open-ILS/src/templates/acq/common/final_claim_dialog.tt2
index 882741c..d219568 100644
--- a/Open-ILS/src/templates/acq/common/final_claim_dialog.tt2
+++ b/Open-ILS/src/templates/acq/common/final_claim_dialog.tt2
@@ -1,8 +1,8 @@
 <div id="acq-eligible-claim-controls">
-    <label for="acq-eligible-claim-type">Claim type:</label>
+    <label for="acq-eligible-claim-type">[% l('Claim type:') %]</label>
     <span id="acq-eligible-claim-type"></span>
-    <label for="acq-eligible-claim-note">Note:</label>
+    <label for="acq-eligible-claim-note">[% l('Note:') %]</label>
     <input dojoType="dijit.form.TextBox" id="acq-eligible-claim-note" />
-    <button id="acq-eligible-claim-submit">Claim</button>
+    <button id="acq-eligible-claim-submit">[% l('Claim') %]</button>
 </div>
 
diff --git a/Open-ILS/src/templates/acq/common/info.tt2 b/Open-ILS/src/templates/acq/common/info.tt2
index 6fc5456..2b585d5 100644
--- a/Open-ILS/src/templates/acq/common/info.tt2
+++ b/Open-ILS/src/templates/acq/common/info.tt2
@@ -13,10 +13,10 @@
             Show the <a name="rel_link" href="#"><span name="related_number"></span> lineitem(s)</a> related to the same bibliographic record.
         </div>
         <div style="margin-top:40px;">
-            <h3 id="acq-[% which_lc %]-marc-order-record-label">MARC Order Record</h3>
-            <h3 id="acq-[% which_lc %]-marc-real-record-label">MARC ILS Record</h3>
+            <h3 id="acq-[% which_lc %]-marc-order-record-label">[% l('MARC Order Record') %]</h3>
+            <h3 id="acq-[% which_lc %]-marc-real-record-label">[% l('MARC ILS Record') %]</h3>
             <div>
-                <div dojoType="dijit.form.Button" jsId="acq[% which %]EditOrderMarc" class="hidden">Edit MARC Order Record</div>
+                <div dojoType="dijit.form.Button" jsId="acq[% which %]EditOrderMarc" class="hidden">[% l('Edit MARC Order Record') %]</div>
             </div>
             <div id="acq-[% which_lc %]-marc-div" style="margin-top:20px;"> </div>
         </div>
diff --git a/Open-ILS/src/templates/acq/common/inv_dialog.tt2 b/Open-ILS/src/templates/acq/common/inv_dialog.tt2
index 3bec75c..f149e05 100644
--- a/Open-ILS/src/templates/acq/common/inv_dialog.tt2
+++ b/Open-ILS/src/templates/acq/common/inv_dialog.tt2
@@ -1,11 +1,11 @@
 <script type="text/javascript" src="[% ctx.media_prefix %]/js/ui/default/acq/common/inv_dialog.js">
 </script>
-<big><strong>Choose invoice</strong></big>
+<big><strong>[% l('Choose invoice') %]</strong></big>
 <table class="acq-link-invoice-dialog">
     <tr>
         <th>
             <label for="acq-[% which %]-link-invoice-inv_ident">
-                Invoice #
+                [% l('Invoice #') %]
             </label>
         </th>
         <td>
@@ -15,7 +15,7 @@
     </tr>
     <tr>
         <th>
-            <label for="acq-[% which %]-link-invoice-provider">Provider</label>
+            <label for="acq-[% which %]-link-invoice-provider">[% l('Provider') %]</label>
         </th>
         <td>
             <span id="acq-[% which %]-link-invoice-provider"></span>
@@ -24,7 +24,7 @@
     <tr>
         <td colspan="2" style="text-align: center;">
             <button id="acq-[% which %]-link-invoice-link"
-                dojoType="dijit.form.Button" type="submit">Link</button>
+                dojoType="dijit.form.Button" type="submit">[% l('Link') %]</button>
         </td>
     </tr>
 </table>
diff --git a/Open-ILS/src/templates/acq/common/jubgrid.tt2 b/Open-ILS/src/templates/acq/common/jubgrid.tt2
index ce13d56..9e0360c 100644
--- a/Open-ILS/src/templates/acq/common/jubgrid.tt2
+++ b/Open-ILS/src/templates/acq/common/jubgrid.tt2
@@ -54,57 +54,57 @@ pointing to the JUB model (and store) that you have created.
     JUBGrid.jubGridLayout = [{
         //noscroll: true,
         cells: [[
-            {name: 'ID', field: 'id', width:'auto'},
-            {name: 'Title', width: "180px", get:JUBGrid.getJUBTitle},
-            {name: 'Author', get:JUBGrid.getJUBAuthor, width:'auto'},
-            {name: 'ISBN', get:JUBGrid.getJUBIsbn, width:'auto'},
-            {name: 'Pubdate', get:JUBGrid.getJUBPubdate, width:'auto'},
-            {name: 'Actual Price', 
+            {name: '[% l('ID') %]', field: 'id', width:'auto'},
+            {name: '[% l('Title') %]', width: "180px", get:JUBGrid.getJUBTitle},
+            {name: '[% l('Author') %]', get:JUBGrid.getJUBAuthor, width:'auto'},
+            {name: '[% l('ISBN') %]', get:JUBGrid.getJUBIsbn, width:'auto'},
+            {name: '[% l('Pubdate') %]', get:JUBGrid.getJUBPubdate, width:'auto'},
+            {name: '[% l('Actual Price') %]', 
                 field:'actual_price',
                 get:JUBGrid.getJUBActualPrice,
                 editor:dojox.grid.editors.Dijit, width:'auto', 
                 editorClass: "dijit.form.CurrencyTextBox" 
             },
-            {name: 'Estimated Price', 
+            {name: '[% l('Estimated Price') %]', 
                 field:'estimated_price',
                 get:JUBGrid.getJUBEstimatedPrice, width:'auto',
                 editor:dojox.grid.editors.Dijit, 
                 editorClass: "dijit.form.CurrencyTextBox" 
             },
-            {name: 'Vendor', width:'auto',
+            {name: '[% l('Vendor') %]', width:'auto',
 	     field: 'provider', get:JUBGrid.getProvider,
 	     editor:openils.editors.ProviderSelectEditor,
 	    },
-            {name: 'No. Copies', field: 'item_count', width:'auto'},
-            {name: 'State', field: 'state', width:'auto'},
-            {name: 'PO', get:JUBGrid.getPO, width:'auto'}
+            {name: '[% l('No. Copies') %]', field: 'item_count', width:'auto'},
+            {name: '[% l('State') %]', field: 'state', width:'auto'},
+            {name: '[% l('PO') %]', get:JUBGrid.getPO, width:'auto'}
         ]]
     }];
 
     JUBGrid.jubDetailGridLayout = [{
         cells: [[
-            {name:"ID", field:"id"},
-            {name:"Fund", field:"fund",
+            {name:"[% l('ID') %]", field:"id"},
+            {name:"[% l('Fund') %]", field:"fund",
                 get:JUBGrid.getLIDFundCode,
                 editor: openils.editors.FundSelectEditor,
             },
-            {name:"Branch", field:"owning_lib",
+            {name:"[% l('Branch') %]", field:"owning_lib",
 	            get:JUBGrid.getLIDLibName,
 	            editor: openils.editors.OrgUnitSelectEditor
 	        },
-            {name:"Barcode", field:"barcode", width:'auto',
+            {name:"[% l('Barcode') %]", field:"barcode", width:'auto',
                 editor:dojox.grid.editors.Dijit, 
                 editorClass: "dijit.form.TextBox" 
 	        },
-            {name:"Call Number", field:"cn_label", width:'auto',
+            {name:"[% l('Call Number') %]", field:"cn_label", width:'auto',
                 editor:dojox.grid.editors.Dijit, 
                 editorClass: "dijit.form.TextBox" 
 	        },
-            {name:"Shelving Location", field:"location", width:'auto',
+            {name:"[% l('Shelving Location') %]", field:"location", width:'auto',
                 editor:openils.editors.CopyLocationSelectEditor,
                 get:JUBGrid.getCopyLocation
 	        },
-            {name:"Receive Time", width:'auto',
+            {name:"[% l('Receive Time') %]", width:'auto',
                 get:JUBGrid.getRecvTime
 	        },
         ]]
@@ -112,16 +112,16 @@ pointing to the JUB model (and store) that you have created.
 
     JUBGrid.jubDetailGridLayoutReadOnly = [{
         cells: [[
-            {name:'ID', field:"id"},
-            {name:'Fund', field:"fund",
+            {name:'[% l('ID') %]', field:"id"},
+            {name:'[% l('Fund') %]', field:"fund",
              get:JUBGrid.getLIDFundCode,
             },
-            {name:'Branch', field:"owning_lib",
+            {name:'[% l('Branch') %]', field:"owning_lib",
 	            get:JUBGrid.getLIDLibName,
 	        },
-	    {name:'Barcode', field:"barcode", width:'auto'},
-            {name:'Call Number', field:"cn_label", width:'auto'},
-	    {name:'Shelving Location', field:"location", 
+	    {name:'[% l('Barcode') %]', field:"barcode", width:'auto'},
+            {name:'[% l('Call Number') %]', field:"cn_label", width:'auto'},
+	    {name:'[% l('Shelving Location') %]', field:"location", 
                 width:'auto', get:JUBGrid.getCopyLocation},
         ]]
     }];
@@ -135,10 +135,10 @@ pointing to the JUB model (and store) that you have created.
         <div dojoType="dijit.layout.ContentPane"
              id='[% domprefix %]-jub-buttonbar'>
             <button dojoType="dijit.form.Button" onclick="JUBGrid.approveJUB">
-                Approve Selected Titles
+                [% l('Approve Selected Titles') %]
             </button>
             <button dojoType="dijit.form.Button" onclick="JUBGrid.removeSelectedJUBs">
-                Remove Selected Titles
+                [% l('Remove Selected Titles') %]
             </button>
         </div>
     </div>
@@ -155,7 +155,7 @@ pointing to the JUB model (and store) that you have created.
     <div dojoType="dijit.layout.ContentPane" sizeMin="" sizeShare="" class='container'>
         <div dojoType="dijit.layout.ContentPane" id='[% domprefix %]-details-buttonbar'>
             <div dojoType="dijit.form.DropDownButton">
-                <span>New Copy</span>
+                <span>[% l('New Copy') %]</span>
                 <div dojoType="dijit.TooltipDialog" execute="JUBGrid.createLID(arguments[0]);">
                     <script type='dojo/connect' event='onOpen'>
                         new openils.User().buildPermOrgSelector('MANAGE_FUND', copyOwnerSelect);
@@ -163,14 +163,14 @@ pointing to the JUB model (and store) that you have created.
                     </script>
                     <table class="dijitTooltipTable">
                         <tr>
-                            <td><label for="fund">Fund: </label></td>
+                            <td><label for="fund">[% l('Fund: ') %]</label></td>
                             <td>
                                 <input dojoType="openils.widget.FundSelector"
                                 jsId="acqlidFund" searchAttr="name" autocomplete="true" name="fund"></input>
                             </td>
                         </tr>
                         <tr>
-                            <td><label for="owning_lib">Location: </label></td>
+                            <td><label for="owning_lib">[% l('Location: ') %]</label></td>
                             <td><input dojoType="openils.widget.OrgUnitFilteringSelect"
                                 jsId="copyOwnerSelect"
                                 searchAttr="shortname"
@@ -181,7 +181,7 @@ pointing to the JUB model (and store) that you have created.
                         <tr>
                             <td colspan="2" align="center">
                                 <button dojotype="dijit.form.Button" type="submit">
-                                Create
+                                [% l('Create') %]
                                 </button>
                             </td>
                         </tr>
@@ -189,10 +189,10 @@ pointing to the JUB model (and store) that you have created.
                 </div>
             </div>
             <button dojoType='dijit.form.Button' onclick='JUBGrid.deleteLID'>
-                Delete Selected Copy
+                [% l('Delete Selected Copy') %]
             </button>
             <button dojoType='dijit.form.Button' onclick='JUBGrid.receiveLID'>
-                Mark Selected Copies Received
+                [% l('Mark Selected Copies Received') %]
             </button>
         </div>
     </div>
diff --git a/Open-ILS/src/templates/acq/common/li_table.tt2 b/Open-ILS/src/templates/acq/common/li_table.tt2
index 328bed0..83881d0 100644
--- a/Open-ILS/src/templates/acq/common/li_table.tt2
+++ b/Open-ILS/src/templates/acq/common/li_table.tt2
@@ -15,33 +15,33 @@
                                 <td>
                                     <span>
                                         <select id="acq-lit-li-actions-selector">
-                                            <option mask='*'  value='_'>--Actions--</option>
-                                            <option mask='sr' value='save_picklist'>Save Items To Selection List</option>
-                                            <option mask='pl' value='selector_ready'>Mark Ready for Selector</option>
-                                            <option mask='pl' value='order_ready'>Mark Ready for Order</option>
-                                            <option mask='*'  value='delete_selected'>Delete Selected Items</option>
-                                            <option mask='*'  value='add_brief_record'>Add Brief Record</option>
-                                            <option mask='*'  value='export_attr_list'>Export Single Attribute List</option>
-                                            <option mask='*'  value='batch_apply_funds'>Apply Funds to Selected Items</option>
-                                            <option mask='po' value='' disabled='disabled'>----PO----</option>
-                                            <option mask='sr|pl' value='create_order'>Create Purchase Order</option>
-                                            <option mask='po' value='create_assets'>Load Bibs and Items</option>
-                                            <option mask='po' value='cancel_lineitems'>Cancel Selected Lineitems</option>
-                                            <option mask='po' value='change_claim_policy'>Change Claim Policy</option>
-                                            <option mask='po' value='receive_po' id='receive_po' disabled='disabled'>Mark Purchase Order as Received</option>
-                                            <option mask='po' value='rollback_receive_po' id='rollback_receive_po' disabled='disabled'>Un-Receive Purchase Order</option>
-                                            <option mask='po' value='print_po'>Print Purchase Order</option>
-                                            <option mask='po' value='po_history'>View PO History</option>
+                                            <option mask='*'  value='_'>[% l('--Actions--') %]</option>
+                                            <option mask='sr' value='save_picklist'>[% l('Save Items To Selection List') %]</option>
+                                            <option mask='pl' value='selector_ready'>[% l('Mark Ready for Selector') %]</option>
+                                            <option mask='pl' value='order_ready'>[% l('Mark Ready for Order') %]</option>
+                                            <option mask='*'  value='delete_selected'>[% l('Delete Selected Items') %]</option>
+                                            <option mask='*'  value='add_brief_record'>[% l('Add Brief Record') %]</option>
+                                            <option mask='*'  value='export_attr_list'>[% l('Export Single Attribute List') %]</option>
+                                            <option mask='*'  value='batch_apply_funds'>[% l('Apply Funds to Selected Items') %]</option>
+                                            <option mask='po' value='' disabled='disabled'>[% l('----PO----') %]</option>
+                                            <option mask='sr|pl' value='create_order'>[% l('Create Purchase Order') %]</option>
+                                            <option mask='po' value='create_assets'>[% l('Load Bibs and Items') %]</option>
+                                            <option mask='po' value='cancel_lineitems'>[% l('Cancel Selected Lineitems') %]</option>
+                                            <option mask='po' value='change_claim_policy'>[% l('Change Claim Policy') %]</option>
+                                            <option mask='po' value='receive_po' id='receive_po' disabled='disabled'>[% l('Mark Purchase Order as Received') %]</option>
+                                            <option mask='po' value='rollback_receive_po' id='rollback_receive_po' disabled='disabled'>[% l('Un-Receive Purchase Order') %]</option>
+                                            <option mask='po' value='print_po'>[% l('Print Purchase Order') %]</option>
+                                            <option mask='po' value='po_history'>[% l('View PO History') %]</option>
                                             <option mask='po' value='batch_create_invoice'>[% l('Create Invoice From Selected Lineitems') %]</option>
                                             <option mask='po' value='batch_link_invoice'>[% l('Link To Invoice for Selected Lineitems') %]</option>
                                         </select>
                                         <span id="acq-lit-export-attr-holder" class="hidden">
                                             <input dojoType="dijit.form.FilteringSelect" id="acq-lit-export-attr" jsId="acqLitExportAttrSelector" labelAttr="description" searchAttr="description" />
-                                            <span dojoType="dijit.form.Button" jsId="acqLitExportAttrButton">Export List</span>
+                                            <span dojoType="dijit.form.Button" jsId="acqLitExportAttrButton">[% l('Export List') %]</span>
                                         </span>
                                         <span id="acq-lit-cancel-reason" class="hidden">
                                             <span id="acq-lit-cancel-reason-selector"></span>
-                                            <span dojoType="dijit.form.Button" jsId="acqLitCancelLineitemsButton">Cancel Line Items</span>
+                                            <span dojoType="dijit.form.Button" jsId="acqLitCancelLineitemsButton">[% l('Cancel Line Items') %]</span>
                                         </span>
                                     </span>
                                     <span id='acq-lit-generic-progress' class='hidden'>
@@ -51,8 +51,8 @@
                                 <td>
                                     <div style='width:100%;text-align:right;'>
                                         <span style='padding-right:15px;'>
-                                            <a href='javascript:void(0);' id='acq-lit-prev' style='visibility:hidden'>&#171; Previous</a>
-                                            <a href='javascript:void(0);' id='acq-lit-next' style='visibility:hidden'>Next &#187;</a>
+                                            <a href='javascript:void(0);' id='acq-lit-prev' style='visibility:hidden'>[% l('&#171; Previous') %]</a>
+                                            <a href='javascript:void(0);' id='acq-lit-next' style='visibility:hidden'>[% l('Next &#187;') %]</a>
                                         </span>
                                     </div>
                                 </td>
@@ -65,12 +65,12 @@
             <tbody style='font-weight:bold;border:1px solid #aaa;'>
                 <tr>
                     <td><span><a id='acq-lit-select-toggle' href='javascript:void(0);'>&#x2713</a></span></td>
-                    <td>Line Items</td>
-                    <td>Items</td>
-                    <td>Notes</td>
-                    <td>Actions</td>
-                    <td>Status</td>
-                    <td>Estimated Price</td>
+                    <td>[% l('Line Items') %]</td>
+                    <td>[% l('Items') %]</td>
+                    <td>[% l('Notes') %]</td>
+                    <td>[% l('Actions') %]</td>
+                    <td>[% l('Status') %]</td>
+                    <td>[% l('Estimated Price') %]</td>
                 </tr>
             </tbody>
             <tbody id='acq-lit-tbody'>
@@ -103,12 +103,12 @@
                                 <tr>
                                     <td colspan='0'>
                                         <span name="liid"># </span> 
-                                        <span name="catalog" class='hidden'> | <a title='Show In Catalog' name="catalog_link" href="javascript:void(0);">&#x279F; catalog</a></span> 
-                                        <span name="link_to_catalog" class='hidden'> | <a title='Link To Catalog Record' name="link_to_catalog_link" href="javascript:void(0);">&#x27BE; link to catalog</a></span> 
-                                        <span name="worksheet"> | <a title='Generate Worksheet' name="worksheet_link" href="javascript:void(0);">&#x270D; worksheet</a></span>
-                                        <span name='pl' class='hidden'> | <a title='Select List' name='pl_link' href='javascript:void(0);'>&#x2756; </a></span>
-                                        <span name='po' class='hidden'> | <a title='Purchase Order' name='po_link' href='javascript:void(0);'>&#x2318; </a></span>
-                                        <span name="show_requests"> | <a title='Patron Requests' name="show_requests_link" href="javascript:void(0);">requests</a></span> 
+                                        <span name="catalog" class='hidden'> | <a title='[% l('Show In Catalog') %]' name="catalog_link" href="javascript:void(0);">[% l('&#x279F; catalog') %]</a></span> 
+                                        <span name="link_to_catalog" class='hidden'> | <a title='[% l('Link To Catalog Record') %]' name="link_to_catalog_link" href="javascript:void(0);">[% l('&#x27BE; link to catalog') %]</a></span> 
+                                        <span name="worksheet"> | <a title='[% l('Generate Worksheet') %]' name="worksheet_link" href="javascript:void(0);">[% l('&#x270D; worksheet') %]</a></span>
+                                        <span name='pl' class='hidden'> | <a title='[% l('Select List') %]' name='pl_link' href='javascript:void(0);'>&#x2756; </a></span>
+                                        <span name='po' class='hidden'> | <a title='[% l('Purchase Order') %]' name='po_link' href='javascript:void(0);'>&#x2318; </a></span>
+                                        <span name="show_requests"> | <a title='[% l('Patron Requests') %]' name="show_requests_link" href="javascript:void(0);">[% l('requests') %]</a></span> 
                                         <span name='pro' class='hidden'> | <a title='[% l('Provider') %]' name='pro_link' href='javascript:void(0);'>&#x235F; </a></span>
                                         <span name='queue' class='hidden'> | <a title='[% l('Import Queue') %]' name='queue_link' href='javascript:void(0);'>[% l('&#x27AC; queue') %]</a></span>
                                     </td>
@@ -116,23 +116,23 @@
                             </tbody>
                         </table>
                     </td>
-                    <td><a title='FOOOBAR' name='copieslink' href='javascript:void(0);'>Copies(<span name='count'>0</span>)</a></td>
+                    <td><a title='FOOOBAR' name='copieslink' href='javascript:void(0);'>[% l('Copies([_1])', '<span name="count">0</span>') %]</a></td>
                     <td>
-                        <a name='noteslink' href='javascript:void(0);'>Notes(<span name='notes_count'>0</span>)</a><span name="notes_alert_flag"></span>
+                        <a name='noteslink' href='javascript:void(0);'>[% l('Notes([_1])', '<span name="notes_count">0</span>') %]</a><span name="notes_alert_flag"></span>
                     </td>
                     <td>
                         <select name='actions'>
-                            <option name='action_none'>-- Actions --</option>
-                            <option name='action_mark_recv' disabled='disabled'>Mark Received</option>
-                            <option name='action_mark_unrecv' disabled='disabled'>Un-Receive</option>
-                            <option name='action_update_barcodes'>Update Barcodes</option>
-                            <option name='action_holdings_maint'>Holdings Maint.</option>
-                            <option name='action_new_invoice' disabled='disabled'>New Invoice</option>
-                            <option name='action_link_invoice' disabled='disabled'>Link to Invoice</option>
-                            <option name='action_view_invoice' disabled='disabled'>View Invoice(s)</option>
-                            <option name='action_view_claim_policy'>Apply Claim Policy</option>
-                            <option name='action_manage_claims'>Claims</option>
-                            <option name='action_view_history'>View History</option>
+                            <option name='action_none'>[% l('-- Actions --') %]</option>
+                            <option name='action_mark_recv' disabled='disabled'>[% l('Mark Received') %]</option>
+                            <option name='action_mark_unrecv' disabled='disabled'>[% l('Un-Receive') %]</option>
+                            <option name='action_update_barcodes'>[% l('Update Barcodes') %]</option>
+                            <option name='action_holdings_maint'>[% l('Holdings Maint.') %]</option>
+                            <option name='action_new_invoice' disabled='disabled'>[% l('New Invoice') %]</option>
+                            <option name='action_link_invoice' disabled='disabled'>[% l('Link to Invoice') %]</option>
+                            <option name='action_view_invoice' disabled='disabled'>[% l('View Invoice(s)') %]</option>
+                            <option name='action_view_claim_policy'>[% l('Apply Claim Policy') %]</option>
+                            <option name='action_manage_claims'>[% l('Claims') %]</option>
+                            <option name='action_view_history'>[% l('View History') %]</option>
                         </select>
                     </td>
                     <td><span name='li_state'></span></td>
@@ -153,7 +153,7 @@
 
         <div id='acq-lit-copies-li-summary'></div>
 
-        <h3>Add/Edit Items</h3>
+        <h3>[% l('Add/Edit Items') %]</h3>
         <hr/>
 
         <div class='acq-lit-li-menu-bar'>
@@ -164,15 +164,15 @@
                             <button dojoType='dijit.form.Button' id='acq-lit-copies-back-to-invoice-button' 
                                 scrollOnFocus='false'>[% l('&#x2196; Return To Invoice') %]</button>
                         </span>
-                        <div dojoType='dijit.form.Button' id='acq-lit-copies-back-button' scrollOnFocus='false'>&#x2196; Return</div>
+                        <div dojoType='dijit.form.Button' id='acq-lit-copies-back-button' scrollOnFocus='false'>[% l('&#x2196; Return') %]</div>
                         <span style='margin-left:10px;padding-left:10px;border-left:2px solid #aaa;'>
-                            Item Count: 
+                            [% l('Item Count: ') %]
                             <input dojoType='dijit.form.NumberTextBox' jsId='acqLitCopyCountInput'  
                                 constraints="{min:0,max:1000,places:0}" style='width:40px' value='0'></input> 
-                            <div dojoType='dijit.form.Button' jsId='acqLitAddCopyCount' scrollOnFocus='false'>Go</div>
+                            <div dojoType='dijit.form.Button' jsId='acqLitAddCopyCount' scrollOnFocus='false'>[% l('Go') %]</div>
                         </span>
                         <span style='margin-left:10px;padding-left:10px;border-left:2px solid #aaa;'>
-                            <div dojoType='dijit.form.Button' jsId='acqLitSaveCopies' scrollOnFocus='false'>Save Changes</div>
+                            <div dojoType='dijit.form.Button' jsId='acqLitSaveCopies' scrollOnFocus='false'>[% l('Save Changes') %]</div>
                         </span>
                         <span id='acq-lit-update-copies-progress' class='hidden'>
                             <span dojoType="dijit.ProgressBar" style="width:300px" jsId="litUpdateCopiesProgress"></span>
@@ -187,7 +187,7 @@
             <tbody id='acq-lit-distrib-formula-tbody'>
                 <tr id='acq-lit-distrib-form-row'>
                     <td colspan='0'>
-                        <span>Distribution Formulas</span>
+                        <span>[% l('Distribution Formulas') %]</span>
                         <div name='selector'></div>
                         <div name='set_button'></div>
                         <div name="reset_button"></div>
@@ -197,7 +197,7 @@
             <tbody id="acq-lit-distrib-applied-tbody" class="hidden">
                 <tr>
                     <td colspan="5" id="acq-lit-distrib-applied-heading">
-                        Distribution formulas applied to this lineitem:
+                        [% l('Distribution formulas applied to this lineitem:') %]
                     </td>
                 </tr>
                 <tr id="acq-lit-distrib-applied-row" class="acq-lit-distrib-applied-row">
@@ -211,12 +211,12 @@
             <tbody><tr><td class='acq-lit-table-spacer' colspan='0'/></tr></tbody>
             <tbody style='font-weight:bold;'>
                 <tr>
-                    <td style='margin-top:30px;'>Owning Branch</td>
-                    <td>Shelving Location</td>
-                    <td>Collection Code</td>
-                    <td>Fund</td>
-                    <td>Circ Modifier</td>
-                    <td>Callnumber</td>
+                    <td style='margin-top:30px;'>[% l('Owning Branch') %]</td>
+                    <td>[% l('Shelving Location') %]</td>
+                    <td>[% l('Collection Code') %]</td>
+                    <td>[% l('Fund') %]</td>
+                    <td>[% l('Circ Modifier') %]</td>
+                    <td>[% l('Callnumber') %]</td>
                     <td colspan='0'></td>
                 </tr>
             </tbody>
@@ -229,7 +229,7 @@
                     <td><div name='circ_modifier'></div></td>
                     <td><div name='cn_label'></div></td>
                     <td colspan='3' style='text-align:left;'>
-                        <div dojoType='dijit.form.Button' jsId='acqLitBatchUpdateCopies' scrollOnFocus='false'>Batch Update</div>
+                        <div dojoType='dijit.form.Button' jsId='acqLitBatchUpdateCopies' scrollOnFocus='false'>[% l('Batch Update') %]</div>
                     </td>
                 </tr>
             </tbody>
@@ -238,15 +238,15 @@
             <tbody><tr><td class='acq-lit-table-spacer' colspan='0'></td></tr></tbody>
             <tbody style='font-weight:bold;'>
                 <tr>
-                    <td style='margin-top:30px;'>Owning Branch</td>
-                    <td>Shelving Location</td>
-                    <td>Collection Code</td>
-                    <td>Fund</td>
-                    <td>Circ Modifier</td>
-                    <td>Callnumber</td>
-                    <td>Barcode</td>
-                    <td>Notes</td>
-                    <td>Receiver</td>
+                    <td style='margin-top:30px;'>[% l('Owning Branch') %]</td>
+                    <td>[% l('Shelving Location') %]</td>
+                    <td>[% l('Collection Code') %]</td>
+                    <td>[% l('Fund') %]</td>
+                    <td>[% l('Circ Modifier') %]</td>
+                    <td>[% l('Callnumber') %]</td>
+                    <td>[% l('Barcode') %]</td>
+                    <td>[% l('Notes') %]</td>
+                    <td>[% l('Receiver') %]</td>
                     <td colspan='0'></td>
                 </tr>
             </tbody>
@@ -261,7 +261,7 @@
                     <td><div name='barcode'></div></td>
                     <td><div name='note'></div></td>
                     <td><div name='receiver'></div></td>
-                    <td><a href="javascript:void(0);" name="receive">Mark&nbsp;Received</a><a href="javascript:void(0);" name="unreceive">Un-Receive</a>&nbsp;<a href="javascript:void(0);" name="cancel">Cancel</a><span class="hidden" name="cancel_reason"></span>&nbsp;<a href="javascript:void(0);" name="claim">Claim</a></td>
+                    <td><a href="javascript:void(0);" name="receive">[% l('Mark&nbsp;Received') %]</a><a href="javascript:void(0);" name="unreceive">[% l('Un-Receive') %]</a>&nbsp;<a href="javascript:void(0);" name="cancel">[% l('Cancel') %]</a><span class="hidden" name="cancel_reason"></span>&nbsp;<a href="javascript:void(0);" name="claim">[% l('Claim') %]</a></td>
                     <td><div name='delete' dojoType='dijit.form.Button' style='color:red;' scrollOnFocus='false'>X</div></td>
                 </tr>
             </tbody>
@@ -271,17 +271,17 @@
 
     <!-- Copies table -->
     <div id='acq-lit-real-copies-div' class='hidden'>
-        <h2>Copies</h2>
+        <h2>[% l('Copies') %]</h2>
 
         <div class='acq-lit-li-menu-bar'>
             <table style='width:100%'>
                 <tr>
                     <td style='text-align:left;'>
-                        <div dojoType='dijit.form.Button' id='acq-lit-real-copies-back-button' scrollOnFocus='false'>&#x2196; Return</div>
+                        <div dojoType='dijit.form.Button' id='acq-lit-real-copies-back-button' scrollOnFocus='false'>[% l('&#x2196; Return') %]</div>
                     </td>
                     <td style='text-align:right;'>
                         <span>
-                            <div dojoType='dijit.form.Button' jsId='acqLitSaveRealCopies' scrollOnFocus='false'>Save Changes</div>
+                            <div dojoType='dijit.form.Button' jsId='acqLitSaveRealCopies' scrollOnFocus='false'>[% l('Save Changes') %]</div>
                         </span>
                     </td>
                 </tr>
@@ -291,11 +291,11 @@
         <table id='acq-lit-real-copies-table'>
             <tbody style='font-weight:bold;'>
                 <tr>
-                    <td style='margin-top:30px;'>Owning Branch</td>
-                    <td>Shelving Location</td>
-                    <td>Circ Modifier</td>
-                    <td>Callnumber</td>
-                    <td>Barcode</td>
+                    <td style='margin-top:30px;'>[% l('Owning Branch') %]</td>
+                    <td>[% l('Shelving Location') %]</td>
+                    <td>[% l('Circ Modifier') %]</td>
+                    <td>[% l('Callnumber') %]</td>
+                    <td>[% l('Barcode') %]</td>
                     <td colspan='0'></td>
                 </tr>
             </tbody>
@@ -342,32 +342,32 @@
         <div dojoType='dijit.Dialog' jsId='acqLitPoCreateDialog'>
             <table class='oils-generic-table'>
                 <tr>
-                    <td>Ordering Agency</td>
+                    <td>[% l('Ordering Agency') %]</td>
                     <td><div name='ordering_agency' id='acq-lit-po-agency'></div></td>
                 </tr>
                 <tr>
-                    <td>Provider</td>
+                    <td>[% l('Provider') %]</td>
                     <td><div name='provider' id='acq-lit-po-provider'></div></td>
                 </tr>
                 <tr>
-                    <td>Prepayment Required</td>
+                    <td>[% l('Prepayment Required') %]</td>
                     <td><input id="acq-lit-po-prepay" name="prepayment_required" dojoType="dijit.form.CheckBox"/></td>
                 </tr>
                 <tr>
-                    <td>All Lineitems</td>
+                    <td>[% l('All Lineitems') %]</td>
                     <td><input checked='checked' name='create_from' value='all' dojoType='dijit.form.RadioButton'/></td>
                 </tr>
                 <tr>
-                    <td>Selected Lineitems</td>
+                    <td>[% l('Selected Lineitems') %]</td>
                     <td><input name='create_from' value='selected' dojoType='dijit.form.RadioButton'/></td>
                 </tr>
                 <tr>
-                    <td>Import Bibs and Create Copies</td>
+                    <td>[% l('Import Bibs and Create Copies') %]</td>
                     <td><input name='create_assets' dojoType='dijit.form.CheckBox'/></td>
                 </tr>
                 <tr>
                     <td colspan='2'>
-                        <div dojoType='dijit.form.Button' type='submit' jsId='acqLitCreatePoSubmit'>Submit</div>
+                        <div dojoType='dijit.form.Button' type='submit' jsId='acqLitCreatePoSubmit'>[% l('Submit') %]</div>
                     </td>
                 </tr>
             </table>
@@ -380,41 +380,41 @@
                 <tr>
                     <td colspan='2'>
                         <input dojoType="dijit.form.RadioButton" name="which" type='radio' checked='checked' value='selected'/>
-                        <label for="name">Save selected</label>
+                        <label for="name">[% l('Save selected') %]</label>
                         <input dojoType="dijit.form.RadioButton" name="which" type='radio' value='all'/>
-                        <label for="name">Save all</label>
+                        <label for="name">[% l('Save all') %]</label>
                     </td>
                 </tr>
                 <tr><td colspan='2'><hr/></td></tr>
                 <tr>
-                    <td><label for="new_name">Save as Selection List: </label></td>
+                    <td><label for="new_name">[% l('Save as Selection List: ') %]</label></td>
                     <td><input dojoType="dijit.form.TextBox" name="new_name"/></td>
                 </tr>
                 <tr>
-                    <td><label for="existing_pl">Add to Selection List: </label></td>
+                    <td><label for="existing_pl">[% l('Add to Selection List: ') %]</label></td>
                     <td>
                         <input jsId="acqLitAddExistingSelect" dojoType="openils.widget.PCrudAutocompleteBox" fmclass="acqpl" searchAttr="name" name="existing_pl" />
                     </td>
                 </tr>
                 <tr>
                     <td colspan='2' align='center'>
-                        <button dojoType='dijit.form.Button' type="submit" jsId='acqLitSavePlButton'>Save</button>
+                        <button dojoType='dijit.form.Button' type="submit" jsId='acqLitSavePlButton'>[% l('Save') %]</button>
                     </td>
                 </tr>
             </table>
         </div>
 
         <div dojoType="dijit.Dialog" jsId="lidCancelDialog">
-            <label for="acq-lit-lid-cancel-reason">Reason:</label>
+            <label for="acq-lit-lid-cancel-reason">[% l('Reason:') %]</label>
             <span id="acq-lit-lid-cancel-reason"></span>
             <span dojoType="dijit.form.Button"
-                jsId="acqLidCancelButton">Cancel Copy</span>
+                jsId="acqLidCancelButton">[% l('Cancel Copy') %]</span>
         </div>
         <div dojoType="dijit.Dialog" jsId="liClaimPolicyDialog">
-            <label for="acq-lit-li-claim-policy">Claim policy:</label>
+            <label for="acq-lit-li-claim-policy">[% l('Claim policy:') %]</label>
             <span id="acq-lit-li-claim-policy"></span> &nbsp;
             <span dojoType="dijit.form.Button"
-                jsId="liClaimPolicySave">Save</span>
+                jsId="liClaimPolicySave">[% l('Save') %]</span>
         </div>
         <div dojoType="dijit.Dialog" jsId="liClaimDialog">
             [% INCLUDE "acq/common/claim_dialog.tt2" %]
@@ -422,24 +422,24 @@
         <div dojoType="dijit.Dialog" jsId="finalClaimDialog">
             [% INCLUDE "acq/common/final_claim_dialog.tt2" %]
         </div>
-        <div dojoType="dijit.Dialog" jsId="batchFundUpdateDialog" title="Batch Update Funds">
+        <div dojoType="dijit.Dialog" jsId="batchFundUpdateDialog" title="[% l('Batch Update Funds') %]">
             <div>
-                This will update the fund for all copies attached to these lineitems.<br/>
-                This will also update any existing encumbered or spent debits.
+                [% |l %]This will update the fund for all copies attached to these lineitems.<br/>
+                This will also update any existing encumbered or spent debits.[% END %]
             </div>
             <br/>
             <table class='oils-generic-table'>
                 <tr>
                     <td>
-                        <span>Select a new fund:</span>
+                        <span>[% l('Select a new fund:') %]</span>
                     </td>
                     <td>
                         <div id='acq-lit-batch-fund-selector'></div>
                     </td>
                 </tr>
                 <tr>
-                    <td><button dojoType='dijit.form.Button' jsId='batchFundUpdateCancel'>Cancel</button></td>
-                    <td><button dojoType='dijit.form.Button' jsId='batchFundUpdateSubmit'>Submit</button></td>
+                    <td><button dojoType='dijit.form.Button' jsId='batchFundUpdateCancel'>[% l('Cancel') %]</button></td>
+                    <td><button dojoType='dijit.form.Button' jsId='batchFundUpdateSubmit'>[% l('Submit') %]</button></td>
                 </tr>
             </table>
         </div>
@@ -450,15 +450,15 @@
             <tr>
                 <td>
                     <input dojoType="dijit.form.RadioButton" name="which" type='radio' checked='checked' value='selected'/>
-                    <label for="name">Mark selected</label>
+                    <label for="name">[% l('Mark selected') %]</label>
                     <input dojoType="dijit.form.RadioButton" name="which" type='radio' value='all'/>
-                    <label for="name">Mark all</label>
+                    <label for="name">[% l('Mark all') %]</label>
                 </td>
             </tr>
             <tr>
                 <td colspan='2' align='center'>
-                    <button dojoType='dijit.form.Button' type="submit" jsId='acqLitCancelLiStateButton'>Cancel</button>
-                    <button dojoType='dijit.form.Button' type="submit" jsId='acqLitSaveLiStateButton'>Go</button>
+                    <button dojoType='dijit.form.Button' type="submit" jsId='acqLitCancelLiStateButton'>[% l('Cancel') %]</button>
+                    <button dojoType='dijit.form.Button' type="submit" jsId='acqLitSaveLiStateButton'>[% l('Go') %]</button>
                 </td>
             </tr>
         </table>
diff --git a/Open-ILS/src/templates/acq/common/li_table_pager.tt2 b/Open-ILS/src/templates/acq/common/li_table_pager.tt2
index bdae5b2..bd8fb9b 100644
--- a/Open-ILS/src/templates/acq/common/li_table_pager.tt2
+++ b/Open-ILS/src/templates/acq/common/li_table_pager.tt2
@@ -2,7 +2,7 @@
 </script>
 <div id="acq-litpager-controls">
     <button id="acq-litpager-controls-prev" disabled="disabled">
-        &laquo; Prev
+        &laquo; [% l('Prev') %]
     </button>
     <span id="acq-litpager-controls-batch-range" class="hidden">
         <span id="acq-litpager-controls-batch-start"></span> &mdash;
@@ -12,6 +12,6 @@
         </span>
     </span>
     <button id="acq-litpager-controls-next" disabled="disabled">
-        Next &raquo;
+        [% l('Next') %] &raquo;
     </button>
 </div>
diff --git a/Open-ILS/src/templates/acq/common/notes.tt2 b/Open-ILS/src/templates/acq/common/notes.tt2
index 609cf6c..44c4b8e 100644
--- a/Open-ILS/src/templates/acq/common/notes.tt2
+++ b/Open-ILS/src/templates/acq/common/notes.tt2
@@ -4,34 +4,34 @@
             <table style="width:100%">
                 <tr>
                     <td style="text-align:left;">
-                        <div dojoType="dijit.form.Button" id="acq-[% which_lc %]-notes-back-button">&#x2196; Return</div>
+                        <div dojoType="dijit.form.Button" id="acq-[% which_lc %]-notes-back-button">&[% l('#x2196; Return') %]</div>
                     </td>
                     <td style="text-align:right;">
                         <div dojoType="dijit.form.DropDownButton">
-                            <span>New Note</span>
+                            <span>[% l('New Note') %]</span>
                             <div dojoType="dijit.TooltipDialog">
                                 <div class="acq-notes-note-row">
                                     <div jsId="acq[% which %]CreateNoteText" dojoType="dijit.form.Textarea" style="height:5em; width:25em;" name="note"></div>
                                     <div style="margin: 8px 0;">
-                                        <div dojoType="dijit.form.CheckBox" jsId="acq[% which %]CreateNoteVendorPublic" name="vendor_public" id="acq-[% which_lc %]-create-note-vendor-public"></div><label for="acq-[% which_lc %]-create-note-vendor-public">Note is vendor-public</label>
+                                        <div dojoType="dijit.form.CheckBox" jsId="acq[% which %]CreateNoteVendorPublic" name="vendor_public" id="acq-[% which_lc %]-create-note-vendor-public"></div><label for="acq-[% which_lc %]-create-note-vendor-public">[% l('Note is vendor-public') %]</label>
                                     </div>
                                 </div>
-                                <button jsId="acq[% which %]CreateNoteSubmit" dojoType="dijit.form.Button" type="submit">Create</button>
+                                <button jsId="acq[% which %]CreateNoteSubmit" dojoType="dijit.form.Button" type="submit">[% l('Create') %]</button>
                             </div>
                         </div>
 [% IF which == "Lit" %]
                         <div dojoType="dijit.form.DropDownButton">
-                            <span>New Alert</span>
+                            <span>[% l('New Alert') %]</span>
                             <div dojoType="dijit.TooltipDialog">
                                 <div class="acq-notes-note-row">
-                                    <label for="acq-lit-alert-alert-text">Choose alert code &nbsp;&nbsp;</label>
+                                    <label for="acq-lit-alert-alert-text">[% l('Choose alert code ') %]&nbsp;&nbsp;</label>
                                     <input id="acq-lit-alert-alert-text" jsId="acqLitAlertAlertText" dojoType="dijit.form.FilteringSelect" labelAttr="code" searchAttr="code" required="true" />
                                 </div>
                                 <div class="acq-notes-note-row">
-                                    <label for="acq-lit-alert-value">Additional comments</label>
+                                    <label for="acq-lit-alert-value">[% l('Additional comments') %]</label>
                                     <div jsId="acqLitAlertNoteValue" id="acq-lit-alert-value" dojoType="dijit.form.Textarea" name="value"></div>
                                 </div>
-                                <button jsId="acqLitCreateAlertSubmit" dojoType="dijit.form.Button" type="submit">Create</button>
+                                <button jsId="acqLitCreateAlertSubmit" dojoType="dijit.form.Button" type="submit">[% l('Create') %]</button>
                             </div>
                         </div>
 [% END %]
@@ -52,7 +52,7 @@
                         <td align="right" style="padding-right:30px;">
                             <span name="edit_time"></span>
                             <span style="padding-left:4px;">
-                                <a name="delete" href="javascript:void(0);" style="color:red;">Delete</a>
+                                <a name="delete" href="javascript:void(0);" style="color:red;">[% l('Delete') %]</a>
                             </span>
                         </td>
                     </tr>
diff --git a/Open-ILS/src/templates/acq/currency_type/list.tt2 b/Open-ILS/src/templates/acq/currency_type/list.tt2
index dfa5d2d..db48125 100644
--- a/Open-ILS/src/templates/acq/currency_type/list.tt2
+++ b/Open-ILS/src/templates/acq/currency_type/list.tt2
@@ -1,9 +1,9 @@
 [% WRAPPER base.tt2 %]
 <div dojoType="dijit.layout.ContentPane" layoutAlign="client" class='oils-header-panel'>
-    <div>Currency Type</div>
+    <div>[% l('Currency Type') %]</div>
     <div>
-        <button dojoType='dijit.form.Button' onClick='ctGrid.showCreateDialog()'>New Currency Type</button>
-        <button dojoType='dijit.form.Button' onClick='ctGrid.deleteSelected()'>Delete Selected</button>
+        <button dojoType='dijit.form.Button' onClick='ctGrid.showCreateDialog()'>[% l('New Currency Type') %]</button>
+        <button dojoType='dijit.form.Button' onClick='ctGrid.deleteSelected()'>[% l('Delete Selected') %]</button>
     </div>
 </div>
 <div dojoType="dijit.layout.ContentPane" layoutAlign="client">
diff --git a/Open-ILS/src/templates/acq/financial/claim_eligible.tt2 b/Open-ILS/src/templates/acq/financial/claim_eligible.tt2
index fc87842..2bb3a8a 100644
--- a/Open-ILS/src/templates/acq/financial/claim_eligible.tt2
+++ b/Open-ILS/src/templates/acq/financial/claim_eligible.tt2
@@ -1,10 +1,10 @@
 [% WRAPPER "base.tt2" %]
-[% ctx.page_title = "Items Eligible For Claiming" %]
+[% ctx.page_title = l("Items Eligible For Claiming") %]
 <script type="text/javascript">var filter = "[% ctx.page_args.0 %]";</script>
 <div>
-    <h1>Items Eligible For Claiming</h1>
+    <h1>[% l('Items Eligible For Claiming') %]</h1>
     <div class="oils-acq-basic-roomy">
-        Show items ready to claim for:
+        [% l('Show items ready to claim for:') %]
         <select
             dojoType="openils.widget.OrgUnitFilteringSelect"
             jsId="orderingAgency" searchAttr="shortname"
@@ -13,13 +13,13 @@
             jsId="progressDialog"></span>
     </div>
     <div class="oils-acq-basic-roomy">
-        <button name="claim_submit">Claim selected items</button>
+        <button name="claim_submit">[% l('Claim selected items') %]</button>
     </div>
     <table id="acq-eligible-li-table">
         <thead>
             <tr>
                 <th><input type="checkbox" name="selector_all" /></th>
-                <th>Items</th>
+                <th>[% l('Items') %]</th>
             </tr>
         </thead>
         <tbody>
@@ -31,20 +31,20 @@
                     <div name="description"></div>
                     <div name="lid_link_holder" class="hidden">
                         [ <a href="javascript:void(0);"
-                            name="lid_link">Consider individual copies
-                            for claiming</a> ]
+                            name="lid_link">[% l('Consider individual copies
+                            for claiming') %]</a> ]
                     </div>
                 </td>
             </tr>
             <tr><!-- empty template -->
                 <td colspan="2">
-                    <em>There were no items matching your search.</em>
+                    <em>[% l('There were no items matching your search.') %]</em>
                 </td>
             </tr>
         </tbody>
     </table>
     <div class="oils-acq-basic-roomy">
-        <button name="claim_submit">Claim selected items</button>
+        <button name="claim_submit">[% l('Claim selected items') %]</button>
     </div>
 </div>
 <div class="hidden">
diff --git a/Open-ILS/src/templates/acq/fund/list.tt2 b/Open-ILS/src/templates/acq/fund/list.tt2
index 6fa4b0d..110c08e 100644
--- a/Open-ILS/src/templates/acq/fund/list.tt2
+++ b/Open-ILS/src/templates/acq/fund/list.tt2
@@ -1,5 +1,5 @@
 [% WRAPPER 'base.tt2' %]
-[% ctx.page_title = 'Funds' %]
+[% ctx.page_title = l('Funds') %]
 
 <!-- load the page-specific JS -->
 <script type="text/javascript">
@@ -35,28 +35,28 @@
 <table style='width:100%;'>
     <tr>
         <!-- TODO CSS -->
-        <td style='text-align:left;font-size:130%;font-weight: bold;'>Funds</td>
+        <td style='text-align:left;font-size:130%;font-weight: bold;'>[% l('Funds') %]</td>
         <td style='text-align:right;width:90%;'>
 
-            <button dojoType='dijit.form.Button' onClick='createNewFund()'>New Fund</button>
-            <button dojoType='dijit.form.Button' onClick='lfGrid.deleteSelected()'>Delete Selected</button>
+            <button dojoType='dijit.form.Button' onClick='createNewFund()'>[% l('New Fund') %]</button>
+            <button dojoType='dijit.form.Button' onClick='lfGrid.deleteSelected()'>[% l('Delete Selected') %]</button>
 
             <div dojoType="dijit.form.DropDownButton">
-                <span>Fund Propagation &amp; Rollover</span>
+                <span>[% l('Fund Propagation &amp; Rollover') %]</span>
                 <div dojoType="dijit.TooltipDialog" execute="performRollover(arguments[0]);">
                     <table class='dijitTooltipTable' id='oils-acq-rollover-tooltip-table'>
                         <tr>
                             <td colspan='2'>
                                 <div style='width:400px;'>
-                                Propagation creates new funds for the subsequent fiscal year based on the
+                                [% |l %]Propagation creates new funds for the subsequent fiscal year based on the
                                 funds for the selected fiscal year.  Only funds with the propagate setting
                                 enabled will be affected.  No money or encumbrances are altered
-                                during this process.
+                                during this process.[% END %]
                                 </div>
                             </td>
                         </tr>
                         <tr>
-                            <td><label for="rollover">Perform Fiscal Year Close-out Operation: </label></td>
+                            <td><label for="rollover">[% l('Perform Fiscal Year Close-out Operation: ') %]</label></td>
                             <td>
                                 <input dojoType="dijit.form.CheckBox" name="rollover"> </input>
                             </td>
@@ -64,16 +64,16 @@
                         <tr>
                             <td colspan='2'>
                                 <div style='width:400px;'>
-                                The year end close out operation moves encumbrances from the selected fiscal
+                                [% |l %]The year end close out operation moves encumbrances from the selected fiscal
                                 year to the analogous funds in the subsequent fiscal year and it deactivates
                                 funds for the selected fiscal year.  Additionally, for all funds that have
                                 the "Rollover" setting enabled, this process will move all unspent money to
-                                the analogous fund in the subsequent fiscal year.
+                                the analogous fund in the subsequent fiscal year.[% END %]
                                 </div>
                             </td>
                         </tr>
                         <tr class="encumb_only hidden">
-                            <td><label for="encumb_only">Limit Fiscal Year Close-out Operation to Encumbrances: </label></td>
+                            <td><label for="encumb_only">[% l('Limit Fiscal Year Close-out Operation to Encumbrances: ') %]</label></td>
                             <td>
                                 <input dojoType="dijit.form.CheckBox" name="encumb_only"> </input>
                             </td>
@@ -81,22 +81,22 @@
                         <tr class="encumb_only hidden">
                             <td colspan='2'>
                                 <div style='width:400px;'>
-                                This modifies the above described Close-out Operation, causing funds to be
+                                [% |l %]This modifies the above described Close-out Operation, causing funds to be
                                 transfered into the void (that is, entirely removed) instead of being transfered
-                                to the analogous funds in the subsequent fiscal year.
+                                to the analogous funds in the subsequent fiscal year.[% END %]
                                 </div>
                             </td>
                         </tr>
                         <tr>
-                            <td>Context Org Unit:</td>
+                            <td>[% l('Context Org Unit:') %]</td>
                             <td><span id='oils-acq-rollover-ctxt-org'></span></td>
                         </tr>
                         <tr>
-                            <td>Include Funds for Descendant Org Units:</td>
+                            <td>[% l('Include Funds for Descendant Org Units:') %]</td>
                             <td><input dojoType=dijit.form.CheckBox name='child_orgs'/></td>
                         </tr>
                         <tr>
-                            <td><label for="dry_run">Dry Run: </label></td>
+                            <td><label for="dry_run">[% l('Dry Run: ') %]</label></td>
                             <td>
                                 <input dojoType="dijit.form.CheckBox" name="dry_run" checked='checked'> </input>
                             </td>
@@ -104,15 +104,15 @@
                         <tr>
                             <td colspan='2'>
                                 <div style='width:400px;'>
-                                When Dry Run is selected, the system will generate a summary of
+                                [% |l %]When Dry Run is selected, the system will generate a summary of
                                 the changes that would occur during the selected operation(s).
-                                No data will be changed.
+                                No data will be changed.[% END %]
                                 </div>
                             </td>
                         </tr>
                         <tr>
                             <td colspan='2' align='center'>
-                                <button dojoType=dijit.form.Button type="submit">Process</button>
+                                <button dojoType=dijit.form.Button type="submit">[% l('Process') %]</button>
                             </td>
                         </tr>
                     </table>
@@ -123,7 +123,7 @@
 </table>
 
 <div class="oils-acq-basic-roomy">
-    <span>Context Org Unit</span>
+    <span>[% l('Context Org Unit') %]</span>
     <select
         dojoType="openils.widget.OrgUnitFilteringSelect"
         jsId="contextOrgSelector"
@@ -131,14 +131,14 @@
         labelAttr="shortname">
     </select>
 
-    <span>Year</span>
+    <span>[% l('Year') %]</span>
     <select dojoType="dijit.form.FilteringSelect"
         jsId="fundFilterYearSelect"
         labelAttr="year"
         searchAttr="year">
     </select>
 
-    <div dojoType='dijit.form.Button' jsId='refreshButton'>Refresh</div>
+    <div dojoType='dijit.form.Button' jsId='refreshButton'>[% l('Refresh') %]</div>
 </div>
 
 <div dojoType="dijit.layout.ContentPane" layoutAlign="client">
@@ -146,7 +146,7 @@
         <div id='acq-fund-list-rollover-summary' class='hidden'>
             <div id='acq-fund-list-rollover-summary-header'> </div>
             <ul>
-                <li id='acq-fund-list-rollover-summary-dry-run'>These changes have <span class='oils-notify-text'>not</span> been committed yet.</li>
+                <li id='acq-fund-list-rollover-summary-dry-run'>[% l('These changes have <span class="oils-notify-text">not</span> been committed yet.') %]</li>
                 <li id='acq-fund-list-rollover-summary-funds'></li>
                 <li id='acq-fund-list-rollover-summary-rollover-amount'></li>
             </ul>
diff --git a/Open-ILS/src/templates/acq/fund/view.tt2 b/Open-ILS/src/templates/acq/fund/view.tt2
index 7eb63e3..78b45cd 100644
--- a/Open-ILS/src/templates/acq/fund/view.tt2
+++ b/Open-ILS/src/templates/acq/fund/view.tt2
@@ -2,13 +2,13 @@
 <script type="text/javascript"> var fundID = [% ctx.page_args.0 %] </script>
 
 <div id='oils-acq-list-header' class='container'>
-    <div id='oils-acq-list-header-label'>Fund Details</div>
+    <div id='oils-acq-list-header-label'>[% l('Fund Details') %]</div>
 </div>
 
 <div class='oils-acq-actions-div' style='margin:8px;'> <!-- XXX CSS -->
     <!-- Dropdown menu for creating a new funding source credit -->
     <div dojoType="dijit.form.DropDownButton">
-        <span>Create Allocation</span>
+        <span>[% l('Create Allocation') %]</span>
         <div dojoType="dijit.TooltipDialog" execute="createAllocation(arguments[0]);">
             <script type='dojo/connect' event='onOpen'>
                 openils.acq.FundingSource.createStore(
@@ -22,7 +22,7 @@
             </script>
             <table class='dijitTooltipTable'>
                 <tr>
-                    <td><label for="amount">Funding Source: </label></td>
+                    <td><label for="amount">[% l('Funding Source: ') %]</label></td>
                     <td>
                         <input jsId='fundingSourceSelector' name="funding_source" 
                                dojoType="dijit.form.FilteringSelect" searchAttr='code' labelAttr='code'>
@@ -30,7 +30,7 @@
                     </td>
                 </tr>
                 <tr>
-                    <td><label for="amount">Amount: </label></td>
+                    <td><label for="amount">[% l('Amount: ') %]</label></td>
                     <td>
                         <input dojoType="dijit.form.CurrencyTextBox" name="amount"> </input>
                     </td>
@@ -38,12 +38,12 @@
 
                 <!-- Percent-based allocations are not supported.  Will implement or remove later.
                 <tr>
-                    <td><label for="amount">Percent: </label></td>
+                    <td><label for="amount">[% l('Percent: ') %]</label></td>
                     <td>
                         <input 
                              dojoType="dijit.form.NumberTextBox" 
                              constraints="{min:0,max:100}" 
-                             promptMessage="Please enter an amount between 0 and 100"
+                             promptMessage="[% l('Please enter an amount between 0 and 100') %]"
                              name="percent"> 
                         </input>
                     </td>
@@ -51,21 +51,21 @@
                 -->
 
                 <tr>
-                    <td><label for="note">Note: </label></td>
+                    <td><label for="note">[% l('Note: ') %]</label></td>
                     <td>
                         <input dojoType="dijit.form.TextBox" name="note"> </input>
                     </td>
                 </tr>
                 <tr>
                     <td colspan='2' align='center'>
-                        <button dojoType="dijit.form.Button" type="submit">Apply</button>
+                        <button dojoType="dijit.form.Button" type="submit">[% l('Apply') %]</button>
                     </td>
                 </tr>
             </table>
         </div>
     </div> 
     <div dojoType="dijit.form.DropDownButton">
-        <span>Transfer Money</span>
+        <span>[% l('Transfer Money') %]</span>
         <div jsId="xferDialog" dojoType="dijit.TooltipDialog">
             <script type="dojo/connect" event="onOpen">
                 /* If a fund is selected (from a previous time that the
@@ -78,8 +78,8 @@
                 <tr>
                     <th>
                         <label for="oils-acq-fund-xfer-o-amount">
-                            Source amount<br />
-                            <em>Amount to transfer from<br />
+                            [% l('Source amount') %]<br />
+                            <em>[% l('Amount to transfer from') %]<br />
                                 <span id="oils-acq-fund-xfer-name-fund"></span>
                             </em>
                         </label>
@@ -93,7 +93,7 @@
                 <tr>
                     <th>
                         <label for="oils-acq-fund-xfer-d-selector">
-                            Destination fund
+                            [% l('Destination fund') %]
                         </label>
                     </th>
                     <td>
@@ -103,7 +103,7 @@
                 <tr id="oils-acq-fund-xfer-dest-amount" class="hidden">
                     <th>
                         <label for="oils-acq-fund-xfer-d-selector">
-                            Destination amount
+                            [% l('Destination amount') %]
                         </label>
                     </th>
                     <td>
@@ -112,7 +112,7 @@
                                 dojoType="dijit.form.CheckBox" checked="checked"
                                 value="1" name="same_o_d" />
                             <label for="oils-acq-fund-xfer-same-o-d">
-                                Same as source amount?
+                                [% l('Same as source amount?') %]
                             </label>
                         </div>
                         <div class="oils-acq-basic-roomy">
@@ -124,7 +124,7 @@
                 </tr>
                 <tr>
                     <th>
-                        <label for="oils-acq-fund-xfer-note">Note</label>
+                        <label for="oils-acq-fund-xfer-note">[% l('Note') %]</label>
                     </th>
                     <td>
                         <input dojoType="dijit.form.TextBox" name="note"
@@ -135,7 +135,7 @@
                     <td colspan="2" id="oils-acq-fund-xfer-submit-row">
                         <button onclick="xferManager.submit();"
                             dojoType="dijit.form.Button" type="submit">
-                            Transfer
+                            [% l('Transfer') %]
                         </button>
                     </td>
                 </tr>
@@ -150,24 +150,24 @@
 
         <!-- Fund Summary -->
         <div dojoType="dijit.layout.ContentPane" 
-             class='oils-acq-detail-content-pane' title="Summary" selected='true'>
+             class='oils-acq-detail-content-pane' title="[% l('Summary') %]" selected='true'>
             
             <div dojoType="dijit.layout.ContentPane" layoutAlign="top"> 
                 <div dojoType="dijit.layout.ContentPane" layoutAlign="client" style='height:600px;'> 
                     <table jsId="fundGrid" dojoType="dojox.grid.DataGrid" query="{id: '*'}" rowSelector='20px'> 
                         <thead> 
                             <tr> 
-                                <th field="id">ID</th> 
-                                <th field="name">Name</th> 
-                                <th field="code">Code</th> 
-                                <th field="currency_type">Currency Type</th> 
-                                <th field="org" get='getOrgInfo'>Owner</th> 
-                                <th field="combined_balance" get='getSummaryInfo'>Balance</th> 
-                                <th field="allocation_total" get='getSummaryInfo'>Total Allocated</th>
-                                <th field="spent_balance" get='getSummaryInfo'>Spent Balance</th>
-                                <th field="debit_total" get='getSummaryInfo'>Total Debits</th>
-                                <th field="spent_total" get='getSummaryInfo'>Total Spent</th>
-                                <th field="encumbrance_total" get='getSummaryInfo'>Total Encumbered</th>
+                                <th field="id">[% l('ID') %]</th> 
+                                <th field="name">[% l('Name') %]</th> 
+                                <th field="code">[% l('Code') %]</th> 
+                                <th field="currency_type">[% l('Currency Type') %]</th> 
+                                <th field="org" get='getOrgInfo'>[% l('Owner') %]</th> 
+                                <th field="combined_balance" get='getSummaryInfo'>[% l('Balance') %]</th> 
+                                <th field="allocation_total" get='getSummaryInfo'>[% l('Total Allocated') %]</th>
+                                <th field="spent_balance" get='getSummaryInfo'>[% l('Spent Balance') %]</th>
+                                <th field="debit_total" get='getSummaryInfo'>[% l('Total Debits') %]</th>
+                                <th field="spent_total" get='getSummaryInfo'>[% l('Total Spent') %]</th>
+                                <th field="encumbrance_total" get='getSummaryInfo'>[% l('Total Encumbered') %]</th>
                             </tr> 
                         </thead> 
                     </table>     
@@ -176,7 +176,7 @@
         </div>
 
         <!-- Fund Allocations -->
-        <div dojoType="dijit.layout.ContentPane" class='oils-acq-detail-content-pane' title="Allocations">
+        <div dojoType="dijit.layout.ContentPane" class='oils-acq-detail-content-pane' title="[% l('Allocations') %]">
             <script type='dojo/connect' event='onShow'>loadAllocationGrid();</script>
             
             <div dojoType="dijit.layout.ContentPane" layoutAlign="top"> 
@@ -204,11 +204,11 @@
         </div>
 
         <!--- Fund Debits -->
-        <div dojoType="dijit.layout.ContentPane" class='oils-acq-detail-content-pane' title="Debits">
+        <div dojoType="dijit.layout.ContentPane" class='oils-acq-detail-content-pane' title="[% l('Debits') %]">
             <script type='dojo/connect' event='onShow'>loadDebitGrid();</script>
             
             <div dojoType="dijit.layout.ContentPane" layoutAlign="top" style='height:600px;'> 
-                <button dojoType="dijit.form.Button" onClick="fundDebitGrid.refresh();">Refresh Grid</button>
+                <button dojoType="dijit.form.Button" onClick="fundDebitGrid.refresh();">[% l('Refresh Grid') %]</button>
                 <div dojoType="dijit.layout.ContentPane" layoutAlign="client">
 
                     <table 
@@ -226,14 +226,14 @@
             </div> 
         </div>
 
-        <div dojoType="dijit.layout.ContentPane" class="oils-acq-detail-content-pane" title="Tags">
+        <div dojoType="dijit.layout.ContentPane" class="oils-acq-detail-content-pane" title="[% l('Tags') %]">
             <script type="dojo/connect" event="onShow">
                 tagManager.displayFund(fund);
             </script>
             <div id="oils-acq-tag-manager-display"></div>
             <div id="oils-acq-tag-manager-add">
                 <div dojoType="dijit.form.DropDownButton">
-                    <span>Add Tag</span>
+                    <span>[% l('Add Tag') %]</span>
                     <div dojoType="dijit.TooltipDialog">
                         <select dojoType="dijit.form.FilteringSelect"
                             jsId="tagSelector">
diff --git a/Open-ILS/src/templates/acq/funding_source/list.tt2 b/Open-ILS/src/templates/acq/funding_source/list.tt2
index 432c471..cf89604 100644
--- a/Open-ILS/src/templates/acq/funding_source/list.tt2
+++ b/Open-ILS/src/templates/acq/funding_source/list.tt2
@@ -21,10 +21,10 @@
 <div dojoType="dijit.layout.ContentPane" layoutAlign="client">
 
     <div dojoType="dijit.layout.ContentPane" layoutAlign="top" class='oils-header-panel'>
-        <div>Funding Sources</div>
+        <div>[% l('Funding Sources') %]</div>
         <div>
-            <button dojoType='dijit.form.Button' onClick='fsGrid.showCreateDialog()'>New Funding Source</button>
-            <button dojoType='dijit.form.Button' onClick='fsGrid.deleteSelected()'>Delete Selected</button>
+            <button dojoType='dijit.form.Button' onClick='fsGrid.showCreateDialog()'>[% l('New Funding Source') %]</button>
+            <button dojoType='dijit.form.Button' onClick='fsGrid.deleteSelected()'>[% l('Delete Selected') %]</button>
         </div>
     </div>
 
diff --git a/Open-ILS/src/templates/acq/funding_source/view.tt2 b/Open-ILS/src/templates/acq/funding_source/view.tt2
index 6ab5794..61e1903 100644
--- a/Open-ILS/src/templates/acq/funding_source/view.tt2
+++ b/Open-ILS/src/templates/acq/funding_source/view.tt2
@@ -2,38 +2,38 @@
 <script type="text/javascript"> var fundingSourceID = [% ctx.page_args.0 %]; </script>
 
 <div id='oils-acq-list-header' class='container'>
-    <div id='oils-acq-list-header-label'>Funding Source Details</div>
+    <div id='oils-acq-list-header-label'>[% l('Funding Source Details') %]</div>
 </div>
 
 <div class='oils-acq-actions-div' style='margin:8px;'> <!-- XXX CSS -->
 
     <!-- Dropdown menu for creating a new funding source credit -->
     <div dojoType="dijit.form.DropDownButton">
-        <span>Apply Credit</span>
+        <span>[% l('Apply Credit') %]</span>
         <div dojoType="dijit.TooltipDialog" execute="applyFSCredit(arguments[0]);">
             <table class='dijitTooltipTable'>
                 <tr>
-                    <td><label for="amount">Amount: </label></td>
+                    <td><label for="amount">[% l('Amount: ') %]</label></td>
                     <td>
                         <input dojoType="dijit.form.CurrencyTextBox" name="amount"> </input>
                     </td>
                 </tr>
                 <tr>
-                    <td><label for="note">Note: </label></td>
+                    <td><label for="note">[% l('Note: ') %]</label></td>
                     <td>
                         <input dojoType="dijit.form.TextBox" name="note"> </input>
                     </td>
                 </tr>
                 <tr>
                     <td colspan='2' align='center'>
-                        <button dojoType=dijit.form.Button type="submit">Apply</button>
+                        <button dojoType=dijit.form.Button type="submit">[% l('Apply') %]</button>
                     </td>
                 </tr>
             </table>
         </div>
     </div> 
     <div dojoType="dijit.form.DropDownButton">
-        <span>Allocate to Fund</span>
+        <span>[% l('Allocate to Fund') %]</span>
         <div dojoType="dijit.TooltipDialog" execute="applyFSAllocation(arguments[0]);">
             <script type='dojo/connect' event='onOpen'>
                 openils.acq.Fund.createStore(
@@ -46,7 +46,7 @@
             </script>
             <table class='dijitTooltipTable'>
                 <tr>
-                    <td><label for="amount">Fund: </label></td>
+                    <td><label for="amount">[% l('Fund: ') %]</label></td>
                     <td>
                         <input jsId='fundingSourceFundSelector' name="fund" 
                             dojoType="dijit.form.FilteringSelect" searchAttr='code' labelAttr='code'>
@@ -54,33 +54,33 @@
                     </td>
                 </tr>
                 <tr>
-                    <td><label for="amount">Amount: </label></td>
+                    <td><label for="amount">[% l('Amount: ') %]</label></td>
                     <td>
                         <input dojoType="dijit.form.CurrencyTextBox" name="amount"> </input>
                     </td>
                 </tr>
                 <!-- Percent-based allocations are not supported.  Will implement or remove later.
                 <tr>
-                    <td><label for="amount">Percent: </label></td>
+                    <td><label for="amount">[% l('Percent: ') %]</label></td>
                     <td>
                         <input 
                             dojoType="dijit.form.NumberTextBox" 
                             constraints="{min:0,max:100}" 
-                            promptMessage="Please enter an amount between 0 and 100"
+                            promptMessage="[% l('Please enter an amount between 0 and 100') %]"
                             name="percent"> 
                         </input>
                     </td>
                 </tr>
                 -->
                 <tr>
-                    <td><label for="note">Note: </label></td>
+                    <td><label for="note">[% l('Note: ') %]</label></td>
                     <td>
                         <input dojoType="dijit.form.TextBox" name="note"> </input>
                     </td>
                 </tr>
                 <tr>
                     <td colspan='2' align='center'>
-                        <button dojoType=dijit.form.Button type="submit">Apply</button>
+                        <button dojoType=dijit.form.Button type="submit">[% l('Apply') %]</button>
                     </td>
                 </tr>
             </table>
@@ -91,7 +91,7 @@
 <div dojoType="dijit.layout.ContentPane" layoutAlign="top">
     <div dojoType="dijit.layout.TabContainer">
 
-        <div dojoType="dijit.layout.ContentPane" class='oils-acq-detail-content-pane' title="Summary" selected='true'>
+        <div dojoType="dijit.layout.ContentPane" class='oils-acq-detail-content-pane' title="[% l('Summary') %]" selected='true'>
             <script type='dojo/connect' event='onShow'>loadFSGrid();</script>
 
             <div dojoType="dijit.layout.ContentPane" layoutAlign="top"> 
@@ -99,14 +99,14 @@
                     <table jsId="fundingSourceGrid" dojoType="dojox.grid.DataGrid" query="{id: '*'}" rowSelector='20px'> 
                         <thead> 
                             <tr> 
-                                <th field="id">ID</th> 
-                                <th field="name" width='auto'>Name</th> 
-                                <th field="code">Code</th> 
-                                <th field="balance" get='getSummaryInfo'>Balance</th>
-                                <th field="credit_total" get='getSummaryInfo'>Total Credits</th>
-                                <th field="allocation_total" get='getSummaryInfo'>Total Debits</th>
-                                <th field="currency_type">Currency Type</th> 
-                                <th field="owner" width='auto' get='getOrgInfo'>Owner</th>
+                                <th field="id">[% l('ID') %]</th> 
+                                <th field="name" width='auto'>[% l('Name') %]</th> 
+                                <th field="code">[% l('Code') %]</th> 
+                                <th field="balance" get='getSummaryInfo'>[% l('Balance') %]</th>
+                                <th field="credit_total" get='getSummaryInfo'>[% l('Total Credits') %]</th>
+                                <th field="allocation_total" get='getSummaryInfo'>[% l('Total Debits') %]</th>
+                                <th field="currency_type">[% l('Currency Type') %]</th> 
+                                <th field="owner" width='auto' get='getOrgInfo'>[% l('Owner') %]</th>
                             </tr> 
                         </thead> 
                     </table>     
@@ -114,7 +114,7 @@
             </div>               
         </div>
  
-        <div dojoType="dijit.layout.ContentPane" class='oils-acq-detail-content-pane' title="Credits">
+        <div dojoType="dijit.layout.ContentPane" class='oils-acq-detail-content-pane' title="[% l('Credits') %]">
             <script type='dojo/connect' event='onShow'>loadCreditGrid(); </script> 
 
             <div dojoType="dijit.layout.ContentPane" layoutAlign="top"> 
@@ -136,7 +136,7 @@
         </div>
 
         <!-- Fund Allocations -->
-        <div dojoType="dijit.layout.ContentPane" class='oils-acq-detail-content-pane' title="Allocations">
+        <div dojoType="dijit.layout.ContentPane" class='oils-acq-detail-content-pane' title="[% l('Allocations') %]">
             <script type='dojo/connect' event='onShow'>loadAllocationGrid();</script>
             
             <div dojoType="dijit.layout.ContentPane" layoutAlign="top"> 
diff --git a/Open-ILS/src/templates/acq/invoice/receive.tt2 b/Open-ILS/src/templates/acq/invoice/receive.tt2
index f728a7b..1a964a6 100644
--- a/Open-ILS/src/templates/acq/invoice/receive.tt2
+++ b/Open-ILS/src/templates/acq/invoice/receive.tt2
@@ -1,5 +1,5 @@
 [% WRAPPER "base.tt2" %]
-[% ctx.page_title = "Acquisitions Invoice Receiving" %]
+[% ctx.page_title = l("Acquisitions Invoice Receiving") %]
 <script type="text/javascript">var inv_id = "[% ctx.page_args.0 %]";</script>
 <script type="text/javascript"
     src="[% ctx.media_prefix %]/js/ui/default/acq/invoice/receive.js"></script>
@@ -23,44 +23,42 @@
     <p><strong id="inv-header"></strong></p>
     <p id="inv-copy-count-info"></p>
     <div id="non-empty">
-        <p>The remaining are listed below.</p>
+        <p>[% l('The remaining are listed below.') %]</p>
         <p>
-            <span id="set-list-mode">[ <a id="set-list-mode-link" href="javascript:void(0);">Use List Mode</a> ]</span>
-            <span id="set-number-mode">[ <a id="set-number-mode-link" href="javascript:void(0);">Use Numeric Mode</a> ]</span>
+            <span id="set-list-mode">[ <a id="set-list-mode-link" href="javascript:void(0);">[% l('Use List Mode') %]</a> ]</span>
+            <span id="set-number-mode">[ <a id="set-number-mode-link" href="javascript:void(0);">[% l('Use Numeric Mode') %]</a> ]</span>
         </p>
         <div class="receive-button">
-            <button onclick="copy_table.receive_selected();">Receive Selected
-                Copies</button>
+            <button onclick="copy_table.receive_selected();">[% l('Receive Selected Copies') %]</button>
         </div>
         <table id="copy_table" width="100%">
             <thead id="list-mode-headings">
                 <tr>
                     <th>
                         <input type="checkbox" checked="checked" id="select_all"
-                            /><label for="select_all"> Select All</label>
+                            /><label for="select_all">[% l(' Select All') %]</label>
                     </th>
-                    <th>Owning Branch</th>
-                    <th>Shelving Location</th>
-                    <th>Collection Code</th>
-                    <th>Fund</th>
-                    <th>Circ Modifier</th>
-                    <th>Callnumber</th>
-                    <th>Barcode</th>
+                    <th>[% l('Owning Branch') %]</th>
+                    <th>[% l('Shelving Location') %]</th>
+                    <th>[% l('Collection Code') %]</th>
+                    <th>[% l('Fund') %]</th>
+                    <th>[% l('Circ Modifier') %]</th>
+                    <th>[% l('Callnumber') %]</th>
+                    <th>[% l('Barcode') %]</th>
                 </tr>
             </thead>
             <tbody id="rows-here">
             </tbody>
         </table>
         <div class="receive-button">
-            <button onclick="copy_table.receive_selected();">Receive Selected
-                Copies</button>
+            <button onclick="copy_table.receive_selected();">[% l('Receive Selected Copies') %]</button>
         </div>
     </div>
     <div class="hidden" id="empty">
-        This invoice has no more copies to receive.
+        [% l('This invoice has no more copies to receive.') %]
     </div>
     <p>
-        <button onclick="copy_table.back_to_invoice();">Return to Invoice</button>
+        <button onclick="copy_table.back_to_invoice();">[% l('Return to Invoice') %]</button>
     </p>
     <div class="hidden">
         <div dojoType="openils.widget.ProgressDialog" jsId="progress_dialog"></div>
diff --git a/Open-ILS/src/templates/acq/invoice/view.tt2 b/Open-ILS/src/templates/acq/invoice/view.tt2
index 31f8581..3871c64 100644
--- a/Open-ILS/src/templates/acq/invoice/view.tt2
+++ b/Open-ILS/src/templates/acq/invoice/view.tt2
@@ -1,11 +1,11 @@
 [% WRAPPER 'base.tt2' %]
-[% ctx.page_title = 'Invoicing' %]
+[% ctx.page_title = l('Invoicing') %]
 <div dojoType="dijit.layout.ContentPane" style="height:100%">
 
     <div dojoType="dijit.layout.ContentPane" layoutAlign="client" class='oils-header-panel'>
-        <div> Invoice </div>
+        <div>[% l(' Invoice ') %]</div>
         <div id="acq-view-invoice-receive" class="hidden">
-            <button id="acq-view-invoice-receive-link">Receive Items</button>
+            <button id="acq-view-invoice-receive-link">[% l('Receive Items') %]</button>
         </div>
     </div>
 
@@ -51,7 +51,7 @@
 
         <div dojoType="dijit.layout.TabContainer" style="width: 96%; height: 100%;" doLayout='false'>
             <div dojoType="dijit.layout.ContentPane" 
-                class='oils-acq-detail-content-pane' title="Invoice" selected='true'>
+                class='oils-acq-detail-content-pane' title="[% l('Invoice') %]" selected='true'>
 
                 <script type='dojo/connect' event='onShow'>
                     // the table is left at display=none on subsequent tab views
@@ -72,12 +72,12 @@
                     <!-- acq.invoice_entry -->
                     <thead id='acq-invoice-entry-thead' class='hidden'>
                         <tr>
-                            <th colspan='2'>Title Details</th>
-                            <th class='acq-invoice-center-col'>#&nbsp;Invoiced&nbsp;/&nbsp;#&nbsp;Paid</th>
-                            <th class='acq-invoice-center-col'>Billed</th>
-                            <th class='acq-invoice-paid-per-copy-col'>Per Copy</th>
-                            <th class='acq-invoice-paid-col'>Paid</th>
-                            <th class='acq-invoice-center-col hide-complete'>Detach</th>
+                            <th colspan='2'>[% l('Title Details') %]</th>
+                            <th class='acq-invoice-center-col'>[% l('#&nbsp;Invoiced&nbsp;/&nbsp;#&nbsp;Paid') %]</th>
+                            <th class='acq-invoice-center-col'>[% l('Billed') %]</th>
+                            <th class='acq-invoice-paid-per-copy-col'>[% l('Per Copy') %]</th>
+                            <th class='acq-invoice-paid-col'>[% l('Paid') %]</th>
+                            <th class='acq-invoice-center-col hide-complete'>[% l('Detach') %]</th>
                         </tr>
                     </thead>
                     <tbody id='acq-invoice-entry-tbody' class='hidden'>
@@ -92,26 +92,26 @@
                             <td class='acq-invoice-billed-col'><div name='cost_billed'></div></td>
                             <td><div name='amount_paid_per_copy'>0.00</div></td>
                             <td class='acq-invoice-paid-col'><div name='amount_paid'></div></td>
-                            <td class='acq-invoice-center-col hide-complete'><a href='javascript:void(0);' name='detach'>Detach</a></td>
+                            <td class='acq-invoice-center-col hide-complete'><a href='javascript:void(0);' name='detach'>[% l('Detach') %]</a></td>
                         </tr>
                     </tbody>
                     <tbody>
                         <tr>
                             <td  style='margin-top:15px;' colspan='0'>
-                                <h3>Direct Charges, Taxes, Fees, etc.</h3>
+                                <h3>[% l('Direct Charges, Taxes, Fees, etc.') %]</h3>
                             </td>
                         </tr>
                     </tbody>
                     <!-- acq.invoice_item -->
                     <thead>
                         <tr>
-                            <th>Charge Type</th>
-                            <th class='acq-invoice-center-col'>Fund</th>
-                            <th>Title/Description</th>
-                            <th class='acq-invoice-center-col'>Billed</th>
+                            <th>[% l('Charge Type') %]</th>
+                            <th class='acq-invoice-center-col'>[% l('Fund') %]</th>
+                            <th>[% l('Title/Description') %]</th>
+                            <th class='acq-invoice-center-col'>[% l('Billed') %]</th>
                             <th/>
-                            <th class='acq-invoice-paid-col'>Paid</th>
-                            <th class='acq-invoice-center-col hide-complete'>Delete</th>
+                            <th class='acq-invoice-paid-col'>[% l('Paid') %]</th>
+                            <th class='acq-invoice-center-col hide-complete'>[% l('Delete') %]</th>
                         </tr>
                     </thead>
                     <tbody id='acq-invoice-item-tbody'>
@@ -122,13 +122,13 @@
                             <td class='acq-invoice-center-col acq-invoice-billed-col'><div name='cost_billed'></div></td>
                             <td/>
                             <td class='acq-invoice-paid-col'><div name='amount_paid'></div></td>
-                            <td class='acq-invoice-center-col hide-complete'><a href='javascript:void(0);' name='delete'>Delete</a></td>
+                            <td class='acq-invoice-center-col hide-complete'><a href='javascript:void(0);' name='delete'>[% l('Delete') %]</a></td>
                         </tr>
                     </tbody>
                     <tbody class='hide-complete'>
                         <tr>
                             <td colspan='0'>
-                                <a href='javascript:void(0);' id='acq-invoice-new-item'>Add Charge...</a>
+                                <a href='javascript:void(0);' id='acq-invoice-new-item'>[% l('Add Charge...') %]</a>
                             </td>
                         </tr>
                     </tbody>
@@ -142,10 +142,10 @@
                     <thead>
                         <tr>
                             <th colspan='3'/>
-                            <th class='acq-invoice-center-col acq-invoice-billed-col'>Total</th>
+                            <th class='acq-invoice-center-col acq-invoice-billed-col'>[% l('Total') %]</th>
                             <th/>
-                            <th class='acq-invoice-paid-col'>Total</th>
-                            <th class='acq-invoice-center-col acq-invoice-balance-col'>Balance</th>
+                            <th class='acq-invoice-paid-col'>[% l('Total') %]</th>
+                            <th class='acq-invoice-center-col acq-invoice-balance-col'>[% l('Balance') %]</th>
                         </tr>
                     </thead>
                     <tbody>
@@ -174,7 +174,7 @@
             </div> <!-- tab 1 -->
 
             <div dojoType="dijit.layout.ContentPane" 
-                class='oils-acq-detail-content-pane' title="Search">
+                class='oils-acq-detail-content-pane' title="[% l('Search') %]">
     
                 <script type='dojo/connect' event='onShow'>
                     // hide summary info when opening the search tab
@@ -188,24 +188,23 @@
 
                     <div id="acq-unified-form">
                         <div>
+                            [%# TODO - i18n - fix constructed string %]
                             <label for="acq-unified-result-type">[% l('Search for') %]</label>
                             <select id="acq-unified-result-type" disabled='disabled'>
-                                <option value="lineitem">line items</option>
+                                <option value="lineitem">[% l('line items') %]</option>
                             </select>
-                            <label for="acq-unified-conjunction">matching</label>
+                            <label for="acq-unified-conjunction">[% l('matching') %]</label>
                             <select id="acq-unified-conjunction">
-                                <option value="and">all</option>
-                                <option value="or">any</option>
+                                <option value="and">[% l('all') %]</option>
+                                <option value="or">[% l('any') %]</option>
                             </select>
                             <label for="acq-unified-conjunction">
-                                of the following terms
-                            </label> (
+                                [% l('of the following terms') %]
+                            </label>
                             <input type="checkbox" id="acq-unified-build-progressively" />
                             <label for="acq-unified-build-progressively">
-                                building the results list progressively
-                            </label> )
-
-
+                                [% l('(building the results list progressively)') %]
+                            </label>
                         </div>
                         <div id="acq-unified-terms">
                             <table id="acq-unified-terms-table">
@@ -217,23 +216,23 @@
                                         <td name="match"
                                             class="acq-unified-terms-match">
                                             <select>
-                                                <option value="">is</option>
-                                                <option value="__not">is NOT</option>
+                                                <option value="">[% l('is') %]</option>
+                                                <option value="__not">[% l('is NOT') %]</option>
                                                 <option value="__fuzzy" disabled="disabled">
-                                                    contains
+                                                    [% l('contains') %]
                                                 </option>
                                                 <option value="__not,__fuzzy"
                                                     disabled="disabled">
-                                                    does NOT contain
+                                                    [% l('does NOT contain') %]
                                                 </option>
                                                 <option value="__lte" disabled="disabled">
-                                                    is on or BEFORE
+                                                    [% l('is on or BEFORE') %]
                                                 </option>
                                                 <option value="__gte" disabled="disabled">
-                                                    is on or AFTER
+                                                    [% l('is on or AFTER') %]
                                                 </option>
                                                 <option value="__in" disabled="disabled">
-                                                    matches a term from a file
+                                                    [% l('matches a term from a file') %]
                                                 </option>
                                             </select>
                                         </td>
@@ -246,7 +245,7 @@
                             </table>
                         </div>
                         <div id="acq-unified-add-term">
-                            <button onclick="termManager.addRow()">Add Search Term</button>
+                            <button onclick="termManager.addRow()">[% l('Add Search Term') %]</button>
                         </div>
                         <table width='100%'><tr>
                             <td align='left'>
@@ -314,17 +313,17 @@
     <!--</div>--> <!-- end contentpane -->
 </div>
 <div dojoType='openils.widget.ProgressDialog' jsId='progressDialog'></div>
-<div jsId='extraItemsDialog' dojoType="dijit.Dialog" title="Extra Items">
+<div jsId='extraItemsDialog' dojoType="dijit.Dialog" title="[% l('Extra Items') %]">
     <div dojoType="dijit.layout.ContentPane" style='text-align:center;'>
         <div id='acq-invoice-extra-copies-message'></div>
         <br/>
-        Select a fund for the new items: <div id='acq-invoice-extra-copies-fund'></div>
+        [% l('Select a fund for the new items: [_1]', '<div id="acq-invoice-extra-copies-fund"></div>') %]
         <br/><br/>
         <br/><br/>
         <span style='padding-right: 10px;'>
-            <button dojoType='dijit.form.Button' jsId='extraCopiesCancel'>Cancel</button>
+            <button dojoType='dijit.form.Button' jsId='extraCopiesCancel'>[% l('Cancel') %]</button>
         </span>
-        <button dojoType='dijit.form.Button' jsId='extraCopiesGo'>Add New Items</button>
+        <button dojoType='dijit.form.Button' jsId='extraCopiesGo'>[% l('Add New Items') %]</button>
     </div>
 </div>
 <script type="text/javascript">
diff --git a/Open-ILS/src/templates/acq/lineitem/findbib.tt2 b/Open-ILS/src/templates/acq/lineitem/findbib.tt2
index 57c1142..42aeaff 100644
--- a/Open-ILS/src/templates/acq/lineitem/findbib.tt2
+++ b/Open-ILS/src/templates/acq/lineitem/findbib.tt2
@@ -1,5 +1,5 @@
 [% WRAPPER "base.tt2" %]
-[% ctx.page_title = "Locate Bib Record" %]
+[% ctx.page_title = l("Locate Bib Record") %]
 <script type="text/javascript">
     function iterateSubfields(item) {
         var out = '';
@@ -11,7 +11,7 @@
 
 <div id='acq-findbib-search' style='margin:30px; border:1px solid #333; text-align:center;'>
     <input dojoType='dijit.form.TextBox' jsId='searchQuery' style='width:500px;'></input>
-    <button dojoType='dijit.form.Button' onclick='doSearch'>Search</button>
+    <button dojoType='dijit.form.Button' onclick='doSearch'>[% l('Search') %]</button>
 </div>
 
 <div style='width:100%; ' id='acq-findbib-container'>
@@ -28,8 +28,8 @@
                 </div>
             </div>
             <div>
-                <span><a name='view-marc' href='javascript:void(0);'>View MARC</a></span>
-                <span><a name='select-rec' href='javascript:void(0);'>Select</a></span>
+                <span><a name='view-marc' href='javascript:void(0);'>[% l('View MARC') %]</a></span>
+                <span><a name='select-rec' href='javascript:void(0);'>[% l('Select') %]</a></span>
                 <span type='opac/slot-data' query='datafield[tag=020]'>
                     <script type='opac/slot-format'>return iterateSubfields(item)</script>
                 </span> 
@@ -62,12 +62,12 @@
 </style>
 
 <div id='marc-div' class='hidden'>
-    <button dojoType='dijit.form.Button' onclick='openils.Util.hide("marc-div");'>Hide</button>
+    <button dojoType='dijit.form.Button' onclick='openils.Util.hide("marc-div");'>[% l('Hide') %]</button>
     <div style='text-align:left;'>
         <div id='marc-html-div'></div>
     </div>
 </div>
-<div jsId='progressDialog' dojoType='openils.widget.ProgressDialog' message='Searching....'></div>
+<div jsId='progressDialog' dojoType='openils.widget.ProgressDialog' message='[% l('Searching....') %]'></div>
 
 <script type="text/javascript" src="[% ctx.media_prefix %]/js/ui/default/acq/lineitem/findbib.js"></script>
 [% END %]
diff --git a/Open-ILS/src/templates/acq/lineitem/history.tt2 b/Open-ILS/src/templates/acq/lineitem/history.tt2
index d4743a7..d3d1b89 100644
--- a/Open-ILS/src/templates/acq/lineitem/history.tt2
+++ b/Open-ILS/src/templates/acq/lineitem/history.tt2
@@ -1,6 +1,6 @@
 [% WRAPPER "base.tt2" %]
-[% ctx.page_title = "Lineitem History" %]
-<h1>Lineitem History</h1>
+[% ctx.page_title = l("Lineitem History") %]
+<h1>[% l('Lineitem History') %]</h1>
 <br/>
 <div dojoType="dijit.layout.ContentPane" layoutAlign="client">
     <table  jsId="lhGrid"
diff --git a/Open-ILS/src/templates/acq/lineitem/related.tt2 b/Open-ILS/src/templates/acq/lineitem/related.tt2
index 43a82d4..fe2f527 100644
--- a/Open-ILS/src/templates/acq/lineitem/related.tt2
+++ b/Open-ILS/src/templates/acq/lineitem/related.tt2
@@ -1,7 +1,7 @@
 [% WRAPPER "base.tt2" %]
-[% ctx.page_title = "Related Lineitems" %]
+[% ctx.page_title = l("Related Lineitems") %]
 <script type="text/javascript">var targetId = "[% ctx.page_args.0 %]";</script>
-<h1>Related Lineitems</h1>
+<h1>[% l('Related Lineitems') %]</h1>
 <div id="acq-related-mini">
     <script type="text/javascript">
         function iterateSubfields(item) {
@@ -38,13 +38,13 @@
 
     <div id="acq-related-li-create-holder">
         <button jsId="addToPlButton" dojoType="dijit.form.Button">
-            Add to Selection List
+            [% l('Add to Selection List') %]
         </button>
         <button jsId="addToPoButton" dojoType="dijit.form.Button">
-            Add to Purchase Order
+            [% l('Add to Purchase Order') %]
         </button>
         <button jsId="createPoButton" dojoType="dijit.form.Button">
-            Create Purchase Order
+            [% l('Create Purchase Order') %]
         </button>
     </div>
 
@@ -52,12 +52,12 @@
         <div dojoType="dijit.Dialog" jsId='addToPoDialog'>
             <table class='dijitTooltipTable'>
                 <tr>
-                    <td><label>Enter the PO #: </label></td>
+                    <td><label>[% l('Enter the PO #: ') %]</label></td>
                     <td><input jsId='addToPoInput' dojoType="dijit.form.TextBox" /></td>
                 </tr>
                 <tr>
                     <td colspan='2' align='center'>
-                        <button dojoType='dijit.form.Button' jsId='addToPoSave' type="submit">Save</button>
+                        <button dojoType='dijit.form.Button' jsId='addToPoSave' type="submit">[% l('Save') %]</button>
                     </td>
                 </tr>
             </table>
diff --git a/Open-ILS/src/templates/acq/lineitem/search.tt2 b/Open-ILS/src/templates/acq/lineitem/search.tt2
index 730f910..8896106 100644
--- a/Open-ILS/src/templates/acq/lineitem/search.tt2
+++ b/Open-ILS/src/templates/acq/lineitem/search.tt2
@@ -1,8 +1,8 @@
 [% WRAPPER 'base.tt2' %]
-[% ctx.page_title = 'Lineitem Search' %]
+[% ctx.page_title = l('Lineitem Search') %]
 <!-- later: "[% ctx.page_args.0 %]" -->
 <div id="oils-acq-li-search-form-holder" class="hidden">
-    <h1 class="oils-acq-li-search">Lineitem Search</h1>
+    <h1 class="oils-acq-li-search">[% l('Lineitem Search') %]</h1>
     <form dojoType="dijit.form.Form" action="" method=""
         id="oils-acq-li-search-form" jsId="searchForm">
         <script type="dojo/method" event="onSubmit">
@@ -12,7 +12,7 @@
 
         <div class="oils-acq-li-search-form-row">
             <label class="oils-acq-li-search" for="state_selector">
-                Lineitem state
+                [% l('Lineitem state') %]
             </label>
             <input class="oils-acq-li-search" name="state"
                 dojoType="dijit.form.FilteringSelect" required="false"
@@ -20,7 +20,7 @@
                 labelAttr="description" searchAttr="description"
                 />
             <label class="oils-acq-li-search" for="agency_selector">
-                PO ordering agency
+                [% l('PO ordering agency') %]
             </label>
             <input class="oils-acq-li-search" id="agency_selector" />
         </div>
@@ -30,7 +30,7 @@
                 id="attr_search_type_none" value="none" checked="checked"
                 onChange="toggleAttrSearchType(this.value, this.checked);" />
             <label for="attr_search_type_none" class="oils-acq-li-search">
-                No further attributes to search by
+                [% l('No further attributes to search by') %]
             </label>
         </div>
         <div class="oils-acq-li-search-form-row">
@@ -42,42 +42,42 @@
                 style="vertical-align: top;"
                 onChange="toggleAttrSearchType(this.value, this.checked);" />
             <label for="attr_search_type_scalar" class="oils-acq-li-search">
-                Search by attribute values
+                [% l('Search by attribute values') %]
             </label>
             <div id="oils-acq-li-search-attr-scalar" class="hidden">
 <!--            <div class="oils-acq-li-search-conjunction">
-                    <em>Show results for which:</em><br />
+                    <em>[% l('Show results for which:') %]</em><br />
                     <input dojoType="dijit.form.RadioButton"
                         id="scalar_search_conjuction_or"
                         name="scalar_search_conjunction" value="or"
                         checked="checked" class="oils-acq-li-search" />
                     <label for="scalar_search_conjuction_or"
-                        class="oils-acq-li-search">ANY of the following terms match</label>
+                        class="oils-acq-li-search">[% l('ANY of the following terms match') %]</label>
                     <br />
                     <input dojoType="dijit.form.RadioButton"
                         id="scalar_search_conjuction_and"
                         name="scalar_search_conjunction" value="and"
                         class="oils-acq-li-search" />
                     <label for="scalar_search_conjuction_and"
-                        class="oils-acq-li-search">ALL of the following terms match</label>
+                        class="oils-acq-li-search">[% l('ALL of the following terms match') %]</label>
                 </div> -->
                 <div class="oils-acq-li-search-scalar hidden"
                     id="oils-acq-li-search-scalar-template">
                     <input class="oils-acq-li-search" name="def" />
                     <input class="oils-acq-li-search" name="value" />
-                    <a class="oils-acq-li-search" title="Remove this row"
+                    <a class="oils-acq-li-search" title="[% l('Remove this row') %]"
                         href="javascript:void(0);" />(X)</a>
                 </div>
                 <div id="oils-acq-li-search-scalar-adder">
                     <span dojoType="dijit.form.Button"
                         class="oils-acq-li-search"
                         onclick="scalarAttrSearchManager.add();">
-                        Add more search terms
+                        [% l('Add more search terms') %]
                     </span>
                     <span dojoType="dijit.form.Button"
                         class="oils-acq-li-search"
                         onclick="scalarAttrSearchManager.newBrief();">
-                        New brief record like this
+                        [% l('New brief record like this') %]
                     </span>
                 </div>
             </div>
@@ -88,7 +88,7 @@
                 id="attr_search_type_array" value="array"
                 onChange="toggleAttrSearchType(this.value, this.checked);" />
             <label for="attr_search_type_array" class="oils-acq-li-search">
-                Provide a file of search terms
+                [% l('Provide a file of search terms') %]
             </label>
             <div id="oils-acq-li-search-attr-array" class="hidden">
                 <input class="oils-acq-li-search"
@@ -96,17 +96,17 @@
                     jsId="attrArrayDefSelector"
                     labelAttr="description" searchAttr="description" />
                 <span class="oils-acq-li-search">
-                    <span id="records-up">0</span> term(s) prepared for search
+                    [% l('[_1] term(s) prepared for search', '<span id="records-up">0</span>') %]
                 </span>
                 <span class="oils-acq-li-search" dojoType="dijit.form.Button"
-                    onClick="loadTermsFromFile();">Add file</span>
+                    onClick="loadTermsFromFile();">[% l('Add file') %]</span>
                 <span class="oils-acq-li-search" dojoType="dijit.form.Button"
-                    onClick="clearTerms();">Clear loaded search terms</span>
+                    onClick="clearTerms();">[% l('Clear loaded search terms') %]</span>
             </div>
         </div>
         <div class="oils-acq-li-search-form-row"
             id="oils-acq-li-search-attr-submit">
-            <span dojoType="dijit.form.Button" type="submit">Search</span>
+            <span dojoType="dijit.form.Button" type="submit">[% l('Search') %]</span>
         </div>
     </form>
 </div>
diff --git a/Open-ILS/src/templates/acq/lineitem/worksheet.tt2 b/Open-ILS/src/templates/acq/lineitem/worksheet.tt2
index 8fdf885..d145287 100644
--- a/Open-ILS/src/templates/acq/lineitem/worksheet.tt2
+++ b/Open-ILS/src/templates/acq/lineitem/worksheet.tt2
@@ -1,5 +1,5 @@
 [% WRAPPER "base.tt2" %]
-[% ctx.page_title = "Lineitem Worksheet" %]
+[% ctx.page_title = l("Lineitem Worksheet") %]
 <script type="text/javascript">
     var liId = "[% ctx.page_args.0 %]";
     dojo.require('openils.CGI');
@@ -8,12 +8,12 @@
     newCgi.param('focus_li', liId);
     var returnRef = newCgi.url();
 </script>
-<h1>Lineitem Worksheet</h1>
-<div dojoType='dijit.form.Button' scrollOnFocus='false' onClick='location.href = returnRef'>&#x2196; Return</div>
+<h1>[% l('Lineitem Worksheet') %]</h1>
+<div dojoType='dijit.form.Button' scrollOnFocus='false' onClick='location.href = returnRef'>[% l('&#x2196; Return') %]</div>
 <br/><br/>
 <div id="acq-worksheet-contents"></div>
 <div class='hidden'>
-    <div jsId='progressDialog' dojoType='openils.widget.ProgressDialog' message='Loading Worksheet...'></div>
+    <div jsId='progressDialog' dojoType='openils.widget.ProgressDialog' message='[% l('Loading Worksheet...') %]'></div>
 </div>
 <script type="text/javascript" src="[% ctx.media_prefix %]/js/ui/default/acq/lineitem/worksheet.js"></script>
 [% END %]
diff --git a/Open-ILS/src/templates/acq/picklist/bib_search.tt2 b/Open-ILS/src/templates/acq/picklist/bib_search.tt2
index dd7e83c..3b6906a 100644
--- a/Open-ILS/src/templates/acq/picklist/bib_search.tt2
+++ b/Open-ILS/src/templates/acq/picklist/bib_search.tt2
@@ -18,11 +18,11 @@
             <div id='oils-acq-search-sources-label'>Search Sources</div>
             <select style='overflow-y:auto;' id='oils-acq-search-source-select' 
                     multiple='true' jsId="bibSourceSelect" dojoType="dojox.form.CheckedMultiSelect">
-                <option selected='selected' value='native-evergreen-catalog'>Evergreen Catalog</option>
+                <option selected='selected' value='native-evergreen-catalog'>[% l('Evergreen Catalog') %]</option>
             </select>
         </div>
         <div id='oils-acq-search-form-block'>
-            <div id='oils-acq-search-fields-label'>Search Fields</div>
+            <div id='oils-acq-search-fields-label'>[% l('Search Fields') %]</div>
             <div id='oils-acq-search-fields'>
             </div>
             <table>
@@ -32,7 +32,7 @@
                         <td name='input'> </td>
                     </tr>
                     <tr id='oils-acq-seach-fields-count-row'>
-                        <td name='label'>Hits Per Source</td>
+                        <td name='label'>[% l('Hits Per Source') %]</td>
                         <td><input name='limit'
                             dojoType='dijit.form.NumberSpinner'
                             constraints='{min:5,max:50}'
@@ -40,8 +40,8 @@
                         </td>
                     </tr>
                     <tr id='oils-acq-search-fields-submit-block'>
-                        <td><div dojoType='dijit.form.Button' type='submit'>Submit</div></td>
-                        <td><div dojoType='dijit.form.Button' onclick='clearSearchForm()'>Clear Form</div></td>
+                        <td><div dojoType='dijit.form.Button' type='submit'>[% l('Submit') %]</div></td>
+                        <td><div dojoType='dijit.form.Button' onclick='clearSearchForm()'>[% l('Clear Form') %]</div></td>
                     </tr>
                 </tbody>
             </table>
@@ -51,12 +51,12 @@
 
 <div id='oils-acq-pl-search-results'>
     <div dojoType="dijit.layout.ContentPane" layoutAlign="top" class='oils-header-panel'>
-        <div>Search Results</div>
+        <div>[% l('Search Results') %]</div>
         <div>
             <div id='oils-acq-update-li-progress' class='hidden'>
                 <div dojoType="dijit.ProgressBar" style="width:300px" jsId="liUpdateProgress"></div>
             </div>
-            <div dojoType='dijit.form.Button' onClick='showDiv("oils-acq-search-block");'>New Search</div>
+            <div dojoType='dijit.form.Button' onClick='showDiv("oils-acq-search-block");'>[% l('New Search') %]</div>
         </div>
     </div>
     <div dojoType='dijit.layout.ContentPane' layoutAlign='client'>
diff --git a/Open-ILS/src/templates/acq/picklist/brief_record.tt2 b/Open-ILS/src/templates/acq/picklist/brief_record.tt2
index 0a126da..37714ce 100644
--- a/Open-ILS/src/templates/acq/picklist/brief_record.tt2
+++ b/Open-ILS/src/templates/acq/picklist/brief_record.tt2
@@ -1,5 +1,5 @@
 [% WRAPPER 'base.tt2' %]
-<h1>New Brief Record</h1><br/>
+<h1>[% l('New Brief Record') %]</h1><br/>
 <form dojoType='dijit.form.Form'>
     <script type='dojo/method' event='onSubmit'>
         return saveBriefRecord(this.getValues());
@@ -7,11 +7,11 @@
     <table class='oils-generic-table'>
         <tbody id='acq-brief-record-tbody'>
             <tr id='acq-brief-record-pl-row'>
-                <td>Add To Selection List</td>
+                <td>[% l('Add To Selection List') %]</td>
                 <td><select dojoType='dijit.form.ComboBox' jsId='plSelector'/></td>
             </tr>
             <tr id='acq-brief-record-po-row'>
-                <td>Adding to Purchase Order</td>
+                <td>[% l('Adding to Purchase Order') %]</td>
                 <td><input dojoType='dijit.form.TextBox' jsId='poNumber' disabled='disabled'/></td>
             </tr>
             <tr id='acq-brief-record-row'>
@@ -21,9 +21,9 @@
         </tbody>
         <tbody>
             <tr>
-                <td><button dojoType='dijit.form.Button' type='submit'>Save Record</button></td>
+                <td><button dojoType='dijit.form.Button' type='submit'>[% l('Save Record') %]</button></td>
                 <!--
-                <td><button dojoType='dijit.form.Button' type='submit' jsId='marcEditButton'>Edit MARC</button></td>
+                <td><button dojoType='dijit.form.Button' type='submit' jsId='marcEditButton'>[% l('Edit MARC') %]</button></td>
                 -->
             </tr>
         </tbody>
diff --git a/Open-ILS/src/templates/acq/picklist/from_bib.tt2 b/Open-ILS/src/templates/acq/picklist/from_bib.tt2
index 4cd61e0..f098589 100644
--- a/Open-ILS/src/templates/acq/picklist/from_bib.tt2
+++ b/Open-ILS/src/templates/acq/picklist/from_bib.tt2
@@ -1,21 +1,21 @@
 [% WRAPPER "base.tt2" %]
-[% ctx.page_title = "Items by Bibliographic ID" %]
+[% ctx.page_title = l("Items by Bibliographic ID") %]
 <div id="acq-frombib-upload-box">
     <div class="oils-acq-basic-roomy">
-        Provide one or more CSV files whose first columns
-        contain Evergreen bibliographic record IDs.
+        [% |l %]Provide one or more CSV files whose first columns
+        contain Evergreen bibliographic record IDs.[% END %]
     </div>
     <div class="oils-acq-basic-roomy">
         <span id="acq-frombib-upload"></span>
     </div>
     <div id="acq-frombib-begin-holder" class="oils-acq-basic-roomy hidden">
         <button id="acq-frombib-begin" onclick="beginSearch();">
-            Retrieve records
+            [% l('Retrieve records') %]
         </button>
     </div>
 </div>
 <div id="acq-frombib-reload-box" class="oils-acq-basic-roomy hidden">
-    <button onclick="location.href=location.href;">Begin a new search</button>
+    <button onclick="location.href=location.href;">[% l('Begin a new search') %]</button>
 </div>
 <hr />
 [% INCLUDE "acq/common/li_table_pager.tt2" %]
diff --git a/Open-ILS/src/templates/acq/picklist/list.tt2 b/Open-ILS/src/templates/acq/picklist/list.tt2
index 250e2c2..f1fa701 100644
--- a/Open-ILS/src/templates/acq/picklist/list.tt2
+++ b/Open-ILS/src/templates/acq/picklist/list.tt2
@@ -1,10 +1,10 @@
 [% WRAPPER 'base.tt2' %]
-[% ctx.page_title = 'Selection Lists' %]
+[% ctx.page_title = l('Selection Lists') %]
 
 <div dojoType="dijit.layout.ContentPane" layoutAlign="client">
     <div id='oils-acq-list-header' class='container'>
         <div id='oils-acq-picklist-my-list-header'>
-            <div id='oils-acq-list-header-label'>My Selection Lists</div>
+            <div id='oils-acq-list-header-label'>[% l('My Selection Lists') %]</div>
         </div>
     </div>
 </div>
@@ -12,16 +12,16 @@
 <div class='oils-acq-actions-div' dojoType="dijit.layout.ContentPane" layoutAlign="client">
 
     <div dojoType="dijit.form.DropDownButton">
-        <span>New Selection List</span>
+        <span>[% l('New Selection List') %]</span>
         <div dojoType="dijit.TooltipDialog" execute="createPL(arguments[0]);">
             <table class='dijitTooltipTable'>
                 <tr>
-                    <td><label for="name">Name:</label></td>
+                    <td><label for="name">[% l('Name:') %]</label></td>
                     <td><input dojoType="dijit.form.TextBox" name="name"/></td>
                 </tr>
                 <tr>
                     <td colspan='2' align='center'>
-                        <button dojoType='dijit.form.Button' type="submit">Create</button>
+                        <button dojoType='dijit.form.Button' type="submit">[% l('Create') %]</button>
                     </td>
                 </tr>
             </table>
@@ -29,16 +29,16 @@
     </div>
 
     <div dojoType="dijit.form.DropDownButton">
-        <span>Clone Selected</span>
+        <span>[% l('Clone Selected') %]</span>
         <div dojoType="dijit.TooltipDialog" execute="cloneSelectedPl(arguments[0]);">
             <table class='dijitTooltipTable'>
                 <tr>
-                    <td><label for="name">New Name:</label></td>
+                    <td><label for="name">[% l('New Name:') %]</label></td>
                     <td><input dojoType="dijit.form.TextBox" name="name"/></td>
                 </tr>
                 <tr>
                     <td colspan='2' align='center'>
-                        <button dojoType='dijit.form.Button' type="submit">Clone</button>
+                        <button dojoType='dijit.form.Button' type="submit">[% l('Clone') %]</button>
                     </td>
                 </tr>
             </table>
@@ -46,22 +46,22 @@
     </div>
 
     <div dojoType="dijit.form.DropDownButton">
-        <span>Merge Selected</span>
+        <span>[% l('Merge Selected') %]</span>
         <div dojoType="dijit.TooltipDialog" execute="mergeSelectedPl(arguments[0]);" jsId='plMergeDialog'>
             <table class='dijitTooltipTable'>
                 <tr>
-                    <td><label for="name">Choose the Lead Selection List:</label></td>
+                    <td><label for="name">[% l('Choose the Lead Selection List:') %]</label></td>
                     <td><input jsId='plMergeLeadSelector' dojoType="dijit.form.FilteringSelect" name="lead"/></td>
                 </tr>
                 <tr>
                     <td colspan='2' align='center'>
-                        <button dojoType='dijit.form.Button' type="submit">Merge</button>
+                        <button dojoType='dijit.form.Button' type="submit">[% l('Merge') %]</button>
                     </td>
                 </tr>
             </table>
         </div>
     </div>
-    <button dojoType="dijit.form.Button" onclick="deleteFromGrid();">Delete Selected</button>
+    <button dojoType="dijit.form.Button" onclick="deleteFromGrid();">[% l('Delete Selected') %]</button>
 </div>
 
 <div dojoType="dijit.layout.ContentPane" layoutAlign="client">
@@ -81,7 +81,7 @@
             <tr>
                 <th field="name" formatter='formatName'/>
                 <th field="owner" get='getOwnerName'/>
-                <th field="entry_count">Entry Count</th>
+                <th field="entry_count">[% l('Entry Count') %]</th>
             </tr>
         </thead>
     </table>
diff --git a/Open-ILS/src/templates/acq/picklist/upload.tt2 b/Open-ILS/src/templates/acq/picklist/upload.tt2
index d88bd23..0e055b6 100644
--- a/Open-ILS/src/templates/acq/picklist/upload.tt2
+++ b/Open-ILS/src/templates/acq/picklist/upload.tt2
@@ -1,33 +1,33 @@
 [% WRAPPER 'base.tt2' %]
 [% PROCESS 'acq/common/vlagent.tt2' %]
 
-<h1>Upload</h1><br/>
+<h1>[% l('Upload') %]</h1><br/>
 <form id="acq-pl-upload-form" enctype="multipart/form-data">
     <input type='hidden' name='ses' id='acq-pl-upload-ses'/>
     <table class='oils-generic-table'>
         <tbody>
             <tr>
-                <td>Create Purchase Order</td>
+                <td>[% l('Create Purchase Order') %]</td>
                 <td>
                     <input dojoType='dijit.form.CheckBox' jsId='acqPlUploadCreatePo'></input>
                 </td>
             </tr>
             <tr>
-                <td>Activate Purchase Order</td>
+                <td>[% l('Activate Purchase Order') %]</td>
                 <td>
                     <input dojoType='dijit.form.CheckBox' jsId='acqPlUploadActivatePo'></input>
                 </td>
             </tr>
             <tr>
-                <td>Provider</td>
+                <td>[% l('Provider') %]</td>
                 <td><div id='acq-pl-upload-provider'></div></td>
             </tr>
             <tr id='acq-pl-upload-agency-row'>
-                <td>Context Org Unit</td>
+                <td>[% l('Context Org Unit') %]</td>
                 <td><div id='acq-pl-upload-agency'></div></td>
             </tr>
             <tr id='acq-pl-upload-picklist'>
-                <td>Add to Selection List</td>
+                <td>[% l('Add to Selection List') %]</td>
                 <td>
                     <select jsId='acqPlUploadPlSelector' dojoType='dijit.form.ComboBox'></select>
                 </td>
@@ -66,7 +66,7 @@
         </div>
         [% PROCESS vlagent_results %]
         <div id='acq-pl-upload-complete' class='hidden'>
-            <div>Upload Complete!</div><br/>
+            <div>[% l('Upload Complete!') %]</div><br/>
             <div><a id='acq-pl-upload-complete-po'>[% l('View Purchase Order') %]</a></div><br/>
             <div><a id='acq-pl-upload-complete-pl'>[% l('View Selection List') %]</a></div><br/>
             <div><a id='acq-pl-upload-complete-q'>[% l('View Import Queue') %]</a></div><br/>
diff --git a/Open-ILS/src/templates/acq/picklist/user_request.tt2 b/Open-ILS/src/templates/acq/picklist/user_request.tt2
index 9518f3c..5759a7c 100644
--- a/Open-ILS/src/templates/acq/picklist/user_request.tt2
+++ b/Open-ILS/src/templates/acq/picklist/user_request.tt2
@@ -1,5 +1,5 @@
 [% WRAPPER 'base.tt2' %]
-[% ctx.page_title = 'Patron Requests' %]
+[% ctx.page_title = l('Patron Requests') %]
 <script type="text/javascript">var reqId = '[% ctx.page_args.0 %]';</script>
 
     <div dojoType="dijit.layout.StackContainer" id="stackContainer" doLayout="false">
@@ -10,7 +10,7 @@
             </div>
             <div style="width: 100%">
                 <span>
-                    <span>Context Org Unit</span>
+                    <span>[% l('Context Org Unit') %]</span>
                     <select 
                         dojoType="openils.widget.OrgUnitFilteringSelect" 
                         jsId='contextOrgSelector'
@@ -19,7 +19,7 @@
                     </select>
                 </span>
                 <span>
-                    <a name="user" href="javascript:changeUserPrompt();">User</a>
+                    <a name="user" href="javascript:changeUserPrompt();">[% l('User') %]</a>
                     <span
                         name="user"
                         jsId="contextUsrTextbox"
@@ -28,7 +28,7 @@
                     </span>
                 </span>
                 <span>
-                    <a name="lineitem" href="javascript:changeLIPrompt();">PO Line Item</a>
+                    <a name="lineitem" href="javascript:changeLIPrompt();">[% l('PO Line Item') %]</a>
                     <span
                         name="lineitem"
                         jsId="contextLITextbox"
@@ -36,7 +36,7 @@
                         disabled="true">
                     </span>
                 </span>
-                <button dojoType="dijit.form.Button" onClick="createRequest()">Create Request</button>
+                <button dojoType="dijit.form.Button" onClick="createRequest()">[% l('Create Request') %]</button>
             </div>
             <table  jsId="rGrid"
                     dojoType="openils.widget.AutoGrid"
@@ -62,21 +62,21 @@
         <!-- *** Detail View ********************************************************************************* -->
         <div dojoType="dijit.layout.ContentPane" style="height: 100%;">
             <div dojoType="dijit.layout.ContentPane" layoutAlign="top" class='oils-header-panel'>
-                <div>Patron Request</div>
+                <div>[% l('Patron Request') %]</div>
                 <div>
                     <button dojoType="dijit.form.Button" onClick="location.href=oilsBasePath+'/acq/picklist/user_request'">[% ctx.page_title %]</button>
-                    <button dojoType="dijit.form.Button" onClick="fooPicklist()"><span id="add_to_picklist">Add to Selection List</span><span id="view_picklist">View Selection List</span></button>
-                    <button dojoType="dijit.form.Button" onClick="setNoHold()">Set No Hold</button>
+                    <button dojoType="dijit.form.Button" onClick="fooPicklist()"><span id="add_to_picklist">[% l('Add to Selection List') %]</span><span id="view_picklist">[% l('View Selection List') %]</span></button>
+                    <button dojoType="dijit.form.Button" onClick="setNoHold()">[% l('Set No Hold') %]</button>
                     <span dojoType="dijit.form.DropDownButton">
-                        <span>Cancel Request</span>
+                        <span>[% l('Cancel Request') %]</span>
                         <span dojoType="dijit.TooltipDialog">
                             <label for="acq-ur-cancel-reason">
-                                Reason:
+                                [% l('Reason:') %]
                             </label>
                             <span id="acq-ur-cancel-reason"></span>
                             <button jsId="acqUrCancelReasonSubmit"
                                 dojoType="dijit.form.Button"
-                                type="submit">Cancel Request</button>
+                                type="submit">[% l('Cancel Request') %]</button>
                         </span>
                     </span>
                 </div>
diff --git a/Open-ILS/src/templates/acq/picklist/view.tt2 b/Open-ILS/src/templates/acq/picklist/view.tt2
index 5d4d2c2..7194a18 100644
--- a/Open-ILS/src/templates/acq/picklist/view.tt2
+++ b/Open-ILS/src/templates/acq/picklist/view.tt2
@@ -1,15 +1,15 @@
 [% WRAPPER 'base.tt2' %]
-[% ctx.page_title = 'Selection List' %]
+[% ctx.page_title = l('Selection List') %]
 <div dojoType="dijit.layout.ContentPane" style="height:100%">
     <div class='container'>
         <div id='oils-scroll-to-top'></div>
         <div id='oils-acq-picklist-header'>
-            Selection list <span id='oils-acq-picklist-name'> </span>
+            [% l('Selection list [_1]', '<span id="oils-acq-picklist-name"> </span>') %]
             <div class='oils-acq-picklist-attributes'>
-                <div>Create date: <span id="oils-acq-picklist-attr-cdate"></span></div>
-                <div>Last updated: <span id="oils-acq-picklist-attr-edate"></span></div>
-                <div>Selector: <span id="oils-acq-picklist-attr-owner"></span></div>
-                <div>Entry Count: <span id="oils-acq-picklist-attr-count"></span></div>
+                <div>[% l('Create date: [_1]', '<span id="oils-acq-picklist-attr-cdate"></span>') %]</div>
+                <div>[% l('Last updated: [_1]', '<span id="oils-acq-picklist-attr-edate"></span>') %]</div>
+                <div>[% l('Selector: [_1]', '<span id="oils-acq-picklist-attr-owner"></span>') %]</div>
+                <div>[% l('Entry Count: [_1]', '<span id="oils-acq-picklist-attr-count"></span>') %]</div>
             </div>
         </div>
     </div>
diff --git a/Open-ILS/src/templates/acq/po/create.tt2 b/Open-ILS/src/templates/acq/po/create.tt2
index 01473d2..e077133 100644
--- a/Open-ILS/src/templates/acq/po/create.tt2
+++ b/Open-ILS/src/templates/acq/po/create.tt2
@@ -1,5 +1,5 @@
 [% WRAPPER "base.tt2" %]
-[% ctx.page_title = "Create Purchase Order" %]
-<h1>Create Purchase Order</h1>
+[% ctx.page_title = l("Create Purchase Order") %]
+<h1>[% l('Create Purchase Order') %]</h1>
 <script type="text/javascript" src="[% ctx.media_prefix %]/js/ui/default/acq/po/create.js"> </script>
 [% END %]
diff --git a/Open-ILS/src/templates/acq/po/edi_messages.tt2 b/Open-ILS/src/templates/acq/po/edi_messages.tt2
index c936616..f6de745 100644
--- a/Open-ILS/src/templates/acq/po/edi_messages.tt2
+++ b/Open-ILS/src/templates/acq/po/edi_messages.tt2
@@ -1,9 +1,9 @@
 [% WRAPPER "base.tt2" %]
-[% ctx.page_title = "EDI Messages" %]
+[% ctx.page_title = l("EDI Messages") %]
 [% IF ctx.page_args.0 %]
-<h1>EDI Messages (Purchase Order [% ctx.page_args.0 %])</h1>
+<h1>[% l('EDI Messages (Purchase Order [_1])', ctx.page_args.0) %]</h1>
 [% ELSE %]
-<h1>EDI Messages</h1>
+<h1>[% l('EDI Messages') %]</h1>
 [% END  %]
 <br/>
 <div dojoType="dijit.layout.ContentPane" layoutAlign="client">
diff --git a/Open-ILS/src/templates/acq/po/events.tt2 b/Open-ILS/src/templates/acq/po/events.tt2
index 03c183e..7439937 100644
--- a/Open-ILS/src/templates/acq/po/events.tt2
+++ b/Open-ILS/src/templates/acq/po/events.tt2
@@ -4,15 +4,15 @@
 
  <div dojoType="dijit.layout.ContentPane" layoutAlign="client">
         <div dojoType="dijit.layout.ContentPane" layoutAlign="top" class="oils-header-panel">
-            <div>PO Triggered Events</div>
+            <div>[% l('PO Triggered Events') %]</div>
             <div>
-                <button dojoType="dijit.form.Button" onClick="eventGrid.cancelSelected()">Cancel Selected</button>
-                <button dojoType="dijit.form.Button" onClick="eventGrid.resetSelected()">Reset Selected</button>
+                <button dojoType="dijit.form.Button" onClick="eventGrid.cancelSelected()">[% l('Cancel Selected') %]</button>
+                <button dojoType="dijit.form.Button" onClick="eventGrid.resetSelected()">[% l('Reset Selected') %]</button>
             </div>
         </div>
         <div class="oils-acq-basic-form-div">
             <span>
-                <label for="state">State</label>
+                <label for="state">[% l('State') %]</label>
                 <select name="state"
                     dojoType="dijit.form.FilteringSelect"
                     jsId="eventStateSelect"
@@ -20,7 +20,7 @@
                     labelAttr="name"></select>
             </span>
             <span>
-                <label for="orgUnit">Context Org Unit</label>
+                <label for="orgUnit">[% l('Context Org Unit') %]</label>
                 <select name="orgUnit" 
                     dojoType="openils.widget.OrgUnitFilteringSelect" 
                     jsId="eventContextOrgSelect"
@@ -28,20 +28,20 @@
                     labelAttr="shortname"></select>
             </span>
             <span>
-                <label for="startDate">Start Date Range</label>
+                <label for="startDate">[% l('Start Date Range') %]</label>
                 <input name="startDate"
                     type="text"
                     dojoType="dijit.form.DateTextBox"
                     jsId="eventStartDatePicker" />
             </span>
             <span>
-                <label for="endDate">End Date Range</label>
+                <label for="endDate">[% l('End Date Range') %]</label>
                 <input name="endDate"
                     type="text"
                     dojoType="dijit.form.DateTextBox"
                     jsId="eventEndDatePicker" />
             </span>
-            <button dojoType="dijit.form.Button" onClick="eventGrid.doSearch()">Search</button>
+            <button dojoType="dijit.form.Button" onClick="eventGrid.doSearch()">[% l('Search') %]</button>
         </div>
         <table  jsId="eventGrid"
                 dojoType="openils.widget.AutoGrid"
@@ -52,7 +52,7 @@
                 editOnEnter="false">
             <thead>
                 <tr>
-                    <th field="target" formatter="format_po_link">Purchase Order</th>
+                    <th field="target" formatter="format_po_link">[% l('Purchase Order') %]</th>
                 </tr>
             </thead>
         </table>
diff --git a/Open-ILS/src/templates/acq/po/history.tt2 b/Open-ILS/src/templates/acq/po/history.tt2
index ad92007..1861b16 100644
--- a/Open-ILS/src/templates/acq/po/history.tt2
+++ b/Open-ILS/src/templates/acq/po/history.tt2
@@ -1,6 +1,6 @@
 [% WRAPPER "base.tt2" %]
-[% ctx.page_title = "PO History" %]
-<h1>Purchase Order History</h1>
+[% ctx.page_title = l("PO History") %]
+<h1>[% l('Purchase Order History') %]</h1>
 <br/>
 <div dojoType="dijit.layout.ContentPane" layoutAlign="client">
     <table  jsId="pohGrid"
diff --git a/Open-ILS/src/templates/acq/po/item_table.tt2 b/Open-ILS/src/templates/acq/po/item_table.tt2
index 1948b6d..80497c5 100644
--- a/Open-ILS/src/templates/acq/po/item_table.tt2
+++ b/Open-ILS/src/templates/acq/po/item_table.tt2
@@ -1,14 +1,14 @@
 <div id="acq-po-item-table" class="hidden">
-    <h3>Direct Charges, Taxes, Fees, etc.</h3>
+    <h3>[% l('Direct Charges, Taxes, Fees, etc.') %]</h3>
     <table>
         <thead id="acq-po-item-table-headings">
             <tr>
-                <th>Charge Type</th>
-                <th>Fund</th>
-                <th>Title/Description</th>
-                <th>Author</th>
-                <th>Note</th>
-                <th>Estimated Cost</th>
+                <th>[% l('Charge Type') %]</th>
+                <th>[% l('Fund') %]</th>
+                <th>[% l('Title/Description') %]</th>
+                <th>[% l('Author') %]</th>
+                <th>[% l('Note') %]</th>
+                <th>[% l('Estimated Cost') %]</th>
                 <th><!-- Delete --></th>
             </tr>
         </thead>
@@ -25,10 +25,10 @@
         </tbody>
     </table>
     <div id="acq-po-item-table-i-am-empty" class="hidden">
-        <em>There are no miscellanea attached to this purchase order.</em>
+        <em>[% l('There are no miscellanea attached to this purchase order.') %]</em>
     </div>
     <div id="acq-po-item-table-controls">
-        <button id="acq-po-item-table-new-charge">New Charge</button> &nbsp;
-        <button id="acq-po-item-table-save-new">Save New Charges</button>
+        <button id="acq-po-item-table-new-charge">[% l('New Charge') %]</button> &nbsp;
+        <button id="acq-po-item-table-save-new">[% l('Save New Charges') %]</button>
     </div>
 </div>
diff --git a/Open-ILS/src/templates/acq/po/search.tt2 b/Open-ILS/src/templates/acq/po/search.tt2
index ff3a1c1..9c47468 100644
--- a/Open-ILS/src/templates/acq/po/search.tt2
+++ b/Open-ILS/src/templates/acq/po/search.tt2
@@ -1,5 +1,5 @@
 [% WRAPPER base.tt2 %]
-[% ctx.page_title = 'Purchase Orders' %]
+[% ctx.page_title = l('Purchase Orders') %]
 <script type="text/javascript">
     var poIds = function(s) {
         return s == "" ? undefined :
@@ -7,17 +7,17 @@
     }("[% ctx.page_args.0 %]");
 </script>
 <div id='oils-acq-list-header' class='container'>
-    <div id='oils-acq-list-header-label'>PO Search</div>
+    <div id='oils-acq-list-header-label'>[% l('PO Search') %]</div>
 </div>
 
 <div id="oils-acq-po-heading-template" class="hidden">
-    <span>Purchase Order: <a attr="name"></a></span>
-    <span>Total Lineitems: <span attr="lineitem_count"></span></span>
-    <span>Total Encumbered: $<span attr="amount_encumbered"></span></span>
-    <span>Total Spent: $<span attr="amount_spent"></span></span>
-    <span>Total Copies: <span attr="copies"></span></span>
-    <span>Status: <span attr="state"></span></span>
-    <span><a class="hidden" attr="activator" href="javascript:void(0);">Activate Order</a></span>
+    <span>[% l('Purchase Order: [_1]', '<a attr="name"></a>') %]</span>
+    <span>[% l('Total Lineitems: [_1]', '<span attr="lineitem_count"></span>') %]</span>
+    <span>[% l('Total Encumbered: $[_1]', '<span attr="amount_encumbered">') %]</span></span>
+    <span>[% l('Total Spent: $[_1]', '<span attr="amount_spent"></span>') %]</span>
+    <span>[% l('Total Copies: [_1]', '<span attr="copies"></span>') %]</span>
+    <span>[% l('Status: [_1]', '<span attr="state"></span>') %]</span>
+    <span><a class="hidden" attr="activator" href="javascript:void(0);">[% l('Activate Order') %]</a></span>
 </div>
 
 <script type="text/javascript">
@@ -36,13 +36,13 @@
 
     <div class='oils-acq-basic-form-div'>
 
-        <label for='id'>ID</label>
+        <label for='id'>[% l('ID') %]</label>
         <input dojoType='dijit.form.NumberTextBox' name='id'> </input>
 
-        <label for='provider'>Provider</label>
+        <label for='provider'>[% l('Provider') %]</label>
         <input id='po-search-provider-selector'/>
 
-        <label for='state'>State</label></td>
+        <label for='state'>[% l('State') %]</label></td>
         <script type="text/javascript">
             dojo.require('dojo.data.ItemFileReadStore');
             var stateStore = new dojo.data.ItemFileReadStore({
@@ -52,10 +52,10 @@
                     items: [
                         /* FIXME This is probably not the correct final list of 
                         possible states */
-                        {name:"New", value:'new'},
-                        {name:"In Process", value:'in-process'},
-                        {name:"Pending", value:'pending'},
-                        {name:"On order", value:'on-order'}
+                        {name:"[% l('New') %]", value:'new'},
+                        {name:"[% l('In Process') %]", value:'in-process'},
+                        {name:"[% l('Pending') %]", value:'pending'},
+                        {name:"[% l('On order') %]", value:'on-order'}
                     ]
                 }
             });
@@ -68,15 +68,15 @@
             valueAttr='value' 
             searchAttr='name'/>
 
-        <label for='ordering_agency'>Ordering Agency</label>
+        <label for='ordering_agency'>[% l('Ordering Agency') %]</label>
         <input id='po-search-agency-selector'/>
 
-        <span dojoType='dijit.form.Button' type='submit'>Search</span>
+        <span dojoType='dijit.form.Button' type='submit'>[% l('Search') %]</span>
     </div>
     <div class="oils-acq-basic-form-div">
         <input dojoType="dijit.form.CheckBox" value="1" name="metapo_view"
             id="metapo_view" type="checkbox" />
-        <label for="metapo_view">Show results as a virtual combined PO</label>
+        <label for="metapo_view">[% l('Show results as a virtual combined PO') %]</label>
     </div>
 </form>
 <br/>
@@ -96,7 +96,7 @@
             fmClass='acqpo'> 
         <thead> 
             <tr> 
-                <th field="id" formatter='formatId'>ID</th> 
+                <th field="id" formatter='formatId'>[% l('ID') %]</th> 
                 <!--
                 <th field="owner" get='getPOOwner'/>
                 -->
@@ -109,28 +109,28 @@
     <table id="oils-acq-metapo-summary">
         <thead>
             <tr>
-                <th colspan="2">Results Summary</th>
+                <th colspan="2">[% l('Results Summary') %]</th>
             </tr>
         </thead>
         <tbody>
             <tr>
-                <th>Total Purchase Orders:</th>
+                <th>[% l('Total Purchase Orders:') %]</th>
                 <td id="oils-acq-metapo-summary-po"></td>
             </tr>
             <tr>
-                <th>Total Lineitems:</th>
+                <th>[% l('Total Lineitems:') %]</th>
                 <td id="oils-acq-metapo-summary-lineitem_count"></td>
             </tr>
             <tr>
-                <th>Total Copies:</th>
+                <th>[% l('Total Copies:') %]</th>
                 <td id="oils-acq-metapo-summary-copies"></td>
             </tr>
             <tr>
-                <th>Total Encumbered:</th>
+                <th>[% l('Total Encumbered:') %]</th>
                 <td>$<span id="oils-acq-metapo-summary-amount_encumbered"></span></td>
             </tr>
             <tr>
-                <th>Total Spent:</th>
+                <th>[% l('Total Spent:') %]</th>
                 <td>$<span id="oils-acq-metapo-summary-amount_spent"></span></td>
             </tr>
         </tbody>
diff --git a/Open-ILS/src/templates/acq/po/view.tt2 b/Open-ILS/src/templates/acq/po/view.tt2
index 1baf68a..2bc08e6 100644
--- a/Open-ILS/src/templates/acq/po/view.tt2
+++ b/Open-ILS/src/templates/acq/po/view.tt2
@@ -1,72 +1,72 @@
 [% WRAPPER 'base.tt2' %]
-[% ctx.page_title = "Purchase Order" %]
+[% ctx.page_title = l("Purchase Order") %]
 <div dojoType="dijit.layout.ContentPane" style="height:100%">
     <div id='oils-scroll-to-top'></div>
     <div>
         <div id='oils-acq-picklist-header'>
             <big>
-                Purchase Order (<span id="acq-po-view-state"></span>) 
+                [% l('Purchase Order ([_1])', '<span id="acq-po-view-state"></span>') %] 
             </big>
             <span id='acq-po-activated-on' class='hidden'></span>
             <table class="oils-generic-table acq-po-info">
                 <tr>
-                    <th>ID</th><td><a id="acq-po-view-id"/></td>
-                    <th>Prepayment Required?</th>
+                    <th>[% l('ID') %]</th><td><a id="acq-po-view-id"/></td>
+                    <th>[% l('Prepayment Required?') %]</th>
                     <td><span id="acq-po-view-prepay"></span></td>
                 </tr>
                 <tr>
-                    <th>Name</th>
+                    <th>[% l('Name') %]</th>
                     <td><a id="acq-po-view-name" href="javascript:void(0);"
                         onclick="updatePoName()"></a></td>
-                    <th>Activatable?</th>
+                    <th>[% l('Activatable?') %]</th>
                     <td>
                         <span id="acq-po-activate-checking"></span>
-                        <a class="hidden" id="acq-po-activate-link" href="javascript:void(0);" onclick="activatePo()">Activate Order</a>
+                        <a class="hidden" id="acq-po-activate-link" href="javascript:void(0);" onclick="activatePo()">[% l('Activate Order') %]</a>
                     </td>
                 </tr>
                 <tr>
-                    <th>Provider</th>
+                    <th>[% l('Provider') %]</th>
                     <td><span id="acq-po-view-provider"></span></td>
-                    <th>Notes</th>
+                    <th>[% l('Notes') %]</th>
                     <td>
                         <a href="javascript:void(0);"
                             id="acq-po-view-notes"></a>
                     </td>
                 </tr>
                 <tr>
-                    <th>Total Lineitems</th>
+                    <th>[% l('Total Lineitems') %]</th>
                     <td><span id="acq-po-view-total-li"></span></td>
-                    <th>EDI Messages</th>
+                    <th>[% l('EDI Messages') %]</th>
                     <td>
                         <a href="javascript:void(0);"
                             id="acq-po-view-edi-messages"></a>
                     </td>
                 </tr>
                 <tr>
-                    <th>Total Estimated</th>
-                    <td>$<span id="acq-po-view-total-estimated"></span></td>
-                    <th>History</th>
+                    <th>[% l('Total Estimated') %]</th>
+                    <td>[% l('$[_1]', '<span id="acq-po-view-total-estimated"></span>') %]</td>
+                    <th>[% l('History') %]</th>
                     <td>
                         <a class="hidden" href="javascript:void(0);"
-                            id="acq-po-view-history">View</a>
+                            id="acq-po-view-history">[% l('View') %]</a>
                     </td>
                 </tr>
                 <tr>
-                    <th>Total Encumbered</th>
-                    <td>$<span id="acq-po-view-total-enc"></span></td>
-                    <th>Invoicing</th>
+                    <th>[% l('Total Encumbered') %]</th>
+                    <td>[% l('$[_1]', '<span id="acq-po-view-total-enc"></span>') %]</td>
+                    <th>[% l('Invoicing') %]</th>
                     <td id="acq-po-invoice-stuff" class="hidden">
                         <button dojoType="dijit.form.Button"
                             id="acq-po-view-invoice-link">
-                            View Invoices
-                            (<span id="acq-po-view-invoice-count"></span>)
+                            [% l('View Invoices ([_1])',
+                            '<span id="acq-po-view-invoice-count"></span>') %]
                         </button> &nbsp;
                         <button dojoType="dijit.form.Button"
                             id="acq-po-create-invoice-link">
-                            Create Invoice
+                            [% l('Create Invoice') %]
                         </button> &nbsp;
                         <button dojoType="dijit.form.DropDownButton">
-                            <span>Link Invoice</span>
+                            <span>[% l('Link Invoice') %]</span>
                             <div dojoType="dijit.TooltipDialog"
                                 id="acq-po-link-invoice">
                                 <script type="dojo/connect" event="onOpen">
@@ -84,22 +84,22 @@
                     </td>
                 </tr>
                 <tr>
-                    <th>Total Spent</th>
-                    <td>$<span id="acq-po-view-total-spent"></span></td>
+                    <th>[% l('Total Spent') %]</th>
+                    <td>[% l('$[_1]', '<span id="acq-po-view-total-spent"></span>') %]</td>
                     <th id="acq-po-cancel-label"></th>
                     <td>
                         <span id="acq-po-view-cancel-reason"></span>
                         <span id="acq-po-choose-cancel-reason" class="hidden">
                             <span dojoType="dijit.form.DropDownButton">
-                                <span>Cancel order</span>
+                                <span>[% l('Cancel order') %]</span>
                                 <span dojoType="dijit.TooltipDialog">
                                     <label for="acq-po-cancel-reason">
-                                        Reason:
+                                        [% l('Reason:') %]
                                     </label>
                                     <span id="acq-po-cancel-reason"></span>
                                     <button jsId="acqPoCancelReasonSubmit"
                                         dojoType="dijit.form.Button"
-                                        type="submit">Cancel order</button>
+                                        type="submit">[% l('Cancel order') %]</button>
                                 </span>
                             </span>
                         </span>
@@ -122,7 +122,7 @@
                     <td colspan='3'>
                         <a class="hidden" id="acq-po-split" href="javascript:void(0);"
                             onclick="if (confirm(localeStrings.CONFIRM_SPLIT_PO)) splitPo();">
-                            Split Order by Lineitems
+                            [% l('Split Order by Lineitems') %]
                         </a>
                     </td>
                 </tr>
@@ -144,7 +144,7 @@
     [% INCLUDE "acq/common/notes.tt2" which = "Po" %]
     <div class='hidden' id='acq-po-no-lineitems'>
         <button type='dijit.form.Button' onclick='location.href = oilsBasePath + "/acq/picklist/brief_record?po=" + poId'>
-            Add Brief Record
+            [% l('Add Brief Record') %]
         </button>
     </div>
     [% INCLUDE "acq/po/item_table.tt2" %]
diff --git a/Open-ILS/src/templates/acq/receiving/process.tt2 b/Open-ILS/src/templates/acq/receiving/process.tt2
index 17ff83c..1edd1cc 100644
--- a/Open-ILS/src/templates/acq/receiving/process.tt2
+++ b/Open-ILS/src/templates/acq/receiving/process.tt2
@@ -1,5 +1,5 @@
 [% WRAPPER base.tt2 %]
-    <h1>Receiving Processing</h1><br/>
+    <h1>[% l('Receiving Processing') %]</h1><br/>
     <div id='oils-acq-recv-search-block' class='container'>
         <form dojoType='dijit.form.Form' action='' method=''>
             <script type="dojo/method" event="onSubmit">
@@ -8,20 +8,20 @@
             </script>
             <table class='oils-acq-basic-form-table'>
                 <tr>
-                    <td><label for='identifier'>Identifier</label></td>
+                    <td><label for='identifier'>[% l('Identifier') %]</label></td>
                     <td>
                         <input dojoType='dijit.form.TextBox' name='identifier'/>
                     </td>
                 </tr>
                 <tr>
-                    <td><label for="name">Ordering Agency:</label></td>
+                    <td><label for="name">[% l('Ordering Agency:') %]</label></td>
                     <td>
                         <input dojoType="openils.widget.OrgUnitFilteringSelect" jsId='orderingAgencySelect'
                             searchAttr="shortname" name="ordering_agency" autocomplete="true" labelAttr='shortname'> </input>
                     </td>
                 </tr>
                 <tr>
-                    <td colspan='2'><div dojoType='dijit.form.Button' type='submit'>Search</div></td>
+                    <td colspan='2'><div dojoType='dijit.form.Button' type='submit'>[% l('Search') %]</div></td>
                 </tr>
             </table>
         </form>
diff --git a/Open-ILS/src/templates/acq/search/unified.tt2 b/Open-ILS/src/templates/acq/search/unified.tt2
index a37fad2..4d04d16 100644
--- a/Open-ILS/src/templates/acq/search/unified.tt2
+++ b/Open-ILS/src/templates/acq/search/unified.tt2
@@ -1,5 +1,5 @@
 [% WRAPPER "base.tt2" %]
-[% ctx.page_title = "Acquisitions Search" %]
+[% ctx.page_title = l("Acquisitions Search") %]
 <script type="text/javascript" src="[% ctx.media_prefix %]/js/ui/default/acq/common/base64.js"></script>
 <script type="text/javascript" src="[% ctx.media_prefix %]/js/ui/default/acq/search/unified.js"></script>
 <script type="text/javascript" src="[% ctx.media_prefix %]/js/ui/default/acq/search/invoice.js"></script>
@@ -8,37 +8,37 @@
 <div id="acq-unified-body" class="hidden">
     <div id='oils-scroll-to-top'></div>
     <div id="acq-unified-heading">
-        <span id="acq-unified-heading-actual">Acquisitions Search</span>
+        <span id="acq-unified-heading-actual">[% l('Acquisitions Search') %]</span>
         <span id="acq-unified-heading-controls">
             <button id="acq-unified-hide-form" onclick="hideForm();">
-                Hide Search Form
+                [% l('Hide Search Form') %]
             </button>
             <button id="acq-unified-reveal-form" onclick="revealForm();"
                 class="hidden">
-                Reveal Search Form
+                [% l('Reveal Search Form') %]
             </button>
         </span>
         <div style="clear: both;"><!-- layout; don't remove --></div>
     </div>
     <div id="acq-unified-form">
         <div>
-            <label for="acq-unified-result-type">Search for</label>
+            <label for="acq-unified-result-type">[% l('Search for') %]</label>
             <select id="acq-unified-result-type">
-                <option value="lineitem">line items</option>
+                <option value="lineitem">[% l('line items') %]</option>
                 <option value="lineitem_and_bib">
-                    line items &amp; catalog records
+                    [% l('line items &amp; catalog records') %]
                 </option>
-                <option value="picklist">selection lists</option>
-                <option value="purchase_order">purchase orders</option>
-                <option value="invoice">invoices</option>
+                <option value="picklist">[% l('selection lists') %]</option>
+                <option value="purchase_order">[% l('purchase orders') %]</option>
+                <option value="invoice">[% l('invoices') %]</option>
             </select>
-            <label for="acq-unified-conjunction">matching</label>
+            <label for="acq-unified-conjunction">[% l('matching') %]</label>
             <select id="acq-unified-conjunction">
-                <option value="and">all</option>
-                <option value="or">any</option>
+                <option value="and">[% l('all') %]</option>
+                <option value="or">[% l('any') %]</option>
             </select>
             <label for="acq-unified-conjunction">
-                of the following terms:
+                [% l('of the following terms:') %]
             </label>
         </div>
         <div id="acq-unified-terms">
@@ -51,23 +51,23 @@
                         <td name="match"
                             class="acq-unified-terms-match">
                             <select>
-                                <option value="">is</option>
-                                <option value="__not">is NOT</option>
+                                <option value="">[% l('is') %]</option>
+                                <option value="__not">[% l('is NOT') %]</option>
                                 <option value="__fuzzy" disabled="disabled">
-                                    contains
+                                    [% l('contains') %]
                                 </option>
                                 <option value="__not,__fuzzy"
                                     disabled="disabled">
-                                    does NOT contain
+                                    [% l('does NOT contain') %]
                                 </option>
                                 <option value="__lte" disabled="disabled">
-                                    is on or BEFORE
+                                    [% l('is on or BEFORE') %]
                                 </option>
                                 <option value="__gte" disabled="disabled">
-                                    is on or AFTER
+                                    [% l('is on or AFTER') %]
                                 </option>
                                 <option value="__in" disabled="disabled">
-                                    matches a term from a file
+                                    [% l('matches a term from a file') %]
                                 </option>
                             </select>
                         </td>
@@ -80,18 +80,18 @@
             </table>
         </div>
         <div id="acq-unified-add-term">
-            <button onclick="termManager.addRow()">Add Search Term</button>
+            <button onclick="termManager.addRow()">[% l('Add Search Term') %]</button>
         </div>
         <div>
             <button onclick="resultManager.submitter();">
-                Search
+                [% l('Search') %]
             </button>
         </div>
     </div>
     <div id="acq-unified-results-purchase_order" class="hidden">
         <div class="acq-unified-result-specific-controls">
             <button onclick="dijit.byId('acq-unified-po-grid').refresh();">
-                Refresh Grid
+                [% l('Refresh Grid') %]
             </button>
         </div>
         <table
@@ -108,7 +108,7 @@
             <thead>
                 <tr>
                     <th field="name" get="getName" formatter="formatPoName">
-                        Name
+                        [% l('Name') %]
                     </th>
                 </tr>
             </thead>
@@ -118,48 +118,48 @@
         <div class="acq-unified-result-specific-controls">
             <button dojoType="dijit.form.Button"
                 onClick="dijit.byId('acq-unified-pl-grid').refresh();">
-                Refresh Grid
+                [% l('Refresh Grid') %]
             </button>
             <div dojoType="dijit.form.DropDownButton">
-                <span>New Selection List</span>
+                <span>[% l('New Selection List') %]</span>
                 <div dojoType="dijit.TooltipDialog"
                     execute="createPl(arguments[0]);">
                     <table class="dijitTooltipTable">
                         <tr>
-                            <td><label for="name">Name:</label></td>
+                            <td><label for="name">[% l('Name:') %]</label></td>
                             <td><input dojoType="dijit.form.TextBox"
                                 name="name"/></td>
                         </tr>
                         <tr>
                             <td colspan="2" align="center">
                                 <button dojoType="dijit.form.Button"
-                                    type="submit">Create</button>
+                                    type="submit">[% l('Create') %]</button>
                             </td>
                         </tr>
                     </table>
                 </div>
             </div>
             <div dojoType="dijit.form.DropDownButton">
-                <span>Clone Selected</span>
+                <span>[% l('Clone Selected') %]</span>
                 <div dojoType="dijit.TooltipDialog"
                     execute="cloneSelectedPl(arguments[0]);">
                     <table class="dijitTooltipTable">
                         <tr>
-                            <td><label for="name">New Name:</label></td>
+                            <td><label for="name">[% l('New Name:') %]</label></td>
                             <td><input dojoType="dijit.form.TextBox"
                                 name="name"/></td>
                         </tr>
                         <tr>
                             <td colspan="2" align="center">
                                 <button dojoType="dijit.form.Button"
-                                    type="submit">Clone</button>
+                                    type="submit">[% l('Clone') %]</button>
                             </td>
                         </tr>
                     </table>
                 </div>
             </div>
             <div dojoType="dijit.form.DropDownButton">
-                <span>Merge Selected</span>
+                <span>[% l('Merge Selected') %]</span>
                 <div dojoType="dijit.TooltipDialog"
                     execute="mergeSelectedPl(arguments[0]);"
                     jsId="plMergeDialog">
@@ -168,8 +168,8 @@
                     </script>
                     <table class="dijitTooltipTable">
                         <tr>
-                            <td><label for="name">Choose the Lead
-                                 Selection List:</label></td>
+                            <td><label for="name">[% l('Choose the Lead
+                                 Selection List:') %]</label></td>
                              <td><input jsId="plMergeLeadSelector"
                                  dojoType="dijit.form.FilteringSelect"
                                  name="lead" /></td>
@@ -177,14 +177,14 @@
                         <tr>
                             <td colspan="2" align="center">
                                 <button dojoType="dijit.form.Button"
-                                    type="submit">Merge</button>
+                                    type="submit">[% l('Merge') %]</button>
                             </td>
                         </tr>
                     </table>
                 </div>
             </div>
             <button dojoType="dijit.form.Button"
-                onclick="deleteSelectedPl();">Delete Selected</button>
+                onclick="deleteSelectedPl();">[% l('Delete Selected') %]</button>
         </div>
         <table
             id="acq-unified-pl-grid"
@@ -200,10 +200,10 @@
             <thead>
                 <tr>
                     <th field="name" get="getName" formatter="formatPlName">
-                        Name
+                        [% l('Name') %]
                     </th>
-                    <th field="owner" get="getPlOwnerName">Owner</th>
-                    <th field="entry_count">Entry Count</th>
+                    <th field="owner" get="getPlOwnerName">[% l('Owner') %]</th>
+                    <th field="entry_count">[% l('Entry Count') %]</th>
                 </tr>
             </thead>
         </table>
@@ -211,10 +211,10 @@
     <div id="acq-unified-results-invoice" class="hidden">
         <div class="acq-unified-result-specific-controls">
             <button onclick="dijit.byId('acq-unified-inv-grid').refresh();">
-                Refresh Grid
+                [% l('Refresh Grid') %]
             </button>
             <button onclick="printInvoiceVouchers();">
-                Print Selected Invoices
+                [% l('Print Selected Invoices') %]
             </button>
         </div>
         <table
@@ -235,7 +235,7 @@
         </table>
     </div>
     <div id="acq-unified-results-no_results" class="hidden">
-        There are no results from your search.
+        [% l('There are no results from your search.') %]
     </div>
     <div id="acq-unified-results-lineitem" class="hidden">
         [% INCLUDE "acq/common/li_table_pager.tt2" %]
diff --git a/Open-ILS/src/templates/acq/settings/li_attr.tt2 b/Open-ILS/src/templates/acq/settings/li_attr.tt2
index d096f96..91b03a7 100644
--- a/Open-ILS/src/templates/acq/settings/li_attr.tt2
+++ b/Open-ILS/src/templates/acq/settings/li_attr.tt2
@@ -2,42 +2,42 @@
 
 <div dojoType="dijit.layout.ContentPane" layoutAlign="top">
     <div dojoType="dijit.form.DropDownButton">
-        <span>Lineitem Attribute Attribute</span>
+        <span>[% l('Lineitem Attribute Attribute') %]</span>
         <div dojoType="dijit.TooltipDialog" execute="createOrderRecordField(arguments[0]);">
             <script type='dojo/connect' event='onOpen'>//setORDesc();</script>
             <table class='dijitTooltipTable'>
                 <tr>
-                    <td><label for="code">Code:</label></td>
+                    <td><label for="code">[% l('Code:') %]</label></td>
                     <td><input dojoType='dijit.form.TextBox' name='code'/></td>
                 </tr>
                 <tr>
-                    <td><label for="description">Description: </label></td>
+                    <td><label for="description">[% l('Description: ') %]</label></td>
                     <td><input id='oils-acq-provider-or-desc' dojoType="dijit.form.TextBox" name="description"> </input></td>
                 </tr>
                 <tr>
-                    <td><label for="amount">Tag: </label></td>
+                    <td><label for="amount">[% l('Tag: ') %]</label></td>
                     <td><input dojoType="dijit.form.TextBox" name="tag"></input></td>
                 </tr>
                 <tr>
-                    <td><label for="amount">Subfield: </label></td>
+                    <td><label for="amount">[% l('Subfield: ') %]</label></td>
                     <td><input dojoType="dijit.form.TextBox" name="subfield"></input></td>
                 </tr>
                 <tr>
-                    <td><label for="ident">Identifer Field?: </label></td>
+                    <td><label for="ident">[% l('Identifer Field?: ') %]</label></td>
                     <td>
                         <select dojoType="dijit.form.FilteringSelect" name="ident">
-                            <option value='f' selected='selected'>False</option>
-                            <option value='t'>True</option>
+                            <option value='f' selected='selected'>[% l('False') %]</option>
+                            <option value='t'>[% l('True') %]</option>
                         </select>
                     </td>
                 </tr>
                 <tr>
-                    <td><label for="amount">XPath (advanced): </label></td>
+                    <td><label for="amount">[% l('XPath (advanced): ') %]</label></td>
                     <td><input dojoType="dijit.form.TextBox" name="xpath"></input></td>
                 </tr>
                 <tr>
                     <td colspan='2' align='center'>
-                        <button dojoType=dijit.form.Button type="submit">Apply</button>
+                        <button dojoType=dijit.form.Button type="submit">[% l('Apply') %]</button>
                     </td>
                 </tr>
             </table>
@@ -46,24 +46,24 @@
     <script type="text/javascript">
         var liAttrGridLayout = [{
             cells : [[
-                {name: 'ID', field: 'id'},
-                {name: 'Code', field:'code', width:'auto'},
-                {name: 'Description', field: "description", width:'auto'}, 
-                {name: 'Tag', get:getTag},
-                {name: 'Subfield', get:getSubfield},
-                {name: 'Identifier', field:'ident'},
-                {name: 'XPath', field:'xpath', width:'auto'}
+                {name: '[% l('ID') %]', field: 'id'},
+                {name: '[% l('Code') %]', field:'code', width:'auto'},
+                {name: '[% l('Description') %]', field: "description", width:'auto'}, 
+                {name: '[% l('Tag') %]', get:getTag},
+                {name: '[% l('Subfield') %]', get:getSubfield},
+                {name: '[% l('Identifier') %]', field:'ident'},
+                {name: '[% l('XPath') %]', field:'xpath', width:'auto'}
             ]]
         }];
     </script>
     <div dojoType="dijit.layout.TabContainer">
         <div dojoType="dijit.layout.ContentPane" 
-                class='oils-acq-detail-content-pane' title="MARC Attributes" style='height:600px;'>
+                class='oils-acq-detail-content-pane' title="[% l('MARC Attributes') %]" style='height:600px;'>
             <script type='dojo/connect' event='onShow'>loadMarcAttrGrid();</script>
             <div jsId='liMarcAttrGrid' dojoType="dojox.Grid" structure='liAttrGridLayout'> </div>
         </div>
         <div dojoType="dijit.layout.ContentPane" 
-                class='oils-acq-detail-content-pane' title="Generated Attributes" style='height:600px;'>
+                class='oils-acq-detail-content-pane' title="[% l('Generated Attributes') %]" style='height:600px;'>
             <script type='dojo/connect' event='onShow'>loadGeneratedAttrGrid();</script>
             <div jsId='liGeneratedAttrGrid' dojoType="dojox.Grid" structure='liAttrGridLayout'> </div>
         </div>
diff --git a/Open-ILS/src/templates/actor/user/event_log.tt2 b/Open-ILS/src/templates/actor/user/event_log.tt2
index b5e3d0d..9bbc722 100644
--- a/Open-ILS/src/templates/actor/user/event_log.tt2
+++ b/Open-ILS/src/templates/actor/user/event_log.tt2
@@ -1,5 +1,5 @@
 [% WRAPPER base.tt2 %]
-[% ctx.page_title = "Triggered Event Log" %]
+[% ctx.page_title = l("Triggered Event Log") %]
 <script type="text/javascript">
     dojo.require("dijit.form.Button");
     dojo.require("dojo.data.ItemFileReadStore");
@@ -109,8 +109,8 @@
                 "data": {
                     "identifier": "name",
                     "items": [  /* XXX i18n */
-                        {"name": "circ", "label": "Circulation"},
-                        {"name": "ahr", "label": "Hold"}
+                        {"name": "circ", "label": "[% l('Circulation') %]"},
+                        {"name": "ahr", "label": "[% l('Hold') %]"}
                     ]
                 }
             })
@@ -124,13 +124,13 @@
                 "data": {
                     "identifier": "name",
                     "items": [  /* XXX i18n */
-                        {"name": "found", "label": "Found"},
-                        {"name": "collected", "label": "Collected"},
-                        {"name": "invalid", "label": "Invalid"},
-                        {"name": "pending", "label": "Pending"},
-                        {"name": "reacting", "label": "Reacting"},
-                        {"name": "complete", "label": "Complete"},
-                        {"name": "error", "label": "Error"}
+                        {"name": "found", "label": "[% l('Found') %]"},
+                        {"name": "collected", "label": "[% l('Collected') %]"},
+                        {"name": "invalid", "label": "[% l('Invalid') %]"},
+                        {"name": "pending", "label": "[% l('Pending') %]"},
+                        {"name": "reacting", "label": "[% l('Reacting') %]"},
+                        {"name": "complete", "label": "[% l('Complete') %]"},
+                        {"name": "error", "label": "[% l('Error') %]"}
                     ]
                 }
             })
@@ -278,7 +278,7 @@
                 query="initial_query">
                 <thead>
                     <tr>
-                        <th field="name" fpath="name" ffilter="true">Event Name</th>
+                        <th field="name" fpath="name" ffilter="true">[% l('Event Name') %]</th>
                         <th field="reactor" fpath="reactor" ffilter="true"></th>
                         <th field="run_time" fpath="run_time" ffilter="true"></th><!-- XXX TODO formatters for *_time -->
                         <th field="add_time" fpath="add_time" ffilter="true" _visible="false"></th>
@@ -287,13 +287,13 @@
                         <th field="complete_time" fpath="complete_time" ffilter="true" _visible="false"></th>
                         <th field="id" fpath="id" ffilter="true" _visible="false"></th>
                         <th field="state" fpath="state" ffilter="true"></th>
-                        <th field="target_circ_copy_barcode" fpath="target_circ.target_copy.barcode" ffilter="true">Target Circulation - Copy Barcode</th>
-                        <th field="target_circ_copy_title" fpath="target_circ.target_copy.call_number.record.simple_record.title">Target Circulation - Title</th>
-                        <th field="target_circ_copy_author" fpath="target_circ.target_copy.call_number.record.simple_record.author">Target Circulation - Author</th>
-                        <th field="target_circ_patron_barcode" fpath="target_circ.usr.card.barcode" ffilter="true">Target Circulation - Patron Barcode</th>
-                        <th field="target_hold_copy_title" fpath="target_hold.current_copy.call_number.record.simple_record.title">Target Hold - Title</th>
-                        <th field="target_hold_copy_author" fpath="target_hold.current_copy.call_number.record.simple_record.author">Target Hold - Author</th>
-                        <th field="target_hold_patron_barcode" fpath="target_hold.usr.card.barcode" ffilter="true">Target Hold - Patron Barcode</th>
+                        <th field="target_circ_copy_barcode" fpath="target_circ.target_copy.barcode" ffilter="true">[% l('Target Circulation - Copy Barcode') %]</th>
+                        <th field="target_circ_copy_title" fpath="target_circ.target_copy.call_number.record.simple_record.title">[% l('Target Circulation - Title') %]</th>
+                        <th field="target_circ_copy_author" fpath="target_circ.target_copy.call_number.record.simple_record.author">[% l('Target Circulation - Author') %]</th>
+                        <th field="target_circ_patron_barcode" fpath="target_circ.usr.card.barcode" ffilter="true">[% l('Target Circulation - Patron Barcode') %]</th>
+                        <th field="target_hold_copy_title" fpath="target_hold.current_copy.call_number.record.simple_record.title">[% l('Target Hold - Title') %]</th>
+                        <th field="target_hold_copy_author" fpath="target_hold.current_copy.call_number.record.simple_record.author">[% l('Target Hold - Author') %]</th>
+                        <th field="target_hold_patron_barcode" fpath="target_hold.usr.card.barcode" ffilter="true">[% l('Target Hold - Patron Barcode') %]</th>
                     </tr>
                 </thead>
             </table>
diff --git a/Open-ILS/src/templates/actor/user/register.tt2 b/Open-ILS/src/templates/actor/user/register.tt2
index 554127d..e17328e 100644
--- a/Open-ILS/src/templates/actor/user/register.tt2
+++ b/Open-ILS/src/templates/actor/user/register.tt2
@@ -1,4 +1,4 @@
-[% ctx.page_title = 'User Editor' %]
+[% ctx.page_title = l('User Editor') %]
 [% WRAPPER base.tt2 %]
 <script type="text/javascript" src='[% ctx.media_prefix %]/js/ui/default/actor/user/register.js'></script>
 <link rel="stylesheet" type="text/css" href="[% ctx.media_prefix %]/css/skin/[% ctx.skin %]/register.css" />
@@ -18,9 +18,9 @@
     <button dojoType='dijit.form.Button' jsId='saveButton' onClick='uEditSave' scrollOnFocus='false'></button>
     <button dojoType='dijit.form.Button' jsId='saveCloneButton' onClick='uEditSaveClone' scrollOnFocus='false'></button>
     <div id='require-toggle'>
-        <a href='javascript:uEditToggleRequired(1);' id='uedit-show-required'>Show Only Required Fields</a><br id='uedit-show-required-br'/>
-        <a href='javascript:uEditToggleRequired(2);' id='uedit-show-suggested'>Show Suggested Fields</a><br id='uedit-show-suggested-br'/>
-        <a href='javascript:uEditToggleRequired(0);' id='uedit-show-all' class='hidden'>Show All Fields</a>
+        <a href='javascript:uEditToggleRequired(1);' id='uedit-show-required'>[% l('Show Only Required Fields') %]</a><br id='uedit-show-required-br'/>
+        <a href='javascript:uEditToggleRequired(2);' id='uedit-show-suggested'>[% l('Show Suggested Fields') %]</a><br id='uedit-show-suggested-br'/>
+        <a href='javascript:uEditToggleRequired(0);' id='uedit-show-all' class='hidden'>[% l('Show All Fields') %]</a>
     </div>
 </div>
 
@@ -53,9 +53,9 @@
         <table class='oils-generic-table' style='margin:10px;'>
             <thead>
                 <tr>
-                    <th id='uedit-all-cards-barcode'>Barcode</th>
-                    <th id='uedit-all-cards-active'>Active</th>
-                    <th id='uedit-all-cards-primary'>Primary</th>
+                    <th id='uedit-all-cards-barcode'>[% l('Barcode') %]</th>
+                    <th id='uedit-all-cards-active'>[% l('Active') %]</th>
+                    <th id='uedit-all-cards-primary'>[% l('Primary') %]</th>
                 </tr>
             </thead>
             <tbody id='uedit-all-cards-tbody'>
@@ -68,8 +68,8 @@
             <tbody>
                 <tr>
                     <td colspan='3' style='text-align:center;'>
-                        <button jsId='allCardsClose' dojoType='dijit.form.Button' onClick='allCardsDialog.hide()' scrollOnFocus='false'>Close</button>
-                        <span id='uedit-apply-card-changes'><button jsId='allCardsApply' dojoType='dijit.form.Button' onClick='applyCardChanges()' scrollOnFocus='false'>Apply Changes</button></span>
+                        <button jsId='allCardsClose' dojoType='dijit.form.Button' onClick='allCardsDialog.hide()' scrollOnFocus='false'>[% l('Close') %]</button>
+                        <span id='uedit-apply-card-changes'><button jsId='allCardsApply' dojoType='dijit.form.Button' onClick='applyCardChanges()' scrollOnFocus='false'>[% l('Apply Changes') %]</button></span>
                     </td>
                 </tr>
             </tbody>
diff --git a/Open-ILS/src/templates/booking/pickup.tt2 b/Open-ILS/src/templates/booking/pickup.tt2
index d8784c9..d127e3d 100644
--- a/Open-ILS/src/templates/booking/pickup.tt2
+++ b/Open-ILS/src/templates/booking/pickup.tt2
@@ -21,10 +21,10 @@
             <thead>
                 <tr><!-- FIXME: i18n problem: init_auto_l10n() runs
                         too late to take care of the below elements. -->
-                    <th width="35%" field="type">Title</th>
-                    <th width="25%" field="resource">Barcode</th>
-                    <th width="20%" field="start_time">Start time</th>
-                    <th width="20%" field="end_time">End time</th>
+                    <th width="35%" field="type">[% l('Title') %]</th>
+                    <th width="25%" field="resource">[% l('Barcode') %]</th>
+                    <th width="20%" field="start_time">[% l('Start time') %]</th>
+                    <th width="20%" field="end_time">[% l('End time') %]</th>
                 </tr>
             </thead>
         </table>
@@ -46,10 +46,10 @@
             <thead>
                 <tr><!-- FIXME: i18n problem: init_auto_l10n() runs
                         too late to take care of the below elements. -->
-                    <th width="35%" field="type">Title</th>
-                    <th width="25%" field="resource">Barcode</th>
-                    <th width="20%" field="pickup_time">Pickup time</th>
-                    <th width="20%" field="end_time">Due time</th>
+                    <th width="35%" field="type">[% l('Title') %]</th>
+                    <th width="25%" field="resource">[% l('Barcode') %]</th>
+                    <th width="20%" field="pickup_time">[% l('Pickup time') %]</th>
+                    <th width="20%" field="end_time">[% l('Due time') %]</th>
                 </tr>
             </thead>
         </table>
diff --git a/Open-ILS/src/templates/booking/reservation.tt2 b/Open-ILS/src/templates/booking/reservation.tt2
index ece7c58..90b0428 100644
--- a/Open-ILS/src/templates/booking/reservation.tt2
+++ b/Open-ILS/src/templates/booking/reservation.tt2
@@ -95,10 +95,10 @@
             <thead>
                 <tr><!-- FIXME: i18n problem: init_auto_l10n() runs
                         too late to take care of the below elements. -->
-                    <th width="35%" field="type">Type</th>
-                    <th width="25%" field="resource">Resource</th>
-                    <th width="20%" field="start_time">Start time</th>
-                    <th width="20%" field="end_time">End time</th>
+                    <th width="35%" field="type">[% l('Type') %]</th>
+                    <th width="25%" field="resource">[% l('Resource') %]</th>
+                    <th width="20%" field="start_time">[% l('Start time') %]</th>
+                    <th width="20%" field="end_time">[% l('End time') %]</th>
                 </tr>
             </thead>
         </table>
diff --git a/Open-ILS/src/templates/booking/return.tt2 b/Open-ILS/src/templates/booking/return.tt2
index 40e1a32..5c46ab1 100644
--- a/Open-ILS/src/templates/booking/return.tt2
+++ b/Open-ILS/src/templates/booking/return.tt2
@@ -28,10 +28,10 @@
             <thead>
                 <tr><!-- FIXME: i18n problem: init_auto_l10n() runs
                         too late to take care of the below elements. -->
-                    <th width="35%" field="type">Title</th>
-                    <th width="25%" field="resource">Barcode</th>
-                    <th width="20%" field="pickup_time">Pickup time</th>
-                    <th width="20%" field="end_time">Due time</th>
+                    <th width="35%" field="type">[% l('Title') %]</th>
+                    <th width="25%" field="resource">[% l('Barcode') %]</th>
+                    <th width="20%" field="pickup_time">[% l('Pickup time') %]</th>
+                    <th width="20%" field="end_time">[% l('Due time') %]</th>
                 </tr>
             </thead>
         </table>
@@ -53,10 +53,10 @@
             <thead>
                 <tr><!-- FIXME: i18n problem: init_auto_l10n() runs
                         too late to take care of the below elements. -->
-                    <th width="35%" field="type">Title</th>
-                    <th width="25%" field="resource">Barcode</th>
-                    <th width="20%" field="due_time">Due time</th>
-                    <th width="20%" field="return_time">Return time</th>
+                    <th width="35%" field="type">[% l('Title') %]</th>
+                    <th width="25%" field="resource">[% l('Barcode') %]</th>
+                    <th width="20%" field="due_time">[% l('Due time') %]</th>
+                    <th width="20%" field="return_time">[% l('Return time') %]</th>
                 </tr>
             </thead>
         </table>
diff --git a/Open-ILS/src/templates/cat/authority/list.tt2 b/Open-ILS/src/templates/cat/authority/list.tt2
index 216a4cb..2e134b3 100644
--- a/Open-ILS/src/templates/cat/authority/list.tt2
+++ b/Open-ILS/src/templates/cat/authority/list.tt2
@@ -1,4 +1,4 @@
-[% ctx.page_title = 'Authority record list' %]
+[% ctx.page_title = l('Authority record list') %]
 [% WRAPPER base.tt2 %]
 
 <script type="text/javascript" src='[% ctx.media_prefix %]/js/ui/default/cat/authority/list.js'> </script>
@@ -12,11 +12,11 @@
 </style>
 <div dojoType="dijit.form.Form" id="myForm" jsId="myForm" encType="multipart/form-data" action="" method="">
     <span style="white-space: nowrap;">
-        <label for="authTerm">Search term: </label>
+        <label for="authTerm">[% l('Search term: ') %]</label>
         <input type="text" name="authTerm" value="" dojoType="dijit.form.TextBox" trim="true" id="authTerm" propercase="false"/>
     </span>
     <span style="white-space: nowrap;">
-        <label for="authAxis">Authority type: </label>
+        <label for="authAxis">[% l('Authority type: ') %]</label>
         <input
             id="authAxis"
             name="authAxis"
@@ -32,19 +32,19 @@
         />
     </span>
 <!-- Not currently useful - see authOUListInit() above -->
-<!--    <label for="authOU">Library: </label><select dojoType="openils.widget.OrgUnitFilteringSelect" id="authOU" name="authOU" searchAttr="shortname" labelAttr="shortname"></select> -->
+<!--    <label for="authOU">[% l('Library: ') %]</label><select dojoType="openils.widget.OrgUnitFilteringSelect" id="authOU" name="authOU" searchAttr="shortname" labelAttr="shortname"></select> -->
 
     <span style="white-space: nowrap;">
-        <span dojoType="dijit.form.Button" type="button" value="Previous">Previous
+        <span dojoType="dijit.form.Button" type="button" value="Previous">[% l('Previous') %]
             <script type="dojo/method" event="onClick" args="evt">
                 displayRecords({"page":"prev"});
             </script>
         </span>
 
-        <label for="authPage">Page: </label>
+        <label for="authPage">[% l('Page: ') %]</label>
         <input dojoType="dijit.form.NumberSpinner" value="0" constraints="{min:-100,max:100,places:0}" smallDelta="1" id="authPage" name="authPage" style="width:5em;" />
 
-        <span dojoType="dijit.form.Button" type="button" value="Next">Next
+        <span dojoType="dijit.form.Button" type="button" value="Next">[% l('Next') %]
             <script type="dojo/method" event="onClick" args="evt">
                 displayRecords({"page":"next"});
             </script>
@@ -52,7 +52,7 @@
     </span>
 
     <span style="white-space: nowrap;">
-        <span dojoType="dijit.form.Button" type="button" value="Submit">Submit
+        <span dojoType="dijit.form.Button" type="button" value="Submit">[% l('Submit') %]
             <script type="dojo/method" event="onClick" args="evt">
                 displayRecords();
             </script>
@@ -65,12 +65,12 @@
 <div id='mergebox-div' class='hidden' style='float:right; border: 4px solid; width: 25%;'>
     <div style="border-bottom: 4px solid; text-align: center;">
         <div dojoType="dijit.form.Form" encType="multipart/form-data" action="" method="">
-            <div dojoType="dijit.form.Button" type="button" value="Merge">Merge
+            <div dojoType="dijit.form.Button" type="button" value="Merge">[% l('Merge') %]
                 <script type="dojo/method" event="onClick" args="evt">
                     mergeRecords();
                 </script>
             </div>
-            <div dojoType="dijit.form.Button" type="button" value="Clear">Clear
+            <div dojoType="dijit.form.Button" type="button" value="Clear">[% l('Clear') %]
                 <script type="dojo/method" event="onClick" args="evt">
                     clearMergeRecords();
                 </script>
diff --git a/Open-ILS/src/templates/circ/hold_pull_list.tt2 b/Open-ILS/src/templates/circ/hold_pull_list.tt2
index 91a2fdc..485d717 100644
--- a/Open-ILS/src/templates/circ/hold_pull_list.tt2
+++ b/Open-ILS/src/templates/circ/hold_pull_list.tt2
@@ -1,5 +1,5 @@
 [% WRAPPER base.tt2 %]
-[% ctx.page_title = 'Hold Pull List' %]
+[% ctx.page_title = l('Hold Pull List') %]
 <script type="text/javascript">
     dojo.require("dijit.form.Button");
     dojo.require("openils.widget.OrgUnitFilteringSelect");
@@ -49,14 +49,14 @@
 <div dojoType="dijit.layout.ContentPane" layoutAlign="client">
     <div dojoType="dijit.layout.ContentPane"
          layoutAlign="top" class="oils-header-panel">
-        <div>Hold Pull List</div>
+        <div>[% l('Hold Pull List') %]</div>
         <div>
             <button dojoType="dijit.form.Button"
-                onClick="grid.print();">Print Pull List</button>
+                onClick="grid.print();">[% l('Print Pull List') %]</button>
         </div>
     </div>
     <div class="oils-acq-basic-roomy">
-        <label for="org_selector">Show the pull list for:</label>
+        <label for="org_selector">[% l('Show the pull list for:') %]</label>
         <select
             id="org_selector" jsId="org_selector"
             dojoType="openils.widget.OrgUnitFilteringSelect"
@@ -83,21 +83,21 @@
         query="{}">
         <thead>
             <tr>
-                <th field="shelving_loc" fpath="current_copy.location.name" ffilter="true">Shelving Location</th>
+                <th field="shelving_loc" fpath="current_copy.location.name" ffilter="true">[% l('Shelving Location') %]</th>
                 <th field="call_number_label" fpath="call_number_label" ffilter="true"></th>
-                <th field="author" fpath="current_copy.call_number.record.simple_record.author" ffilter="true">Author</th>
-                <th field="title" fpath="current_copy.call_number.record.simple_record.title" ffilter="true">Title</th>
+                <th field="author" fpath="current_copy.call_number.record.simple_record.author" ffilter="true">[% l('Author') %]</th>
+                <th field="title" fpath="current_copy.call_number.record.simple_record.title" ffilter="true">[% l('Title') %]</th>
                 <th field="barcode" fpath="current_copy.barcode" ffilter="true"></th>
-                <th field="parts" fpath="current_copy.parts.label" fsort="false">Parts</th>
-                <th field="copy_status" fpath="current_copy.status.name">Copy Status</th>
-                <th field="notes" fpath="notes.body" fsort="false" _visible="false">Hold Notes</th>
-                <th field="patron_barcode" fpath="usr.card.barcode" _visible="false" ffilter="true">Patron Barcode</th>
-                <th field="pickup_lib_name" fpath="pickup_lib.name" _visible="false" ffilter="true">Pickup Library</th>
-                <th field="pickup_lib_shortname" fpath="pickup_lib.shortname" _visible="false" ffilter="true">Pickup Library (Shortname)</th>
-                <th field="request_lib_name" fpath="request_lib.name" _visible="false" ffilter="true">Request Library</th>
-                <th field="request_lib_shortname" fpath="request_lib.shortname" _visible="false" ffilter="true">Request Library (Shortname)</th>
-                <th field="selection_ou" fpath="selection_ou.shortname" _visible="false" ffilter="true">Selection Locus</th>
-                <th field="sms_carrier_name" fpath="sms_carrier.name" _visible="false" ffilter="true">SMS Carrier</th>
+                <th field="parts" fpath="current_copy.parts.label" fsort="false">[% l('Parts') %]</th>
+                <th field="copy_status" fpath="current_copy.status.name">[% l('Copy Status') %]</th>
+                <th field="notes" fpath="notes.body" fsort="false" _visible="false">[% l('Hold Notes') %]</th>
+                <th field="patron_barcode" fpath="usr.card.barcode" _visible="false" ffilter="true">[% l('Patron Barcode') %]</th>
+                <th field="pickup_lib_name" fpath="pickup_lib.name" _visible="false" ffilter="true">[% l('Pickup Library') %]</th>
+                <th field="pickup_lib_shortname" fpath="pickup_lib.shortname" _visible="false" ffilter="true">[% l('Pickup Library (Shortname)') %]</th>
+                <th field="request_lib_name" fpath="request_lib.name" _visible="false" ffilter="true">[% l('Request Library') %]</th>
+                <th field="request_lib_shortname" fpath="request_lib.shortname" _visible="false" ffilter="true">[% l('Request Library (Shortname)') %]</th>
+                <th field="selection_ou" fpath="selection_ou.shortname" _visible="false" ffilter="true">[% l('Selection Locus') %]</th>
+                <th field="sms_carrier_name" fpath="sms_carrier.name" _visible="false" ffilter="true">[% l('SMS Carrier') %]</th>
             </tr>
         </thead>
     </table>
diff --git a/Open-ILS/src/templates/circ/selfcheck/circ_page.tt2 b/Open-ILS/src/templates/circ/selfcheck/circ_page.tt2
index 868f5f9..3254e4e 100644
--- a/Open-ILS/src/templates/circ/selfcheck/circ_page.tt2
+++ b/Open-ILS/src/templates/circ/selfcheck/circ_page.tt2
@@ -3,12 +3,12 @@
         <thead>
             <tr>
                 <td id='oils-self-circ-pic-cell'></td>
-                <td>Barcode</td>
-                <td>Title</td>
-                <td>Author</td>
-                <td>Due Date</td>
-                <td class='hidden'>Renewals Left</td>
-                <td>Type</td>
+                <td>[% l('Barcode') %]</td>
+                <td>[% l('Title') %]</td>
+                <td>[% l('Author') %]</td>
+                <td>[% l('Due Date') %]</td>
+                <td class='hidden'>[% l('Renewals Left') %]</td>
+                <td>[% l('Type') %]</td>
             </tr>
         </thead>
         <tbody id='oils-selfck-circ-tbody'>
@@ -20,8 +20,8 @@
                 <td name='due_date'></td>
                 <td class='hidden' name='remaining'></td>
                 <td>
-                    <div name='checkout' class='hidden'>Checkout</div>
-                    <div name='renew' class='hidden'>Renewal</div>
+                    <div name='checkout' class='hidden'>[% l('Checkout') %]</div>
+                    <div name='renew' class='hidden'>[% l('Renewal') %]</div>
                 </td>
             </tr>
         </tbody>
diff --git a/Open-ILS/src/templates/circ/selfcheck/fines.tt2 b/Open-ILS/src/templates/circ/selfcheck/fines.tt2
index 0c27047..25b54f1 100644
--- a/Open-ILS/src/templates/circ/selfcheck/fines.tt2
+++ b/Open-ILS/src/templates/circ/selfcheck/fines.tt2
@@ -1,15 +1,15 @@
 <span id='oils-selfck-selected-total'></span>
-<span style='padding-left:5px;'><a class='hidden' href='javascript:void(0);' id='oils-selfck-pay-fines-link'>Pay Fines</a></span>
+<span style='padding-left:5px;'><a class='hidden' href='javascript:void(0);' id='oils-selfck-pay-fines-link'>[% l('Pay Fines') %]</a></span>
 <div id='oils-selfck-fines-table-div'>
     <table id='oils-selfck-fines-table' class='oils-selfck-item-table'>
         <thead>
             <tr>
                 <td><input type='checkbox' checked='checked' id='oils-selfck-fines-selector'/></td>
-                <td>Type</td>
-                <td>Details</td>
-                <td>Total Billed</td>
-                <td>Total Paid</td>
-                <td>Balance Owed</td>
+                <td>[% l('Type') %]</td>
+                <td>[% l('Details') %]</td>
+                <td>[% l('Total Billed') %]</td>
+                <td>[% l('Total Paid') %]</td>
+                <td>[% l('Balance Owed') %]</td>
             </tr>
         </thead>
         <tbody id='oils-selfck-fines-tbody'>
diff --git a/Open-ILS/src/templates/circ/selfcheck/holds_page.tt2 b/Open-ILS/src/templates/circ/selfcheck/holds_page.tt2
index 3336249..601c45d 100644
--- a/Open-ILS/src/templates/circ/selfcheck/holds_page.tt2
+++ b/Open-ILS/src/templates/circ/selfcheck/holds_page.tt2
@@ -3,9 +3,9 @@
         <thead>
             <tr>
                 <td id='oils-self-hold-pic-cell'></td>
-                <td>Title</td>
-                <td>Author</td>
-                <td>Status</td>
+                <td>[% l('Title') %]</td>
+                <td>[% l('Author') %]</td>
+                <td>[% l('Status') %]</td>
             </tr>
         </thead>
         <tbody id='oils-selfck-hold-tbody'>
diff --git a/Open-ILS/src/templates/circ/selfcheck/main.tt2 b/Open-ILS/src/templates/circ/selfcheck/main.tt2
index 6790bb8..42aaf49 100644
--- a/Open-ILS/src/templates/circ/selfcheck/main.tt2
+++ b/Open-ILS/src/templates/circ/selfcheck/main.tt2
@@ -1,4 +1,4 @@
-[% ctx.page_title = 'Self Checkout' %]
+[% ctx.page_title = l('Self Checkout') %]
 [% WRAPPER base.tt2 %]
 <script type="text/javascript" src='[% ctx.media_prefix %]/js/ui/default/circ/selfcheck/selfcheck.js'> </script>
 <script type="text/javascript" src="[% ctx.media_prefix %]/js/ui/default/circ/selfcheck/payment.js"></script>
@@ -11,7 +11,7 @@
 <div id='oils-selfck-bottom-div'>
     <div id='oils-selfck-content-div'>
         <div id='oils-selfck-content-header'>
-            <span><a id='oils-selfck-print-list-link' href='javascript:void(0);'>Print List</a></span>
+            <span><a id='oils-selfck-print-list-link' href='javascript:void(0);'>[% l('Print List') %]</a></span>
         </div>
         <div id='oils-selfck-circ-page' class='hidden'>
             <!-- Checkout / renewal and items out interface -->
@@ -39,17 +39,17 @@
     <form>
         <table>
             <tr>
-                <td>Choose a location</td>
+                <td>[% l('Choose a location') %]</td>
                 <td><div dojoType='openils.widget.OrgUnitFilteringSelect' jsId='oilsSelfckWsLocSelector' 
                     searchAttr='shortname' labelAttr='shortname'></div></td>
             </tr>
             <tr>
-                <td>Enter a workstation name</td>
+                <td>[% l('Enter a workstation name') %]</td>
                 <td><input dojoType='dijit.form.TextBox' jsId='oilsSelfckWsName'/></td>
             </tr>
             <tr>
                 <td colspan='2' align='center'>
-                    <button jsId='oilsSelfckWsSubmit' dojoType='dijit.form.Button'>Submit</button>
+                    <button jsId='oilsSelfckWsSubmit' dojoType='dijit.form.Button'>[% l('Submit') %]</button>
                 </td>
             </tr>
         </table>
diff --git a/Open-ILS/src/templates/circ/selfcheck/patron_login.tt2 b/Open-ILS/src/templates/circ/selfcheck/patron_login.tt2
index da65d79..7009f9d 100644
--- a/Open-ILS/src/templates/circ/selfcheck/patron_login.tt2
+++ b/Open-ILS/src/templates/circ/selfcheck/patron_login.tt2
@@ -1,4 +1,4 @@
-<div>Please login using your library barcode</div>
+<div>[% l('Please login using your library barcode') %]</div>
 <div class='oils-selfck-login-box'>
     <input jsId='selfckBarcodeBox' dojoType='dijit.form.TextBox'></input>
 </div>
diff --git a/Open-ILS/src/templates/circ/selfcheck/payment.tt2 b/Open-ILS/src/templates/circ/selfcheck/payment.tt2
index b7d1ccc..c04342a 100644
--- a/Open-ILS/src/templates/circ/selfcheck/payment.tt2
+++ b/Open-ILS/src/templates/circ/selfcheck/payment.tt2
@@ -1,82 +1,82 @@
 <div id='oils-selfck-cc-payment-summary'>
-    Total amount to pay: $<span></span>
+    [% l('Total amount to pay: $[_1]', '<span></span>') %]
 </div>
 <table id='oils-selfck-cc-payment-table'>
     <tbody>
         <!-- Technically not needed since card type is derived from the CC number
         <tr>
-            <td>Type of Card</td>
+            <td>[% l('Type of Card') %]</td>
             <td>
                 <select dojoType='dijit.form.FilteringSelect' jsId='oilsSelfckCCType' required='true'>
-                    <option value='VISA'>VISA</option>
-                    <option value='MasterCard'>MasterCard</option>
-                    <option value='American Express'>American Express</option>
+                    <option value='VISA'>[% l('VISA') %]</option>
+                    <option value='MasterCard'>[% l('MasterCard') %]</option>
+                    <option value='American Express'>[% l('American Express') %]</option>
                 </select>
             </td>
         </tr>
         -->
         <tr>
-            <td>Credit Card #</td>
+            <td>[% l('Credit Card #') %]</td>
             <td><input dojoType='dijit.form.TextBox' jsId='oilsSelfckCCNumber' required='true'/></td>
         </tr>
         <tr>
-            <td>CVV #</td>
+            <td>[% l('CVV #') %]</td>
             <td><input dojoType='dijit.form.TextBox' jsId='oilsSelfckCCCVV' required='true'/></td>
         </tr>
         <tr>
-            <td>Expiration Month</td>
+            <td>[% l('Expiration Month') %]</td>
             <td>
                 <select dojoType='dijit.form.FilteringSelect' jsId='oilsSelfckCCMonth' required='true'>
-                    <option value='01' selected='selected'>Jan</option>
-                    <option value='02'>Feb</option>
-                    <option value='03'>Mar</option>
-                    <option value='04'>April</option>
-                    <option value='05'>May</option>
-                    <option value='06'>June</option>
-                    <option value='07'>July</option>
-                    <option value='08'>Aug</option>
-                    <option value='09'>Sept</option>
-                    <option value='10'>Oct</option>
-                    <option value='11'>Nov</option>
-                    <option value='12'>Dec</option>
+                    <option value='01' selected='selected'>[% l('Jan') %]</option>
+                    <option value='02'>[% l('Feb') %]</option>
+                    <option value='03'>[% l('Mar') %]</option>
+                    <option value='04'>[% l('April') %]</option>
+                    <option value='05'>[% l('May') %]</option>
+                    <option value='06'>[% l('June') %]</option>
+                    <option value='07'>[% l('July') %]</option>
+                    <option value='08'>[% l('Aug') %]</option>
+                    <option value='09'>[% l('Sept') %]</option>
+                    <option value='10'>[% l('Oct') %]</option>
+                    <option value='11'>[% l('Nov') %]</option>
+                    <option value='12'>[% l('Dec') %]</option>
                 </select>
             </td>
         </tr>
         <tr>
-            <td>Expiration Year</td>
+            <td>[% l('Expiration Year') %]</td>
             <td><input dojoType='dijit.form.NumberSpinner' constraints='{pattern:"0000", places:0, maxlength:4}' jsId='oilsSelfckCCYear' required='true'/></td>
         </tr>
         <tr>
-            <td>Edit Billing Details</td>
+            <td>[% l('Edit Billing Details') %]</td>
             <td><input dojoType='dijit.form.CheckBox' jsId='oilsSelfckEditDetails'/></td>
         </tr>
         <tr>
-            <td>First Name</td>
+            <td>[% l('First Name') %]</td>
             <td><input dojoType='dijit.form.TextBox' jsId='oilsSelfckCCFName' disabled='disabled' required='true'/></td>
         </tr>
         <tr>
-            <td>Last Name</td>
+            <td>[% l('Last Name') %]</td>
             <td><input dojoType='dijit.form.TextBox' jsId='oilsSelfckCCLName' disabled='disabled' required='true'/></td>
         </tr>
         <tr>
-            <td>Street Address</td>
+            <td>[% l('Street Address') %]</td>
             <td><input dojoType='dijit.form.TextBox' jsId='oilsSelfckCCStreet' disabled='disabled' required='true'/></td>
         </tr>
         <tr>
-            <td>City</td>
+            <td>[% l('City') %]</td>
             <td><input dojoType='dijit.form.TextBox' jsId='oilsSelfckCCCity' disabled='disabled' required='true'/></td>
         </tr>
         <tr>
-            <td>State or Province</td>
+            <td>[% l('State or Province') %]</td>
             <td><input dojoType='dijit.form.TextBox' jsId='oilsSelfckCCState' disabled='disabled' required='true'/></td>
         </tr>
         <tr>
-            <td>ZIP or Postal Code</td>
+            <td>[% l('ZIP or Postal Code') %]</td>
             <td><input dojoType='dijit.form.TextBox' jsId='oilsSelfckCCZip' disabled='disabled' required='true'/></td>
         </tr>
         <tr>
             <td colspan='2' align='center'>
-                <button dojoType='dijit.form.Button' jsId='oilsSelfckCCSubmit'>Submit Payment</button>
+                <button dojoType='dijit.form.Button' jsId='oilsSelfckCCSubmit'>[% l('Submit Payment') %]</button>
             </td>
         </tr>
     </tbody>
diff --git a/Open-ILS/src/templates/circ/selfcheck/summary.tt2 b/Open-ILS/src/templates/circ/selfcheck/summary.tt2
index b037ad7..652815c 100644
--- a/Open-ILS/src/templates/circ/selfcheck/summary.tt2
+++ b/Open-ILS/src/templates/circ/selfcheck/summary.tt2
@@ -1,26 +1,26 @@
 <div id='oils-selfck-circ-info-div'>
     <div id='oils-selfck-info-nav'>
-        <span><a id='oils-selfck-nav-home' href='javascript:void(0);' class='selected'>Home</a></span>
-        <span><a id='oils-selfck-nav-logout-print' href='javascript:void(0);'>Logout</a></span>
-        <span><a id='oils-selfck-nav-logout' href='javascript:void(0);'>Logout (No Receipt)</a></span>
+        <span><a id='oils-selfck-nav-home' href='javascript:void(0);' class='selected'>[% l('Home') %]</a></span>
+        <span><a id='oils-selfck-nav-logout-print' href='javascript:void(0);'>[% l('Logout') %]</a></span>
+        <span><a id='oils-selfck-nav-logout' href='javascript:void(0);'>[% l('Logout (No Receipt)') %]</a></span>
     </div>
     <fieldset>
-        <legend>Items Checked Out</legend>
+        <legend>[% l('Items Checked Out') %]</legend>
         <div id='oils-selfck-circ-session-total'></div>
         <div id='oils-selfck-circ-account-total'></div>
-        <div><a href='javascript:void(0);' id='oils-selfck-items-out-details-link'>View Items Out</a></div>
+        <div><a href='javascript:void(0);' id='oils-selfck-items-out-details-link'>[% l('View Items Out') %]</a></div>
     </fieldset>
     <fieldset>
-        <legend>Holds</legend>
+        <legend>[% l('Holds') %]</legend>
         <div id='oils-selfck-holds-ready'></div>
         <div id='oils-selfck-holds-total'></div>
-        <div><a href='javascript:void(0);' id='oils-selfck-hold-details-link'>View Holds</a></div>
+        <div><a href='javascript:void(0);' id='oils-selfck-hold-details-link'>[% l('View Holds') %]</a></div>
     </fieldset>
     <fieldset>
-        <legend>Fines</legend>
+        <legend>[% l('Fines') %]</legend>
         <div id='oils-selfck-fines-total'></div>
         <div>
-            <span><a href='javascript:void(0);' id='oils-selfck-view-fines-link'>View Details</a></span>
+            <span><a href='javascript:void(0);' id='oils-selfck-view-fines-link'>[% l('View Details') %]</a></span>
         </div>
     </fieldset>
 </div>
diff --git a/Open-ILS/src/templates/conify/global/acq/cancel_reason.tt2 b/Open-ILS/src/templates/conify/global/acq/cancel_reason.tt2
index 63597a6..06404f2 100644
--- a/Open-ILS/src/templates/conify/global/acq/cancel_reason.tt2
+++ b/Open-ILS/src/templates/conify/global/acq/cancel_reason.tt2
@@ -1,19 +1,19 @@
 [% WRAPPER base.tt2 %]
-[% ctx.page_title = 'Cancel Reasons' %]
+[% ctx.page_title = l('Cancel Reasons') %]
 <script type="text/javascript" src='[% ctx.media_prefix %]/js/ui/default/conify/global/acq/cancel_reason.js'> </script>
 
 <!-- grid -->
 
 <div dojoType="dijit.layout.ContentPane" layoutAlign="client">
         <div dojoType="dijit.layout.ContentPane" layoutAlign="top" class='oils-header-panel'>
-            <div>PO / Item / Request Cancellation Reasons</div>
+            <div>[% l('PO / Item / Request Cancellation Reasons') %]</div>
             <div>
-                <button dojoType='dijit.form.Button' onClick='crGrid.showCreateDialog()'>New Cancel Reason</button>
-                <button dojoType='dijit.form.Button' onClick='crGrid.deleteSelected()'>Delete Selected</button>
+                <button dojoType='dijit.form.Button' onClick='crGrid.showCreateDialog()'>[% l('New Cancel Reason') %]</button>
+                <button dojoType='dijit.form.Button' onClick='crGrid.deleteSelected()'>[% l('Delete Selected') %]</button>
             </div>
         </div>
         <div>
-            <span>Context Org Unit</span>
+            <span>[% l('Context Org Unit') %]</span>
             <select dojoType="openils.widget.OrgUnitFilteringSelect" jsId='contextOrgSelector'
                 searchAttr='shortname' labelAttr='shortname'> </select>
         </div>
diff --git a/Open-ILS/src/templates/conify/global/acq/claim_event_type.tt2 b/Open-ILS/src/templates/conify/global/acq/claim_event_type.tt2
index 6931809..a9213dc 100644
--- a/Open-ILS/src/templates/conify/global/acq/claim_event_type.tt2
+++ b/Open-ILS/src/templates/conify/global/acq/claim_event_type.tt2
@@ -1,18 +1,18 @@
 [% WRAPPER base.tt2 %]
-[% ctx.page_title = 'Claim Event Types' %]
+[% ctx.page_title = l('Claim Event Types') %]
 <div dojoType="dijit.layout.ContentPane" layoutAlign="client">
     <div dojoType="dijit.layout.ContentPane"
          layoutAlign="top" class="oils-header-panel">
-        <div>Claim Event Types</div>
+        <div>[% l('Claim Event Types') %]</div>
         <div>
             <button onclick="grid.showCreateDialog()">
-                New Claim Event Type
+                [% l('New Claim Event Type') %]
             </button>
-            <button onclick="grid.deleteSelected()">Delete Selected</button>
+            <button onclick="grid.deleteSelected()">[% l('Delete Selected') %]</button>
         </div>
     </div>
     <div class="oils-acq-basic-roomy">
-        <span>Show claim event types available to</span>
+        <span>[% l('Show claim event types available to') %]</span>
         <select
             dojoType="openils.widget.OrgUnitFilteringSelect"
             jsId="ownerSelect" searchAttr="shortname"
diff --git a/Open-ILS/src/templates/conify/global/acq/claim_policy.tt2 b/Open-ILS/src/templates/conify/global/acq/claim_policy.tt2
index 8409db1..0fc4f74 100644
--- a/Open-ILS/src/templates/conify/global/acq/claim_policy.tt2
+++ b/Open-ILS/src/templates/conify/global/acq/claim_policy.tt2
@@ -1,17 +1,17 @@
 [% WRAPPER base.tt2 %]
-[% ctx.page_title = 'Claim Policies' %]
+[% ctx.page_title = l('Claim Policies') %]
 
 <div dojoType="dijit.layout.ContentPane" layoutAlign="client">
     <div dojoType="dijit.layout.ContentPane"
          layoutAlign="top" class="oils-header-panel">
-        <div>Claim Policies</div>
+        <div>[% l('Claim Policies') %]</div>
         <div>
-            <button onclick="grid.showCreateDialog()">New Claim Policy</button>
-            <button onclick="grid.deleteSelected()">Delete Selected</button>
+            <button onclick="grid.showCreateDialog()">[% l('New Claim Policy') %]</button>
+            <button onclick="grid.deleteSelected()">[% l('Delete Selected') %]</button>
         </div>
     </div>
     <div class="oils-acq-basic-roomy">
-        <span>Show claim policies available to</span>
+        <span>[% l('Show claim policies available to') %]</span>
         <select
             dojoType="openils.widget.OrgUnitFilteringSelect"
             jsId="ownerSelect" searchAttr="shortname"
diff --git a/Open-ILS/src/templates/conify/global/acq/claim_policy_action.tt2 b/Open-ILS/src/templates/conify/global/acq/claim_policy_action.tt2
index a50c0dd..d603b21 100644
--- a/Open-ILS/src/templates/conify/global/acq/claim_policy_action.tt2
+++ b/Open-ILS/src/templates/conify/global/acq/claim_policy_action.tt2
@@ -1,15 +1,15 @@
 [% WRAPPER base.tt2 %]
-[% ctx.page_title = 'Claim Policy Actions' %]
+[% ctx.page_title = l('Claim Policy Actions') %]
 
 <div dojoType="dijit.layout.ContentPane" layoutAlign="client">
     <div dojoType="dijit.layout.ContentPane"
          layoutAlign="top" class="oils-header-panel">
-        <div>Claim Policy Actions</div>
+        <div>[% l('Claim Policy Actions') %]</div>
         <div>
             <button onclick="grid.showCreateDialog()">
-                New Claim Policy Action
+                [% l('New Claim Policy Action') %]
             </button>
-            <button onclick="grid.deleteSelected()">Delete Selected</button>
+            <button onclick="grid.deleteSelected()">[% l('Delete Selected') %]</button>
         </div>
     </div>
     <table jsId="grid"
diff --git a/Open-ILS/src/templates/conify/global/acq/claim_type.tt2 b/Open-ILS/src/templates/conify/global/acq/claim_type.tt2
index e9fc2ee..0d31e58 100644
--- a/Open-ILS/src/templates/conify/global/acq/claim_type.tt2
+++ b/Open-ILS/src/templates/conify/global/acq/claim_type.tt2
@@ -1,17 +1,17 @@
 [% WRAPPER base.tt2 %]
-[% ctx.page_title = 'Claim Types' %]
+[% ctx.page_title = l('Claim Types') %]
 
 <div dojoType="dijit.layout.ContentPane" layoutAlign="client">
     <div dojoType="dijit.layout.ContentPane"
          layoutAlign="top" class="oils-header-panel">
-        <div>Claim Types</div>
+        <div>[% l('Claim Types') %]</div>
         <div>
-            <button onclick="grid.showCreateDialog()">New Claim Type</button>
-            <button onclick="grid.deleteSelected()">Delete Selected</button>
+            <button onclick="grid.showCreateDialog()">[% l('New Claim Type') %]</button>
+            <button onclick="grid.deleteSelected()">[% l('Delete Selected') %]</button>
         </div>
     </div>
     <div class="oils-acq-basic-roomy">
-        <span>Show claim types available to</span>
+        <span>[% l('Show claim types available to') %]</span>
         <select
             dojoType="openils.widget.OrgUnitFilteringSelect"
             jsId="ownerSelect" searchAttr="shortname"
diff --git a/Open-ILS/src/templates/conify/global/acq/distribution_formula.tt2 b/Open-ILS/src/templates/conify/global/acq/distribution_formula.tt2
index a877a08..e3dfd1a 100644
--- a/Open-ILS/src/templates/conify/global/acq/distribution_formula.tt2
+++ b/Open-ILS/src/templates/conify/global/acq/distribution_formula.tt2
@@ -1,14 +1,14 @@
 [% WRAPPER base.tt2 %]
-[% ctx.page_title = 'Distribution Formulas' %]
+[% ctx.page_title = l('Distribution Formulas') %]
 
 <div id='formula-list-div'>
     <div dojoType="dijit.layout.ContentPane" layoutAlign="client">
         <div dojoType="dijit.layout.ContentPane" layoutAlign="client" class='oils-header-panel'>
-            <div>Distribution Formulas</div>
+            <div>[% l('Distribution Formulas') %]</div>
             <div>
-                <button dojoType='dijit.form.Button' onClick='fListGrid.showCreateDialog()'>New Formula</button>
-                <button dojoType='dijit.form.Button' onClick='fListGrid.deleteSelected()'>Delete Selected</button>
-                <button dojoType='dijit.form.Button' onClick='cloneSelectedFormula()'>Clone Selected</button>
+                <button dojoType='dijit.form.Button' onClick='fListGrid.showCreateDialog()'>[% l('New Formula') %]</button>
+                <button dojoType='dijit.form.Button' onClick='fListGrid.deleteSelected()'>[% l('Delete Selected') %]</button>
+                <button dojoType='dijit.form.Button' onClick='cloneSelectedFormula()'>[% l('Clone Selected') %]</button>
             </div>
         </div>
         <table  jsId="fListGrid"
@@ -39,18 +39,18 @@
     </div>
     <br/>
     <div>
-        <button dojoType='dijit.form.Button' onClick='addEntry()'>New Entry</button>
+        <button dojoType='dijit.form.Button' onClick='addEntry()'>[% l('New Entry') %]</button>
         <span style='padding-right:20px;'></span>
-        <button dojoType='dijit.form.Button' onClick='saveFormula()'>Apply Changes</button>
+        <button dojoType='dijit.form.Button' onClick='saveFormula()'>[% l('Apply Changes') %]</button>
     </div>
     <br/>
     <table class='oils-generic-table'>
         <thead>
             <tr>
                 <th></th>
-                <th>Owning Library</th>
-                <th>Shelving Location</th>
-                <th>Item Count</th>
+                <th>[% l('Owning Library') %]</th>
+                <th>[% l('Shelving Location') %]</th>
+                <th>[% l('Item Count') %]</th>
                 <th></th>
             </tr>
         </thead>
@@ -70,9 +70,9 @@
     </table>
     <br/>
     <div>
-        <button dojoType='dijit.form.Button' onClick='addEntry()'>New Entry</button>
+        <button dojoType='dijit.form.Button' onClick='addEntry()'>[% l('New Entry') %]</button>
         <span style='padding-right:20px;'></span>
-        <button dojoType='dijit.form.Button' onClick='saveFormula()'>Apply Changes</button>
+        <button dojoType='dijit.form.Button' onClick='saveFormula()'>[% l('Apply Changes') %]</button>
     </div>
 </div>
 
diff --git a/Open-ILS/src/templates/conify/global/acq/edi_account.tt2 b/Open-ILS/src/templates/conify/global/acq/edi_account.tt2
index 2d38ebe..4b5099f 100644
--- a/Open-ILS/src/templates/conify/global/acq/edi_account.tt2
+++ b/Open-ILS/src/templates/conify/global/acq/edi_account.tt2
@@ -1,5 +1,5 @@
 [% WRAPPER base.tt2 %]
-[% ctx.page_title = 'EDI Accounts' %]
+[% ctx.page_title = l('EDI Accounts') %]
 <style type="text/css">
     #pListGrid { min-height: 60px; height: 100%; padding-bottom: 5px; }
     .footer_notes { font-size: smaller; }
@@ -8,16 +8,16 @@
 <div id='main-list-div'>
     <div dojoType="dijit.layout.ContentPane" layoutAlign='top'>
         <div dojoType="dijit.layout.ContentPane" layoutAlign="top" class='oils-header-panel'>
-            <div>EDI Accounts</div>
+            <div>[% l('EDI Accounts') %]</div>
             <div>
-                <button dojoType='dijit.form.Button' onClick='pListGrid.showCreateDialog()'>New Account</button>
-                <button dojoType='dijit.form.Button' onClick='pListGrid.deleteSelected()'>Delete Selected</button> 
+                <button dojoType='dijit.form.Button' onClick='pListGrid.showCreateDialog()'>[% l('New Account') %]</button>
+                <button dojoType='dijit.form.Button' onClick='pListGrid.deleteSelected()'>[% l('Delete Selected') %]</button> 
             </div>
         </div>
     </div>
     <!--
     <div>
-        <span>Context Org Unit</span>
+        <span>[% l('Context Org Unit') %]</span>
         <select dojoType="openils.widget.OrgUnitFilteringSelect" jsId='btContextOrgSelect'
             searchAttr='shortname' labelAttr='shortname'> </select>
     </div>
@@ -41,12 +41,14 @@
         </table>
     </div>
     <div class="footer_notes">
+        [% |l %]
         <b>Host</b> is the full FTP/SSH hostname, including the protocol, e.g. ftp://ftp1.somevendor.com<br />  
         <b>Username</b>, <b>Password</b> and <b>Account</b> are (s)FTP/SSH parameters.<br />
         <b>Account</b> is unlikely to be used by modern systems and should typically be empty.<br />
         <b>Vendor Account Number</b> (VAN) is vendor-assigned, only needed if different than the org_unit SAN.<br />
         <b>Vendor Assigned Code</b> (VAC) is essentially a sub-account designation, e.g. '0001'.  It can be used with or without VAN.<br />
         The location of codes in the EDI message itself may vary according to vendor-specific semantics.
+	[% END %]
     </div>
 </div>
 
diff --git a/Open-ILS/src/templates/conify/global/acq/exchange_rate.tt2 b/Open-ILS/src/templates/conify/global/acq/exchange_rate.tt2
index 8991b47..b194f8f 100644
--- a/Open-ILS/src/templates/conify/global/acq/exchange_rate.tt2
+++ b/Open-ILS/src/templates/conify/global/acq/exchange_rate.tt2
@@ -1,10 +1,10 @@
 [% WRAPPER base.tt2 %]
-[% ctx.page_title = 'Exchange Rates' %]
+[% ctx.page_title = l('Exchange Rates') %]
 <div dojoType="dijit.layout.ContentPane" layoutAlign="top" class='oils-header-panel'>
-    <div>Exchange Rates</div>
+    <div>[% l('Exchange Rates') %]</div>
     <div>
-        <button dojoType='dijit.form.Button' onClick='erGrid.showCreateDialog()'>New Exchange Rate</button>
-        <button dojoType='dijit.form.Button' onClick='erGrid.deleteSelected()'>Delete Selected</button>
+        <button dojoType='dijit.form.Button' onClick='erGrid.showCreateDialog()'>[% l('New Exchange Rate') %]</button>
+        <button dojoType='dijit.form.Button' onClick='erGrid.deleteSelected()'>[% l('Delete Selected') %]</button>
     </div>
 </div>
 <div dojoType="dijit.layout.ContentPane" layoutAlign="client">
diff --git a/Open-ILS/src/templates/conify/global/acq/fund_tag.tt2 b/Open-ILS/src/templates/conify/global/acq/fund_tag.tt2
index f1a875d..4c0566e 100644
--- a/Open-ILS/src/templates/conify/global/acq/fund_tag.tt2
+++ b/Open-ILS/src/templates/conify/global/acq/fund_tag.tt2
@@ -1,19 +1,19 @@
 [% WRAPPER base.tt2 %]
-[% ctx.page_title = 'Fund Tags' %]
+[% ctx.page_title = l('Fund Tags') %]
 <script type="text/javascript" src="[% ctx.media_prefix %]/js/ui/default/conify/global/acq/fund_tag.js"> </script>
 <div dojoType="dijit.layout.ContentPane" layoutAlign="client">
     <div dojoType="dijit.layout.ContentPane"
          layoutAlign="top" class="oils-header-panel">
-        <div>Fund Tags</div>
+        <div>[% l('Fund Tags') %]</div>
         <div>
             <button dojoType="dijit.form.Button"
-                onClick="ftGrid.showCreateDialog()">New Fund Tag</button>
+                onClick="ftGrid.showCreateDialog()">[% l('New Fund Tag') %]</button>
             <button dojoType="dijit.form.Button"
-                onClick="ftGrid.deleteSelected()">Delete Selected</button>
+                onClick="ftGrid.deleteSelected()">[% l('Delete Selected') %]</button>
         </div>
     </div>
     <div class="oils-acq-basic-roomy">
-        <span>Show tags available to</span>
+        <span>[% l('Show tags available to') %]</span>
         <select
             dojoType="openils.widget.OrgUnitFilteringSelect"
             jsId="ftOwnerSelect"
diff --git a/Open-ILS/src/templates/conify/global/acq/invoice_item_type.tt2 b/Open-ILS/src/templates/conify/global/acq/invoice_item_type.tt2
index a038372..58fd203 100644
--- a/Open-ILS/src/templates/conify/global/acq/invoice_item_type.tt2
+++ b/Open-ILS/src/templates/conify/global/acq/invoice_item_type.tt2
@@ -1,10 +1,10 @@
 [% WRAPPER base.tt2 %]
-[% ctx.page_title = 'Invoice Item Types' %]
+[% ctx.page_title = l('Invoice Item Types') %]
 <div dojoType="dijit.layout.ContentPane" layoutAlign="top" class="oils-header-panel">
-    <div>Invoice Item Types</div>
+    <div>[% l('Invoice Item Types') %]</div>
     <div>
-        <button dojoType="dijit.form.Button" onClick="aiitGrid.showCreateDialog();">New Invoice Item Type</button>
-        <button dojoType="dijit.form.Button" onClick="aiitGrid.deleteSelected();">Delete Selected</button>
+        <button dojoType="dijit.form.Button" onClick="aiitGrid.showCreateDialog();">[% l('New Invoice Item Type') %]</button>
+        <button dojoType="dijit.form.Button" onClick="aiitGrid.deleteSelected();">[% l('Delete Selected') %]</button>
     </div>
 </div>
 <div dojoType="dijit.layout.ContentPane" layoutAlign="client">
diff --git a/Open-ILS/src/templates/conify/global/acq/invoice_payment_method.tt2 b/Open-ILS/src/templates/conify/global/acq/invoice_payment_method.tt2
index e24fd08..12fc2b8 100644
--- a/Open-ILS/src/templates/conify/global/acq/invoice_payment_method.tt2
+++ b/Open-ILS/src/templates/conify/global/acq/invoice_payment_method.tt2
@@ -1,10 +1,10 @@
 [% WRAPPER base.tt2 %]
-[% ctx.page_title = 'Invoice Payment Methods' %]
+[% ctx.page_title = l('Invoice Payment Methods') %]
 <div dojoType="dijit.layout.ContentPane" layoutAlign="top" class="oils-header-panel">
-    <div>Invoice Payment Methods</div>
+    <div>[% l('Invoice Payment Methods') %]</div>
     <div>
-        <button dojoType="dijit.form.Button" onClick="acqipmGrid.showCreateDialog();">New Invoice Payment Method</button>
-        <button dojoType="dijit.form.Button" onClick="acqipmGrid.deleteSelected();">Delete Selected</button>
+        <button dojoType="dijit.form.Button" onClick="acqipmGrid.showCreateDialog();">[% l('New Invoice Payment Method') %]</button>
+        <button dojoType="dijit.form.Button" onClick="acqipmGrid.deleteSelected();">[% l('Delete Selected') %]</button>
     </div>
 </div>
 <div dojoType="dijit.layout.ContentPane" layoutAlign="client">
diff --git a/Open-ILS/src/templates/conify/global/acq/lineitem_alert.tt2 b/Open-ILS/src/templates/conify/global/acq/lineitem_alert.tt2
index 7ac3f94..5227e8d 100644
--- a/Open-ILS/src/templates/conify/global/acq/lineitem_alert.tt2
+++ b/Open-ILS/src/templates/conify/global/acq/lineitem_alert.tt2
@@ -1,19 +1,19 @@
 [% WRAPPER base.tt2 %]
-[% ctx.page_title = 'Line Item Alerts' %]
+[% ctx.page_title = l('Line Item Alerts') %]
 <script type="text/javascript" src='[% ctx.media_prefix %]/js/ui/default/conify/global/acq/lineitem_alert.js'> </script>
 
 <!-- grid -->
 
  <div dojoType="dijit.layout.ContentPane" layoutAlign="client">
         <div dojoType="dijit.layout.ContentPane" layoutAlign="top" class='oils-header-panel'>
-            <div>Line Item Alert Text</div>
+            <div>[% l('Line Item Alert Text') %]</div>
             <div>
-                <button dojoType='dijit.form.Button' onClick='alertGrid.showCreateDialog()'>New Line Item Alert Text</button>
-                <button dojoType='dijit.form.Button' onClick='alertGrid.deleteSelected()'>Delete Selected</button>
+                <button dojoType='dijit.form.Button' onClick='alertGrid.showCreateDialog()'>[% l('New Line Item Alert Text') %]</button>
+                <button dojoType='dijit.form.Button' onClick='alertGrid.deleteSelected()'>[% l('Delete Selected') %]</button>
             </div>
         </div>
         <div>
-            <span>Context Org Unit</span>
+            <span>[% l('Context Org Unit') %]</span>
             <select dojoType="openils.widget.OrgUnitFilteringSelect" jsId='alertContextOrgSelect'
                 searchAttr='shortname' labelAttr='shortname'> </select>
         </div>
diff --git a/Open-ILS/src/templates/conify/global/acq/lineitem_marc_attr_def.tt2 b/Open-ILS/src/templates/conify/global/acq/lineitem_marc_attr_def.tt2
index 6504100..6eb4144 100644
--- a/Open-ILS/src/templates/conify/global/acq/lineitem_marc_attr_def.tt2
+++ b/Open-ILS/src/templates/conify/global/acq/lineitem_marc_attr_def.tt2
@@ -1,15 +1,15 @@
 [% WRAPPER base.tt2 %]
-[% ctx.page_title = 'Line Item MARC Attributes' %]
+[% ctx.page_title = l('Line Item MARC Attributes') %]
 <script type="text/javascript" src='[% ctx.media_prefix %]/js/ui/default/conify/global/acq/lineitem_marc_attr_def.js'> </script>
 
 <!-- grid -->
 
  <div dojoType="dijit.layout.ContentPane" layoutAlign="client">
         <div dojoType="dijit.layout.ContentPane" layoutAlign="top" class='oils-header-panel'>
-            <div>Line Item MARC Attribute Definition Editor</div>
+            <div>[% l('Line Item MARC Attribute Definition Editor') %]</div>
             <div>
-                <button dojoType='dijit.form.Button' onClick='attrGrid.showCreateDialog()'>New Attribute</button>
-                <button dojoType='dijit.form.Button' onClick='attrGrid.deleteSelected()'>Delete Selected</button>
+                <button dojoType='dijit.form.Button' onClick='attrGrid.showCreateDialog()'>[% l('New Attribute') %]</button>
+                <button dojoType='dijit.form.Button' onClick='attrGrid.deleteSelected()'>[% l('Delete Selected') %]</button>
             </div>
         </div>
         <table  jsId="attrGrid"
@@ -21,8 +21,8 @@
                 editOnEnter='true'>
             <thead>
                 <tr>
-                    <th field='tag' get='attrGridGetTag'>Tag</th>
-                    <th field='subfield' get='attrGridGetSubfield'>Subfield</th>
+                    <th field='tag' get='attrGridGetTag'>[% l('Tag') %]</th>
+                    <th field='subfield' get='attrGridGetSubfield'>[% l('Subfield') %]</th>
                 </tr>
             </thead>
         </table>
diff --git a/Open-ILS/src/templates/conify/global/acq/provider.tt2 b/Open-ILS/src/templates/conify/global/acq/provider.tt2
index 04fd467..7040320 100644
--- a/Open-ILS/src/templates/conify/global/acq/provider.tt2
+++ b/Open-ILS/src/templates/conify/global/acq/provider.tt2
@@ -1,17 +1,17 @@
 [% WRAPPER base.tt2 %]
-[% ctx.page_title = 'Providers' %]
+[% ctx.page_title = l('Providers') %]
 
 <div dojoType="dijit.layout.ContentPane" layoutAlign='client'>
     <div id='provider-list-div'>
         <div dojoType="dijit.layout.ContentPane" layoutAlign="top" class='oils-header-panel'>
-            <div>Provider</div>
+            <div>[% l('Provider') %]</div>
             <div>
-                <button dojoType='dijit.form.Button' onClick='pListGrid.showCreatePane()'>New Provider</button>
-                <button dojoType='dijit.form.Button' onClick='pListGrid.deleteSelected()'>Delete Selected</button> 
+                <button dojoType='dijit.form.Button' onClick='pListGrid.showCreatePane()'>[% l('New Provider') %]</button>
+                <button dojoType='dijit.form.Button' onClick='pListGrid.deleteSelected()'>[% l('Delete Selected') %]</button> 
             </div>
         </div>
         <div dojoType="dijit.layout.ContentPane" layoutAlign="client">
-            <span>Context Org Unit</span>
+            <span>[% l('Context Org Unit') %]</span>
             <select dojoType="openils.widget.OrgUnitFilteringSelect"
                 jsId='contextOrgSelector'
                 searchAttr='shortname'
@@ -38,12 +38,12 @@
     <div id='provider-details-div' style='height:600px'>
     <div dojoType="dijit.layout.TabContainer" style='height:100%' jsId='providerTabs'>
 
-        <div dojoType="dijit.layout.ContentPane" title='Provider Address' select='true' id='provider-address'>
+        <div dojoType="dijit.layout.ContentPane" title='[% l('Provider Address') %]' select='true' id='provider-address'>
             <div dojoType="dijit.layout.ContentPane" layoutAlign="top" class='oils-header-panel'>
-                <div>Provider Address</div>
+                <div>[% l('Provider Address') %]</div>
                 <div>
-                <button dojoType='dijit.form.Button' onClick='paListGrid.showCreateDialog()'>New Provider Address</button>
-                <button dojoType='dijit.form.Button' onClick='paListGrid.deleteSelected()'>Delete Selected</button>
+                <button dojoType='dijit.form.Button' onClick='paListGrid.showCreateDialog()'>[% l('New Provider Address') %]</button>
+                <button dojoType='dijit.form.Button' onClick='paListGrid.deleteSelected()'>[% l('Delete Selected') %]</button>
                 </div>
             </div>
             <div dojoType="dijit.layout.ContentPane" layoutAlign="client" style='height:100px'>
@@ -59,12 +59,12 @@
             </div>
         </div>
 
-        <div dojoType="dijit.layout.ContentPane" title='Provider Contact' id='tab-pro-contact'>
+        <div dojoType="dijit.layout.ContentPane" title='[% l('Provider Contact') %]' id='tab-pro-contact'>
             <div dojoType="dijit.layout.ContentPane" layoutAlign="top" class='oils-header-panel'>
-                <div>Provider Contact</div>
+                <div>[% l('Provider Contact') %]</div>
                 <div>
-                <button dojoType='dijit.form.Button' onClick='pcListGrid.showCreateDialog()'>New Contact</button>
-                <button dojoType='dijit.form.Button' onClick='pcListGrid.deleteSelected()'>Delete Selected</button>
+                <button dojoType='dijit.form.Button' onClick='pcListGrid.showCreateDialog()'>[% l('New Contact') %]</button>
+                <button dojoType='dijit.form.Button' onClick='pcListGrid.deleteSelected()'>[% l('Delete Selected') %]</button>
                 </div>
             </div>
             <div dojoType="dijit.layout.ContentPane" layoutAlign="client" style='height:200px'>
@@ -80,10 +80,10 @@
             </div>
           
             <div dojoType="dijit.layout.ContentPane" layoutAlign="top" class='oils-header-panel'>
-                <div>Contact Address</div>
+                <div>[% l('Contact Address') %]</div>
                 <div>
-                    <button dojoType='dijit.form.Button' onClick='pcaListGrid.showCreateDialog()'>New Contact Address</button>
-                    <button dojoType='dijit.form.Button' onClick='pcaListGrid.deleteSelected()'>Delete Selected</button>
+                    <button dojoType='dijit.form.Button' onClick='pcaListGrid.showCreateDialog()'>[% l('New Contact Address') %]</button>
+                    <button dojoType='dijit.form.Button' onClick='pcaListGrid.deleteSelected()'>[% l('Delete Selected') %]</button>
                 </div>
             </div>
             <div dojoType="dijit.layout.ContentPane" layoutAlign="client" style='height:200px'>
@@ -99,12 +99,12 @@
             </div>
            
         </div>
-        <div dojoType="dijit.layout.ContentPane" title='Attribute Definitions' id='tab-attr'>
+        <div dojoType="dijit.layout.ContentPane" title='[% l('Attribute Definitions') %]' id='tab-attr'>
             <div dojoType="dijit.layout.ContentPane" layoutAlign="top" class='oils-header-panel'>
-                <div> Attribute Definitions</div>
+                <div>[% l('Attribute Definitions') %]</div>
                 <div>
-                    <button dojoType='dijit.form.Button' onClick='padListGrid.showCreateDialog()'>New Attribute Definition</button>
-                    <button dojoType='dijit.form.Button' onClick='padListGrid.deleteSelected()'>Delete Selected</button>
+                    <button dojoType='dijit.form.Button' onClick='padListGrid.showCreateDialog()'>[% l('New Attribute Definition') %]</button>
+                    <button dojoType='dijit.form.Button' onClick='padListGrid.deleteSelected()'>[% l('Delete Selected') %]</button>
                 </div>
             </div>
             <div dojoType="dijit.layout.ContentPane" layoutAlign="client" style='height:200px'>
@@ -126,12 +126,12 @@
             </div>
         </div>
 
-        <div dojoType="dijit.layout.ContentPane" title='Holding Subfield' id='tab-hold'>
+        <div dojoType="dijit.layout.ContentPane" title='[% l('Holding Subfield') %]' id='tab-hold'>
             <div dojoType="dijit.layout.ContentPane" layoutAlign="top" class='oils-header-panel'>
-                <div>Holding Subfield</div>
+                <div>[% l('Holding Subfield') %]</div>
                 <div>
-                <button dojoType='dijit.form.Button' onClick='phsListGrid.showCreateDialog()'>New Holding Subfield</button>
-                <button dojoType='dijit.form.Button' onClick='phsListGrid.deleteSelected()'>Delete Selected</button>
+                <button dojoType='dijit.form.Button' onClick='phsListGrid.showCreateDialog()'>[% l('New Holding Subfield') %]</button>
+                <button dojoType='dijit.form.Button' onClick='phsListGrid.deleteSelected()'>[% l('Delete Selected') %]</button>
                 </div>
             </div>
             <div dojoType="dijit.layout.ContentPane" layoutAlign="client" style='height:400px'>
@@ -160,8 +160,8 @@
             </div>
         </div>
 
-        <div dojoType="dijit.layout.ContentPane" title="Invoices" id="tab-invoice">
-            <big class="oils-acq-basic-roomy"><strong>Invoices</strong></big>
+        <div dojoType="dijit.layout.ContentPane" title="[% l('Invoices') %]" id="tab-invoice">
+            <big class="oils-acq-basic-roomy"><strong>[% l('Invoices') %]</strong></big>
             <div dojoType="dijit.layout.ContentPane" layoutAlign="client" style="height:400px">
                 <table jsId="invListGrid"
                     dojoType="openils.widget.AutoGrid"
@@ -183,15 +183,15 @@
 
     <div class="hidden">
         <select dojoType="dijit.form.FilteringSelect" jsId="nameSelect">
-            <option value='owning_lib'>Owning Library</option>
-            <option value='quantity'>Quantity</option>
-            <option value='call_number'>Call Number</option>
-            <option value='fund_code'>Fund Code</option>
-            <option value='local_note'>Local Note</option>
-            <option value='price'>Price</option>
-            <option value='circ_modifier'>Circulation Modifier</option>
-            <option value='copy_location'>Copy Location</option>
-            <option value='collection_code'>Collection Code</option>
+            <option value='owning_lib'>[% l('Owning Library') %]</option>
+            <option value='quantity'>[% l('Quantity') %]</option>
+            <option value='call_number'>[% l('Call Number') %]</option>
+            <option value='fund_code'>[% l('Fund Code') %]</option>
+            <option value='local_note'>[% l('Local Note') %]</option>
+            <option value='price'>[% l('Price') %]</option>
+            <option value='circ_modifier'>[% l('Circulation Modifier') %]</option>
+            <option value='copy_location'>[% l('Copy Location') %]</option>
+            <option value='collection_code'>[% l('Collection Code') %]</option>
         </select>
     </div> 
 </div>
diff --git a/Open-ILS/src/templates/conify/global/action/survey.tt2 b/Open-ILS/src/templates/conify/global/action/survey.tt2
index 9b530ee..736f2cb 100644
--- a/Open-ILS/src/templates/conify/global/action/survey.tt2
+++ b/Open-ILS/src/templates/conify/global/action/survey.tt2
@@ -1,11 +1,11 @@
 [% WRAPPER base.tt2 %]
    <div dojoType="dijit.layout.ContentPane" layoutAlign='top'>
         <div dojoType="dijit.layout.ContentPane" layoutAlign="top" class='oils-header-panel'>
-            <div>Survey List</div>
+            <div>[% l('Survey List') %]</div>
             <div>
-                <button dojoType='dijit.form.Button' onclick='svNewSurvey();'>Add New Survey</button>
-                <button dojoType='dijit.form.Button' onclick='deleteFromGrid();'>Delete Selected</button>
-                <button dojoType='dijit.form.Button' onclick='endSurvey();'>End Selected Surveys</button>
+                <button dojoType='dijit.form.Button' onclick='svNewSurvey();'>[% l('Add New Survey') %]</button>
+                <button dojoType='dijit.form.Button' onclick='deleteFromGrid();'>[% l('Delete Selected') %]</button>
+                <button dojoType='dijit.form.Button' onclick='endSurvey();'>[% l('End Selected Surveys') %]</button>
             </div>
         </div>
 
@@ -14,63 +14,63 @@
     <table jsId="svGrid" dojoType="dojox.grid.DataGrid" query="{id: '*'}">
         <thead>
             <tr>
-                <th field="id">Survey ID</th>
-                <th field="name" formatter='formatName' width='auto'>Name</th>
-                <th field="description" width='auto'>Description</th>                    
-                <th field="owner" get='getOrgInfo'>Owning Library</th>
-                <th field="start_date" width='auto' get='getDateTimeField'>Survey Start Date</th>
-                <th field="end_date" width='auto' get='getDateTimeField'>End Date</th>
-                <th field="opac" formatter='formatBool'>OPAC Survey?</th>                
-                <th field="poll" formatter='formatBool' >Poll Style?</th>
-                <th field="required" formatter='formatBool'>Is Required?</th>
-                <th field="usr_summary" formatter='formatBool'>Display in User Summary?</th>
+                <th field="id">[% l('Survey ID') %]</th>
+                <th field="name" formatter='formatName' width='auto'>[% l('Name') %]</th>
+                <th field="description" width='auto'>[% l('Description') %]</th>                    
+                <th field="owner" get='getOrgInfo'>[% l('Owning Library') %]</th>
+                <th field="start_date" width='auto' get='getDateTimeField'>[% l('Survey Start Date') %]</th>
+                <th field="end_date" width='auto' get='getDateTimeField'>[% l('End Date') %]</th>
+                <th field="opac" formatter='formatBool'>[% l('OPAC Survey?') %]</th>                
+                <th field="poll" formatter='formatBool' >[% l('Poll Style?') %]</th>
+                <th field="required" formatter='formatBool'>[% l('Is Required?') %]</th>
+                <th field="usr_summary" formatter='formatBool'>[% l('Display in User Summary?') %]</th>
             </tr>
         </thead>
     </table>    
 </div>
 
-<div style='display:none;' dojoType="dijit.Dialog" jsId='svSurveyDialog' title='New Survey' execute='svCreate(arguments[0]);'>
+<div style='display:none;' dojoType="dijit.Dialog" jsId='svSurveyDialog' title='[% l('New Survey') %]' execute='svCreate(arguments[0]);'>
 
         <table id='surveyDialog'>
             <tr>
-                <td>Name</td>
+                <td>[% l('Name') %]</td>
                 <td><input dojoType='dijit.form.TextBox' name='svName'/></td>
             </tr>
             <tr>
-                <td>Description</td>
+                <td>[% l('Description') %]</td>
                 <td><input dojoType='dijit.form.TextBox' name='svDescription'></td>
             </tr>
             <tr>
-                <td>Owning Library</td>
+                <td>[% l('Owning Library') %]</td>
                 <td><select dojoType='openils.widget.OrgUnitFilteringSelect' name='svOwner' jsId='asvOwningOrg' searchAttr='shortname' labelAttr='shortname'/></td>
             </tr>
             <tr>
-                <td>Start Date</td>
+                <td>[% l('Start Date') %]</td>
                 <td><input dojoType='dijit.form.TextBox' name='svStart_date'></td>
             </tr>
             <tr>
-                <td>End Date</td>
+                <td>[% l('End Date') %]</td>
                 <td><input dojoType='dijit.form.TextBox' name='svEnd_date'></td>
             </tr>
             <tr>
-                <td>OPAC Survey?</td>
+                <td>[% l('OPAC Survey?') %]</td>
                 <td><input dojoType='dijit.form.CheckBox' name='svOpac'></td>
             </tr>
             <tr>
-                <td>Poll Style?</td>
+                <td>[% l('Poll Style?') %]</td>
                 <td><input dojoType='dijit.form.CheckBox' name='svPoll'></td>
             </tr>
             <tr>
-                <td>Is Required?</td>
+                <td>[% l('Is Required?') %]</td>
                 <td><input dojoType='dijit.form.CheckBox' name='svRequired'></td>
             </tr>
             <tr>
-                <td>Display in User Summary?</td>
+                <td>[% l('Display in User Summary?') %]</td>
                 <td><input dojoType='dijit.form.CheckBox' name='svUsr_summary'></td>
             </tr>
             <tr>
                 <td colspan='2' align='center'>
-                    <button jsId='createSave' dojoType='dijit.form.Button' type='submit'>Save Changes</button>
+                    <button jsId='createSave' dojoType='dijit.form.Button' type='submit'>[% l('Save Changes') %]</button>
 
                     
                 </td>
diff --git a/Open-ILS/src/templates/conify/global/action_trigger/event_definition.tt2 b/Open-ILS/src/templates/conify/global/action_trigger/event_definition.tt2
index b3343af..069a716 100644
--- a/Open-ILS/src/templates/conify/global/action_trigger/event_definition.tt2
+++ b/Open-ILS/src/templates/conify/global/action_trigger/event_definition.tt2
@@ -1,28 +1,28 @@
 [% WRAPPER base.tt2 %]
-[% ctx.page_title = 'Event Definitions' %]
+[% ctx.page_title = l('Event Definitions') %]
 <script type="text/javascript" src='[% ctx.media_prefix %]/js/ui/default/conify/global/action_trigger/event_definition.js'></script>
 <script type="text/javascript">openils.Util.addOnLoad(loadEventDef)</script>
 
 <div class='hidden'>
     <select dojoType='dijit.form.ComboBox' jsId='eventDefGranularity'>
-        <option value='hourly'>Hourly</option>
-        <option value='daily'>Daily</option>
-        <option value='weekly'>Weekly</option>
-        <option value='monthly'>Monthly</option>
-        <option value='yearly'>Yearly</option>
+        <option value='hourly'>[% l('Hourly') %]</option>
+        <option value='daily'>[% l('Daily') %]</option>
+        <option value='weekly'>[% l('Weekly') %]</option>
+        <option value='monthly'>[% l('Monthly') %]</option>
+        <option value='yearly'>[% l('Yearly') %]</option>
     </select>
 </div>
 
 
 <div dojoType="dijit.layout.TabContainer" style='height:100%;' jsId='eventDefTabs'>
 
-    <div dojoType="dijit.layout.ContentPane" title='Event Definitions' id='tab-atevdef'>
+    <div dojoType="dijit.layout.ContentPane" title='[% l('Event Definitions') %]' id='tab-atevdef'>
         <div dojoType="dijit.layout.ContentPane" layoutAlign="client" class='oils-header-panel'>
-            <div>Trigger Event Definitions</div>
+            <div>[% l('Trigger Event Definitions') %]</div>
             <div>
-                <button dojoType='dijit.form.Button' onClick='edGrid.showCreatePane()'>New</button>
-                <button dojoType='dijit.form.Button' onClick='edGrid.showClonePane(cloneEventEnv)'>Clone Selected</button>
-                <button dojoType='dijit.form.Button' onClick='edGrid.deleteSelected()'>Delete Selected</button>
+                <button dojoType='dijit.form.Button' onClick='edGrid.showCreatePane()'>[% l('New') %]</button>
+                <button dojoType='dijit.form.Button' onClick='edGrid.showClonePane(cloneEventEnv)'>[% l('Clone Selected') %]</button>
+                <button dojoType='dijit.form.Button' onClick='edGrid.deleteSelected()'>[% l('Delete Selected') %]</button>
             </div>
         </div>
         <div dojoType="dijit.layout.ContentPane" layoutAlign="client" style='height:460px'>
@@ -43,12 +43,12 @@
         </div>
     </div>
 
-    <div dojoType="dijit.layout.ContentPane" title='Hooks' id='tab-ath' style='height:100%;'>
+    <div dojoType="dijit.layout.ContentPane" title='[% l('Hooks') %]' id='tab-ath' style='height:100%;'>
         <div dojoType="dijit.layout.ContentPane" layoutAlign="top" class='oils-header-panel'>
-            <div>Trigger Hooks</div>
+            <div>[% l('Trigger Hooks') %]</div>
             <div>
-                <button dojoType='dijit.form.Button' onClick='thGrid.showCreateDialog()'>New</button>
-                <button dojoType='dijit.form.Button' onClick='thGrid.deleteSelected()'>Delete Selected</button>
+                <button dojoType='dijit.form.Button' onClick='thGrid.showCreateDialog()'>[% l('New') %]</button>
+                <button dojoType='dijit.form.Button' onClick='thGrid.deleteSelected()'>[% l('Delete Selected') %]</button>
             </div>
         </div>
         <div dojoType="dijit.layout.ContentPane" layoutAlign="client" style='height:600px'>
@@ -65,12 +65,12 @@
         </div>
     </div>
 
-    <div dojoType="dijit.layout.ContentPane" title='Reactors' id='tab-atreact'>
+    <div dojoType="dijit.layout.ContentPane" title='[% l('Reactors') %]' id='tab-atreact'>
         <div dojoType="dijit.layout.ContentPane" layoutAlign="top" class='oils-header-panel'>
-            <div>Trigger Reactors</div>
+            <div>[% l('Trigger Reactors') %]</div>
             <div>
-                <button dojoType='dijit.form.Button' onClick='trGrid.showCreateDialog()'>New</button>
-                <button dojoType='dijit.form.Button' onClick='trGrid.deleteSelected()'>Delete Selected</button>
+                <button dojoType='dijit.form.Button' onClick='trGrid.showCreateDialog()'>[% l('New') %]</button>
+                <button dojoType='dijit.form.Button' onClick='trGrid.deleteSelected()'>[% l('Delete Selected') %]</button>
             </div>
         </div>
         <div dojoType="dijit.layout.ContentPane" layoutAlign="client" style='height:600px'>
@@ -90,12 +90,12 @@
         </div>
     </div>
 
-    <div dojoType="dijit.layout.ContentPane" title='Validators' id='tab-atval'>
+    <div dojoType="dijit.layout.ContentPane" title='[% l('Validators') %]' id='tab-atval'>
         <div dojoType="dijit.layout.ContentPane" layoutAlign="top" class='oils-header-panel'>
-            <div>Trigger Validators</div>
+            <div>[% l('Trigger Validators') %]</div>
             <div>
-                <button dojoType='dijit.form.Button' onClick='tvGrid.showCreateDialog()'>New</button>
-                <button dojoType='dijit.form.Button' onClick='tvGrid.deleteSelected()'>Delete Selected</button>
+                <button dojoType='dijit.form.Button' onClick='tvGrid.showCreateDialog()'>[% l('New') %]</button>
+                <button dojoType='dijit.form.Button' onClick='tvGrid.deleteSelected()'>[% l('Delete Selected') %]</button>
             </div>
         </div>
         <div dojoType="dijit.layout.ContentPane" layoutAlign="client" style='height:600px'>
diff --git a/Open-ILS/src/templates/conify/global/action_trigger/event_definition_data.tt2 b/Open-ILS/src/templates/conify/global/action_trigger/event_definition_data.tt2
index 19c504a..2432910 100644
--- a/Open-ILS/src/templates/conify/global/action_trigger/event_definition_data.tt2
+++ b/Open-ILS/src/templates/conify/global/action_trigger/event_definition_data.tt2
@@ -5,12 +5,12 @@
 
 <div dojoType="dijit.layout.TabContainer" style='height:100%;' jsId='eventDefTabs'>
 
-    <div dojoType="dijit.layout.ContentPane" title='Event Environment' id='tab-atenv'>
+    <div dojoType="dijit.layout.ContentPane" title='[% l('Event Environment') %]' id='tab-atenv'>
         <div dojoType="dijit.layout.ContentPane" layoutAlign="top" class='oils-header-panel'>
-            <div>Trigger Event Environment</div>
+            <div>[% l('Trigger Event Environment') %]</div>
             <div>   
-                <button dojoType='dijit.form.Button' onClick='teeGrid.showCreateDialog()'>New</button>
-                <button dojoType='dijit.form.Button' onClick='teeGrid.deleteSelected()'>Delete Selected</button>
+                <button dojoType='dijit.form.Button' onClick='teeGrid.showCreateDialog()'>[% l('New') %]</button>
+                <button dojoType='dijit.form.Button' onClick='teeGrid.deleteSelected()'>[% l('Delete Selected') %]</button>
             </div>
         </div>
         <div dojoType="dijit.layout.ContentPane" layoutAlign="client" style='height:600px'>
@@ -26,12 +26,12 @@
     </div>
 
 
-    <div dojoType="dijit.layout.ContentPane" title='Event Parameters' id='tab-atevparam'>
+    <div dojoType="dijit.layout.ContentPane" title='[% l('Event Parameters') %]' id='tab-atevparam'>
         <div dojoType="dijit.layout.ContentPane" layoutAlign="top" class='oils-header-panel'>
-            <div>Trigger Event Parameters</div>
+            <div>[% l('Trigger Event Parameters') %]</div>
             <div>
-                <button dojoType='dijit.form.Button' onClick='tepGrid.showCreateDialog()'>New</button>
-                <button dojoType='dijit.form.Button' onClick='tepGrid.deleteSelected()'>Delete Selected</button>
+                <button dojoType='dijit.form.Button' onClick='tepGrid.showCreateDialog()'>[% l('New') %]</button>
+                <button dojoType='dijit.form.Button' onClick='tepGrid.deleteSelected()'>[% l('Delete Selected') %]</button>
             </div>
         </div>
         <div dojoType="dijit.layout.ContentPane" layoutAlign="client" style='height:600px'>
@@ -46,25 +46,25 @@
         </div>
     </div>
 
-    <div dojoType="dijit.layout.ContentPane" title='Test' id='tab-test'>
+    <div dojoType="dijit.layout.ContentPane" title='[% l('Test') %]' id='tab-test'>
         <div dojoType="dijit.layout.ContentPane" layoutAlign="top" class='oils-header-panel'>
-            <div>Event Definition Tests</div>
+            <div>[% l('Event Definition Tests') %]</div>
             <div></div>
         </div>
         <br/>
         <div dojoType="dijit.layout.ContentPane" layoutAlign="client" style='height:600px'>
             <div style='border:1px solid #aaa;' id='at-test-none'>
-                No tests for this type of event definition hook
+                [% l('No tests for this type of event definition hook') %]
             </div>
             <div style='border:1px solid #aaa;' id='at-test-circ' class='hidden'>
-                <h2>Test Circulation</h2>
+                <h2>[% l('Test Circulation') %]</h2>
                 <table class='oils-generic-table'>
                     <tr>
-                        <td>Barcode of Circulating Copy</td>
+                        <td>[% l('Barcode of Circulating Copy') %]</td>
                         <td><div dojoType='dijit.form.TextBox' jsId='circTestBarcode'></div></td>
                     </tr>
                     <tr>
-                        <td colspan='2'><button dojoType='dijit.form.Button' onclick='evtTestCirc'>Go</button></td>
+                        <td colspan='2'><button dojoType='dijit.form.Button' onclick='evtTestCirc'>[% l('Go') %]</button></td>
                     </tr>
                 </table>
             </div>
diff --git a/Open-ILS/src/templates/conify/global/asset/copy_location_order.tt2 b/Open-ILS/src/templates/conify/global/asset/copy_location_order.tt2
index ba4223f..97304b7 100644
--- a/Open-ILS/src/templates/conify/global/asset/copy_location_order.tt2
+++ b/Open-ILS/src/templates/conify/global/asset/copy_location_order.tt2
@@ -1,22 +1,22 @@
 [% WRAPPER base.tt2 %]
-[% ctx.page_title = 'Copy Location Order' %]
+[% ctx.page_title = l('Copy Location Order') %]
 <script type="text/javascript" src='[% ctx.media_prefix %]/js/ui/default/conify/global/asset/copy_location_order.js'> </script>
 <link rel='stylesheet' type='text/css' href='[% ctx.media_prefix %]/js/dojo/dojo/resources/dnd.css'/>
 
 <div dojoType="dijit.layout.ContentPane" layoutAlign="client" class='oils-header-panel'>
-    <div>Copy Location Order</div>
+    <div>[% l('Copy Location Order') %]</div>
     <div></div>
 </div>
 
 <div dojoType="dijit.layout.ContentPane" layoutAlign="client">
-    <span>Context Org Unit</span>
+    <span>[% l('Context Org Unit') %]</span>
     <select dojoType="openils.widget.OrgUnitFilteringSelect"
             jsId='contextOrgSelector'
             searchAttr='shortname'
             labelAttr='shortname'>
     </select>
-    <button dojoType='dijit.form.Button' onClick='applyChanges()'>Apply Changes</button>
-    <span>To move an item, drag it up or down with the mouse.</span>
+    <button dojoType='dijit.form.Button' onClick='applyChanges()'>[% l('Apply Changes') %]</button>
+    <span>[% l('To move an item, drag it up or down with the mouse.') %]</span>
 </div>
 
 <div dojoType="dijit.layout.ContentPane" layoutAlign="client">
diff --git a/Open-ILS/src/templates/conify/global/asset/copy_template.tt2 b/Open-ILS/src/templates/conify/global/asset/copy_template.tt2
index 495df04..b5e4dbd 100644
--- a/Open-ILS/src/templates/conify/global/asset/copy_template.tt2
+++ b/Open-ILS/src/templates/conify/global/asset/copy_template.tt2
@@ -1,19 +1,19 @@
 [% WRAPPER base.tt2 %]
-[% ctx.page_title = "Copy Templates" %]
+[% ctx.page_title = l("Copy Templates") %]
 <script type="text/javascript" src="[% ctx.media_prefix %]/js/ui/default/conify/global/asset/copy_template.js"> </script>
 <div dojoType="dijit.layout.ContentPane" layoutAlign="client">
     <div dojoType="dijit.layout.ContentPane"
          layoutAlign="top" class="oils-header-panel">
-        <div>Copy Templates</div>
+        <div>[% l('Copy Templates') %]</div>
         <div>
             <button dojoType="dijit.form.Button"
-                onClick="actGrid.showCreatePane()">New Copy Template</button>
+                onClick="actGrid.showCreatePane()">[% l('New Copy Template') %]</button>
             <button dojoType="dijit.form.Button"
-                onClick="actGrid.deleteSelected()">Delete Selected</button>
+                onClick="actGrid.deleteSelected()">[% l('Delete Selected') %]</button>
         </div>
     </div>
     <div class="oils-acq-basic-roomy">
-        <span>Show templates available at or above</span>
+        <span>[% l('Show templates available at or above') %]</span>
         <select
             dojoType="openils.widget.OrgUnitFilteringSelect"
             jsId="actOwnerSelect"
@@ -37,15 +37,15 @@
         <!-- these FilteringSelects will be attached manually to actGrid -->
         <select required="false" dojoType="dijit.form.FilteringSelect"
             jsId="special_fine_level">
-            <option value="1">Low</option>
-            <option value="2">Normal</option>
-            <option value="3">High</option>
+            <option value="1">[% l('Low') %]</option>
+            <option value="2">[% l('Normal') %]</option>
+            <option value="3">[% l('High') %]</option>
         </select>
         <select required="false" dojoType="dijit.form.FilteringSelect"
             jsId="special_loan_duration">
-            <option value="1">Short</option>
-            <option value="2">Normal</option>
-            <option value="3">Long</option>
+            <option value="1">[% l('Short') %]</option>
+            <option value="2">[% l('Normal') %]</option>
+            <option value="3">[% l('Long') %]</option>
         </select>
     </div>
 </div>
diff --git a/Open-ILS/src/templates/conify/global/biblio/monograph_part.tt2 b/Open-ILS/src/templates/conify/global/biblio/monograph_part.tt2
index 08fc5c0..b504200 100644
--- a/Open-ILS/src/templates/conify/global/biblio/monograph_part.tt2
+++ b/Open-ILS/src/templates/conify/global/biblio/monograph_part.tt2
@@ -1,11 +1,11 @@
 [% WRAPPER base.tt2 %]
-[% ctx.page_title = 'Configure Monograph Parts' %]
+[% ctx.page_title = l('Configure Monograph Parts') %]
 <div dojoType="dijit.layout.ContentPane" layoutAlign="client">
     <div dojoType="dijit.layout.ContentPane" layoutAlign="top" class='oils-header-panel'>
-        <div>Monograph Parts</div>
+        <div>[% l('Monograph Parts') %]</div>
         <div>
-            <button dojoType='dijit.form.Button' onClick='monoPartGrid.showCreateDialog()'>New Monograph Part</button>
-            <button dojoType='dijit.form.Button' onClick='monoPartGrid.deleteSelected()'>Delete Selected</button>
+            <button dojoType='dijit.form.Button' onClick='monoPartGrid.showCreateDialog()'>[% l('New Monograph Part') %]</button>
+            <button dojoType='dijit.form.Button' onClick='monoPartGrid.deleteSelected()'>[% l('Delete Selected') %]</button>
         </div>
     </div>
     <div>
diff --git a/Open-ILS/src/templates/conify/global/booking/resource.tt2 b/Open-ILS/src/templates/conify/global/booking/resource.tt2
index bb51583..946a39c 100644
--- a/Open-ILS/src/templates/conify/global/booking/resource.tt2
+++ b/Open-ILS/src/templates/conify/global/booking/resource.tt2
@@ -1,14 +1,14 @@
 [% WRAPPER base.tt2 %]
-[% ctx.page_title = 'Resources' %]
+[% ctx.page_title = l('Resources') %]
 <div dojoType="dijit.layout.ContentPane" layoutAlign="top" class="oils-header-panel">
-    <div>Resources</div>
+    <div>[% l('Resources') %]</div>
     <div>
-        <button dojoType='dijit.form.Button' onClick='brsrcGrid.showCreateDialog()'>New Resource</button>
-        <button dojoType='dijit.form.Button' onClick='brsrcGrid.deleteSelected()'>Delete Selected</button>
+        <button dojoType='dijit.form.Button' onClick='brsrcGrid.showCreateDialog()'>[% l('New Resource') %]</button>
+        <button dojoType='dijit.form.Button' onClick='brsrcGrid.deleteSelected()'>[% l('Delete Selected') %]</button>
     </div>
 </div>
 <div dojoType="dijit.layout.ContentPane" layoutAlign="client">
-    <span>Context Org Unit</span>
+    <span>[% l('Context Org Unit') %]</span>
     <select dojoType="openils.widget.OrgUnitFilteringSelect"
             jsId='contextOrgSelector'
             searchAttr='shortname'
diff --git a/Open-ILS/src/templates/conify/global/booking/resource_attr.tt2 b/Open-ILS/src/templates/conify/global/booking/resource_attr.tt2
index d3ef1c4..d984d06 100644
--- a/Open-ILS/src/templates/conify/global/booking/resource_attr.tt2
+++ b/Open-ILS/src/templates/conify/global/booking/resource_attr.tt2
@@ -1,14 +1,14 @@
 [% WRAPPER base.tt2 %]
-[% ctx.page_title = 'Resource Attributes' %]
+[% ctx.page_title = l('Resource Attributes') %]
 <div dojoType="dijit.layout.ContentPane" layoutAlign="top" class="oils-header-panel">
-    <div>Resource Attributes</div>
+    <div>[% l('Resource Attributes') %]</div>
     <div>
-        <button dojoType='dijit.form.Button' onClick='braGrid.showCreateDialog()'>New Resource Attribute</button>
-        <button dojoType='dijit.form.Button' onClick='braGrid.deleteSelected()'>Delete Selected</button>
+        <button dojoType='dijit.form.Button' onClick='braGrid.showCreateDialog()'>[% l('New Resource Attribute') %]</button>
+        <button dojoType='dijit.form.Button' onClick='braGrid.deleteSelected()'>[% l('Delete Selected') %]</button>
     </div>
 </div>
 <div dojoType="dijit.layout.ContentPane" layoutAlign="client">
-    <span>Context Org Unit</span>
+    <span>[% l('Context Org Unit') %]</span>
     <select dojoType="openils.widget.OrgUnitFilteringSelect"
             jsId='contextOrgSelector'
             searchAttr='shortname'
diff --git a/Open-ILS/src/templates/conify/global/booking/resource_attr_map.tt2 b/Open-ILS/src/templates/conify/global/booking/resource_attr_map.tt2
index 9943afc..43d90be 100644
--- a/Open-ILS/src/templates/conify/global/booking/resource_attr_map.tt2
+++ b/Open-ILS/src/templates/conify/global/booking/resource_attr_map.tt2
@@ -1,14 +1,14 @@
 [% WRAPPER base.tt2 %]
-[% ctx.page_title = 'Resource Attribute Maps' %]
+[% ctx.page_title = l('Resource Attribute Maps') %]
 <div dojoType="dijit.layout.ContentPane" layoutAlign="top" class='oils-header-panel'>
-    <div>Resource Attribute Maps</div>
+    <div>[% l('Resource Attribute Maps') %]</div>
     <div>
-        <button dojoType='dijit.form.Button' onClick='bramGrid.showCreateDialog()'>New Resource Attribute Map</button>
-        <button dojoType='dijit.form.Button' onClick='bramGrid.deleteSelected()'>Delete Selected</button>
+        <button dojoType='dijit.form.Button' onClick='bramGrid.showCreateDialog()'>[% l('New Resource Attribute Map') %]</button>
+        <button dojoType='dijit.form.Button' onClick='bramGrid.deleteSelected()'>[% l('Delete Selected') %]</button>
     </div>
 </div>
 <div dojoType="dijit.layout.ContentPane" layoutAlign="client">
-    <span>Context Org Unit</span>
+    <span>[% l('Context Org Unit') %]</span>
     <select dojoType="openils.widget.OrgUnitFilteringSelect"
             jsId='contextOrgSelector'
             searchAttr='shortname'
diff --git a/Open-ILS/src/templates/conify/global/booking/resource_attr_value.tt2 b/Open-ILS/src/templates/conify/global/booking/resource_attr_value.tt2
index 61c4519..71130ac 100644
--- a/Open-ILS/src/templates/conify/global/booking/resource_attr_value.tt2
+++ b/Open-ILS/src/templates/conify/global/booking/resource_attr_value.tt2
@@ -1,14 +1,14 @@
 [% WRAPPER base.tt2 %]
-[% ctx.page_title = 'Resource Attribute Values' %]
+[% ctx.page_title = l('Resource Attribute Values') %]
 <div dojoType="dijit.layout.ContentPane" layoutAlign="top" class='oils-header-panel'>
-    <div>Resource Attribute Values</div>
+    <div>[% l('Resource Attribute Values') %]</div>
     <div>
-        <button dojoType='dijit.form.Button' onClick='bravGrid.showCreateDialog()'>New Resource Attribute Value</button>
-        <button dojoType='dijit.form.Button' onClick='bravGrid.deleteSelected()'>Delete Selected</button>
+        <button dojoType='dijit.form.Button' onClick='bravGrid.showCreateDialog()'>[% l('New Resource Attribute Value') %]</button>
+        <button dojoType='dijit.form.Button' onClick='bravGrid.deleteSelected()'>[% l('Delete Selected') %]</button>
     </div>
 </div>
 <div dojoType="dijit.layout.ContentPane" layoutAlign="client">
-    <span>Context Org Unit</span>
+    <span>[% l('Context Org Unit') %]</span>
     <select dojoType="openils.widget.OrgUnitFilteringSelect"
             jsId='contextOrgSelector'
             searchAttr='shortname'
diff --git a/Open-ILS/src/templates/conify/global/booking/resource_type.tt2 b/Open-ILS/src/templates/conify/global/booking/resource_type.tt2
index 3783aa2..4efa432 100644
--- a/Open-ILS/src/templates/conify/global/booking/resource_type.tt2
+++ b/Open-ILS/src/templates/conify/global/booking/resource_type.tt2
@@ -1,14 +1,14 @@
 [% WRAPPER base.tt2 %]
-[% ctx.page_title = 'Resource Types' %]
+[% ctx.page_title = l('Resource Types') %]
     <div dojoType="dijit.layout.ContentPane" layoutAlign="top" class="oils-header-panel">
-        <div>Resource Types</div>
+        <div>[% l('Resource Types') %]</div>
         <div>
-            <button dojoType='dijit.form.Button' onClick='brtGrid.showCreateDialog()'>New Resource Type</button>
-            <button dojoType='dijit.form.Button' onClick='brtGrid.deleteSelected()'>Delete Selected</button>
+            <button dojoType='dijit.form.Button' onClick='brtGrid.showCreateDialog()'>[% l('New Resource Type') %]</button>
+            <button dojoType='dijit.form.Button' onClick='brtGrid.deleteSelected()'>[% l('Delete Selected') %]</button>
         </div>
     </div>
 <div dojoType="dijit.layout.ContentPane" layoutAlign="client">
-    <span>Context Org Unit</span>
+    <span>[% l('Context Org Unit') %]</span>
     <select dojoType="openils.widget.OrgUnitFilteringSelect"
             jsId='contextOrgSelector'
             searchAttr='shortname'
diff --git a/Open-ILS/src/templates/conify/global/cat/authority/browse_axis.tt2 b/Open-ILS/src/templates/conify/global/cat/authority/browse_axis.tt2
index 4594158..676edbb 100644
--- a/Open-ILS/src/templates/conify/global/cat/authority/browse_axis.tt2
+++ b/Open-ILS/src/templates/conify/global/cat/authority/browse_axis.tt2
@@ -1,11 +1,11 @@
 [% WRAPPER base.tt2 %]
-[% ctx.page_title = "Configure Authority Browse Axes" %]
+[% ctx.page_title = l("Configure Authority Browse Axes") %]
 <div dojoType="dijit.layout.ContentPane" layoutAlign="client">
     <div dojoType="dijit.layout.ContentPane" layoutAlign="top" class="oils-header-panel">
-        <div>Browse Axes</div>
+        <div>[% l('Browse Axes') %]</div>
         <div>
-            <button dojoType="dijit.form.Button" onClick="aba_grid.showCreateDialog()">New Browse Axis</button>
-            <button dojoType="dijit.form.Button" onClick="aba_grid.deleteSelected()">Delete Selected</button>
+            <button dojoType="dijit.form.Button" onClick="aba_grid.showCreateDialog()">[% l('New Browse Axis') %]</button>
+            <button dojoType="dijit.form.Button" onClick="aba_grid.deleteSelected()">[% l('Delete Selected') %]</button>
         </div>
     </div>
     <div>
diff --git a/Open-ILS/src/templates/conify/global/cat/authority/browse_axis_authority_field_map.tt2 b/Open-ILS/src/templates/conify/global/cat/authority/browse_axis_authority_field_map.tt2
index c80403c..adae8d0 100644
--- a/Open-ILS/src/templates/conify/global/cat/authority/browse_axis_authority_field_map.tt2
+++ b/Open-ILS/src/templates/conify/global/cat/authority/browse_axis_authority_field_map.tt2
@@ -1,15 +1,15 @@
 [% WRAPPER base.tt2 %]
-[% ctx.page_title = "Configure Browse Axis-Authority Field Maps" %]
+[% ctx.page_title = l("Configure Browse Axis-Authority Field Maps") %]
 <div dojoType="dijit.layout.ContentPane" layoutAlign="client">
     <div dojoType="dijit.layout.ContentPane" layoutAlign="top" class="oils-header-panel">
-        <div>Browse Axis-Authority Field Maps</div>
+        <div>[% l('Browse Axis-Authority Field Maps') %]</div>
         <div>
-            <button dojoType="dijit.form.Button" onClick="abaafm_grid.showCreateDialog()">New Browse Axis-Authority Field Map</button>
-            <button dojoType="dijit.form.Button" onClick="abaafm_grid.deleteSelected()">Delete Selected</button>
+            <button dojoType="dijit.form.Button" onClick="abaafm_grid.showCreateDialog()">[% l('New Browse Axis-Authority Field Map') %]</button>
+            <button dojoType="dijit.form.Button" onClick="abaafm_grid.deleteSelected()">[% l('Delete Selected') %]</button>
         </div>
     </div>
     <div id="authority-field-metadata-holder" class="hidden">
-        Showing only browse axis-authority field maps linked to authority field:
+        [% l('Showing only browse axis-authority field maps linked to authority field:') %]
         <a id="authority-field-metadata"></a>
     </div>
     <div>
diff --git a/Open-ILS/src/templates/conify/global/cat/authority/control_set.tt2 b/Open-ILS/src/templates/conify/global/cat/authority/control_set.tt2
index 48bb176..8c440a4 100644
--- a/Open-ILS/src/templates/conify/global/cat/authority/control_set.tt2
+++ b/Open-ILS/src/templates/conify/global/cat/authority/control_set.tt2
@@ -1,11 +1,11 @@
 [% WRAPPER base.tt2 %]
-[% ctx.page_title = "Configure Authority Control Sets" %]
+[% ctx.page_title = l("Configure Authority Control Sets") %]
 <div dojoType="dijit.layout.ContentPane" layoutAlign="client">
     <div dojoType="dijit.layout.ContentPane" layoutAlign="top" class="oils-header-panel">
-        <div>Control Sets</div>
+        <div>[% l('Control Sets') %]</div>
         <div>
-            <button dojoType="dijit.form.Button" onClick="acs_grid.showCreateDialog()">New Control Set</button>
-            <button dojoType="dijit.form.Button" onClick="acs_grid.deleteSelected()">Delete Selected</button>
+            <button dojoType="dijit.form.Button" onClick="acs_grid.showCreateDialog()">[% l('New Control Set') %]</button>
+            <button dojoType="dijit.form.Button" onClick="acs_grid.deleteSelected()">[% l('Delete Selected') %]</button>
         </div>
     </div>
     <div>
diff --git a/Open-ILS/src/templates/conify/global/cat/authority/control_set_authority_field.tt2 b/Open-ILS/src/templates/conify/global/cat/authority/control_set_authority_field.tt2
index ca873da..bc232e6 100644
--- a/Open-ILS/src/templates/conify/global/cat/authority/control_set_authority_field.tt2
+++ b/Open-ILS/src/templates/conify/global/cat/authority/control_set_authority_field.tt2
@@ -1,15 +1,15 @@
 [% WRAPPER base.tt2 %]
-[% ctx.page_title = "Configure Authority Authority Fields" %]
+[% ctx.page_title = l("Configure Authority Authority Fields") %]
 <div dojoType="dijit.layout.ContentPane" layoutAlign="client">
     <div dojoType="dijit.layout.ContentPane" layoutAlign="top" class="oils-header-panel">
-        <div>Authority Fields</div>
+        <div>[% l('Authority Fields') %]</div>
         <div>
-            <button dojoType="dijit.form.Button" onClick="acsaf_grid.showCreateDialog()">New Authority Field</button>
-            <button dojoType="dijit.form.Button" onClick="acsaf_grid.deleteSelected()">Delete Selected</button>
+            <button dojoType="dijit.form.Button" onClick="acsaf_grid.showCreateDialog()">[% l('New Authority Field') %]</button>
+            <button dojoType="dijit.form.Button" onClick="acsaf_grid.deleteSelected()">[% l('Delete Selected') %]</button>
         </div>
     </div>
     <div id="control-set-metadata-holder" class="hidden">
-        Showing only authority fields linked to control set:
+        [% l('Showing only authority fields linked to control set:') %]
         <a id="control-set-metadata"></a>
     </div>
     <div>
@@ -24,9 +24,9 @@
                 editOnEnter="true">
             <thead>
                 <tr>
-                    <th field="bib_fields" name="Controlled Bib Fields"
+                    <th field="bib_fields" name="[% l('Controlled Bib Fields') %]"
                         get="get_just_id" formatter="format_bib_fields"></th>
-                    <th field="axis_maps" name="Axes"
+                    <th field="axis_maps" name="[% l('Axes') %]"
                         get="get_just_id" formatter="format_axis_maps"></th>
                 </tr>
             </thead>
diff --git a/Open-ILS/src/templates/conify/global/cat/authority/control_set_bib_field.tt2 b/Open-ILS/src/templates/conify/global/cat/authority/control_set_bib_field.tt2
index 5c2714a..7929cae 100644
--- a/Open-ILS/src/templates/conify/global/cat/authority/control_set_bib_field.tt2
+++ b/Open-ILS/src/templates/conify/global/cat/authority/control_set_bib_field.tt2
@@ -1,15 +1,15 @@
 [% WRAPPER base.tt2 %]
-[% ctx.page_title = "Configure Authority Control Set Bib Fields" %]
+[% ctx.page_title = l("Configure Authority Control Set Bib Fields") %]
 <div dojoType="dijit.layout.ContentPane" layoutAlign="client">
     <div dojoType="dijit.layout.ContentPane" layoutAlign="top" class="oils-header-panel">
-        <div>Control Set Bib Fields</div>
+        <div>[% l('Control Set Bib Fields') %]</div>
         <div>
-            <button dojoType="dijit.form.Button" onClick="acsbf_grid.showCreateDialog()">New Control Set Bib Field</button>
-            <button dojoType="dijit.form.Button" onClick="acsbf_grid.deleteSelected()">Delete Selected</button>
+            <button dojoType="dijit.form.Button" onClick="acsbf_grid.showCreateDialog()">[% l('New Control Set Bib Field') %]</button>
+            <button dojoType="dijit.form.Button" onClick="acsbf_grid.deleteSelected()">[% l('Delete Selected') %]</button>
         </div>
     </div>
     <div id="authority-field-metadata-holder" class="hidden">
-        Showing only control set bib fields linked to authority field:
+        [% l('Showing only control set bib fields linked to authority field:') %]
         <a id="authority-field-metadata"></a>
     </div>
     <div>
diff --git a/Open-ILS/src/templates/conify/global/cat/authority/thesaurus.tt2 b/Open-ILS/src/templates/conify/global/cat/authority/thesaurus.tt2
index 29c42a0..2b6673b 100644
--- a/Open-ILS/src/templates/conify/global/cat/authority/thesaurus.tt2
+++ b/Open-ILS/src/templates/conify/global/cat/authority/thesaurus.tt2
@@ -1,15 +1,15 @@
 [% WRAPPER base.tt2 %]
-[% ctx.page_title = "Configure Authority Thesauri" %]
+[% ctx.page_title = l("Configure Authority Thesauri") %]
 <div dojoType="dijit.layout.ContentPane" layoutAlign="client">
     <div dojoType="dijit.layout.ContentPane" layoutAlign="top" class="oils-header-panel">
-        <div>Thesauri</div>
+        <div>[% l('Thesauri') %]</div>
         <div>
-            <button dojoType="dijit.form.Button" onClick="at_grid.showCreateDialog()">New Thesaurus</button>
-            <button dojoType="dijit.form.Button" onClick="at_grid.deleteSelected()">Delete Selected</button>
+            <button dojoType="dijit.form.Button" onClick="at_grid.showCreateDialog()">[% l('New Thesaurus') %]</button>
+            <button dojoType="dijit.form.Button" onClick="at_grid.deleteSelected()">[% l('Delete Selected') %]</button>
         </div>
     </div>
     <div id="control-set-metadata-holder" class="hidden">
-        Showing only thesauri linked to control set:
+        [% l('Showing only thesauri linked to control set:') %]
         <a id="control-set-metadata"></a>
     </div>
     <div>
diff --git a/Open-ILS/src/templates/conify/global/config/acn_prefix.tt2 b/Open-ILS/src/templates/conify/global/config/acn_prefix.tt2
index abe096d..9c7ec4b 100644
--- a/Open-ILS/src/templates/conify/global/config/acn_prefix.tt2
+++ b/Open-ILS/src/templates/conify/global/config/acn_prefix.tt2
@@ -1,19 +1,19 @@
 [% WRAPPER base.tt2 %]
-[% ctx.page_title = 'Call Number Prefixes' %]
+[% ctx.page_title = l('Call Number Prefixes') %]
 <script type="text/javascript" src='[% ctx.media_prefix %]/js/ui/default/conify/global/config/acn_prefix.js'> </script>
 
 <!-- grid -->
 
  <div dojoType="dijit.layout.ContentPane" layoutAlign="client">
         <div dojoType="dijit.layout.ContentPane" layoutAlign="top" class='oils-header-panel'>
-            <div>Call Number Prefixes</div>
+            <div>[% l('Call Number Prefixes') %]</div>
             <div>
-                <button dojoType='dijit.form.Button' onClick='thingGrid.showCreateDialog()'>New Prefix</button>
-                <button dojoType='dijit.form.Button' onClick='thingGrid.deleteSelected()'>Delete Selected</button>
+                <button dojoType='dijit.form.Button' onClick='thingGrid.showCreateDialog()'>[% l('New Prefix') %]</button>
+                <button dojoType='dijit.form.Button' onClick='thingGrid.deleteSelected()'>[% l('Delete Selected') %]</button>
             </div>
         </div>
         <div>
-            <span>Context Org Unit</span>
+            <span>[% l('Context Org Unit') %]</span>
             <select dojoType="openils.widget.OrgUnitFilteringSelect" jsId='thingContextOrgSelect'
                 searchAttr='shortname' labelAttr='shortname'> </select>
         </div>
diff --git a/Open-ILS/src/templates/conify/global/config/acn_suffix.tt2 b/Open-ILS/src/templates/conify/global/config/acn_suffix.tt2
index 70f0a5c..0dc91b0 100644
--- a/Open-ILS/src/templates/conify/global/config/acn_suffix.tt2
+++ b/Open-ILS/src/templates/conify/global/config/acn_suffix.tt2
@@ -1,19 +1,19 @@
 [% WRAPPER base.tt2 %]
-[% ctx.page_title = 'Call Number Suffixes' %]
+[% ctx.page_title = l('Call Number Suffixes') %]
 <script type="text/javascript" src='[% ctx.media_prefix %]/js/ui/default/conify/global/config/acn_suffix.js'> </script>
 
 <!-- grid -->
 
  <div dojoType="dijit.layout.ContentPane" layoutAlign="client">
         <div dojoType="dijit.layout.ContentPane" layoutAlign="top" class='oils-header-panel'>
-            <div>Call Number Suffixes</div>
+            <div>[% l('Call Number Suffixes') %]</div>
             <div>
-                <button dojoType='dijit.form.Button' onClick='thingGrid.showCreateDialog()'>New Suffix</button>
-                <button dojoType='dijit.form.Button' onClick='thingGrid.deleteSelected()'>Delete Selected</button>
+                <button dojoType='dijit.form.Button' onClick='thingGrid.showCreateDialog()'>[% l('New Suffix') %]</button>
+                <button dojoType='dijit.form.Button' onClick='thingGrid.deleteSelected()'>[% l('Delete Selected') %]</button>
             </div>
         </div>
         <div>
-            <span>Context Org Unit</span>
+            <span>[% l('Context Org Unit') %]</span>
             <select dojoType="openils.widget.OrgUnitFilteringSelect" jsId='thingContextOrgSelect'
                 searchAttr='shortname' labelAttr='shortname'> </select>
         </div>
diff --git a/Open-ILS/src/templates/conify/global/config/actor_sip_fields.tt2 b/Open-ILS/src/templates/conify/global/config/actor_sip_fields.tt2
index ee28617..c3ff16a 100644
--- a/Open-ILS/src/templates/conify/global/config/actor_sip_fields.tt2
+++ b/Open-ILS/src/templates/conify/global/config/actor_sip_fields.tt2
@@ -1,11 +1,11 @@
 [% WRAPPER base.tt2 %]
-[% ctx.page_title = 'Actor Stat Cat Sip Fields' %]
+[% ctx.page_title = l('Actor Stat Cat Sip Fields') %]
 <div dojoType="dijit.layout.ContentPane" layoutAlign="client">
     <div dojoType="dijit.layout.ContentPane" layoutAlign="top" class='oils-header-panel'>
-        <div>Actor Stat Cat Sip Fields</div>
+        <div>[% l('Actor Stat Cat Sip Fields') %]</div>
         <div>
-            <button dojoType='dijit.form.Button' onClick='actorSipFieldsGrid.showCreateDialog()'>New Sip Field</button>
-            <button dojoType='dijit.form.Button' onClick='actorSipFieldsGrid.deleteSelected()'>Delete Selected</button>
+            <button dojoType='dijit.form.Button' onClick='actorSipFieldsGrid.showCreateDialog()'>[% l('New Sip Field') %]</button>
+            <button dojoType='dijit.form.Button' onClick='actorSipFieldsGrid.deleteSelected()'>[% l('Delete Selected') %]</button>
         </div>
     </div>
     <div>
diff --git a/Open-ILS/src/templates/conify/global/config/asset_sip_fields.tt2 b/Open-ILS/src/templates/conify/global/config/asset_sip_fields.tt2
index 1e51a81..82a0dae 100644
--- a/Open-ILS/src/templates/conify/global/config/asset_sip_fields.tt2
+++ b/Open-ILS/src/templates/conify/global/config/asset_sip_fields.tt2
@@ -1,11 +1,11 @@
 [% WRAPPER base.tt2 %]
-[% ctx.page_title = 'Asset Stat Cat Sip Fields' %]
+[% ctx.page_title = l('Asset Stat Cat Sip Fields') %]
 <div dojoType="dijit.layout.ContentPane" layoutAlign="client">
     <div dojoType="dijit.layout.ContentPane" layoutAlign="top" class='oils-header-panel'>
-        <div>Asset Stat Cat Sip Fields</div>
+        <div>[% l('Asset Stat Cat Sip Fields') %]</div>
         <div>
-            <button dojoType='dijit.form.Button' onClick='assetSipFieldsGrid.showCreateDialog()'>New Sip Field</button>
-            <button dojoType='dijit.form.Button' onClick='assetSipFieldsGrid.deleteSelected()'>Delete Selected</button>
+            <button dojoType='dijit.form.Button' onClick='assetSipFieldsGrid.showCreateDialog()'>[% l('New Sip Field') %]</button>
+            <button dojoType='dijit.form.Button' onClick='assetSipFieldsGrid.deleteSelected()'>[% l('Delete Selected') %]</button>
         </div>
     </div>
     <div>
diff --git a/Open-ILS/src/templates/conify/global/config/barcode_completion.tt2 b/Open-ILS/src/templates/conify/global/config/barcode_completion.tt2
index 593d578..eb3f384 100644
--- a/Open-ILS/src/templates/conify/global/config/barcode_completion.tt2
+++ b/Open-ILS/src/templates/conify/global/config/barcode_completion.tt2
@@ -1,9 +1,9 @@
-[% ctx.page_title = 'Barcode Completion Configuration' %]
+[% ctx.page_title = l('Barcode Completion Configuration') %]
 [% WRAPPER base.tt2 %]
 <script type="text/javascript" src='[% ctx.media_prefix %]/js/ui/default/conify/global/config/barcode_completion.js'> </script>
 <div dojoType="dijit.layout.ContentPane" layoutAlign="top" class='oils-header-panel'>
-    <div>Barcode Completion Configuration</div>
-    <div><button dojoType='dijit.form.Button' onClick='cmGrid.showCreatePane()'>New</button></div>
+    <div>[% l('Barcode Completion Configuration') %]</div>
+    <div><button dojoType='dijit.form.Button' onClick='cmGrid.showCreatePane()'>[% l('New') %]</button></div>
 </div>
 <div dojoType="dijit.layout.ContentPane" layoutAlign="client">
     <table  jsId="cmGrid"
diff --git a/Open-ILS/src/templates/conify/global/config/billing_type.tt2 b/Open-ILS/src/templates/conify/global/config/billing_type.tt2
index 95de4e4..4b03189 100644
--- a/Open-ILS/src/templates/conify/global/config/billing_type.tt2
+++ b/Open-ILS/src/templates/conify/global/config/billing_type.tt2
@@ -1,19 +1,19 @@
 [% WRAPPER base.tt2 %]
-[% ctx.page_title = 'Billing Types' %]
+[% ctx.page_title = l('Billing Types') %]
 <script type="text/javascript" src='[% ctx.media_prefix %]/js/ui/default/conify/global/config/billing_type.js'> </script>
 
 <!-- grid -->
 
  <div dojoType="dijit.layout.ContentPane" layoutAlign="client">
         <div dojoType="dijit.layout.ContentPane" layoutAlign="top" class='oils-header-panel'>
-            <div>Billing Types</div>
+            <div>[% l('Billing Types') %]</div>
             <div>
-                <button dojoType='dijit.form.Button' onClick='btGrid.showCreateDialog()'>New Billing Type</button>
-                <button dojoType='dijit.form.Button' onClick='btGrid.deleteSelected()'>Delete Selected</button>
+                <button dojoType='dijit.form.Button' onClick='btGrid.showCreateDialog()'>[% l('New Billing Type') %]</button>
+                <button dojoType='dijit.form.Button' onClick='btGrid.deleteSelected()'>[% l('Delete Selected') %]</button>
             </div>
         </div>
         <div>
-            <span>Context Org Unit</span>
+            <span>[% l('Context Org Unit') %]</span>
             <select dojoType="openils.widget.OrgUnitFilteringSelect" jsId='btContextOrgSelect'
                 searchAttr='shortname' labelAttr='shortname'> </select>
         </div>
diff --git a/Open-ILS/src/templates/conify/global/config/circ_limit_group.tt2 b/Open-ILS/src/templates/conify/global/config/circ_limit_group.tt2
index 4f36e9c..32262aa 100644
--- a/Open-ILS/src/templates/conify/global/config/circ_limit_group.tt2
+++ b/Open-ILS/src/templates/conify/global/config/circ_limit_group.tt2
@@ -1,10 +1,10 @@
 [% WRAPPER base.tt2 %]
-<h1>Circulation Limit Group</h1> <br/>
+<h1>[% l('Circulation Limit Group') %]</h1> <br/>
 <div dojoType="dijit.layout.ContentPane" layoutAlign="client" class='oils-header-panel'>
-    <div>Circulation Limit Group</div>
+    <div>[% l('Circulation Limit Group') %]</div>
     <div>
-        <button dojoType='dijit.form.Button' onClick='clgGrid.showCreateDialog()'>New Limit Group</button>
-        <button dojoType='dijit.form.Button' onClick='clgGrid.deleteSelected()'>Delete Selected</button>
+        <button dojoType='dijit.form.Button' onClick='clgGrid.showCreateDialog()'>[% l('New Limit Group') %]</button>
+        <button dojoType='dijit.form.Button' onClick='clgGrid.deleteSelected()'>[% l('Delete Selected') %]</button>
     </div>
 </div>
 
diff --git a/Open-ILS/src/templates/conify/global/config/circ_limit_set.tt2 b/Open-ILS/src/templates/conify/global/config/circ_limit_set.tt2
index 7541673..24138a1 100644
--- a/Open-ILS/src/templates/conify/global/config/circ_limit_set.tt2
+++ b/Open-ILS/src/templates/conify/global/config/circ_limit_set.tt2
@@ -1,11 +1,11 @@
-[% ctx.page_title = 'Circulation Limit Set' %]
+[% ctx.page_title = l('Circulation Limit Set') %]
 [% WRAPPER base.tt2 %]
 <script type="text/javascript" src='[% ctx.media_prefix %]/js/ui/default/conify/global/config/circ_limit_set.js'> </script>
 <div dojoType="dijit.layout.ContentPane" layoutAlign="top" class='oils-header-panel'>
-    <div>Circulation Limit Set</div>
+    <div>[% l('Circulation Limit Set') %]</div>
     <div>
-        <button dojoType='dijit.form.Button' onClick='clsGrid.showCreatePane()'>New</button>
-        <button dojoType='dijit.form.Button' onClick='clsGrid.deleteSelected()'>Delete Selected</button>
+        <button dojoType='dijit.form.Button' onClick='clsGrid.showCreatePane()'>[% l('New') %]</button>
+        <button dojoType='dijit.form.Button' onClick='clsGrid.deleteSelected()'>[% l('Delete Selected') %]</button>
     </div>
 </div>
 <div dojoType="dijit.layout.ContentPane" layoutAlign="client">
@@ -25,24 +25,24 @@
 
 <div class='hidden'>
     <div id='linked-editor' style='border:1px solid #aaa'>
-        <h3>Linked Circ Modifiers</h3>
+        <h3>[% l('Linked Circ Modifiers') %]</h3>
         <table class='oils-generic-table'>
             <tbody>
                 <tr>
-                    <th>Name</th>
-                    <th>Remove</th>
+                    <th>[% l('Name') %]</th>
+                    <th>[% l('Remove') %]</th>
                 </tr>
             </tbody>
             <tbody name='circ-mod-entry-tbody'>
                 <tr name='circ-mod-entry-row'>
                     <td name='circ-mod'></td>
-                    <td><a name='remove-circ-mod' href='javascript:void(0);'>Remove</a></td>
+                    <td><a name='remove-circ-mod' href='javascript:void(0);'>[% l('Remove') %]</a></td>
                 </tr>
             </tbody>
             <tbody name='circ-mod-entry-new'>
                 <tr>
                     <td><div name='circ-mod-selector'></div></td>
-                    <td><a href='javascript:void(0);' name='add-circ-mod'>Add</a></td>
+                    <td><a href='javascript:void(0);' name='add-circ-mod'>[% l('Add') %]</a></td>
                 </tr>
             </tbody>
         </table>
@@ -67,26 +67,26 @@
                 </tr>
             </tbody>
         </table>
-        <h3>Linked Limit Groups</h3>
+        <h3>[% l('Linked Limit Groups') %]</h3>
         <table class='oils-generic-table'>
             <tbody>
                 <tr>
-                    <th>Name</th>
-                    <th>Check Only?</th>
-                    <th>Remove</th>
+                    <th>[% l('Name') %]</th>
+                    <th>[% l('Check Only?') %]</th>
+                    <th>[% l('Remove') %]</th>
                 </tr>
             </tbody>
             <tbody name='limit-group-entry-tbody'>
                 <tr name='limit-group-entry-row'>
                     <td name='limit-group'></td>
                     <td><input type="checkbox" name="limit-group-check-only"/></td>
-                    <td><a name='remove-limit-group' href='javascript:void(0);'>Remove</a></td>
+                    <td><a name='remove-limit-group' href='javascript:void(0);'>[% l('Remove') %]</a></td>
                 </tr>
             </tbody>
             <tbody name='limit-group-entry-new'>
                 <tr>
                     <td><div name='limit-group-selector'></div></td>
-                    <td><a href='javascript:void(0);' name='add-limit-group'>Add</a></td>
+                    <td><a href='javascript:void(0);' name='add-limit-group'>[% l('Add') %]</a></td>
                     <td></td>
                 </tr>
             </tbody>
diff --git a/Open-ILS/src/templates/conify/global/config/circ_matrix_matchpoint.tt2 b/Open-ILS/src/templates/conify/global/config/circ_matrix_matchpoint.tt2
index 04a83bc..a576d46 100644
--- a/Open-ILS/src/templates/conify/global/config/circ_matrix_matchpoint.tt2
+++ b/Open-ILS/src/templates/conify/global/config/circ_matrix_matchpoint.tt2
@@ -1,9 +1,9 @@
-[% ctx.page_title = 'Circulation Policy Configuration' %]
+[% ctx.page_title = l('Circulation Policy Configuration') %]
 [% WRAPPER base.tt2 %]
 <script type="text/javascript" src='[% ctx.media_prefix %]/js/ui/default/conify/global/config/circ_matrix_matchpoint.js'> </script>
 <div dojoType="dijit.layout.ContentPane" layoutAlign="top" class='oils-header-panel'>
-    <div>Circulation Policy Configuration</div>
-    <div><button dojoType='dijit.form.Button' onClick='cmGrid.showCreatePane()'>New</button></div>
+    <div>[% l('Circulation Policy Configuration') %]</div>
+    <div><button dojoType='dijit.form.Button' onClick='cmGrid.showCreatePane()'>[% l('New') %]</button></div>
 </div>
 <div dojoType="dijit.layout.ContentPane" layoutAlign="client">
     <table  jsId="cmGrid"
@@ -28,14 +28,14 @@
 
 <div class='hidden'>
     <div id='limit-set-editor' style='border:1px solid #aaa'>
-        <h3>Linked Limit Sets</h3>
+        <h3>[% l('Linked Limit Sets') %]</h3>
         <table class='oils-generic-table'>
             <tbody>
                 <tr>
-                    <th>Name</th>
-                    <th>Fallthrough</th>
-                    <th>Active</th>
-                    <th>Remove</th>
+                    <th>[% l('Name') %]</th>
+                    <th>[% l('Fallthrough') %]</th>
+                    <th>[% l('Active') %]</th>
+                    <th>[% l('Remove') %]</th>
                 </tr>
             </tbody>
             <tbody name='limit-set-entry-tbody'>
@@ -43,13 +43,13 @@
                     <td name='limit-set'></td>
                     <td><input type="checkbox" name="limit-set-fallthrough"/></td>
                     <td><input type="checkbox" name="limit-set-active"/></td>
-                    <td><a name='remove-limit-set' href='javascript:void(0);'>Remove</a></td>
+                    <td><a name='remove-limit-set' href='javascript:void(0);'>[% l('Remove') %]</a></td>
                 </tr>
             </tbody>
             <tbody name='limit-set-entry-new'>
                 <tr>
                     <td><div name='limit-set-selector'></div></td>
-                    <td colspan="3"><a href='javascript:void(0);' name='add-limit-set'>Add</a></td>
+                    <td colspan="3"><a href='javascript:void(0);' name='add-limit-set'>[% l('Add') %]</a></td>
                 </tr>
             </tbody>
         </table>
diff --git a/Open-ILS/src/templates/conify/global/config/circ_matrix_weights.tt2 b/Open-ILS/src/templates/conify/global/config/circ_matrix_weights.tt2
index 0b18935..f37528e 100644
--- a/Open-ILS/src/templates/conify/global/config/circ_matrix_weights.tt2
+++ b/Open-ILS/src/templates/conify/global/config/circ_matrix_weights.tt2
@@ -1,11 +1,11 @@
 [% WRAPPER base.tt2 %]
-[% ctx.page_title = 'Circ Matrix Weights' %]
+[% ctx.page_title = l('Circ Matrix Weights') %]
 <div dojoType="dijit.layout.ContentPane" layoutAlign="client">
     <div dojoType="dijit.layout.ContentPane" layoutAlign="top" class='oils-header-panel'>
-        <div>Circ Matrix Weights</div>
+        <div>[% l('Circ Matrix Weights') %]</div>
         <div>
-            <button dojoType='dijit.form.Button' onClick='ruleCircWeightsGrid.showCreateDialog()'>New Weight Set</button>
-            <button dojoType='dijit.form.Button' onClick='ruleCircWeightsGrid.deleteSelected()'>Delete Selected</button>
+            <button dojoType='dijit.form.Button' onClick='ruleCircWeightsGrid.showCreateDialog()'>[% l('New Weight Set') %]</button>
+            <button dojoType='dijit.form.Button' onClick='ruleCircWeightsGrid.deleteSelected()'>[% l('Delete Selected') %]</button>
         </div>
     </div>
     <div>
diff --git a/Open-ILS/src/templates/conify/global/config/circ_modifier.tt2 b/Open-ILS/src/templates/conify/global/config/circ_modifier.tt2
index 36b3a2c..3551a90 100644
--- a/Open-ILS/src/templates/conify/global/config/circ_modifier.tt2
+++ b/Open-ILS/src/templates/conify/global/config/circ_modifier.tt2
@@ -1,27 +1,27 @@
 [% WRAPPER base.tt2 %]
-<h1>Circulation Modifier</h1> <br/>
+<h1>[% l('Circulation Modifier') %]</h1> <br/>
 
 <div class='hidden'>
     <select dojoType="dijit.form.FilteringSelect" jsId="sip2Selector">
-        <option value='000'>Other</option>
-        <option value='001' selected='selected'>Book</option>
-        <option value='002'>Magazine</option>
-        <option value='003'>Bound Journal</option>
-        <option value='004'>Audio Tape</option>
-        <option value='005'>Video Tape</option>
-        <option value='006'>CD/CDROM</option>
-        <option value='007'>Diskette</option>
-        <option value='008'>Book with diskette</option>
-        <option value='009'>Book with CD</option>
-        <option value='010'>Book with audio tape</option>
+        <option value='000'>[% l('Other') %]</option>
+        <option value='001' selected='selected'>[% l('Book') %]</option>
+        <option value='002'>[% l('Magazine') %]</option>
+        <option value='003'>[% l('Bound Journal') %]</option>
+        <option value='004'>[% l('Audio Tape') %]</option>
+        <option value='005'>[% l('Video Tape') %]</option>
+        <option value='006'>[% l('CD/CDROM') %]</option>
+        <option value='007'>[% l('Diskette') %]</option>
+        <option value='008'>[% l('Book with diskette') %]</option>
+        <option value='009'>[% l('Book with CD') %]</option>
+        <option value='010'>[% l('Book with audio tape') %]</option>
     </select>
 </div>
 
 <div dojoType="dijit.layout.ContentPane" layoutAlign="client" class='oils-header-panel'>
-    <div>Circulation Modifier</div>
+    <div>[% l('Circulation Modifier') %]</div>
     <div>
-        <button dojoType='dijit.form.Button' onClick='cmGrid.showCreateDialog()'>New Circ Modifier</button>
-        <button dojoType='dijit.form.Button' onClick='cmGrid.deleteSelected()'>Delete Selected</button>
+        <button dojoType='dijit.form.Button' onClick='cmGrid.showCreateDialog()'>[% l('New Circ Modifier') %]</button>
+        <button dojoType='dijit.form.Button' onClick='cmGrid.deleteSelected()'>[% l('Delete Selected') %]</button>
     </div>
 </div>
 
@@ -52,27 +52,27 @@
     function formatSIPMediaType(inDatum) {
         switch (inDatum) {
             case '000':
-                return 'Other';
+                return '[% l('Other') %]';
             case '001':
-                return 'Book';
+                return '[% l('Book') %]';
             case '002':
-                return 'Magazine';
+                return '[% l('Magazine') %]';
             case '003':
-                return 'Bound Journal';
+                return '[% l('Bound Journal') %]';
             case '004':
-                return 'Audio Tape';
+                return '[% l('Audio Tape') %]';
             case '005':
-                return 'Video Tape';
+                return '[% l('Video Tape') %]';
             case '006':
-                return 'CD/CDROM';
+                return '[% l('CD/CDROM') %]';
             case '007':
-                return 'Diskette';
+                return '[% l('Diskette') %]';
             case '008':
-                return 'Book with diskette';
+                return '[% l('Book with diskette') %]';
             case '009':
-                return 'Book with CD';
+                return '[% l('Book with CD') %]';
             case '010':
-                return 'Book with audio tape';
+                return '[% l('Book with audio tape') %]';
         }
     }
 
diff --git a/Open-ILS/src/templates/conify/global/config/coded_value_map.tt2 b/Open-ILS/src/templates/conify/global/config/coded_value_map.tt2
index 7354368..a31d2c8 100644
--- a/Open-ILS/src/templates/conify/global/config/coded_value_map.tt2
+++ b/Open-ILS/src/templates/conify/global/config/coded_value_map.tt2
@@ -1,16 +1,16 @@
 [% WRAPPER base.tt2 %]
-<h1>Coded Value Maps</h1> <br/>
+<h1>[% l('Coded Value Maps') %]</h1> <br/>
 
 <div dojoType="dijit.layout.ContentPane" layoutAlign="client" class='oils-header-panel'>
-    <div>Coded Value Maps</div>
+    <div>[% l('Coded Value Maps') %]</div>
     <div>
-        <button dojoType='dijit.form.Button' onClick='ccvmGrid.showCreateDialog()'>New Map</button>
-        <button dojoType='dijit.form.Button' onClick='ccvmGrid.deleteSelected()'>Delete Selected</button>
+        <button dojoType='dijit.form.Button' onClick='ccvmGrid.showCreateDialog()'>[% l('New Map') %]</button>
+        <button dojoType='dijit.form.Button' onClick='ccvmGrid.deleteSelected()'>[% l('Delete Selected') %]</button>
     </div>
 </div>
 
 <div dojoType="dijit.layout.ContentPane" layoutAlign="client">
-    <span>Record Attribute Type: </span><div id='attr-def-div'></div>
+    <span>[% l('Record Attribute Type: ') %]</span><div id='attr-def-div'></div>
 </div>
 
 <div dojoType="dijit.layout.ContentPane" layoutAlign="client">
diff --git a/Open-ILS/src/templates/conify/global/config/global_flag.tt2 b/Open-ILS/src/templates/conify/global/config/global_flag.tt2
index 2aa5fe7..d0a87be 100644
--- a/Open-ILS/src/templates/conify/global/config/global_flag.tt2
+++ b/Open-ILS/src/templates/conify/global/config/global_flag.tt2
@@ -1,8 +1,8 @@
 [% WRAPPER base.tt2 %]
-[% ctx.page_title = 'Global Flags' %]
+[% ctx.page_title = l('Global Flags') %]
 <div dojoType="dijit.layout.ContentPane" layoutAlign="client">
     <div dojoType="dijit.layout.ContentPane" layoutAlign="top" class='oils-header-panel'>
-        <div>Global Flags</div>
+        <div>[% l('Global Flags') %]</div>
         <div></div>
     </div>
     <div>
diff --git a/Open-ILS/src/templates/conify/global/config/hard_due_date.tt2 b/Open-ILS/src/templates/conify/global/config/hard_due_date.tt2
index 7a1da16..1c9940d 100644
--- a/Open-ILS/src/templates/conify/global/config/hard_due_date.tt2
+++ b/Open-ILS/src/templates/conify/global/config/hard_due_date.tt2
@@ -1,5 +1,5 @@
 [% WRAPPER base.tt2 %]
-[% ctx.page_title = "Hard Due Dates" %]
+[% ctx.page_title = l("Hard Due Dates") %]
 <script type="text/javascript">
     dojo.require("openils.CGI");
     dojo.require("openils.Util");
diff --git a/Open-ILS/src/templates/conify/global/config/hard_due_date_values.tt2 b/Open-ILS/src/templates/conify/global/config/hard_due_date_values.tt2
index 08847a7..b1ba77c 100644
--- a/Open-ILS/src/templates/conify/global/config/hard_due_date_values.tt2
+++ b/Open-ILS/src/templates/conify/global/config/hard_due_date_values.tt2
@@ -1,5 +1,5 @@
 [% WRAPPER base.tt2 %]
-[% ctx.page_title = "Hard Due Date Values" %]
+[% ctx.page_title = l("Hard Due Date Values") %]
 <script type="text/javascript">
     dojo.require("openils.CGI");
     dojo.require("openils.PermaCrud");
@@ -40,18 +40,18 @@
 <div dojoType="dijit.layout.ContentPane" layoutAlign="client">
     <div dojoType="dijit.layout.ContentPane"
         layoutAlign="top" class="oils-header-panel">
-        <div>Hard Due Date Values</div>
+        <div>[% l('Hard Due Date Values') %]</div>
         <div>
             <button
                 dojoType="dijit.form.Button"
-                onClick="chddvGrid.showCreateDialog();">New Hard Due Date Value</button>
+                onClick="chddvGrid.showCreateDialog();">[% l('New Hard Due Date Value') %]</button>
             <button
                 dojoType="dijit.form.Button"
-                onClick="chddvGrid.deleteSelected();">Deleted Selected</button>
+                onClick="chddvGrid.deleteSelected();">[% l('Deleted Selected') %]</button>
         </div>
     </div>
     <div class="hidden" id="linked_chdd">
-        <em>Showing only hard due date values related to hard due date object</em>
+        <em>[% l('Showing only hard due date values related to hard due date object') %]</em>
         <strong id="linked_chdd_name"></strong> (#
         <a href="javascript:void(0);" id="linked_chdd_link"></a>)
     </div>
diff --git a/Open-ILS/src/templates/conify/global/config/hold_matrix_matchpoint.tt2 b/Open-ILS/src/templates/conify/global/config/hold_matrix_matchpoint.tt2
index def6292..d92eaa2 100644
--- a/Open-ILS/src/templates/conify/global/config/hold_matrix_matchpoint.tt2
+++ b/Open-ILS/src/templates/conify/global/config/hold_matrix_matchpoint.tt2
@@ -1,8 +1,8 @@
-[% ctx.page_title = 'Hold Policy Configuration' %]
+[% ctx.page_title = l('Hold Policy Configuration') %]
 [% WRAPPER base.tt2 %]
 <div dojoType="dijit.layout.ContentPane" layoutAlign="top" class='oils-header-panel'>
-    <div>Hold Policy Configuration</div>
-    <div><button dojoType='dijit.form.Button' onClick='hmGrid.showCreatePane()'>New</button></div>
+    <div>[% l('Hold Policy Configuration') %]</div>
+    <div><button dojoType='dijit.form.Button' onClick='hmGrid.showCreatePane()'>[% l('New') %]</button></div>
 </div>
 <div dojoType="dijit.layout.ContentPane" layoutAlign="client">
     <table  jsId="hmGrid" 
diff --git a/Open-ILS/src/templates/conify/global/config/hold_matrix_weights.tt2 b/Open-ILS/src/templates/conify/global/config/hold_matrix_weights.tt2
index 5c12e69..3a2ca7d 100644
--- a/Open-ILS/src/templates/conify/global/config/hold_matrix_weights.tt2
+++ b/Open-ILS/src/templates/conify/global/config/hold_matrix_weights.tt2
@@ -1,11 +1,11 @@
 [% WRAPPER base.tt2 %]
-[% ctx.page_title = 'Hold Matrix Weights' %]
+[% ctx.page_title = l('Hold Matrix Weights') %]
 <div dojoType="dijit.layout.ContentPane" layoutAlign="client">
     <div dojoType="dijit.layout.ContentPane" layoutAlign="top" class='oils-header-panel'>
-        <div>Hold Matrix Weights</div>
+        <div>[% l('Hold Matrix Weights') %]</div>
         <div>
-            <button dojoType='dijit.form.Button' onClick='ruleHoldWeightsGrid.showCreateDialog()'>New Weight Set</button>
-            <button dojoType='dijit.form.Button' onClick='ruleHoldWeightsGrid.deleteSelected()'>Delete Selected</button>
+            <button dojoType='dijit.form.Button' onClick='ruleHoldWeightsGrid.showCreateDialog()'>[% l('New Weight Set') %]</button>
+            <button dojoType='dijit.form.Button' onClick='ruleHoldWeightsGrid.deleteSelected()'>[% l('Delete Selected') %]</button>
         </div>
     </div>
     <div>
diff --git a/Open-ILS/src/templates/conify/global/config/idl_field_doc.tt2 b/Open-ILS/src/templates/conify/global/config/idl_field_doc.tt2
index 291c086..27dd101 100644
--- a/Open-ILS/src/templates/conify/global/config/idl_field_doc.tt2
+++ b/Open-ILS/src/templates/conify/global/config/idl_field_doc.tt2
@@ -1,13 +1,13 @@
 [% WRAPPER base.tt2 %]
-[% ctx.page_title = 'Field Documentation' %]
+[% ctx.page_title = l('Field Documentation') %]
 <script type="text/javascript" src='[% ctx.media_prefix %]/js/ui/default/conify/global/config/idl_field_doc.js'> </script>
 <table style='width:100%;margin-bottom:10px;'>
     <tr>
-        <td align='left'><h3>Field Documentation</h3></td>
+        <td align='left'><h3>[% l('Field Documentation') %]</h3></td>
         <td align='right'>
-            <span>Class:</span>
+            <span>[% l('Class:') %]</span>
             <span dojoType='dijit.form.FilteringSelect' jsId='fmClassSelector'></span>
-            <button dojoType='dijit.form.Button' onClick='fdocGrid.showCreateDialog()'>New</button>
+            <button dojoType='dijit.form.Button' onClick='fdocGrid.showCreateDialog()'>[% l('New') %]</button>
         </td>
     </tr>
 </table>
diff --git a/Open-ILS/src/templates/conify/global/config/metabib_field.tt2 b/Open-ILS/src/templates/conify/global/config/metabib_field.tt2
index 3de2f74..95fec5a 100644
--- a/Open-ILS/src/templates/conify/global/config/metabib_field.tt2
+++ b/Open-ILS/src/templates/conify/global/config/metabib_field.tt2
@@ -1,11 +1,11 @@
 [% WRAPPER base.tt2 %]
-[% ctx.page_title = 'Metabib Field' %]
+[% ctx.page_title = l('MARC Search and Facet Fields') %]
 <div dojoType="dijit.layout.ContentPane" layoutAlign="client">
     <div dojoType="dijit.layout.ContentPane" layoutAlign="top" class='oils-header-panel'>
-        <div>Metabib Field</div>
+        <div>[% l('Metabib Field') %]</div>
         <div>
-            <button dojoType='dijit.form.Button' onClick='mbFieldGrid.showCreateDialog()'>New Field</button>
-            <button dojoType='dijit.form.Button' onClick='mbFieldGrid.deleteSelected()'>Delete Selected</button>
+            <button dojoType='dijit.form.Button' onClick='mbFieldGrid.showCreateDialog()'>[% l('New Field') %]</button>
+            <button dojoType='dijit.form.Button' onClick='mbFieldGrid.deleteSelected()'>[% l('Delete Selected') %]</button>
         </div>
     </div>
     <div>
diff --git a/Open-ILS/src/templates/conify/global/config/org_unit_setting_type.tt2 b/Open-ILS/src/templates/conify/global/config/org_unit_setting_type.tt2
index 970f801..c8d6cfb 100644
--- a/Open-ILS/src/templates/conify/global/config/org_unit_setting_type.tt2
+++ b/Open-ILS/src/templates/conify/global/config/org_unit_setting_type.tt2
@@ -1,27 +1,27 @@
 [% WRAPPER base.tt2 %]
-[% ctx.page_title = 'Org Unit Setting Types' %]
+[% ctx.page_title = l('Org Unit Setting Types') %]
 
 <div class='hidden'>
     <select dojoType="dijit.form.FilteringSelect" jsId="dTypeSelector">
-        <option value='string' selected='selected'>String</option>
-        <option value='bool'>Boolean</option>
-        <option value='integer'>Integer</option>
-        <option value='float'>Float</option>
-        <option value='currency'>Currency</option>
-        <option value='interval'>Interval</option>
-        <option value='date'>Date</option>
-        <option value='object'>Object</option>
-        <option value='array'>Array</option>
-        <option value='link'>Link</option>
+        <option value='string' selected='selected'>[% l('String') %]</option>
+        <option value='bool'>[% l('Boolean') %]</option>
+        <option value='integer'>[% l('Integer') %]</option>
+        <option value='float'>[% l('Float') %]</option>
+        <option value='currency'>[% l('Currency') %]</option>
+        <option value='interval'>[% l('Interval') %]</option>
+        <option value='date'>[% l('Date') %]</option>
+        <option value='object'>[% l('Object') %]</option>
+        <option value='array'>[% l('Array') %]</option>
+        <option value='link'>[% l('Link') %]</option>
     </select>
 </div>
 
 
 <div dojoType="dijit.layout.ContentPane" layoutAlign="client" class='oils-header-panel'>
-    <div>Org Unit Setting Types</div>
+    <div>[% l('Org Unit Setting Types') %]</div>
     <div>
-        <button dojoType='dijit.form.Button' onClick='ostGrid.showCreateDialog()'>New Org Setting Type</button>
-        <button dojoType='dijit.form.Button' onClick='ostGrid.deleteSelected()'>Delete Selected</button>
+        <button dojoType='dijit.form.Button' onClick='ostGrid.showCreateDialog()'>[% l('New Org Setting Type') %]</button>
+        <button dojoType='dijit.form.Button' onClick='ostGrid.deleteSelected()'>[% l('Delete Selected') %]</button>
     </div>
 </div>
 
diff --git a/Open-ILS/src/templates/conify/global/config/record_attr_definition.tt2 b/Open-ILS/src/templates/conify/global/config/record_attr_definition.tt2
index 7c0a33a..fbe1012 100644
--- a/Open-ILS/src/templates/conify/global/config/record_attr_definition.tt2
+++ b/Open-ILS/src/templates/conify/global/config/record_attr_definition.tt2
@@ -1,12 +1,12 @@
 [% WRAPPER base.tt2 %]
-[% ctx.page_title = 'MARC Record Attribute Definitions' %]
-<h1>Record Attribute Definitions</h1> <br/>
+[% ctx.page_title = l('MARC Record Attribute Definitions') %]
+<h1>[% l('Record Attribute Definitions') %]</h1> <br/>
 
 <div dojoType="dijit.layout.ContentPane" layoutAlign="client" class='oils-header-panel'>
-    <div>Record Attribute Definitions</div>
+    <div>[% l('Record Attribute Definitions') %]</div>
     <div>
-        <button dojoType='dijit.form.Button' onClick='cradGrid.showCreateDialog()'>New Attr. Definition</button>
-        <button dojoType='dijit.form.Button' onClick='cradGrid.deleteSelected()'>Delete Selected</button>
+        <button dojoType='dijit.form.Button' onClick='cradGrid.showCreateDialog()'>[% l('New Attr. Definition') %]</button>
+        <button dojoType='dijit.form.Button' onClick='cradGrid.deleteSelected()'>[% l('Delete Selected') %]</button>
     </div>
 </div>
 
diff --git a/Open-ILS/src/templates/conify/global/config/rule_age_hold_protect.tt2 b/Open-ILS/src/templates/conify/global/config/rule_age_hold_protect.tt2
index ef42277..07ca67f 100644
--- a/Open-ILS/src/templates/conify/global/config/rule_age_hold_protect.tt2
+++ b/Open-ILS/src/templates/conify/global/config/rule_age_hold_protect.tt2
@@ -1,11 +1,11 @@
 [% WRAPPER base.tt2 %]
-[% ctx.page_title = 'Age Hold Protect Rules' %]
+[% ctx.page_title = l('Age Hold Protect Rules') %]
 <div dojoType="dijit.layout.ContentPane" layoutAlign="client">
     <div dojoType="dijit.layout.ContentPane" layoutAlign="top" class='oils-header-panel'>
-        <div>Age Hold Protect Rules</div>
+        <div>[% l('Age Hold Protect Rules') %]</div>
         <div>
-            <button dojoType='dijit.form.Button' onClick='ruleAgeProtectGrid.showCreateDialog()'>New Age Hold Protect Rule</button>
-            <button dojoType='dijit.form.Button' onClick='ruleAgeProtectGrid.deleteSelected()'>Delete Selected</button>
+            <button dojoType='dijit.form.Button' onClick='ruleAgeProtectGrid.showCreateDialog()'>[% l('New Age Hold Protect Rule') %]</button>
+            <button dojoType='dijit.form.Button' onClick='ruleAgeProtectGrid.deleteSelected()'>[% l('Delete Selected') %]</button>
         </div>
     </div>
     <div>
diff --git a/Open-ILS/src/templates/conify/global/config/rule_circ_duration.tt2 b/Open-ILS/src/templates/conify/global/config/rule_circ_duration.tt2
index 1ba7b23..b089800 100644
--- a/Open-ILS/src/templates/conify/global/config/rule_circ_duration.tt2
+++ b/Open-ILS/src/templates/conify/global/config/rule_circ_duration.tt2
@@ -1,11 +1,11 @@
 [% WRAPPER base.tt2 %]
-[% ctx.page_title = 'Circ Duration Rules' %]
+[% ctx.page_title = l('Circ Duration Rules') %]
 <div dojoType="dijit.layout.ContentPane" layoutAlign="client">
     <div dojoType="dijit.layout.ContentPane" layoutAlign="top" class='oils-header-panel'>
-        <div>Circ Duration Rules</div>
+        <div>[% l('Circ Duration Rules') %]</div>
         <div>
-            <button dojoType='dijit.form.Button' onClick='ruleCircDurationGrid.showCreateDialog()'>New Duration Rule</button>
-            <button dojoType='dijit.form.Button' onClick='ruleCircDurationGrid.deleteSelected()'>Delete Selected</button>
+            <button dojoType='dijit.form.Button' onClick='ruleCircDurationGrid.showCreateDialog()'>[% l('New Duration Rule') %]</button>
+            <button dojoType='dijit.form.Button' onClick='ruleCircDurationGrid.deleteSelected()'>[% l('Delete Selected') %]</button>
         </div>
     </div>
     <div>
diff --git a/Open-ILS/src/templates/conify/global/config/rule_max_fine.tt2 b/Open-ILS/src/templates/conify/global/config/rule_max_fine.tt2
index 721649b..532ec24 100644
--- a/Open-ILS/src/templates/conify/global/config/rule_max_fine.tt2
+++ b/Open-ILS/src/templates/conify/global/config/rule_max_fine.tt2
@@ -1,11 +1,11 @@
 [% WRAPPER base.tt2 %]
-[% ctx.page_title = 'Circ Max Fine Rules' %]
+[% ctx.page_title = l('Circ Max Fine Rules') %]
 <div dojoType="dijit.layout.ContentPane" layoutAlign="client">
     <div dojoType="dijit.layout.ContentPane" layoutAlign="top" class='oils-header-panel'>
-        <div>Circ Max Fine Rules</div>
+        <div>[% l('Circ Max Fine Rules') %]</div>
         <div>
-            <button dojoType='dijit.form.Button' onClick='ruleMaxFineGrid.showCreateDialog()'>New Max Fine Rule</button>
-            <button dojoType='dijit.form.Button' onClick='ruleMaxFineGrid.deleteSelected()'>Delete Selected</button>
+            <button dojoType='dijit.form.Button' onClick='ruleMaxFineGrid.showCreateDialog()'>[% l('New Max Fine Rule') %]</button>
+            <button dojoType='dijit.form.Button' onClick='ruleMaxFineGrid.deleteSelected()'>[% l('Delete Selected') %]</button>
         </div>
     </div>
     <div>
diff --git a/Open-ILS/src/templates/conify/global/config/rule_recurring_fine.tt2 b/Open-ILS/src/templates/conify/global/config/rule_recurring_fine.tt2
index 60edd14..c9b1d60 100644
--- a/Open-ILS/src/templates/conify/global/config/rule_recurring_fine.tt2
+++ b/Open-ILS/src/templates/conify/global/config/rule_recurring_fine.tt2
@@ -1,11 +1,11 @@
 [% WRAPPER base.tt2 %]
-[% ctx.page_title = 'Recurring Fine Rules' %]
+[% ctx.page_title = l('Recurring Fine Rules') %]
 <div dojoType="dijit.layout.ContentPane" layoutAlign="client">
     <div dojoType="dijit.layout.ContentPane" layoutAlign="top" class='oils-header-panel'>
-        <div>Recurring Fine Rules</div>
+        <div>[% l('Recurring Fine Rules') %]</div>
         <div>
-            <button dojoType='dijit.form.Button' onClick='ruleRecurringFineGrid.showCreateDialog()'>New Recurring Fine Rule</button>
-            <button dojoType='dijit.form.Button' onClick='ruleRecurringFineGrid.deleteSelected()'>Delete Selected</button>
+            <button dojoType='dijit.form.Button' onClick='ruleRecurringFineGrid.showCreateDialog()'>[% l('New Recurring Fine Rule') %]</button>
+            <button dojoType='dijit.form.Button' onClick='ruleRecurringFineGrid.deleteSelected()'>[% l('Delete Selected') %]</button>
         </div>
     </div>
     <div>
diff --git a/Open-ILS/src/templates/conify/global/config/sms_carrier.tt2 b/Open-ILS/src/templates/conify/global/config/sms_carrier.tt2
index ce5d3d9..63168b3 100644
--- a/Open-ILS/src/templates/conify/global/config/sms_carrier.tt2
+++ b/Open-ILS/src/templates/conify/global/config/sms_carrier.tt2
@@ -1,15 +1,15 @@
 [% WRAPPER base.tt2 %]
-[% ctx.page_title = 'SMS Carriers' %]
+[% ctx.page_title = l('SMS Carriers') %]
 <script type="text/javascript" src='[% ctx.media_prefix %]/js/ui/default/conify/global/config/sms_carrier.js'> </script>
 
 <!-- grid -->
 
  <div dojoType="dijit.layout.ContentPane" layoutAlign="client">
         <div dojoType="dijit.layout.ContentPane" layoutAlign="top" class='oils-header-panel'>
-            <div>SMS Carriers</div>
+            <div>[% l('SMS Carriers') %]</div>
             <div>
-                <button dojoType='dijit.form.Button' onClick='thingGrid.showCreateDialog()'>New Carrier</button>
-                <button dojoType='dijit.form.Button' onClick='thingGrid.deleteSelected()'>Delete Selected</button>
+                <button dojoType='dijit.form.Button' onClick='thingGrid.showCreateDialog()'>[% l('New Carrier') %]</button>
+                <button dojoType='dijit.form.Button' onClick='thingGrid.deleteSelected()'>[% l('Delete Selected') %]</button>
             </div>
         </div>
         <table  jsId="thingGrid"
diff --git a/Open-ILS/src/templates/conify/global/config/standing_penalty.tt2 b/Open-ILS/src/templates/conify/global/config/standing_penalty.tt2
index 0e8e165..7e9c4dd 100644
--- a/Open-ILS/src/templates/conify/global/config/standing_penalty.tt2
+++ b/Open-ILS/src/templates/conify/global/config/standing_penalty.tt2
@@ -2,14 +2,14 @@
 <style type="text/css">
     @import "[% ctx.media_prefix %]/js/dojo/dojox/form/resources/CheckedMultiSelect.css";
 </style>
-<h1>Standing Penalty Types</h1><br/>
+<h1>[% l('Standing Penalty Types') %]</h1><br/>
 
   <div dojoType="dijit.layout.ContentPane" layoutAlign="client">
         <div dojoType="dijit.layout.ContentPane" layoutAlign="top" class='oils-header-panel'>
-            <div>Standing Penalty Types</div>
+            <div>[% l('Standing Penalty Types') %]</div>
             <div>
-                <button dojoType='dijit.form.Button' onClick='spGrid.showCreateDialog()'>New Penalty Type</button>
-                <button dojoType='dijit.form.Button' onClick='spGrid.deleteSelected()'>Delete Selected</button>
+                <button dojoType='dijit.form.Button' onClick='spGrid.showCreateDialog()'>[% l('New Penalty Type') %]</button>
+                <button dojoType='dijit.form.Button' onClick='spGrid.deleteSelected()'>[% l('Delete Selected') %]</button>
             </div>
         </div>
 
diff --git a/Open-ILS/src/templates/conify/global/config/usr_setting_type.tt2 b/Open-ILS/src/templates/conify/global/config/usr_setting_type.tt2
index 4c213ed..2d4971a 100644
--- a/Open-ILS/src/templates/conify/global/config/usr_setting_type.tt2
+++ b/Open-ILS/src/templates/conify/global/config/usr_setting_type.tt2
@@ -1,27 +1,27 @@
 [% WRAPPER base.tt2 %]
-[% ctx.page_title = 'User Setting Types' %]
+[% ctx.page_title = l('User Setting Types') %]
 
 <div class='hidden'>
     <select dojoType="dijit.form.FilteringSelect" jsId="dTypeSelector">
-        <option value='string' selected='selected'>String</option>
-        <option value='bool'>Boolean</option>
-        <option value='integer'>Integer</option>
-        <option value='float'>Float</option>
-        <option value='currency'>Currency</option>
-        <option value='interval'>Interval</option>
-        <option value='date'>Date</option>
-        <option value='object'>Object</option>
-        <option value='array'>Array</option>
-        <option value='link'>Link</option>
+        <option value='string' selected='selected'>[% l('String') %]</option>
+        <option value='bool'>[% l('Boolean') %]</option>
+        <option value='integer'>[% l('Integer') %]</option>
+        <option value='float'>[% l('Float') %]</option>
+        <option value='currency'>[% l('Currency') %]</option>
+        <option value='interval'>[% l('Interval') %]</option>
+        <option value='date'>[% l('Date') %]</option>
+        <option value='object'>[% l('Object') %]</option>
+        <option value='array'>[% l('Array') %]</option>
+        <option value='link'>[% l('Link') %]</option>
     </select>
 </div>
 
 
 <div dojoType="dijit.layout.ContentPane" layoutAlign="client" class='oils-header-panel'>
-    <div>User Setting Types</div>
+    <div>[% l('User Setting Types') %]</div>
     <div>
-        <button dojoType='dijit.form.Button' onClick='ustGrid.showCreateDialog()'>New User Setting Type</button>
-        <button dojoType='dijit.form.Button' onClick='ustGrid.deleteSelected()'>Delete Selected</button>
+        <button dojoType='dijit.form.Button' onClick='ustGrid.showCreateDialog()'>[% l('New User Setting Type') %]</button>
+        <button dojoType='dijit.form.Button' onClick='ustGrid.deleteSelected()'>[% l('Delete Selected') %]</button>
     </div>
 </div>
 
diff --git a/Open-ILS/src/templates/conify/global/config/weight_assoc.tt2 b/Open-ILS/src/templates/conify/global/config/weight_assoc.tt2
index 9e42f9c..7743b5d 100644
--- a/Open-ILS/src/templates/conify/global/config/weight_assoc.tt2
+++ b/Open-ILS/src/templates/conify/global/config/weight_assoc.tt2
@@ -1,11 +1,11 @@
 [% WRAPPER base.tt2 %]
-[% ctx.page_title = 'Matrix Weight Associations' %]
+[% ctx.page_title = l('Matrix Weight Associations') %]
 <div dojoType="dijit.layout.ContentPane" layoutAlign="client">
     <div dojoType="dijit.layout.ContentPane" layoutAlign="top" class='oils-header-panel'>
-        <div>Matrix Weight Associations</div>
+        <div>[% l('Matrix Weight Associations') %]</div>
         <div>
-            <button dojoType='dijit.form.Button' onClick='ruleWeightAssocGrid.showCreateDialog()'>New Weight Association</button>
-            <button dojoType='dijit.form.Button' onClick='ruleWeightAssocGrid.deleteSelected()'>Delete Selected</button>
+            <button dojoType='dijit.form.Button' onClick='ruleWeightAssocGrid.showCreateDialog()'>[% l('New Weight Association') %]</button>
+            <button dojoType='dijit.form.Button' onClick='ruleWeightAssocGrid.deleteSelected()'>[% l('Delete Selected') %]</button>
         </div>
     </div>
     <div>
diff --git a/Open-ILS/src/templates/conify/global/config/z3950_source.tt2 b/Open-ILS/src/templates/conify/global/config/z3950_source.tt2
index 1ec8c6a..abe02e4 100644
--- a/Open-ILS/src/templates/conify/global/config/z3950_source.tt2
+++ b/Open-ILS/src/templates/conify/global/config/z3950_source.tt2
@@ -1,5 +1,5 @@
 [% WRAPPER base.tt2 %]
-[% ctx.page_title = 'Z39.50 Servers' %]
+[% ctx.page_title = l('Z39.50 Servers') %]
 <script type="text/javascript" src='[% ctx.media_prefix %]/js/ui/default/conify/global/config/z3950_source.js'> </script>
 
 <div dojoType="dijit.layout.ContentPane" layoutAlign="client">
@@ -53,10 +53,10 @@
 [% ELSE %]
 
     <div dojoType="dijit.layout.ContentPane" layoutAlign="top" class='oils-header-panel'>
-        <div>Z39.50 Servers</div>
+        <div>[% l('Z39.50 Servers') %]</div>
         <div>
-            <button dojoType='dijit.form.Button' onClick='zsGrid.showCreateDialog()'>New Z39.50 Server</button>
-            <button dojoType='dijit.form.Button' onClick='zsGrid.deleteSelected()'>Delete Selected</button>
+            <button dojoType='dijit.form.Button' onClick='zsGrid.showCreateDialog()'>[% l('New Z39.50 Server') %]</button>
+            <button dojoType='dijit.form.Button' onClick='zsGrid.deleteSelected()'>[% l('Delete Selected') %]</button>
         </div>
     </div>
 
diff --git a/Open-ILS/src/templates/conify/global/permission/grp_penalty_threshold.tt2 b/Open-ILS/src/templates/conify/global/permission/grp_penalty_threshold.tt2
index 3a1e21f..e0d80fc 100644
--- a/Open-ILS/src/templates/conify/global/permission/grp_penalty_threshold.tt2
+++ b/Open-ILS/src/templates/conify/global/permission/grp_penalty_threshold.tt2
@@ -1,16 +1,16 @@
 [% WRAPPER base.tt2 %]
-[% ctx.page_title = 'Group Penalty Thresholds' %]
+[% ctx.page_title = l('Group Penalty Thresholds') %]
 
 <div dojoType="dijit.layout.ContentPane" layoutAlign="client" class='oils-header-panel'>
-    <div>Penalty Threshold</div>
+    <div>[% l('Penalty Threshold') %]</div>
     <div>
-        <button dojoType='dijit.form.Button' onClick='gptGrid.showCreateDialog()'>New Penalty Threshold</button>
-        <button dojoType='dijit.form.Button' onClick='gptGrid.deleteSelected()'>Delete Selected</button>
+        <button dojoType='dijit.form.Button' onClick='gptGrid.showCreateDialog()'>[% l('New Penalty Threshold') %]</button>
+        <button dojoType='dijit.form.Button' onClick='gptGrid.deleteSelected()'>[% l('Delete Selected') %]</button>
     </div>
 </div>
 
 <div dojoType="dijit.layout.ContentPane" layoutAlign="client">
-    <span>Context Org Unit</span>
+    <span>[% l('Context Org Unit') %]</span>
     <select dojoType="openils.widget.OrgUnitFilteringSelect" 
             jsId='contextOrgSelector' 
             searchAttr='shortname' 
diff --git a/Open-ILS/src/templates/conify/global/vandelay/match_set.tt2 b/Open-ILS/src/templates/conify/global/vandelay/match_set.tt2
index 2e36696..819ee9e 100644
--- a/Open-ILS/src/templates/conify/global/vandelay/match_set.tt2
+++ b/Open-ILS/src/templates/conify/global/vandelay/match_set.tt2
@@ -1,17 +1,17 @@
 [% WRAPPER base.tt2 %]
-[% ctx.page_title = 'Vandelay Match Sets' %]
+[% ctx.page_title = l('Vandelay Match Sets') %]
 <div dojoType="dijit.layout.ContentPane" layoutAlign="client">
     <div dojoType="dijit.layout.ContentPane" layoutAlign="top" class="oils-header-panel">
         <div>[% ctx.page_title %]</div>
         <div>
             <button dojoType="dijit.form.Button"
-                onClick="vms_grid.showCreateDialog()">New Match Set</button>
+                onClick="vms_grid.showCreateDialog()">[% l('New Match Set') %]</button>
             <button dojoType="dijit.form.Button"
-                onClick="vms_grid.deleteSelected()">Delete Selected</button>
+                onClick="vms_grid.deleteSelected()">[% l('Delete Selected') %]</button>
         </div>
     </div>
     <div>
-        Show sets owned at or below:
+        [% l('Show sets owned at or below:') %]
         <select dojoType="openils.widget.OrgUnitFilteringSelect"
             jsId="context_org_selector"></select>
     </div>
@@ -37,9 +37,9 @@
     <select dojoType="dijit.form.FilteringSelect" jsId="mtype_selector">
         [%# for the origin of these hard coded options, see the definition
         of vandelay.match_set.mtype in 012.schema.vandelay.sql %]
-        <option value="biblio">biblio</option>
-        <option value="authority">authority</option>
-        <!-- XXX: nah <option value="mfhd">mfhd</option> -->
+        <option value="biblio">[% l('biblio') %]</option>
+        <option value="authority">[% l('authority') %]</option>
+        <!-- XXX: nah <option value="mfhd">[% l('mfhd') %]</option> -->
     </select>
 </div>
 
diff --git a/Open-ILS/src/templates/conify/global/vandelay/match_set_tree.tt2 b/Open-ILS/src/templates/conify/global/vandelay/match_set_tree.tt2
index 3ffa80b..1f463bc 100644
--- a/Open-ILS/src/templates/conify/global/vandelay/match_set_tree.tt2
+++ b/Open-ILS/src/templates/conify/global/vandelay/match_set_tree.tt2
@@ -1,5 +1,5 @@
 [% WRAPPER 'base.tt2' %]
-[% ctx.page_title = 'Vandelay Match Set Editor' %]
+[% ctx.page_title = l('Vandelay Match Set Editor') %]
 <style type="text/css">
     h1 { margin: 1ex 0; }
     .outer { clear: both; margin-bottom: 1ex; }
@@ -31,15 +31,15 @@
 <table id="vms-table">
     <tbody>
         <tr>
-            <th>Match set name:</th>
+            <th>[% l('Match set name:') %]</th>
             <td><strong id="vms-name"></strong></td>
         </tr>
         <tr>
-            <th>Owning Library:</th>
+            <th>[% l('Owning Library:') %]</th>
             <td id="vms-owner"></td>
         </tr>
         <tr>
-            <th>Type:</th>
+            <th>[% l('Type:') %]</th>
             <td id="vms-mtype"></td>
         </tr>
     </tbody>
@@ -51,7 +51,7 @@
 <table class="hidden">
     <tr quality-controls="1">
         <td>
-            <label for="value-input">Value:</label>
+            <label for="value-input">[% l('Value:') %]</label>
         </td>
         <td>
             <input id="value-input" type="text" fmfield="value" />
@@ -60,8 +60,8 @@
     <tr consistent-controls="1">
         <td>
             <label for="quality-input"
-                title="A relative number representing the impact of this expression on the score of the overall record match"><!-- XXX tooltipize -->
-                Match Score
+                title="[% l('A relative number representing the impact of this expression on the score of the overall record match') %]"><!-- XXX tooltipize -->
+                [% l('Match Score') %]
             </label>
         </td>
         <td>
@@ -71,7 +71,7 @@
     </tr>
     <tr point-controls="1">
         <td>
-            <label for="negate-input">Negate?</label>
+            <label for="negate-input">[% l('Negate?') %]</label>
         </td>
         <td>
             <input id="negate-input" type="checkbox" fmfield="negate" />
@@ -80,19 +80,19 @@
 </table>
 <div class="outer">
     <div id="expr-preview-row">
-        <em>Your Expression:</em>
+        <em>[% l('Your Expression:') %]</em>
         <span id="expr-preview"></span>
     </div>
     <div id="vmsp-buttons">
         Add new
-        <button onclick="node_editor.add('svf');">Record Attribute</button>
-        <button onclick="node_editor.add('tag');">MARC Tag and Subfield</button>
-        <button onclick="node_editor.add('bool_op');">Boolean Operator</button>
+        <button onclick="node_editor.add('svf');">[% l('Record Attribute') %]</button>
+        <button onclick="node_editor.add('tag');">[% l('MARC Tag and Subfield') %]</button>
+        <button onclick="node_editor.add('bool_op');">[% l('Boolean Operator') %]</button>
     </div>
 </div>
 <div class="outer" style="margin-top: 2ex;">
     <div id="src-pane">
-        <div><big>Working Match Point</big></div>
+        <div><big>[% l('Working Match Point') %]</big></div>
         <div>
             <form id="node-editor-container" onsubmit="return false;"></form>
         </div>
@@ -100,34 +100,34 @@
     </div>
 
     <div id="tree-pane">
-        <div><big>Your Expression</big></div>
+        <div><big>[% l('Your Expression') %]</big></div>
         <div id="tree-here"></div>
         <div>
             <button id="deleter" onclick="delete_selected_in_tree()">
-                Delete Selected Node
+                [% l('Delete Selected Node') %]
             </button>
             <button id="replacer" onclick="replace_mode()"></button>
         </div>
     </div>
 </div>
 <div id="submit-row">
-    <button onclick="save_tree()">Save Changes To Expression</button>
+    <button onclick="save_tree()">[% l('Save Changes To Expression') %]</button>
 </div>
 <hr />
 <div id="quality-editor-wrapper">
     <div>
         <div style="float: left; width: 50%;">
-            <big>Quality Metrics for this Match Set</big>
+            <big>[% l('Quality Metrics for this Match Set') %]</big>
         </div>
         <div style="float: right; width: 49%; text-align: right;">
             <button onclick="qnode_editor.add('svf')">
-                Record Attribute
+                [% l('Record Attribute') %]
             </button>
             <button onclick="qnode_editor.add('tag')">
-                MARC Tag and Subfield
+                [% l('MARC Tag and Subfield') %]
             </button>
             <button onclick="vmsq_grid.deleteSelected()">
-                Delete Selected Metrics
+                [% l('Delete Selected Metrics') %]
             </button>
         </div>
     </div>
diff --git a/Open-ILS/src/templates/kpac/getit.tt2 b/Open-ILS/src/templates/kpac/getit.tt2
index b4942df..061e23c 100644
--- a/Open-ILS/src/templates/kpac/getit.tt2
+++ b/Open-ILS/src/templates/kpac/getit.tt2
@@ -25,7 +25,7 @@
                     [% END %]
 
                     <div class="top_side">
-                        <h2>get it!</h2>
+                        <h2>[% l('get it!') %]</h2>
                         <p>[% |l %]If you would like to place a hold on this item, please enter the 
                             following information and click<br />Submit below:[% END %]</p>
                     </div>
@@ -46,7 +46,7 @@
                                     </div>
                                     <a class="help_btn" href="javascript:;" 
                                         onclick="helpPopup('card_help', this, event);"><img 
-                                        src="[% ctx.media_prefix %]/images/kpac/question_mark.png" alt="pin number help" /></a>
+                                        src="[% ctx.media_prefix %]/images/kpac/question_mark.png" alt="[% l('pin number help') %]" /></a>
 
                                     <div class="clear">&nbsp;</div>
                                     <div class="hr">&nbsp;</div>
diff --git a/Open-ILS/src/templates/kpac/home.tt2 b/Open-ILS/src/templates/kpac/home.tt2
index ab70a89..a1f880f 100644
--- a/Open-ILS/src/templates/kpac/home.tt2
+++ b/Open-ILS/src/templates/kpac/home.tt2
@@ -17,8 +17,8 @@
         <td width="3" class="main_left_shadow"><div class="clear">&nbsp;</div></td>
         <td valign="top" class="main_inside_cell" valign="top">
             <div class="search_wrapper">
-                <h1>Search your Library</h1>
-                <h3>for books, movies, music, magazines, and more!</h3>
+                <h1>[% l('Search your Library') %]</h1>
+                <h3>[% l('for books, movies, music, magazines, and more!') %]</h3>
                 <form action="[% ctx.kpac_root _ '/results' %]">
                     [% qtype = CGI.param('qtype') %]
                     <table cellpadding="0" cellspacing="0" border="0" align="center" class="search_box_wrapper">
@@ -37,13 +37,13 @@
 
                             <td><input type="text" class="search_box" name="query" 
                                 value="[% CGI.param('nosprop') ? '' : CGI.param('query') | html  %]"/></td>
-                            <td><input type="image" src="[% ctx.media_prefix %]/images/kpac/search_btn.png" alt="search" /></td>
+                            <td><input type="image" src="[% ctx.media_prefix %]/images/kpac/search_btn.png" alt="[% l('search') %]" /></td>
                         </tr>
                     </table>
                 </form>
             </div>
             <div class="category_wrapper">
-                <h3 class="c_header_image">Or click on an image to get started:</h3>
+                <h3 class="c_header_image">[% l('Or click on an image to get started:') %]</h3>
                 [% render_kpac_grid(ctx.kpac_layout.page) %]
             </div>
 
diff --git a/Open-ILS/src/templates/kpac/parts/header.tt2 b/Open-ILS/src/templates/kpac/parts/header.tt2
index 5299698..588b910 100644
--- a/Open-ILS/src/templates/kpac/parts/header.tt2
+++ b/Open-ILS/src/templates/kpac/parts/header.tt2
@@ -2,17 +2,17 @@
     <div class="logo_wrapper">
         <a href="http://evergreen-ils.org">
             <span class="logo_left">&nbsp;</span>
-            <span class="logo_middle"><img src="[% ctx.media_prefix %]/images/eg_logo.jpg" width="170" lt="[% l('Logo') %]" /></span>
+            <span class="logo_middle"><img src="[% ctx.media_prefix %]/images/eg_logo.jpg" width="170" alt="[% l('Logo') %]" /></span>
             <span class="logo_right">&nbsp;</span>
         </a>
     </div>
     <div class="header_utils">
         <!--
-        <a href="javascript:;" class="text_size_btn"><span>Text size</span> &nbsp; <img 
-            alt="text size" src="[% ctx.media_prefix %]/images/kpac/text_size_btn.png" /></a>
+        <a href="javascript:;" class="text_size_btn"><span>[% l('Text size') %]</span> &nbsp; <img 
+            alt="[% l('text size') %]" src="[% ctx.media_prefix %]/images/kpac/text_size_btn.png" /></a>
         -->
-        <a href="javascript:window.print()" class="print_btn"><span>Print</span> &nbsp; <img 
-            alt="print" src="[% ctx.media_prefix %]/images/kpac/print_btn.png" /></a>
+        <a href="javascript:window.print()" class="print_btn"><span>[% l('Print') %]</span> &nbsp; <img 
+            alt="[% l('print') %]" src="[% ctx.media_prefix %]/images/kpac/print_btn.png" /></a>
     </div>
     <div class="header_menu">
         <!-- menu rendered in reverse order -->
diff --git a/Open-ILS/src/templates/kpac/parts/record_row.tt2 b/Open-ILS/src/templates/kpac/parts/record_row.tt2
index 1f8f201..38c39ad 100644
--- a/Open-ILS/src/templates/kpac/parts/record_row.tt2
+++ b/Open-ILS/src/templates/kpac/parts/record_row.tt2
@@ -21,9 +21,9 @@
         [% IF show_actions %]
         <div class="item_detail_actions">
             <div class="button"><a href="[% mkurl(ctx.kpac_root _ '/record/' _ rec_id) %]"><img 
-                src="[% ctx.media_prefix %]/images/kpac/more_info_btn.png" alt="more info" /></a></div>
+                src="[% ctx.media_prefix %]/images/kpac/more_info_btn.png" alt="[% l('more info') %]" /></a></div>
             <div class="button"><a href="[% mkurl(ctx.kpac_root _ '/getit/' _ rec_id) %]"><img 
-                src="[% ctx.media_prefix %]/images/kpac/get_it_btn_sm.png" alt="get it" /></a></div>
+                src="[% ctx.media_prefix %]/images/kpac/get_it_btn_sm.png" alt="[% l('get it') %]" /></a></div>
             <div class="clear">&nbsp;</div>
         </div>
         [% END %]
diff --git a/Open-ILS/src/templates/kpac/parts/searchbox.tt2 b/Open-ILS/src/templates/kpac/parts/searchbox.tt2
index d244e68..2e1e2ec 100644
--- a/Open-ILS/src/templates/kpac/parts/searchbox.tt2
+++ b/Open-ILS/src/templates/kpac/parts/searchbox.tt2
@@ -45,7 +45,7 @@
     </div>
     <div class="hr">&nbsp;</div>
     <div>
-        <input type="image" alt="search" src="[% ctx.media_prefix %]/images/kpac/search_btn_sub.png" />
+        <input type="image" alt="[% l('search') %]" src="[% ctx.media_prefix %]/images/kpac/search_btn_sub.png" />
     </div>
 </form>
 
diff --git a/Open-ILS/src/templates/kpac/record.tt2 b/Open-ILS/src/templates/kpac/record.tt2
index f727b4a..514c45f 100644
--- a/Open-ILS/src/templates/kpac/record.tt2
+++ b/Open-ILS/src/templates/kpac/record.tt2
@@ -41,8 +41,8 @@
                 -->
 
                 <!--
-                <div class="item_detail_rate_starts"><img alt="rating" src="[% ctx.media_prefix %]/images/kpac/stars.png" /></div>
-                <div class="item_detail_rate_link"><a href="javascript:;">Rate this</a></div>
+                <div class="item_detail_rate_starts"><img alt="[% l('rating') %]" src="[% ctx.media_prefix %]/images/kpac/stars.png" /></div>
+                <div class="item_detail_rate_link"><a href="javascript:;">[% l('Rate this') %]</a></div>
                 <div class="clear">&nbsp;</div>
                 -->
 
diff --git a/Open-ILS/src/templates/kpac/results.tt2 b/Open-ILS/src/templates/kpac/results.tt2
index b13da77..9a0b0d5 100644
--- a/Open-ILS/src/templates/kpac/results.tt2
+++ b/Open-ILS/src/templates/kpac/results.tt2
@@ -4,7 +4,7 @@
     WRAPPER "kpac/parts/subpage.tt2";
     ctx.page_title = l('Search Results') %]
         
-<h2 class="sub_header2">Search Results</h2>
+<h2 class="sub_header2">[% l('Search Results') %]</h2>
 
 [% IF ctx.records.size == 0 %]
 
diff --git a/Open-ILS/src/templates/login.tt2 b/Open-ILS/src/templates/login.tt2
index 08fc8bb..66b3b4f 100644
--- a/Open-ILS/src/templates/login.tt2
+++ b/Open-ILS/src/templates/login.tt2
@@ -1,25 +1,25 @@
 <!-- general purpose login dialog -->
 <div style='display:none;' dojoType="dijit.Dialog" jsId='oilsLoginDialog' class='oils-login-dialog'>
     <script type="text/javascript">dojo.require('dijit.form.TextBox');</script>
-    <b>Please Login</b>
-    <div class='hidden oils-notify-text' id='oils-login-failed'>Login Failed</div>
+    <b>[% l('Please Login') %]</b>
+    <div class='hidden oils-notify-text' id='oils-login-failed'>[% l('Login Failed') %]</div>
     <form>
         <table>
             <tr>
-                <td>Username</td>
+                <td>[% l('Username') %]</td>
                 <td><input dojoType='dijit.form.TextBox' id='oils-login-username'/></td>
             </tr>
             <tr>
-                <td>Password</td>
+                <td>[% l('Password') %]</td>
                 <td><input dojoType='dijit.form.TextBox' id='oils-login-password' type='password'/></td>
             </tr>
             <tr>
-                <td>Workstation</td>
+                <td>[% l('Workstation') %]</td>
                 <td><span id='oils-login-workstation'></span></td>
             </tr>
             <tr>
                 <td colspan='2' align='center'>
-                    <button onclick='oilsDoLogin();' dojoType='dijit.form.Button'>Login</button>
+                    <button onclick='oilsDoLogin();' dojoType='dijit.form.Button'>[% l('Login') %]</button>
                 </td>
             </tr>
         </table>
diff --git a/Open-ILS/src/templates/menu.tt2 b/Open-ILS/src/templates/menu.tt2
index fcd1992..fab8407 100644
--- a/Open-ILS/src/templates/menu.tt2
+++ b/Open-ILS/src/templates/menu.tt2
@@ -2,30 +2,30 @@
     <div dojoType="dijit.Toolbar" class='menuBar'>
 
         <div dojoType="dijit.form.DropDownButton">
-            <span>Acquisitions</span>
+            <span>[% l('Acquisitions') %]</span>
             <div dojoType="dijit.Menu">
 
                 <!-- ==========================================================================
                      Picklist SubMenu
                     ========================================================================== -->
                 <div dojoType="dijit.PopupMenuItem" iconClass="dijitEditorIcon dijitEditorIconCopy">
-                    <span>Selection Lists</span>
+                    <span>[% l('Selection Lists') %]</span>
                      <div dojoType="dijit.Menu">
                         <div dojoType="dijit.MenuItem" iconClass="dijitEditorIcon dijitEditorIconCopy"
                             onClick="location.href = '[% ctx.base_path %]/acq/picklist/list';">
-                            My Selection Lists
+                            [% l('My Selection Lists') %]
                         </div>
                         <div dojoType="dijit.MenuItem" iconClass="dijitEditorIcon dijitEditorIconCopy"
                             onClick="location.href = '[% ctx.base_path %]/acq/picklist/bib_search';">
-                            Title Search
+                            [% l('Title Search') %]
                         </div>
                         <div dojoType="dijit.MenuItem" iconClass="dijitEditorIcon dijitEditorIconCopy"
                             onClick="location.href = '[% ctx.base_path %]/acq/picklist/upload';">
-                            Load Records
+                            [% l('Load Records') %]
                         </div>
                         <div dojoType="dijit.MenuItem" iconClass="dijitEditorIcon dijitEditorIconCopy"
                             onClick="location.href = '[% ctx.base_path %]/acq/picklist/brief_record';">
-                            New Brief Record
+                            [% l('New Brief Record') %]
                         </div>
                     </div>
                 </div>
@@ -34,20 +34,20 @@
                      Purchase Order SubMenu
                     ========================================================================== -->
                 <div dojoType="dijit.PopupMenuItem" iconClass="dijitEditorIcon dijitEditorIconCopy">
-                    <span>Purchase Orders</span>
+                    <span>[% l('Purchase Orders') %]</span>
                      <div dojoType="dijit.Menu">
                         <div dojoType="dijit.MenuItem" iconClass="dijitEditorIcon dijitEditorIconCopy"
                             onClick="location.href = '[% ctx.base_path %]/acq/po/search';">
-                            PO Search
+                            [% l('PO Search') %]
                         </div>
                         <div dojoType="dijit.MenuItem" iconClass="dijitEditorIcon dijitEditorIconCopy"
                             onClick="location.href = '[% ctx.base_path %]/acq/lineitem/search';">
-                            Lineitem Search
+                            [% l('Lineitem Search') %]
                         </div>
                         <!-- XXX 
                         <div dojoType="dijit.MenuItem" iconClass="dijitEditorIcon dijitEditorIconCopy"
                             onClick="location.href = '[% ctx.base_path %]/acq/po/marc_upload';">
-                            Load Vendor Order Records
+                            [% l('Load Vendor Order Records') %]
                         </div>
                         -->
                     </div>
@@ -56,11 +56,11 @@
                      Receiving SubMenu
                     ========================================================================== -->
                 <div dojoType="dijit.PopupMenuItem" iconClass="dijitEditorIcon dijitEditorIconCopy">
-                    <span>Receiving</span>
+                    <span>[% l('Receiving') %]</span>
                     <div dojoType="dijit.Menu">
                         <div dojoType="dijit.MenuItem" iconClass="dijitEditorIcon dijitEditorIconCopy"
                             onClick="location.href = '[% ctx.base_path %]/acq/receiving/process';">
-                                Receiving
+                                [% l('Receiving') %]
                         </div>
                     </div>
                 </div>
@@ -68,47 +68,47 @@
         </div>
 
         <div dojoType="dijit.form.DropDownButton">
-            <span>Admin</span>
+            <span>[% l('Admin') %]</span>
             <div dojoType="dijit.Menu">
                 <div dojoType="dijit.PopupMenuItem" iconClass="dijitEditorIcon dijitEditorIconCopy">
-                    <span>Acquisitions</span>
+                    <span>[% l('Acquisitions') %]</span>
                      <div dojoType="dijit.Menu">
                         <div dojoType="dijit.MenuItem" iconClass="dijitEditorIcon dijitEditorIconCopy"
-                            onClick="location.href = '[% ctx.base_path %]/acq/fund/list';">Funds</div>
+                            onClick="location.href = '[% ctx.base_path %]/acq/fund/list';">[% l('Funds') %]</div>
                         <div dojoType="dijit.MenuItem" iconClass="dijitEditorIcon dijitEditorIconCopy" 
-                                onClick="location.href = '[% ctx.base_path %]/acq/funding_source/list';">Funding Sources</div>
+                                onClick="location.href = '[% ctx.base_path %]/acq/funding_source/list';">[% l('Funding Sources') %]</div>
                         <div dojoType="dijit.MenuItem" iconClass="dijitEditorIcon dijitEditorIconCopy" 
-                                onClick="location.href = '[% ctx.base_path %]/conify/global/acq/provider';">Providers</div>
+                                onClick="location.href = '[% ctx.base_path %]/conify/global/acq/provider';">[% l('Providers') %]</div>
                         <div dojoType="dijit.MenuItem" iconClass="dijitEditorIcon dijitEditorIconCopy" 
-                                onClick="location.href = '[% ctx.base_path %]/acq/currency_type/list';">Currency Types</div>
+                                onClick="location.href = '[% ctx.base_path %]/acq/currency_type/list';">[% l('Currency Types') %]</div>
                         <div dojoType="dijit.MenuItem" iconClass="dijitEditorIcon dijitEditorIconCopy" 
-                                onClick="location.href = '[% ctx.base_path %]/conify/global/acq/exchange_rate';">Exchange Rates</div>
+                                onClick="location.href = '[% ctx.base_path %]/conify/global/acq/exchange_rate';">[% l('Exchange Rates') %]</div>
                         <div dojoType="dijit.MenuItem" iconClass="dijitEditorIcon dijitEditorIconCopy" 
-                                onClick="location.href = '[% ctx.base_path %]/conify/global/acq/distribution_formula';">Distribution Formulas</div>
+                                onClick="location.href = '[% ctx.base_path %]/conify/global/acq/distribution_formula';">[% l('Distribution Formulas') %]</div>
                     </div>
                 </div>
                 <div dojoType="dijit.PopupMenuItem" iconClass="dijitEditorIcon dijitEditorIconCopy">
-                    <span>Config</span>
+                    <span>[% l('Config') %]</span>
                      <div dojoType="dijit.Menu">
                         <div dojoType="dijit.MenuItem" iconClass="dijitEditorIcon dijitEditorIconCopy" 
-                                onClick="location.href = '[% ctx.base_path %]/conify/global/config/billing_type';">Billing Types</div>
+                                onClick="location.href = '[% ctx.base_path %]/conify/global/config/billing_type';">[% l('Billing Types') %]</div>
                         <div dojoType="dijit.MenuItem" iconClass="dijitEditorIcon dijitEditorIconCopy" 
-                                onClick="location.href = '[% ctx.base_path %]/conify/global/config/standing_penalty';">Standing Penalties</div>
+                                onClick="location.href = '[% ctx.base_path %]/conify/global/config/standing_penalty';">[% l('Standing Penalties') %]</div>
                         <div dojoType="dijit.MenuItem" iconClass="dijitEditorIcon dijitEditorIconCopy" 
                                 onClick="location.href = '[% ctx.base_path %]/conify/global/permission/grp_penalty_threshold';">
-                                    Group Penalty Thresholds</div>
+                                    [% l('Group Penalty Thresholds') %]</div>
                         <div dojoType="dijit.MenuItem" iconClass="dijitEditorIcon dijitEditorIconCopy" 
-                                onClick="location.href = '[% ctx.base_path %]/conify/global/config/idl_field_doc';">Field Documentation</div>
+                                onClick="location.href = '[% ctx.base_path %]/conify/global/config/idl_field_doc';">[% l('Field Documentation') %]</div>
                         <div dojoType="dijit.MenuItem" iconClass="dijitEditorIcon dijitEditorIconCopy" 
-                                onClick="location.href = '[% ctx.base_path %]/conify/global/config/z3950_source';">Z39.50 Sources</div>
+                                onClick="location.href = '[% ctx.base_path %]/conify/global/config/z3950_source';">[% l('Z39.50 Sources') %]</div>
                         <div dojoType="dijit.MenuItem" iconClass="dijitEditorIcon dijitEditorIconCopy" 
-                                onClick="location.href = '[% ctx.base_path %]/conify/global/config/circ_modifier';">Circulation Modifiers</div>
+                                onClick="location.href = '[% ctx.base_path %]/conify/global/config/circ_modifier';">[% l('Circulation Modifiers') %]</div>
                         <div dojoType="dijit.MenuItem" iconClass="dijitEditorIcon dijitEditorIconCopy" 
-                                onClick="location.href = '[% ctx.base_path %]/conify/global/action_trigger/event_definition';">Action Trigger</div>
+                                onClick="location.href = '[% ctx.base_path %]/conify/global/action_trigger/event_definition';">[% l('Action Trigger') %]</div>
                         <div dojoType="dijit.MenuItem" iconClass="dijitEditorIcon dijitEditorIconCopy"
-                             onClick="location.href = '[% ctx.base_path %]/conify/global/action/survey';">Surveys</div>
+                             onClick="location.href = '[% ctx.base_path %]/conify/global/action/survey';">[% l('Surveys') %]</div>
                         <div dojoType="dijit.MenuItem" iconClass="dijitEditorIcon dijitEditorIconCopy"
-                             onClick="location.href = '[% ctx.base_path %]/conify/global/config/org_unit_setting_type';">Org Unit Setting Types</div>
+                             onClick="location.href = '[% ctx.base_path %]/conify/global/config/org_unit_setting_type';">[% l('Org Unit Setting Types') %]</div>
                     </div>
                 </div>
             </div>
diff --git a/Open-ILS/src/templates/opac/myopac/main_payment_form.tt2 b/Open-ILS/src/templates/opac/myopac/main_payment_form.tt2
index e91838a..3bb08c2 100644
--- a/Open-ILS/src/templates/opac/myopac/main_payment_form.tt2
+++ b/Open-ILS/src/templates/opac/myopac/main_payment_form.tt2
@@ -119,12 +119,12 @@
                 </tr>
                 <!-- Technically not needed since card type is derived from the CC number
                 <tr>
-                    <td>Type of Card</td>
+                    <td>[% l('Type of Card') %]</td>
                     <td>
                         <select name="type">
-                            <option value='VISA'>VISA</option>
-                            <option value='MasterCard'>MasterCard</option>
-                            <option value='American Express'>American Express</option>
+                            <option value='VISA'>[% l('VISA') %]</option>
+                            <option value='MasterCard'>[% l('MasterCard') %]</option>
+                            <option value='American Express'>[% l('American Express') %]</option>
                         </select>
                     </td>
                 </tr>
diff --git a/Open-ILS/src/templates/opac/myopac/prefs.tt2 b/Open-ILS/src/templates/opac/myopac/prefs.tt2
index 418c7ac..d3178a7 100644
--- a/Open-ILS/src/templates/opac/myopac/prefs.tt2
+++ b/Open-ILS/src/templates/opac/myopac/prefs.tt2
@@ -79,7 +79,7 @@
                 <td class='color_4 light_border'>
                     <div style="position:absolute">
                         <div class="hide_me" style="position:relative;left:70px;top:-3px;">
-                            <a href="#"><img alt="Username Help" src="[% ctx.media_prefix %]/images/question-mark.png" /></a>
+                            <a href="#"><img alt="[% l('Username Help') %]" src="[% ctx.media_prefix %]/images/question-mark.png" /></a>
                         </div>
                     </div>[% l("Username") %]
                 </td>
diff --git a/Open-ILS/src/templates/opac/parts/myopac/base.tt2 b/Open-ILS/src/templates/opac/parts/myopac/base.tt2
index c433c6a..a0be906 100644
--- a/Open-ILS/src/templates/opac/parts/myopac/base.tt2
+++ b/Open-ILS/src/templates/opac/parts/myopac/base.tt2
@@ -19,7 +19,7 @@
                 [%- FOREACH page IN myopac_pages;
                     IF page.url == myopac_page;
                         cls_which = "acct-tab-on";
-                        ctx.page_title = "Your Account - " _ page.name;
+                        ctx.page_title = l("Your Account - [_1]", page.name);
                     ELSE;
                         cls_which = "acct-tab-off";
                     END -%]
diff --git a/Open-ILS/src/templates/opac/sms_cn.tt2 b/Open-ILS/src/templates/opac/sms_cn.tt2
index 6a1dc16..c136dc9 100644
--- a/Open-ILS/src/templates/opac/sms_cn.tt2
+++ b/Open-ILS/src/templates/opac/sms_cn.tt2
@@ -13,12 +13,12 @@
                     [% IF ctx.event != -1 %]
                     <br/>
                     [% IF ctx.sms_notify %]
-                    <h1>Your message has been sent!</h1>
-                    <a href="[% ctx.origin %]">Return to record</a>
+                    <h1>[% l('Your message has been sent!') %]</h1>
+                    <a href="[% ctx.origin %]">[% l('Return to record') %]</a>
                     <pre>[% ctx.event.template_output.data %]</pre>
                     [% ELSE %]
-                    <h1>Text call number</h1>
-                    <a href="[% ctx.origin %]">Return to record</a>
+                    <h1>[% l('Text call number') %]</h1>
+                    <a href="[% ctx.origin %]">[% l('Return to record') %]</a>
                     <pre>[% ctx.event.template_output.data %]</pre>
                     <blockquote>
                         <form method="POST">
@@ -39,7 +39,7 @@
                     </blockquote>
                     [% END %]
                     [% ELSE %]
-                    <span>SMS not enabled for this site.</span>
+                    <span>[% l('SMS not enabled for this site.') %]</span>
                     [% END %]
                 </p>
             </div>
diff --git a/Open-ILS/src/templates/serial/list_item.tt2 b/Open-ILS/src/templates/serial/list_item.tt2
index 30dd390..3b5fc30 100644
--- a/Open-ILS/src/templates/serial/list_item.tt2
+++ b/Open-ILS/src/templates/serial/list_item.tt2
@@ -1,14 +1,14 @@
 [% WRAPPER base.tt2 %]
-[% ctx.page_title = "Items" %]
+[% ctx.page_title = l("Items") %]
 [% BLOCK status_values %]
-                <option value="Expected">Expected</option>
-                <option value="Bindery">Bindery</option>
-                <option value="Bound">Bound</option>
-                <option value="Claimed">Claimed</option>
-                <option value="Discarded">Discarded</option>
-                <option value="Not Held">Not Held</option>
-                <option value="Not Published">Not Published</option>
-                <option value="Received">Received</option>
+                <option value="Expected">[% l('Expected') %]</option>
+                <option value="Bindery">[% l('Bindery') %]</option>
+                <option value="Bound">[% l('Bound') %]</option>
+                <option value="Claimed">[% l('Claimed') %]</option>
+                <option value="Discarded">[% l('Discarded') %]</option>
+                <option value="Not Held">[% l('Not Held') %]</option>
+                <option value="Not Published">[% l('Not Published') %]</option>
+                <option value="Received">[% l('Received') %]</option>
 [% END %]
 <style type="text/css">
     .create-dialog-table td { padding: 0.35em 0; }
@@ -21,20 +21,20 @@
 <div dojoType="dijit.layout.ContentPane" layoutAlign="client">
     <div dojoType="dijit.layout.ContentPane"
         layoutAlign="top" class="oils-header-panel">
-        <div>Items</div>
+        <div>[% l('Items') %]</div>
         <div>
             <button dojoType="dijit.form.Button"
-                onClick="create_dialog.show()">New Items</button>
+                onClick="create_dialog.show()">[% l('New Items') %]</button>
             <button dojoType="dijit.form.Button"
-                onClick="sitem_grid.refresh()">Refresh Grid</button>
+                onClick="sitem_grid.refresh()">[% l('Refresh Grid') %]</button>
             <button dojoType="dijit.form.Button"
                 onClick="sitem_grid.deleteSelected()">
-                Delete Selected
+                [% l('Delete Selected') %]
             </button>
         </div>
     </div>
     <div>
-        Showing items attached to the issuance,
+        [% l('Showing items attached to the issuance,') %]
         <em><a href="javascript:void(0);" id="siss_label_here"></a></em>.
     </div>
     <table jsId="sitem_grid"
@@ -65,23 +65,23 @@
     </table>
     <div class="hidden">
         <div jsId="create_dialog" dojoType="dijit.Dialog"
-            title="Create New Items" execute="create_new_items(arguments[0]);">
+            title="[% l('Create New Items') %]" execute="create_new_items(arguments[0]);">
             <table class="create-dialog-table">
                 <tr>
-                    <th>How many items?</th>
+                    <th>[% l('How many items?') %]</th>
                     <td>
                         <input dojoType="dijit.form.NumberSpinner" value="1"
                             name="count" constraints="{min: 1, max: 100}" />
                     </td>
                 </tr>
                 <tr>
-                    <th>Stream</th>
+                    <th>[% l('Stream') %]</th>
                     <td>
                         <input id="stream_selector" />
                     </td>
                 </tr>
                 <tr>
-                    <th>Date Expected</th>
+                    <th>[% l('Date Expected') %]</th>
                     <td>
                         <input dojoType="dijit.form.DateTextBox"
                             id="create-date-expected" name="date_expected"
@@ -89,14 +89,14 @@
                     </td>
                 </tr>
                 <tr>
-                    <th>Date Received</th>
+                    <th>[% l('Date Received') %]</th>
                     <td>
                         <input dojoType="dijit.form.DateTextBox"
                             name="date_received" required="false" />
                     </td>
                 </tr>
                 <tr>
-                    <th>Status</th>
+                    <th>[% l('Status') %]</th>
                     <td>
                         <select dojoType="dijit.form.FilteringSelect"
                             name="status">
@@ -107,7 +107,7 @@
                 <tr>
                     <td colspan="2" align="center">
                         <span dojoType="dijit.form.Button" type="submit">
-                            Create
+                            [% l('Create') %]
                         </span>
                     </td>
                 </tr>
diff --git a/Open-ILS/src/templates/serial/list_stream.tt2 b/Open-ILS/src/templates/serial/list_stream.tt2
index 71ffa27..1918644 100644
--- a/Open-ILS/src/templates/serial/list_stream.tt2
+++ b/Open-ILS/src/templates/serial/list_stream.tt2
@@ -1,5 +1,5 @@
 [% WRAPPER base.tt2 %]
-[% ctx.page_title = "Streams" %]
+[% ctx.page_title = l("Streams") %]
 <style type="text/css">
     #new-srlu-table { width: 100%; }
     #new-srlu-table th { text-align: left; padding-left: 1em; }
@@ -9,27 +9,27 @@
 <div dojoType="dijit.layout.ContentPane" layoutAlign="client">
     <div dojoType="dijit.layout.ContentPane"
         layoutAlign="top" class="oils-header-panel">
-        <div>Streams</div>
+        <div>[% l('Streams') %]</div>
         <div>
             <button dojoType="dijit.form.Button"
-                onClick="sstr_grid.showCreateDialog()">New Stream</button>
+                onClick="sstr_grid.showCreateDialog()">[% l('New Stream') %]</button>
             <button dojoType="dijit.form.Button"
                 onClick="multi_stream_dialog.show()">
-                Create Many Streams
+                [% l('Create Many Streams') %]
             </button>
             <button dojoType="dijit.form.Button" onClick="rlu_editor.show()">
-                Routing List For Selected Stream
+                [% l('Routing List For Selected Stream') %]
             </button>
             <button dojoType="dijit.form.Button"
-                onClick="sstr_grid.refresh()">Refresh Grid</button>
+                onClick="sstr_grid.refresh()">[% l('Refresh Grid') %]</button>
             <button dojoType="dijit.form.Button"
-                onClick="sstr_grid.deleteSelected()">Delete Selected</button>
+                onClick="sstr_grid.deleteSelected()">[% l('Delete Selected') %]</button>
         </div>
     </div>
     <div>
-        Showing streams attached to the distribution,
-        <em><a href="javascript:void(0);" id="sdist_label_here"></a></em>
-        (<span id="sdist_org_unit_name_here"></span>).
+        [% l('Showing streams attached to the distribution, [_1] ([_2]).',
+        '<em><a href="javascript:void(0);" id="sdist_label_here"></a></em>',
+        '<span id="sdist_org_unit_name_here"></span>') %]
     </div>
     <table jsId="sstr_grid"
         dojoType="openils.widget.AutoGrid"
@@ -52,14 +52,14 @@
 <div class="hidden">
 
     <div id="routing_list_user_template_reader">
-        Reader: ${0} / ${1}, ${2} ${3} (${4})
+        [% l('Reader: ${0} / ${1}, ${2} ${3} (${4})') %]
     </div>
-    <div id="routing_list_user_template_department">Department: ${0}</div>
+    <div id="routing_list_user_template_department">[% l('Department: ${0}') %]</div>
     <div id="routing_list_user_template_note"><br />&nbsp; <em>${0}</em></div>
     <div id="routing_list_user_template_remove">[X]</div>
 
     <div dojoType="dijit.Dialog" id="routing_list_dialog"
-        execute="rlu_editor.save()" title="Manage Routing List">
+        execute="rlu_editor.save()" title="[% l('Manage Routing List') %]">
         <ol id="list-source" dojoType="dojo.dnd.Source"
             jsId="routing_list_source"></ol>
         <table id="new-srlu-table">
@@ -72,7 +72,7 @@
                     </td>
                     <th>
                         <label for="reader_xor_dept-reader">
-                            Reader (barcode):
+                            [% l('Reader (barcode):') %]
                         </label>
                     </th>
                     <td>
@@ -82,7 +82,7 @@
                     <td rowspan="3">
                         <button dojoType="dijit.form.Button"
                             id="routing_list_add_button"
-                            onClick="rlu_editor.new_user()">Add</button>
+                            onClick="rlu_editor.new_user()">[% l('Add') %]</button>
                     </td>
                 </tr>
                 <tr>
@@ -94,7 +94,7 @@
                     </td>
                     <th>
                         <label for="reader_xor_dept-department">
-                            Department:
+                            [% l('Department:') %]
                         </label>
                     </th>
                     <td>
@@ -104,7 +104,7 @@
                 </tr>
                 <tr>
                     <td></td>
-                    <th><label for="note">Note:</label></th>
+                    <th><label for="note">[% l('Note:') %]</label></th>
                     <td>
                         <input id="note" name="note"
                             dojoType="dijit.form.TextBox" />
@@ -114,7 +114,7 @@
                     <td colspan="4" style="padding-top: 1em;">
                         <button id="routing_list_save_button"
                             dojoType="dijit.form.Button" type="submit">
-                            Save Changes
+                            [% l('Save Changes') %]
                         </button>
                     </td>
                 </td>
@@ -124,11 +124,11 @@
 
     <div dojoType="dijit.Dialog"
         execute="create_many_streams(arguments[0]);"
-        title="Create Streams"
+        title="[% l('Create Streams') %]"
         jsId="multi_stream_dialog">
         <table class="serial-dialog-table">
             <tr>
-                <th>How many?</th>
+                <th>[% l('How many?') %]</th>
                 <td>
                     <input dojoType="dijit.form.NumberSpinner"
                         value="1" smallDelta="1" name="quantity"
@@ -138,7 +138,7 @@
             <tr>
                 <td colspan="2">
                     <button dojoType="dijit.form.Button" type="submit">
-                        Create
+                        [% l('Create') %]
                     </button>
                 </td>
             </tr>
diff --git a/Open-ILS/src/templates/serial/list_subscription.tt2 b/Open-ILS/src/templates/serial/list_subscription.tt2
index 719bee0..b3fe6f9 100644
--- a/Open-ILS/src/templates/serial/list_subscription.tt2
+++ b/Open-ILS/src/templates/serial/list_subscription.tt2
@@ -1,5 +1,5 @@
 [% WRAPPER base.tt2 %]
-[% ctx.page_title = "Subscriptions" %]
+[% ctx.page_title = l("Subscriptions") %]
 <script type="text/javascript"
     src="[% ctx.media_prefix %]/js/ui/default/serial/common.js">
 </script>
@@ -12,14 +12,14 @@
 <div dojoType="dijit.layout.ContentPane" layoutAlign="client">
     <div dojoType="dijit.layout.ContentPane"
         layoutAlign="top" class="oils-header-panel">
-        <div>Subscriptions</div>
+        <div>[% l('Subscriptions') %]</div>
         <div>
             <button
                 dojoType="dijit.form.Button"
-                onClick="ssub_grid.showCreateDialog()">New Subscription</button>
+                onClick="ssub_grid.showCreateDialog()">[% l('New Subscription') %]</button>
             <button
                 dojoType="dijit.form.Button"
-                onClick="ssub_grid.deleteSelected()">Delete Selected</button>
+                onClick="ssub_grid.deleteSelected()">[% l('Delete Selected') %]</button>
         </div>
     </div>
     <div>
diff --git a/Open-ILS/src/templates/serial/print_routing_list_users.tt2 b/Open-ILS/src/templates/serial/print_routing_list_users.tt2
index c3942fb..9f2936b 100644
--- a/Open-ILS/src/templates/serial/print_routing_list_users.tt2
+++ b/Open-ILS/src/templates/serial/print_routing_list_users.tt2
@@ -1,5 +1,5 @@
 [% WRAPPER base.tt2 %]
-[% ctx.page_title = "Serial Routing List" %]
+[% ctx.page_title = l("Serial Routing List") %]
 <div class="hidden">
     <div id="list_template">
         <div class="item-title" name="title"></div>
@@ -9,18 +9,18 @@
             <span name="distribution_label"></span> /
             <span name="stream_routing_label" class="hidden"></span>
             <em name="stream_id_container" class="hidden">
-                Unlabeled stream ID #<span name="stream_id"></span>
+                [% l('Unlabeled stream ID #[_1]', '<span name="stream_id"></span>') %]
             </em>
         </div>
         <ol name="users">
             <li id="user_template">
                 <span class="hidden" name="reader_container">
-                    Reader: <span name="barcode"></span> /
-                    <span name="name"></span>
-                    (<span name="ou"></span>)
+                    [% l('Reader: [_1] / [_2] ([_3])', '<span name="barcode"></span>',
+                    '<span name="name"></span>',
+                    '<span name="ou"></span>') %]
                 </span>
                 <span class="hidden" name="department_container">
-                    Department: <span name="department"></span>
+                    [% l('Department: [_1]', '<span name="department"></span>') %]
                 </span>
                 <span class="hidden" name="note_container">
                     <br />&nbsp; <em name="note"></em>
@@ -30,7 +30,7 @@
     </div>
 </div>
 <div style="padding: 1em 0;">
-    <button onclick="list_renderer.print()" accesskey="P"><u>P</u>rint</button>
+    <button onclick="list_renderer.print()" accesskey="[% l('P') %]">[% l('<u>P</u>rint') %]</button>
 </div>
 <div id="iframe_in_here"></div>
 <script type="text/javascript"
diff --git a/Open-ILS/src/templates/serial/subscription.tt2 b/Open-ILS/src/templates/serial/subscription.tt2
index d4bc789..bfe0f08 100644
--- a/Open-ILS/src/templates/serial/subscription.tt2
+++ b/Open-ILS/src/templates/serial/subscription.tt2
@@ -13,13 +13,13 @@
 </script>
 
 <div dojoType="dijit.layout.ContentPane" layout="top" class="oils-header-panel">
-    <div>Subscription Details</div>
+    <div>[% l('Subscription Details') %]</div>
     <div>
         <span dojoType="dijit.form.Button" onClick="clone_dialog.show();">
-            Clone Subscription
+            [% l('Clone Subscription') %]
         </span>
         <span dojoType="dijit.form.Button" onClick="open_batch_receive();">
-            Batch Item Receive
+            [% l('Batch Item Receive') %]
         </span>
     </div>
 </div>
@@ -28,7 +28,7 @@
     class="oils-serial-tab-container">
 
     <!-- Subscription Summary -->
-    <div dojoType="dijit.layout.ContentPane" title="Summary" selected="true">
+    <div dojoType="dijit.layout.ContentPane" title="[% l('Summary') %]" selected="true">
         <script type="dojo/connect" event="onShow">
             load_sub_grid(sub_id);
         </script>
@@ -36,22 +36,22 @@
             dojoType="dojox.grid.DataGrid" query="{id: '*'}" rowSelector="20px">
             <thead>
                 <tr>
-                    <th field="id">ID</th>
+                    <th field="id">[% l('ID') %]</th>
                     <th field="owning_lib" formatter="format_org_unit">
-                        Owning Library
+                        [% l('Owning Library') %]
                     </th>
                     <th field="start_date" formatter="format_date">
-                        Start Date
+                        [% l('Start Date') %]
                     </th>
                     <th field="end_date" formatter="format_date">
-                        End Date
+                        [% l('End Date') %]
                     </th>
                     <th field="record_entry" width="20em"
                         formatter="format_bib">
-                        Bibliographic Record
+                        [% l('Bibliographic Record') %]
                     </th>
-                    <th field="expected_date_offset">Expected Date Offset</th>
-                    <th field="num_dist">Number of Distributions</th>
+                    <th field="expected_date_offset">[% l('Expected Date Offset') %]</th>
+                    <th field="num_dist">[% l('Number of Distributions') %]</th>
                 </tr>
             </thead>
         </table>
@@ -59,7 +59,7 @@
 
     <!-- Distributions -->
     <div dojoType="dijit.layout.ContentPane" jsId="distributions_tab"
-        title="Distributions" layoutAlign="client">
+        title="[% l('Distributions') %]" layoutAlign="client">
         <script type="dojo/connect" event="onShow">
             if (!dist_grid._fresh) {
                 dist_grid.resetStore();
@@ -82,9 +82,9 @@
                         "label": "label",
                         "items": [
                             {"display_grouping": "chron",
-                                "label": "Chronology"},
+                                "label": "[% l('Chronology') %]"},
                             {"display_grouping": "enum",
-                                "label": "Enumeration"}
+                                "label": "[% l('Enumeration') %]"}
                         ]
                     }
                 });
@@ -116,7 +116,7 @@
 
     <!-- Caption/Pattern -->
     <div dojoType="dijit.layout.ContentPane"
-        title="Captions and Patterns" layoutAlign="client">
+        title="[% l('Captions and Patterns') %]" layoutAlign="client">
         <script type="dojo/connect" event="onShow">
             if (!cap_editor) {
                 cap_editor = new SCAPEditor(sub_id);
@@ -128,7 +128,7 @@
 
     <!-- Issuances -->
     <div dojoType="dijit.layout.ContentPane" jsId="issuances_tab"
-        title="Issuances" layoutAlign="client">
+        title="[% l('Issuances') %]" layoutAlign="client">
         <script type="dojo/connect" event="onShow">
             if (!iss_grid._fresh) {
                 iss_grid.resetStore();
@@ -170,19 +170,19 @@
 </div>
 <div class="hidden">
     <div dojoType="openils.widget.ProgressDialog" jsId="progress_dialog"></div>
-    <div dojoType="dijit.Dialog" jsId="clone_dialog" title="Clone Subscription"
+    <div dojoType="dijit.Dialog" jsId="clone_dialog" title="[% l('Clone Subscription') %]"
         style="width: 460px;" execute="clone_subscription(arguments[0]);">
         <div style="margin-bottom: 0.5em;">
-            This feature will clone a subscription and all of its subscription
+            [% |l %]This feature will clone a subscription and all of its subscription
             notes, distributions, distribution notes, captions and patterns,
-            streams, and routing list users.</div>
+            streams, and routing list users.[% END %]</div>
         <div style="margin-bottom: 0.5em;">
-            Holdings-related objects, like issuances, items, units, and
-            summaries will <em>not</em> be cloned.
+            [% |l %]Holdings-related objects, like issuances, items, units, and
+            summaries will <em>not</em> be cloned.[% END %]
         </div>
         <div style="margin-bottom: 0.5em;">
-            To what bibliographic record should the new subscription be
-            attached?
+            [% |l %]To what bibliographic record should the new subscription be
+            attached?[% END %]
         </div>
         <table width="100%">
             <tr>
@@ -193,7 +193,7 @@
                 </td>
                 <td>
                     <label for="use_ident_no">
-                        Same record as the existing subscription
+                        [% l('Same record as the existing subscription') %]
                     </label>
                 </td>
             </tr>
@@ -205,7 +205,7 @@
                 </td>
                 <td>
                     <label for="use_ident_yes">
-                        Record specified by this unique identifier:
+                        [% l('Record specified by this unique identifier:') %]
                     </label>
                     <input dojoType="dijit.form.TextBox" name="ident"
                         jsId="clone_ident" disabled="true"
@@ -215,7 +215,7 @@
             <tr>
                 <td colspan="2" align="center">
                     <span dojoType="dijit.form.Button" type="submit">
-                        Clone!
+                        [% l('Clone!') %]
                     </span>
                 </td>
             </tr>
diff --git a/Open-ILS/src/templates/serial/subscription/caption_and_pattern.tt2 b/Open-ILS/src/templates/serial/subscription/caption_and_pattern.tt2
index 17d8e9d..eceb8e0 100644
--- a/Open-ILS/src/templates/serial/subscription/caption_and_pattern.tt2
+++ b/Open-ILS/src/templates/serial/subscription/caption_and_pattern.tt2
@@ -2,13 +2,13 @@
     <table id="scap_editor" class="hidden">
         <thead>
             <tr>
-                <th>ID</th>
-                <th>Type</th>
-                <th>Pattern Code</th>
-                <th>Create Date</th>
-                <th>Active</th>
-                <th>Remove</th>
-                <th>Save Changes</th>
+                <th>[% l('ID') %]</th>
+                <th>[% l('Type') %]</th>
+                <th>[% l('Pattern Code') %]</th>
+                <th>[% l('Create Date') %]</th>
+                <th>[% l('Active') %]</th>
+                <th>[% l('Remove') %]</th>
+                <th>[% l('Save Changes') %]</th>
             </tr>
         </thead>
         <tbody>
@@ -18,14 +18,14 @@
                 </td>
                 <td name="type">
                     <select control="true">
-                        <option value="basic">(853) Basic</option>
-                        <option value="supplement">(854) Supplement</option>
-                        <option value="index">(855) Index</option>
+                        <option value="basic">[% l('(853) Basic') %]</option>
+                        <option value="supplement">[% l('(854) Supplement') %]</option>
+                        <option value="index">[% l('(855) Index') %]</option>
                     </select>
                 </td>
                 <td name="pattern_code">
                     <input type="text" size="16" control="true" />
-                    <button>Wizard ...</button>
+                    <button>[% l('Wizard ...') %]</button>
                 </td>
                 <td name="create_date">
                     <span control="true"></span>
@@ -37,17 +37,17 @@
                     <button>X</button>
                 </td>
                 <td name="save">
-                    <button>Save Changes</button>
+                    <button>[% l('Save Changes') %]</button>
                 </td>
             </tr>
         </tbody>
         <tfoot>
             <tr>
                 <td colspan="7" align="center">
-                    <button name="add">Add New</button>
+                    <button name="add">[% l('Add New') %]</button>
                     &nbsp;
                     <button id="scaps_from_bib">
-                        Import From Bibliographic or Legacy Serial Records
+                        [% l('Import From Bibliographic or Legacy Serial Records') %]
                     </button>
                 </td>
             </tr>
@@ -61,20 +61,20 @@
         <span name="obj_owner_container" class="hidden">
             (<span name="obj_owner"></span>)
         </span><br />
-        &nbsp; Created by <span name="obj_create"></span><br />
-        &nbsp; Edited by <span name="obj_edit"></span><br />
-        <em class="hidden" name="obj_inactive">(Inactive)</em>
+        &nbsp; [% l('Created by [_1]', '<span name="obj_create"></span>') %]<br />
+        &nbsp; [% l('Edited by [_1]', '<span name="obj_edit"></span>') %]<br />
+        <em class="hidden" name="obj_inactive">[% l('(Inactive)') %]</em>
     </div>
     <div dojoType="dijit.Dialog" execute="cap_importer.import()"
         jsId="scaps_from_bib_dialog">
         <div>
             <em>
-                Select records from which to import caption and pattern fields.
+                [% l('Select records from which to import caption and pattern fields.') %]
             </em>
         </div>
         <div id="record_holder" style="padding: 1em 0;"></div>
         <button dojoType="dijit.form.Button" type="submit">
-            Import
+            [% l('Import') %]
         </button>
     </div>
 </div>
diff --git a/Open-ILS/src/templates/serial/subscription/distribution.tt2 b/Open-ILS/src/templates/serial/subscription/distribution.tt2
index ede8210..8a3c886 100644
--- a/Open-ILS/src/templates/serial/subscription/distribution.tt2
+++ b/Open-ILS/src/templates/serial/subscription/distribution.tt2
@@ -1,16 +1,16 @@
 <div dojoType="dijit.layout.ContentPane" layout="top"
     class="oils-header-panel lesser">
-    <div>Distributions</div>
+    <div>[% l('Distributions') %]</div>
     <div style="margin-right: 16px;">
         <span dojoType="dijit.form.Button"
-            onClick="dist_grid.refresh();">Refresh Grid</span>
+            onClick="dist_grid.refresh();">[% l('Refresh Grid') %]</span>
         <span dojoType="dijit.form.Button"
             onClick="sub_grid._fresh = false; dist_grid.showCreateDialog();">
-            New Distribution
+            [% l('New Distribution') %]
         </span>
         <span dojoType="dijit.form.Button"
             onClick="sub_grid._fresh = false; dist_grid.deleteSelected();">
-            Delete Selected
+            [% l('Delete Selected') %]
         </span>
     </div>
 </div>
diff --git a/Open-ILS/src/templates/serial/subscription/issuance.tt2 b/Open-ILS/src/templates/serial/subscription/issuance.tt2
index 57a291e..1519c12 100644
--- a/Open-ILS/src/templates/serial/subscription/issuance.tt2
+++ b/Open-ILS/src/templates/serial/subscription/issuance.tt2
@@ -1,18 +1,18 @@
 <div dojoType="dijit.layout.ContentPane" layout="top"
     class="oils-header-panel lesser">
-    <div>Issuances</div>
+    <div>[% l('Issuances') %]</div>
     <div style="margin-right: 16px;">
         <span dojoType="dijit.form.Button"
-            onclick="iss_grid.refresh();">Refresh Grid</span>
+            onclick="iss_grid.refresh();">[% l('Refresh Grid') %]</span>
         <span dojoType="dijit.form.Button"
-            onclick="iss_grid.showCreatePane();">New Issuance</span>
+            onclick="iss_grid.showCreatePane();">[% l('New Issuance') %]</span>
         <span dojoType="dijit.form.Button"
-            onclick="iss_grid.deleteSelected();">Delete Selected</span>
+            onclick="iss_grid.deleteSelected();">[% l('Delete Selected') %]</span>
     </div>
 </div>
 <div class="serial-additional-controls">
     <span dojoType="dijit.form.Button"
-        onclick="prediction_dialog.show();">Generate Predictions</span>
+        onclick="prediction_dialog.show();">[% l('Generate Predictions') %]</span>
 </div>
 <div dojoType="dijit.layout.ContentPane" layout="top">
     <table jsId="iss_grid"
@@ -37,7 +37,7 @@
 </div>
 <div class="hidden">
     <div dojoType="dijit.Dialog"
-        title="Generate Issuance and Item Predictions"
+        title="[% l('Generate Issuance and Item Predictions') %]"
         execute="generate_predictions(arguments[0]);"
         jsId="prediction_dialog">
         <script type="dojo/connect" event="onShow">
@@ -51,7 +51,7 @@
                         checked="false" disabled="true"
                         jsId="prediction_dialog_end_date" />
                     <label for="end_date">
-                        Predict until end of subscription
+                        [% l('Predict until end of subscription') %]
                     </label>
                 </th>
                 <td></td>
@@ -63,7 +63,7 @@
                         checked="true" jsId="prediction_dialog_end_num"
                         onChange="if (this.attr('checked')) setTimeout(function(){prediction_dialog_num_to_predict.focus();},200);" />
                     <label for="end_num">
-                        Predict a certain number of issuances:
+                        [% l('Predict a certain number of issuances:') %]
                     </label>
                 </th>
                 <td>
@@ -77,7 +77,7 @@
                 <td colspan="2">
                     <button dojoType="dijit.form.Button"
                         jsId="prediction_dialog_submit"
-                        type="submit" disabled="true">Generate</button>
+                        type="submit" disabled="true">[% l('Generate') %]</button>
                 </td>
             </tr>
         </table>
diff --git a/Open-ILS/src/templates/vandelay/inc/import_errors.tt2 b/Open-ILS/src/templates/vandelay/inc/import_errors.tt2
index bf5e639..895f5f8 100644
--- a/Open-ILS/src/templates/vandelay/inc/import_errors.tt2
+++ b/Open-ILS/src/templates/vandelay/inc/import_errors.tt2
@@ -6,17 +6,17 @@
 
 <div dojoType="dijit.layout.ContentPane" layoutAlign='client'>
     <div id='vl-import-error-record' class='hidden'>
-        <h1>Import Errors</h1><br/>
+        <h1>[% l('Import Errors') %]</h1><br/>
         <table>
             <tbody>
-                <tr><td>ID</td><td id='vl-error-id'/></tr>
-                <tr><td>Import Error</td><td id='vl-error-import-error'/></tr>
-                <tr><td>Error Detail</td><td id='vl-error-error-detail'/></tr>
-                <tr><td>Title</td><td id='vl-error-title'/></tr>
-                <tr><td>Author</td><td id='vl-error-author'/></tr>
-                <tr><td>ISBN</td><td id='vl-error-isbn'/></tr>
-                <tr><td>ISSN</td><td id='vl-error-issn'/></tr>
-                <tr><td>UPC</td><td id='vl-error-upc'/></tr>
+                <tr><td>[% l('ID') %]</td><td id='vl-error-id'/></tr>
+                <tr><td>[% l('Import Error') %]</td><td id='vl-error-import-error'/></tr>
+                <tr><td>[% l('Error Detail') %]</td><td id='vl-error-error-detail'/></tr>
+                <tr><td>[% l('Title') %]</td><td id='vl-error-title'/></tr>
+                <tr><td>[% l('Author') %]</td><td id='vl-error-author'/></tr>
+                <tr><td>[% l('ISBN') %]</td><td id='vl-error-isbn'/></tr>
+                <tr><td>[% l('ISSN') %]</td><td id='vl-error-issn'/></tr>
+                <tr><td>[% l('UPC') %]</td><td id='vl-error-upc'/></tr>
             </tbody>
         </table>
     </div>
@@ -46,16 +46,16 @@
 </div>
 <div dojoType="dijit.layout.ContentPane" layoutAlign='client'>
     <div class='hidden' id='vl-import-error-grid-all'>
-        <h1>Import Items</h1><br/>
+        <h1>[% l('Import Items') %]</h1><br/>
         <input dojoType='dijit.form.CheckBox' jsId='vlImportItemsShowErrors' onchange='vlLoadErrorUIAll();'/>
-        <span>Limit to Import Failures</span>
+        <span>[% l('Limit to Import Failures') %]</span>
         <table width='100%'><tr><td width='100%' align='right'>
             <select id='vl-item-export-options' style='margin-right: 10px;'>
                 <!-- TODO I18N -->
-                <option value=''>Export Items As...</option>
-                <option value='print'>Print</option>
-                <option value='csv'>CSV</option>
-                <option value='email'>Email</option>
+                <option value=''>[% l('Export Items As...') %]</option>
+                <option value='print'>[% l('Print') %]</option>
+                <option value='csv'>[% l('CSV') %]</option>
+                <option value='email'>[% l('Email') %]</option>
             </select>
         </td></tr></table>
         <table  jsId="vlAllImportErrorGrid"
diff --git a/Open-ILS/src/templates/vandelay/inc/item_attrs.tt2 b/Open-ILS/src/templates/vandelay/inc/item_attrs.tt2
index d5d53bf..6cf10c2 100644
--- a/Open-ILS/src/templates/vandelay/inc/item_attrs.tt2
+++ b/Open-ILS/src/templates/vandelay/inc/item_attrs.tt2
@@ -4,14 +4,14 @@
 
 <div dojoType="dijit.layout.ContentPane" layoutAlign="client">
     <div dojoType="dijit.layout.ContentPane" layoutAlign="top" class='oils-header-panel'>
-        <div>Holdings Import Profiles</div>
+        <div>[% l('Holdings Import Profiles') %]</div>
         <div>
-            <button dojoType='dijit.form.Button' onClick='itemAttrGrid.showCreatePane()'>New Definition</button>
-            <button dojoType='dijit.form.Button' onClick='itemAttrGrid.deleteSelected()'>Delete Selected</button>
+            <button dojoType='dijit.form.Button' onClick='itemAttrGrid.showCreatePane()'>[% l('New Definition') %]</button>
+            <button dojoType='dijit.form.Button' onClick='itemAttrGrid.deleteSelected()'>[% l('Delete Selected') %]</button>
         </div>
     </div>
     <div>
-        <span style='padding-right:10px;'>Context Org Unit</span>
+        <span style='padding-right:10px;'>[% l('Context Org Unit') %]</span>
         <select dojoType="openils.widget.OrgUnitFilteringSelect" jsId='itemAttrContextOrgSelector'
             searchAttr='shortname' labelAttr='shortname'> </select>
     </div>
diff --git a/Open-ILS/src/templates/vandelay/inc/matches.tt2 b/Open-ILS/src/templates/vandelay/inc/matches.tt2
index 4e5d95b..0fc3817 100644
--- a/Open-ILS/src/templates/vandelay/inc/matches.tt2
+++ b/Open-ILS/src/templates/vandelay/inc/matches.tt2
@@ -14,9 +14,9 @@
                     get: vlGetViewMARC, 
                     formatter : vlFormatViewMatchMARC
                 },
-                {name: 'Match Score', field:'match_score'},
-                {name: 'Queued Record Quality', field:'rec_quality'},
-                {name: 'Matched Record Quality', field:'match_quality'},
+                {name: '[% l('Match Score') %]', field:'match_score'},
+                {name: '[% l('Queued Record Quality') %]', field:'rec_quality'},
+                {name: '[% l('Matched Record Quality') %]', field:'match_quality'},
                 {name: '[% l('Creator') %]', get: vlGetCreator},
                 {name: '[% l('Create Date') %]', field:'create_date', get: vlGetDateTimeField},
                 {name: '[% l('Last Edit Date') %]', field:'edit_date', get: vlGetDateTimeField},
diff --git a/Open-ILS/src/templates/vandelay/inc/profiles.tt2 b/Open-ILS/src/templates/vandelay/inc/profiles.tt2
index 0220d6a..32caff5 100644
--- a/Open-ILS/src/templates/vandelay/inc/profiles.tt2
+++ b/Open-ILS/src/templates/vandelay/inc/profiles.tt2
@@ -1,13 +1,13 @@
 <div dojoType="dijit.layout.ContentPane" layoutAlign="client">
     <div dojoType="dijit.layout.ContentPane" layoutAlign="top" class='oils-header-panel'>
-        <div>Overlay / Merge Profiles</div>
+        <div>[% l('Overlay / Merge Profiles') %]</div>
         <div>
-            <button dojoType='dijit.form.Button' onClick='pGrid.showCreateDialog()'>New Merge Profile</button>
-            <button dojoType='dijit.form.Button' onClick='pGrid.deleteSelected()'>Delete Selected</button>
+            <button dojoType='dijit.form.Button' onClick='pGrid.showCreateDialog()'>[% l('New Merge Profile') %]</button>
+            <button dojoType='dijit.form.Button' onClick='pGrid.deleteSelected()'>[% l('Delete Selected') %]</button>
         </div>
     </div>
     <div>
-        <span style='padding-right:10px;'>Context Org Unit</span>
+        <span style='padding-right:10px;'>[% l('Context Org Unit') %]</span>
         <select dojoType="openils.widget.OrgUnitFilteringSelect" jsId='profileContextOrgSelector'
             searchAttr='shortname' labelAttr='shortname'> </select>
     </div>
diff --git a/Open-ILS/src/templates/vandelay/inc/queue.tt2 b/Open-ILS/src/templates/vandelay/inc/queue.tt2
index 850d342..f33d682 100644
--- a/Open-ILS/src/templates/vandelay/inc/queue.tt2
+++ b/Open-ILS/src/templates/vandelay/inc/queue.tt2
@@ -1,17 +1,17 @@
 <div dojoType="dijit.layout.ContentPane" layoutAlign='client' style='margin-top:10px;'>
     <fieldset id='vl-queue-filter-fieldset'>
-        <legend>Queue <span style='font-style:italic;' id='vl-queue-summary-name'></span></legend>
+        <legend>[% l('Queue ') %]<span style='font-style:italic;' id='vl-queue-summary-name'></span></legend>
         <table width='100%'><tr>
             <td> <!-- big left td -->
             <table>
                 <tr>
                     <td valign='top'>
                         <table class='queue-nav-table'>
-                            <thead><tr><th colspan='2' class='queue-nav-table-label'>Queue Actions</th></tr></thead>
+                            <thead><tr><th colspan='2' class='queue-nav-table-label'>[% l('Queue Actions') %]</th></tr></thead>
                             <tbody>
                                 <tr><td><a href='javascript:;' onclick='vlHandleQueueItemsAction("import")'>[% l('Import Selected Records') %]</a></td></tr>
                                 <tr><td><a href='javascript:;' onclick='vlHandleQueueItemsAction("import_all")'>[% l('Import All  Records') %]</a></td></tr>
-                                <tr><td><a href='javascript:;' onclick='vlLoadErrorUIAll();'>View Import Items</a></td></tr>
+                                <tr><td><a href='javascript:;' onclick='vlLoadErrorUIAll();'>[% l('View Import Items') %]</a></td></tr>
                                 <tr><td><a href='javascript:;' onclick='
                                     if(confirm("[% l('Are you sure you want to delete this queue?') %]")) {
                                         vlDeleteQueue(currentType, currentQueueId, 
@@ -23,21 +23,21 @@
 
                     <td valign='top'>
                         <table  id='vl-queue-summary-table' class='queue-nav-table'>
-                            <thead><tr><th colspan='2' class='queue-nav-table-label'>Queue Summary</th></tr></thead>
+                            <thead><tr><th colspan='2' class='queue-nav-table-label'>[% l('Queue Summary') %]</th></tr></thead>
                             <tbody>
                                 <tr><td>[% l('Records in Queue:') %]</td><td> <span style='font-weight:bold;' id='vl-queue-summary-total-count'></span></td></tr>
                                 <tr><td>[% l('Records Imported:') %]</td><td> <span style='font-weight:bold;' id='vl-queue-summary-import-count'></span></td></tr>
-                                <tr><td>Record Import Failures</td><td> <span style='font-weight:bold;' id='vl-queue-summary-rec-error-count'></span></td></tr>
-                                <tr><td>Items in Queue</td><td> <span style='font-weight:bold;' id='vl-queue-summary-import-item-count'></span></td></tr>
-                                <tr><td>Items Imported</td><td> <span style='font-weight:bold;' id='vl-queue-summary-import-item-imported-count'></span></td></tr>
-                                <tr><td>Item Import Failures</td><td> <span style='font-weight:bold;' id='vl-queue-summary-item-error-count'></span></td></tr>
+                                <tr><td>[% l('Record Import Failures') %]</td><td> <span style='font-weight:bold;' id='vl-queue-summary-rec-error-count'></span></td></tr>
+                                <tr><td>[% l('Items in Queue') %]</td><td> <span style='font-weight:bold;' id='vl-queue-summary-import-item-count'></span></td></tr>
+                                <tr><td>[% l('Items Imported') %]</td><td> <span style='font-weight:bold;' id='vl-queue-summary-import-item-imported-count'></span></td></tr>
+                                <tr><td>[% l('Item Import Failures') %]</td><td> <span style='font-weight:bold;' id='vl-queue-summary-item-error-count'></span></td></tr>
                             </tbody>
                         </table>
                     </td>
 
                     <td valign='top'> <!-- filters -->
                         <table id='vl-queue-filter-table' class='queue-nav-table'>
-                            <thead><tr><th colspan='2' class='queue-nav-table-label'>Queue Filters</th></tr></thead>
+                            <thead><tr><th colspan='2' class='queue-nav-table-label'>[% l('Queue Filters') %]</th></tr></thead>
                             <tbody>
                                 <tr>
                                     <td>[% l('Limit to Records with Matches') %]</td>
@@ -73,10 +73,10 @@
                     <tr><td valign='bottom' align='right'>
                         <select id='vl-queue-export-options' style='margin-right: 10px;'>
                             <!-- TODO I18N -->
-                            <option value=''>Export Queue As...</option>
-                            <option value='print'>Print</option>
-                            <option value='csv'>CSV</option>
-                            <option value='email'>Email</option>
+                            <option value=''>[% l('Export Queue As...') %]</option>
+                            <option value='print'>[% l('Print') %]</option>
+                            <option value='csv'>[% l('CSV') %]</option>
+                            <option value='email'>[% l('Email') %]</option>
                         </select>
                         <span style='padding-right:5px;'>[% l('Records Per Page') %]</span>
                         <span class='queue-pager-span'>
@@ -139,7 +139,7 @@
                     get='vlGetViewErrors'
                     formatter='vlFormatViewErrors'
                     styles='text-align: center;'
-                    nonSelectable='true'>Import Failures</th>
+                    nonSelectable='true'>[% l('Import Failures') %]</th>
                 <th
                     field='import_time'
                     styles='text-align: center;'
@@ -180,7 +180,7 @@
                     get='vlGetViewErrors'
                     formatter='vlFormatViewErrors'
                     styles='text-align: center;'
-                    nonSelectable='true'>Import Failures</th>
+                    nonSelectable='true'>[% l('Import Failures') %]</th>
                 <th
                     field='import_time'
                     styles='text-align: center;'
@@ -191,7 +191,7 @@
     <div></div>
 </div>
 
-<div jsId='queueItemsImportDialog' dojoType="dijit.Dialog" title="Import Items">
+<div jsId='queueItemsImportDialog' dojoType="dijit.Dialog" title="[% l('Import Items') %]">
     <div dojoType="dijit.layout.ContentPane">
         <table class='form_table'>
             <tbody>
@@ -239,10 +239,10 @@
                 </tr>
                 <tr>
                     <td>
-                        <button dojoType='dijit.form.Button' jsId='queueItemsImportCancelButton'>Cancel</button>
+                        <button dojoType='dijit.form.Button' jsId='queueItemsImportCancelButton'>[% l('Cancel') %]</button>
                     </td>
                     <td>
-                        <button dojoType='dijit.form.Button' jsId='queueItemsImportGoButton'>Import</button>
+                        <button dojoType='dijit.form.Button' jsId='queueItemsImportGoButton'>[% l('Import') %]</button>
                     </td>
                 </tr>
             </tbody>
diff --git a/Open-ILS/src/templates/vandelay/inc/upload.tt2 b/Open-ILS/src/templates/vandelay/inc/upload.tt2
index 3e4237a..caae6dc 100644
--- a/Open-ILS/src/templates/vandelay/inc/upload.tt2
+++ b/Open-ILS/src/templates/vandelay/inc/upload.tt2
@@ -25,14 +25,14 @@
             </td>
         </tr>
         <tr>
-            <td>Record Match Set</td>
+            <td>[% l('Record Match Set') %]</td>
             <td>
                 <input jsId='vlUploadQueueMatchSet'
                     dojoType='dijit.form.FilteringSelect' labelAttr='name' searchAttr='name'/>
             </td>
         </tr>
         <tr>
-            <td>Holdings Import Profile</td>
+            <td>[% l('Holdings Import Profile') %]</td>
             <td>
                 <input jsId='vlUploadQueueHoldingsImportProfile'
                     dojoType='dijit.form.FilteringSelect' labelAttr='name' searchAttr='name'/>
diff --git a/Open-ILS/src/templates/vandelay/vandelay.tt2 b/Open-ILS/src/templates/vandelay/vandelay.tt2
index cfd6d2b..2002efc 100644
--- a/Open-ILS/src/templates/vandelay/vandelay.tt2
+++ b/Open-ILS/src/templates/vandelay/vandelay.tt2
@@ -1,5 +1,5 @@
 [% WRAPPER 'base.tt2' %]
-[% ctx.page_title = 'MARC Import/Export' %]
+[% ctx.page_title = l('MARC Import/Export') %]
 
 <script type="text/javascript" src='[% ctx.media_prefix %]/js/ui/default/vandelay/vandelay.js'> </script>
 <link rel='stylesheet' type='text/css' href='[% ctx.media_prefix %]/css/skin/[% ctx.skin %]/vandelay.css'/>

-----------------------------------------------------------------------

Summary of changes:
 Open-ILS/examples/web/templates/flattener_test.tt2 |   18 +-
 Open-ILS/examples/web/templates/kpac/home.tt2      |    2 +-
 .../examples/web/templates/kpac/parts/header.tt2   |    8 +-
 Open-ILS/src/templates/acq/common/claim_dialog.tt2 |   16 +-
 .../templates/acq/common/final_claim_dialog.tt2    |    6 +-
 Open-ILS/src/templates/acq/common/info.tt2         |    6 +-
 Open-ILS/src/templates/acq/common/inv_dialog.tt2   |    8 +-
 Open-ILS/src/templates/acq/common/jubgrid.tt2      |   64 +++---
 Open-ILS/src/templates/acq/common/li_table.tt2     |  208 ++++++++++----------
 .../src/templates/acq/common/li_table_pager.tt2    |    4 +-
 Open-ILS/src/templates/acq/common/notes.tt2        |   18 +-
 Open-ILS/src/templates/acq/currency_type/list.tt2  |    6 +-
 .../src/templates/acq/financial/claim_eligible.tt2 |   18 +-
 Open-ILS/src/templates/acq/fund/list.tt2           |   46 +++---
 Open-ILS/src/templates/acq/fund/view.tt2           |   66 +++---
 Open-ILS/src/templates/acq/funding_source/list.tt2 |    6 +-
 Open-ILS/src/templates/acq/funding_source/view.tt2 |   46 +++---
 Open-ILS/src/templates/acq/invoice/receive.tt2     |   34 ++--
 Open-ILS/src/templates/acq/invoice/view.tt2        |   91 +++++-----
 Open-ILS/src/templates/acq/lineitem/findbib.tt2    |   12 +-
 Open-ILS/src/templates/acq/lineitem/history.tt2    |    4 +-
 Open-ILS/src/templates/acq/lineitem/related.tt2    |   14 +-
 Open-ILS/src/templates/acq/lineitem/search.tt2     |   34 ++--
 Open-ILS/src/templates/acq/lineitem/worksheet.tt2  |    8 +-
 Open-ILS/src/templates/acq/picklist/bib_search.tt2 |   14 +-
 .../src/templates/acq/picklist/brief_record.tt2    |   10 +-
 Open-ILS/src/templates/acq/picklist/from_bib.tt2   |   10 +-
 Open-ILS/src/templates/acq/picklist/list.tt2       |   26 ++--
 Open-ILS/src/templates/acq/picklist/upload.tt2     |   14 +-
 .../src/templates/acq/picklist/user_request.tt2    |   22 +-
 Open-ILS/src/templates/acq/picklist/view.tt2       |   12 +-
 Open-ILS/src/templates/acq/po/create.tt2           |    4 +-
 Open-ILS/src/templates/acq/po/edi_messages.tt2     |    6 +-
 Open-ILS/src/templates/acq/po/events.tt2           |   18 +-
 Open-ILS/src/templates/acq/po/history.tt2          |    4 +-
 Open-ILS/src/templates/acq/po/item_table.tt2       |   20 +-
 Open-ILS/src/templates/acq/po/search.tt2           |   52 +++---
 Open-ILS/src/templates/acq/po/view.tt2             |   58 +++---
 Open-ILS/src/templates/acq/receiving/process.tt2   |    8 +-
 Open-ILS/src/templates/acq/search/unified.tt2      |   86 ++++----
 Open-ILS/src/templates/acq/settings/li_attr.tt2    |   38 ++--
 Open-ILS/src/templates/actor/user/event_log.tt2    |   36 ++--
 Open-ILS/src/templates/actor/user/register.tt2     |   18 +-
 Open-ILS/src/templates/booking/pickup.tt2          |   16 +-
 Open-ILS/src/templates/booking/reservation.tt2     |    8 +-
 Open-ILS/src/templates/booking/return.tt2          |   16 +-
 Open-ILS/src/templates/cat/authority/list.tt2      |   20 +-
 Open-ILS/src/templates/circ/hold_pull_list.tt2     |   34 ++--
 .../src/templates/circ/selfcheck/circ_page.tt2     |   16 +-
 Open-ILS/src/templates/circ/selfcheck/fines.tt2    |   12 +-
 .../src/templates/circ/selfcheck/holds_page.tt2    |    6 +-
 Open-ILS/src/templates/circ/selfcheck/main.tt2     |   10 +-
 .../src/templates/circ/selfcheck/patron_login.tt2  |    2 +-
 Open-ILS/src/templates/circ/selfcheck/payment.tt2  |   58 +++---
 Open-ILS/src/templates/circ/selfcheck/summary.tt2  |   18 +-
 .../templates/conify/global/acq/cancel_reason.tt2  |   10 +-
 .../conify/global/acq/claim_event_type.tt2         |   10 +-
 .../templates/conify/global/acq/claim_policy.tt2   |   10 +-
 .../conify/global/acq/claim_policy_action.tt2      |    8 +-
 .../src/templates/conify/global/acq/claim_type.tt2 |   10 +-
 .../conify/global/acq/distribution_formula.tt2     |   24 ++--
 .../templates/conify/global/acq/edi_account.tt2    |   12 +-
 .../templates/conify/global/acq/exchange_rate.tt2  |    8 +-
 .../src/templates/conify/global/acq/fund_tag.tt2   |   10 +-
 .../conify/global/acq/invoice_item_type.tt2        |    8 +-
 .../conify/global/acq/invoice_payment_method.tt2   |    8 +-
 .../templates/conify/global/acq/lineitem_alert.tt2 |   10 +-
 .../conify/global/acq/lineitem_marc_attr_def.tt2   |   12 +-
 .../src/templates/conify/global/acq/provider.tt2   |   70 ++++----
 .../src/templates/conify/global/action/survey.tt2  |   50 +++---
 .../global/action_trigger/event_definition.tt2     |   46 +++---
 .../action_trigger/event_definition_data.tt2       |   28 ++--
 .../conify/global/asset/copy_location_order.tt2    |   10 +-
 .../conify/global/asset/copy_template.tt2          |   22 +-
 .../conify/global/biblio/monograph_part.tt2        |    8 +-
 .../templates/conify/global/booking/resource.tt2   |   10 +-
 .../conify/global/booking/resource_attr.tt2        |   10 +-
 .../conify/global/booking/resource_attr_map.tt2    |   10 +-
 .../conify/global/booking/resource_attr_value.tt2  |   10 +-
 .../conify/global/booking/resource_type.tt2        |   10 +-
 .../conify/global/cat/authority/browse_axis.tt2    |    8 +-
 .../authority/browse_axis_authority_field_map.tt2  |   10 +-
 .../conify/global/cat/authority/control_set.tt2    |    8 +-
 .../cat/authority/control_set_authority_field.tt2  |   14 +-
 .../global/cat/authority/control_set_bib_field.tt2 |   10 +-
 .../conify/global/cat/authority/thesaurus.tt2      |   10 +-
 .../templates/conify/global/config/acn_prefix.tt2  |   10 +-
 .../templates/conify/global/config/acn_suffix.tt2  |   10 +-
 .../conify/global/config/actor_sip_fields.tt2      |    8 +-
 .../conify/global/config/asset_sip_fields.tt2      |    8 +-
 .../conify/global/config/barcode_completion.tt2    |    6 +-
 .../conify/global/config/billing_type.tt2          |   10 +-
 .../conify/global/config/circ_limit_group.tt2      |    8 +-
 .../conify/global/config/circ_limit_set.tt2        |   30 ++--
 .../global/config/circ_matrix_matchpoint.tt2       |   20 +-
 .../conify/global/config/circ_matrix_weights.tt2   |    8 +-
 .../conify/global/config/circ_modifier.tt2         |   52 +++---
 .../conify/global/config/coded_value_map.tt2       |   10 +-
 .../templates/conify/global/config/global_flag.tt2 |    4 +-
 .../conify/global/config/hard_due_date.tt2         |    2 +-
 .../conify/global/config/hard_due_date_values.tt2  |   10 +-
 .../global/config/hold_matrix_matchpoint.tt2       |    6 +-
 .../conify/global/config/hold_matrix_weights.tt2   |    8 +-
 .../conify/global/config/idl_field_doc.tt2         |    8 +-
 .../conify/global/config/metabib_field.tt2         |    8 +-
 .../conify/global/config/org_unit_setting_type.tt2 |   28 ++--
 .../global/config/record_attr_definition.tt2       |   10 +-
 .../conify/global/config/rule_age_hold_protect.tt2 |    8 +-
 .../conify/global/config/rule_circ_duration.tt2    |    8 +-
 .../conify/global/config/rule_max_fine.tt2         |    8 +-
 .../conify/global/config/rule_recurring_fine.tt2   |    8 +-
 .../templates/conify/global/config/sms_carrier.tt2 |    8 +-
 .../conify/global/config/standing_penalty.tt2      |    8 +-
 .../conify/global/config/usr_setting_type.tt2      |   28 ++--
 .../conify/global/config/weight_assoc.tt2          |    8 +-
 .../conify/global/config/z3950_source.tt2          |    8 +-
 .../global/permission/grp_penalty_threshold.tt2    |   10 +-
 .../templates/conify/global/vandelay/match_set.tt2 |   14 +-
 .../conify/global/vandelay/match_set_tree.tt2      |   40 ++--
 Open-ILS/src/templates/kpac/getit.tt2              |    4 +-
 Open-ILS/src/templates/kpac/home.tt2               |    8 +-
 Open-ILS/src/templates/kpac/parts/header.tt2       |   10 +-
 Open-ILS/src/templates/kpac/parts/record_row.tt2   |    4 +-
 Open-ILS/src/templates/kpac/parts/searchbox.tt2    |    2 +-
 Open-ILS/src/templates/kpac/record.tt2             |    4 +-
 Open-ILS/src/templates/kpac/results.tt2            |    2 +-
 Open-ILS/src/templates/login.tt2                   |   12 +-
 Open-ILS/src/templates/menu.tt2                    |   60 +++---
 .../templates/opac/myopac/main_payment_form.tt2    |    8 +-
 Open-ILS/src/templates/opac/myopac/prefs.tt2       |    2 +-
 Open-ILS/src/templates/opac/parts/myopac/base.tt2  |    2 +-
 Open-ILS/src/templates/opac/sms_cn.tt2             |   10 +-
 Open-ILS/src/templates/serial/list_item.tt2        |   42 ++--
 Open-ILS/src/templates/serial/list_stream.tt2      |   42 ++--
 .../src/templates/serial/list_subscription.tt2     |    8 +-
 .../templates/serial/print_routing_list_users.tt2  |   14 +-
 Open-ILS/src/templates/serial/subscription.tt2     |   52 +++---
 .../serial/subscription/caption_and_pattern.tt2    |   38 ++--
 .../templates/serial/subscription/distribution.tt2 |    8 +-
 .../src/templates/serial/subscription/issuance.tt2 |   18 +-
 .../src/templates/vandelay/inc/import_errors.tt2   |   30 ++--
 Open-ILS/src/templates/vandelay/inc/item_attrs.tt2 |    8 +-
 Open-ILS/src/templates/vandelay/inc/matches.tt2    |    6 +-
 Open-ILS/src/templates/vandelay/inc/profiles.tt2   |    8 +-
 Open-ILS/src/templates/vandelay/inc/queue.tt2      |   36 ++--
 Open-ILS/src/templates/vandelay/inc/upload.tt2     |    4 +-
 Open-ILS/src/templates/vandelay/vandelay.tt2       |    2 +-
 147 files changed, 1381 insertions(+), 1382 deletions(-)


hooks/post-receive
-- 
Evergreen ILS


More information about the open-ils-commits mailing list