logo       
Google Custom Search
    AddThis Social Bookmark Button
-->

Archetypes/skins/archetypes i18n_slot.pt,NONE,1.1 languageDescription.py,NO: msg#00092

Subject: Archetypes/skins/archetypes i18n_slot.pt,NONE,1.1 languageDescription.py,NONE,1.1 setI18NCookie.py,NONE,1.1 base_edit.pt,1.19,1.20 base_view.pt,1.10,1.11
Update of /cvsroot/archetypes/Archetypes/skins/archetypes
In directory sc8-pr-cvs1:/tmp/cvs-serv24249/skins/archetypes

Modified Files:
        base_edit.pt base_view.pt 
Added Files:
        i18n_slot.pt languageDescription.py setI18NCookie.py 
Log Message:
base support for I18N content fields


--- NEW FILE: i18n_slot.pt ---
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd";>

<html xmlns:tal="http://xml.zope.org/namespaces/tal";
      xmlns:metal="http://xml.zope.org/namespaces/metal";
      i18n:domain="i18nlayer">

<body>

<div class="box" metal:define-macro="i18nContentBox" 
     tal:condition="python:hasattr(here, 'hasI18NContent') and 
here.hasI18NContent()">

   <!-- The I18NContent box -->
   <h5 i18n:translate="box_contentlanguages">Languages</h5>

        <div class="body">

            <div class="content odd">

             <metal:block metal:define-macro="i18nContentChooser">
              <form name="i18ncontentselector" method="POST" 
action="setI18NCookie" 
                    tal:attributes="action 
string:${here/absolute_url}/setI18NCookie"
                    tal:define="languages languages | here/getFilteredLanguages;
                                current   lang | here/getLanguage;
                                form_name string:i18ncontentselector;
                                attr_name string:lang">

                <div metal:define-macro="i18nLangSelect" class="lang_selector" 
align="right">
                  <select name="lang"
                          tal:define="form_name form_name | nothing"
                          tal:attributes="name attr_name;
                                          onChange python:form_name and 
(form_name+'.submit()');">
                    <option value="" i18n:domain="plone" 
i18n:translate="label_choose_language">Choose Language</option>
                    <tal:block tal:repeat="lang python:languages">
                      <option value="" 
                              tal:attributes="value python:lang[0]; 
                                              selected python:current == 
lang[0]" 
                              tal:content="python:lang[1]+' ('+lang[0]+')'" />
                    </tal:block>
                  </select>
                </div>

              </form>
             </metal:block>

            </div>
<!--
            <div class="content even" 
tal:condition="python:here.portal_membership.checkPermission('Modify portal 
content', here.retrieveI18NContentLayerOb()) or 
here.portal_membership.checkPermission('Add portal content', 
here.retrieveI18NContentLayerOb())">
              <a href="#" tal:attributes="href 
string:${here/retrieveI18NContentLayerURL}/i18nlayer_languages_form" 
i18n:translate="label_manage_languages">Manage languages</a>
            </div>
 -->

        </div>
</div>

</body>

</html>


--- NEW FILE: languageDescription.py ---
## Script (Python) "languageDescription"
##bind container=container
##bind context=context
##bind namespace=
##bind script=script
##bind subpath=traverse_subpath
##parameters=lang_id
##title=Return the full language description from it's id

return {
    'aa': 'Afar',
    'ab': 'Abkhazian',
    'af': 'Afrikaans',
    'am': 'Amharic',
    'ar': 'Arabic',
    'as': 'Assamese',
    'ay': 'Aymara',
    'az': 'Azerbaijani',
    'ba': 'Bashkir',
    'be': 'Byelorussian Belarussian',
    'bg': 'Bulgarian',
    'bh': 'Bihari',
    'bi': 'Bislama',
    'bn': 'Bengali',
    'bo': 'Tibetan',
    'br': 'Breton',
    'ca': 'Catalan',
    'co': 'Corsican',
    'cs': 'Czech',
    'cy': 'Welsh',
    'da': 'Danish',
    'de': 'German',
    'dz': 'Bhutani',
    'el': 'Greek',
    'en': 'English',
    'eo': 'Esperanto',
    'es': 'Spanish',
    'et': 'Estonian',
    'eu': 'Basque',
    'fa': 'Persian',
    'fi': 'Finnish',
    'fj': 'Fiji',
    'fo': 'Faroese',
    'fr': 'French',
    'fy': 'Frisian',
    'ga': 'Irish Irish Gaelic',
    'gd': 'Scots Gaelic Scottish Gaelic',
    'gl': 'Galician',
    'gn': 'Guarani',
    'gu': 'Gujarati',
    'gv': 'Manx Gaelic',
    'ha': 'Hausa',
    'he': 'Hebrew',
    'hi': 'Hindi',
    'hr': 'Croatian',
    'hu': 'Hungarian',
    'hy': 'Armenian',
    'ia': 'Interlingua',
    'id': 'Indonesian',
    'ie': 'Interlingue',
    'ik': 'Inupiak',
    'is': 'Icelandic',
    'it': 'Italian',
    'iu': 'Inuktitut',
    'ja': 'Japanese',
    'jw': 'Javanese',
    'ka': 'Georgian',
    'kk': 'Kazakh',
    'kl': 'Greenlandic',
    'km': 'Cambodian',
    'kn': 'Kannada',
    'ko': 'Korean',
    'ks': 'Kashmiri',
    'ku': 'Kurdish',
    'kw': 'Cornish',
    'ky': 'Kirghiz',
    'la': 'Latin',
    'lb': 'Luxemburgish',
    'ln': 'Lingala',
    'lo': 'Laotian',
    'lt': 'Lithuanian',
    'lv': 'Latvian Lettish',
    'mg': 'Malagasy',
    'mi': 'Maori',
    'mk': 'Macedonian',
    'ml': 'Malayalam',
    'mn': 'Mongolian',
    'mo': 'Moldavian',
    'mr': 'Marathi',
    'ms': 'Malay',
    'mt': 'Maltese',
    'my': 'Burmese',
    'na': 'Nauru',
    'ne': 'Nepali',
    'nl': 'Dutch',
    'no': 'Norwegian',
    'oc': 'Occitan',
    'om': 'Oromo',
    'or': 'Oriya',
    'pa': 'Punjabi',
    'pl': 'Polish',
    'ps': 'Pashto',
    'pt': 'Portuguese',
    'qu': 'Quechua',
    'rm': 'Rhaeto-Romance',
    'rn': 'Kirundi',
    'ro': 'Romanian',
    'ru': 'Russian',
    'rw': 'Kiyarwanda',
    'sa': 'Sanskrit',
    'sd': 'Sindhi',
    'se': 'Northern S&aacute;mi',
    'sg': 'Sangho',
    'sh': 'Serbo-Croatian',
    'si': 'Singhalese',
    'sk': 'Slovak',
    'sl': 'Slovenian',
    'sm': 'Samoan',
    'sn': 'Shona',
    'so': 'Somali',
    'sq': 'Albanian',
    'sr': 'Serbian',
    'ss': 'Siswati',
    'st': 'Sesotho',
    'su': 'Sudanese',
    'sv': 'Swedish',
    'sw': 'Swahili',
    'ta': 'Tamil',
    'te': 'Telugu',
    'tg': 'Tajik',
    'th': 'Thai',
    'ti': 'Tigrinya',
    'tk': 'Turkmen',
    'tl': 'Tagalog',
    'tn': 'Setswana',
    'to': 'Tonga',
    'tr': 'Turkish',
    'ts': 'Tsonga',
    'tt': 'Tatar',
    'tw': 'Twi',
    'ug': 'Uigur',
    'uk': 'Ukrainian',
    'ur': 'Urdu',
    'uz': 'Uzbek',
    'vi': 'Vietnamese',
    'vo': 'Volap&uuml;k',
    'wo': 'Wolof',
    'xh': 'Xhosa',
    'yi': 'Yiddish',
    'yo': 'Yorouba',
    'za': 'Zhuang',
    'zh': 'Chinese',
    'zu': 'Zulu'
    }[lang_id]
        

--- NEW FILE: setI18NCookie.py ---
## Script (Python) "setI18NCookie"
##title=
##bind container=container
##bind context=context
##bind namespace=
##bind script=script
##bind subpath=traverse_subpath
##parameters=lang, cookie=1

REQUEST = context.REQUEST
if cookie:
    REQUEST.RESPONSE.setCookie('I18N_CONTENT_LANGUAGE',lang, path='/')
elif REQUEST.cookies.get('I18N_CONTENT_LANGUAGE',None):
    REQUEST.RESPONSE.expireCookie('I18N_CONTENT_LANGUAGE', path='/')


REQUEST.RESPONSE.redirect(REQUEST.environ['HTTP_REFERER'])


Index: base_edit.pt
===================================================================
RCS file: /cvsroot/archetypes/Archetypes/skins/archetypes/base_edit.pt,v
retrieving revision 1.19
retrieving revision 1.20
diff -C2 -d -r1.19 -r1.20
*** base_edit.pt        12 Jun 2003 22:16:12 -0000      1.19
--- base_edit.pt        19 Jun 2003 14:58:45 -0000      1.20
***************
*** 19,22 ****
--- 19,23 ----
                     tabindex python:Iterator();
                     schematas here/Schemata;
+                    lang here/getLanguage<;
                     default_fieldset python:(not schematas or 
schematas.has_key('default')) and 'default' or schematas.keys()[0];
                     fieldset 
request/fieldset|options/fieldset|default_fieldset;
***************
*** 58,61 ****
--- 59,70 ----
        </div>
  -->
+ 
+         <div tal:condition="python:here.hasI18NContent()" 
+              tal:define="attr_name string:new_lang;
+                          current lang;
+                          languages python:here.availableLanguages();">
+           <metal:block use-macro="here/i18n_slot/macros/i18nLangSelect"/>
+         </div>
+ 
          <span class="legend" 
                i18n:translate="" 

Index: base_view.pt
===================================================================
RCS file: /cvsroot/archetypes/Archetypes/skins/archetypes/base_view.pt,v
retrieving revision 1.10
retrieving revision 1.11
diff -C2 -d -r1.10 -r1.11
*** base_view.pt        3 Jun 2003 15:44:00 -0000       1.10
--- base_view.pt        19 Jun 2003 14:58:45 -0000      1.11
***************
*** 14,17 ****
--- 14,20 ----
           <h1 tal:content="here/title_or_id" 
metal:use-macro="view_macros/header|default" />
  
+          <div tal:condition="python:here.hasI18NContent()"> 
+            <metal:block use-macro="here/i18n_slot/macros/i18nContentChooser"/>
+          </div>
  
           <div tal:condition="not:body_macro"




-------------------------------------------------------
This SF.Net email is sponsored by: INetU
Attention Web Developers & Consultants: Become An INetU Hosting Partner.
Refer Dedicated Servers. We Manage Them. You Get 10% Monthly Commission!
INetU Dedicated Managed Hosting http://www.inetu.net/partner/index.php


<Prev in Thread] Current Thread [Next in Thread>