You can subscribe to this list here.
| 2004 |
Jan
|
Feb
|
Mar
(1) |
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
(10) |
Dec
(4) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2005 |
Jan
(1) |
Feb
(8) |
Mar
(8) |
Apr
(4) |
May
(19) |
Jun
(1) |
Jul
(1) |
Aug
(18) |
Sep
(18) |
Oct
(19) |
Nov
(75) |
Dec
(80) |
| 2006 |
Jan
(86) |
Feb
(61) |
Mar
(60) |
Apr
(47) |
May
(39) |
Jun
(16) |
Jul
(30) |
Aug
(13) |
Sep
(13) |
Oct
(21) |
Nov
(1) |
Dec
(10) |
| 2007 |
Jan
(2) |
Feb
(7) |
Mar
(9) |
Apr
(3) |
May
(9) |
Jun
(4) |
Jul
(1) |
Aug
(2) |
Sep
|
Oct
(12) |
Nov
(1) |
Dec
(7) |
| 2008 |
Jan
|
Feb
(2) |
Mar
(14) |
Apr
(9) |
May
(23) |
Jun
(4) |
Jul
|
Aug
(13) |
Sep
(8) |
Oct
(15) |
Nov
(40) |
Dec
(14) |
| 2009 |
Jan
|
Feb
(4) |
Mar
(10) |
Apr
(2) |
May
(2) |
Jun
(1) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
| 2010 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(1) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
| 2011 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(1) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
|
From: <sub...@co...> - 2006-10-02 19:10:09
|
Author: gh Date: 2006-10-02 13:10:07 -0600 (Mon, 02 Oct 2006) New Revision: 1969 Modified: FormEncode/branches/gettext-enabled/docs/i18n.txt FormEncode/branches/gettext-enabled/formencode/api.py FormEncode/branches/gettext-enabled/formencode/validators.py Log: docs/i18n.txt correction Modified: FormEncode/branches/gettext-enabled/docs/i18n.txt =================================================================== --- FormEncode/branches/gettext-enabled/docs/i18n.txt 2006-10-02 19:04:46 UTC (rev 1968) +++ FormEncode/branches/gettext-enabled/docs/i18n.txt 2006-10-02 19:10:07 UTC (rev 1969) @@ -6,11 +6,13 @@ Domain "FormEncode" ^^^^^^^^^^^^^^^^^^^ -for standalone use of FormEncode, just place the compiled files in /usr/share/locale/<lang>/LC_MESSAGES/FormEncode.mo The language to use is determined out of the local system (see gettext documentation http://docs.python.org/lib/node733.html). Optionally you can also set the language or the domain explicitly with the function +for standalone use of FormEncode. The language to use is determined out of the local system (see gettext documentation http://docs.python.org/lib/node733.html). Optionally you can also set the language or the domain explicitly with the function. example: formencode.api.set_stdtranslation(domain="FormEncode", languages=["de"]) +The mo files are located in the i18n subdirectory of the formencode installation. + state._ ^^^^^^^ A custom _ gettext function provided as attribute of the state object. Modified: FormEncode/branches/gettext-enabled/formencode/api.py =================================================================== --- FormEncode/branches/gettext-enabled/formencode/api.py 2006-10-02 19:04:46 UTC (rev 1968) +++ FormEncode/branches/gettext-enabled/formencode/api.py 2006-10-02 19:10:07 UTC (rev 1969) @@ -25,7 +25,7 @@ set_stdtranslation() -#def _(s): return s # dummy i18n translation function, nothing is translated here. +def _(s): return s # dummy i18n translation function, nothing is translated here. # Instead this is actually done in api.Validator.message. # The surrounding _("string") of the strings is only for extracting # the strings automatically Modified: FormEncode/branches/gettext-enabled/formencode/validators.py =================================================================== --- FormEncode/branches/gettext-enabled/formencode/validators.py 2006-10-02 19:04:46 UTC (rev 1968) +++ FormEncode/branches/gettext-enabled/formencode/validators.py 2006-10-02 19:10:07 UTC (rev 1969) @@ -44,7 +44,7 @@ True, False = (1==1), (0==1) -#def _(s): return s # dummy translation function, nothing is translated here. +def _(s): return s # dummy translation function, nothing is translated here. # Instead this is actually done in api.message. # The surrounding _("string") of the strings is only for extracting # the strings automatically |
|
From: <sub...@co...> - 2006-10-02 19:04:52
|
Author: gh Date: 2006-10-02 13:04:46 -0600 (Mon, 02 Oct 2006) New Revision: 1968 Added: FormEncode/branches/gettext-enabled/docs/i18n.txt FormEncode/branches/gettext-enabled/formencode/i18n/ FormEncode/branches/gettext-enabled/formencode/i18n/FormEncode.pot FormEncode/branches/gettext-enabled/formencode/i18n/de/ FormEncode/branches/gettext-enabled/formencode/i18n/de/LC_MESSAGES/ FormEncode/branches/gettext-enabled/formencode/i18n/de/LC_MESSAGES/FormEncode.mo FormEncode/branches/gettext-enabled/formencode/i18n/de/LC_MESSAGES/FormEncode.po FormEncode/branches/gettext-enabled/tests/test_i18n.py Modified: FormEncode/branches/gettext-enabled/formencode/api.py FormEncode/branches/gettext-enabled/formencode/validators.py FormEncode/branches/gettext-enabled/tests/test_cc_expires.py FormEncode/branches/gettext-enabled/tests/test_cc_validator.py FormEncode/branches/gettext-enabled/tests/test_schema.py FormEncode/branches/gettext-enabled/tests/test_sqlschema.py Log: added basic i18n code and german translation Added: FormEncode/branches/gettext-enabled/docs/i18n.txt =================================================================== --- FormEncode/branches/gettext-enabled/docs/i18n.txt (rev 0) +++ FormEncode/branches/gettext-enabled/docs/i18n.txt 2006-10-02 19:04:46 UTC (rev 1968) @@ -0,0 +1,32 @@ +FormEncode Internationalization (gettext) ++++++++++++++++++++++++++++++++++++++++++ + +There are different translation options available: + +Domain "FormEncode" +^^^^^^^^^^^^^^^^^^^ + +for standalone use of FormEncode, just place the compiled files in /usr/share/locale/<lang>/LC_MESSAGES/FormEncode.mo The language to use is determined out of the local system (see gettext documentation http://docs.python.org/lib/node733.html). Optionally you can also set the language or the domain explicitly with the function + +example: +formencode.api.set_stdtranslation(domain="FormEncode", languages=["de"]) + +state._ +^^^^^^^ +A custom _ gettext function provided as attribute of the state object. + +__builtins__._ +^^^^^^^^^^^^^^ +A custom _ gettext function provided in the builtin namespace. +This function is only used when: + +Validator.use_builtin_gettext == True (True is default) + + +Without translation +^^^^^^^^^^^^^^^^^^^ + +If no translation mechanism is found a fallback returns the plain string. + + +Gregor Horvath, 2006 gh...@gr... Modified: FormEncode/branches/gettext-enabled/formencode/api.py =================================================================== --- FormEncode/branches/gettext-enabled/formencode/api.py 2006-10-02 14:23:09 UTC (rev 1967) +++ FormEncode/branches/gettext-enabled/formencode/api.py 2006-10-02 19:04:46 UTC (rev 1968) @@ -5,10 +5,32 @@ import declarative import textwrap import re +import os +import formencode __all__ = ['NoDefault', 'Invalid', 'Validator', 'Identity', 'FancyValidator', 'is_validator'] +import gettext + +def set_stdtranslation(domain="FormEncode", languages=None, \ + localedir = "%s%s%s" % \ + (os.path.dirname(formencode.__file__), os.path.sep, "i18n")): + print localedir + t = gettext.translation(domain=domain, \ + languages=languages, \ + localedir=localedir, fallback=True) + global _stdtrans + _stdtrans = t.ugettext + +set_stdtranslation() + +#def _(s): return s # dummy i18n translation function, nothing is translated here. + # Instead this is actually done in api.Validator.message. + # The surrounding _("string") of the strings is only for extracting + # the strings automatically + # if you run pygettext with this source comment this function out temporarly + class NoDefault: pass @@ -117,7 +139,10 @@ if_missing = NoDefault repeating = False compound = False - + gettextargs = {} + use_builtins_gettext = True #In case you dont want to use __builtins__._ + #altough it may be definied, set this to False + __singletonmethods__ = ('to_python', 'from_python') def __classinit__(cls, new_attrs): @@ -141,8 +166,21 @@ return value def message(self, msgName, state, **kw): + #determine translation function try: - return self._messages[msgName] % kw + trans = state._ + except AttributeError: + try: + if self.use_builtins_gettext: + import __builtin__ + trans = __builtin__._ + else: + trans = _stdtrans + except AttributeError: + trans = _stdtrans + + try: + return trans(self._messages[msgName], **self.gettextargs) % kw except KeyError, e: raise KeyError( "Key not found (%s) for %r=%r %% %r (from: %s)" @@ -294,9 +332,9 @@ strip = False messages = { - 'empty': "Please enter a value", - 'badType': "The input must be a string (not a %(type)s: %(value)r)", - 'noneType': "The input must be a string (not None)", + 'empty': _("Please enter a value"), + 'badType': _("The input must be a string (not a %(type)s: %(value)r)"), + 'noneType': _("The input must be a string (not None)"), } def to_python(self, value, state=None): Added: FormEncode/branches/gettext-enabled/formencode/i18n/FormEncode.pot =================================================================== --- FormEncode/branches/gettext-enabled/formencode/i18n/FormEncode.pot (rev 0) +++ FormEncode/branches/gettext-enabled/formencode/i18n/FormEncode.pot 2006-10-02 19:04:46 UTC (rev 1968) @@ -0,0 +1,325 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR ORGANIZATION +# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR. +# +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"POT-Creation-Date: 2006-10-02 20:59+CEST\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" +"Language-Team: LANGUAGE <LL...@li...>\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=CHARSET\n" +"Content-Transfer-Encoding: ENCODING\n" +"Generated-By: pygettext.py 1.5\n" + + +#: api.py:335 validators.py:433 +msgid "Please enter a value" +msgstr "" + +#: api.py:336 +msgid "The input must be a string (not a %(type)s: %(value)r)" +msgstr "" + +#: api.py:337 +msgid "The input must be a string (not None)" +msgstr "" + +#: validators.py:160 +msgid "%(object)r is not a subclass of %(subclass)s" +msgstr "" + +#: validators.py:161 +msgid "%(object)r is not a subclass of one of the types %(subclassList)s" +msgstr "" + +#: validators.py:162 +msgid "%(object)r must be one of the types %(typeList)s" +msgstr "" + +#: validators.py:163 +msgid "%(object)r must be of the type %(type)s" +msgstr "" + +#: validators.py:344 +msgid "Enter a value less than %(maxLength)i characters long" +msgstr "" + +#: validators.py:345 validators.py:399 +msgid "Invalid value (value with length expected)" +msgstr "" + +#: validators.py:398 +msgid "Enter a value at least %(minLength)i characters long" +msgstr "" + +#: validators.py:458 +msgid "You cannot enter a value here" +msgstr "" + +#: validators.py:509 +msgid "The input is not valid" +msgstr "" + +#: validators.py:565 +msgid "Enter only letters, numbers, or _ (underscore)" +msgstr "" + +#: validators.py:604 +msgid "Invalid value" +msgstr "" + +#: validators.py:605 +msgid "Value must be one of: %(items)s (not %(value)r)" +msgstr "" + +#: validators.py:668 +msgid "Choose something" +msgstr "" + +#: validators.py:669 +msgid "Enter a value from: %(items)s" +msgstr "" + +#: validators.py:670 +msgid "That value is not known" +msgstr "" + +#: validators.py:671 +msgid "Nothing in my dictionary goes by the value %(value)s. Choose one of: %(items)s" +msgstr "" + +#: validators.py:732 +msgid "Must be an integer index" +msgstr "" + +#: validators.py:733 +msgid "Index out of range" +msgstr "" + +#: validators.py:734 +msgid "Item %(value)s was not found in the list" +msgstr "" + +#: validators.py:809 +msgid "Date must be after %(date)s" +msgstr "" + +#: validators.py:810 +msgid "Date must be before %(date)s" +msgstr "" + +#: validators.py:812 +msgid "%%A, %%d %%B %%Y" +msgstr "" + +#: validators.py:813 +msgid "The date must be sometime in the future" +msgstr "" + +#: validators.py:913 +msgid "Please enter an integer value" +msgstr "" + +#: validators.py:945 +msgid "Please enter a number" +msgstr "" + +#: validators.py:998 +msgid "Enter a value less than %(max)i characters long" +msgstr "" + +#: validators.py:999 +msgid "Enter a value %(min)i characters long or more" +msgstr "" + +#: validators.py:1050 +msgid "Invalid data or incorrect encoding" +msgstr "" + +#: validators.py:1178 +msgid "Please enter an email address" +msgstr "" + +#: validators.py:1179 +msgid "An email address must contain a single @" +msgstr "" + +#: validators.py:1180 +msgid "The username portion of the email address is invalid (the portion before the @: %(username)s)" +msgstr "" + +#: validators.py:1181 validators.py:1294 +msgid "An error occured when trying to connect to the server: %(error)s" +msgstr "" + +#: validators.py:1182 +msgid "The domain portion of the email address is invalid (the portion after the @: %(domain)s)" +msgstr "" + +#: validators.py:1183 +msgid "The domain of the email address does not exist (the portion after the @: %(domain)s)" +msgstr "" + +#: validators.py:1291 +msgid "You must start your URL with http://, https://, etc" +msgstr "" + +#: validators.py:1292 +msgid "That is not a valid URL" +msgstr "" + +#: validators.py:1293 +msgid "An error occurred when trying to access the URL: %(error)s" +msgstr "" + +#: validators.py:1295 +msgid "The server responded that the page could not be found" +msgstr "" + +#: validators.py:1296 +msgid "The server responded with a bad status code (%(status)s)" +msgstr "" + +#: validators.py:1399 +msgid "Please enter a state code" +msgstr "" + +#: validators.py:1400 +msgid "Please enter a state code with TWO letters" +msgstr "" + +#: validators.py:1401 +msgid "That is not a valid state code" +msgstr "" + +#: validators.py:1452 +msgid "Please enter a number, with area code, in the form ###-###-####, optionally with \"ext.####\"" +msgstr "" + +#: validators.py:1614 validators.py:1622 +msgid "Please enter the date in the form %(format)s" +msgstr "" + +#: validators.py:1615 +msgid "Please enter a month from 1 to 12" +msgstr "" + +#: validators.py:1616 +msgid "Please enter a valid day" +msgstr "" + +#: validators.py:1617 +msgid "That month only has %(days)i days" +msgstr "" + +#: validators.py:1618 +msgid "That is not a valid day (%(exception)s)" +msgstr "" + +#: validators.py:1619 +msgid "Unknown month name: %(month)s" +msgstr "" + +#: validators.py:1620 +msgid "Please enter a number for the year" +msgstr "" + +#: validators.py:1621 +msgid "Please enter a four-digit year" +msgstr "" + +#: validators.py:1800 +msgid "You must indicate AM or PM" +msgstr "" + +#: validators.py:1801 +msgid "There are too many :'s" +msgstr "" + +#: validators.py:1802 +msgid "You may not enter seconds" +msgstr "" + +#: validators.py:1803 +msgid "You must enter seconds" +msgstr "" + +#: validators.py:1804 +msgid "You must enter minutes (after a :)" +msgstr "" + +#: validators.py:1805 +msgid "The %(part)s value you gave is not a number: %(number)r" +msgstr "" + +#: validators.py:1806 +msgid "You must enter an hour in the range %(range)s" +msgstr "" + +#: validators.py:1807 +msgid "You must enter a minute in the range 0-59" +msgstr "" + +#: validators.py:1808 +msgid "You must enter a second in the range 0-59" +msgstr "" + +#: validators.py:1962 +msgid "Please enter a zip code (5 digits)" +msgstr "" + +#: validators.py:1986 +msgid "The name %(name)s is missing" +msgstr "" + +#: validators.py:2027 +msgid "Value should be %(true)r or %(false)r" +msgstr "" + +#: validators.py:2062 +msgid "Value does not contain a signature" +msgstr "" + +#: validators.py:2063 +msgid "Signature is not correct" +msgstr "" + +#: validators.py:2185 +msgid "Fields do not match (should be %(match)s)" +msgstr "" + +#: validators.py:2186 +msgid "Fields do not match" +msgstr "" + +#: validators.py:2248 +msgid "Please enter only the number, no other characters" +msgstr "" + +#: validators.py:2249 +msgid "You did not enter a valid number of digits" +msgstr "" + +#: validators.py:2250 +msgid "That number is not valid" +msgstr "" + +#: validators.py:2365 +msgid "Please enter numbers only for month and year" +msgstr "" + +#: validators.py:2366 +msgid "Invalid Expiration Date" +msgstr "" + +#: validators.py:2435 +msgid "Please enter numbers only for credit card security code" +msgstr "" + +#: validators.py:2436 +msgid "Invalid credit card security code length" +msgstr "" + Added: FormEncode/branches/gettext-enabled/formencode/i18n/de/LC_MESSAGES/FormEncode.mo =================================================================== (Binary files differ) Property changes on: FormEncode/branches/gettext-enabled/formencode/i18n/de/LC_MESSAGES/FormEncode.mo ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: FormEncode/branches/gettext-enabled/formencode/i18n/de/LC_MESSAGES/FormEncode.po =================================================================== --- FormEncode/branches/gettext-enabled/formencode/i18n/de/LC_MESSAGES/FormEncode.po (rev 0) +++ FormEncode/branches/gettext-enabled/formencode/i18n/de/LC_MESSAGES/FormEncode.po 2006-10-02 19:04:46 UTC (rev 1968) @@ -0,0 +1,325 @@ +# German strings for FormEncode +# Copyright (C) 2006 Gregor Horvath, licence: LGPL V2.0 +# Gregor Horvath <gh...@gr...>, 2006. +# +msgid "" +msgstr "" +"Project-Id-Version: FormEncode 0.5.1\n" +"POT-Creation-Date: 2006-09-26 07:57+CEST\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: Gregor Horvath <gh...@gr...>\n" +"Language-Team: Gregor Horvath <gh...@gr...>\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=ISO8859-1\n" +"Content-Transfer-Encoding: ISO8859-1\n" +"Generated-By: pygettext.py 1.5\n" + + +#: api.py:319 validators.py:433 +msgid "Please enter a value" +msgstr "Bitte einen Wert eingeben" + +#: api.py:320 +msgid "The input must be a string (not a %(type)s: %(value)r)" +msgstr "Die Eingabe mueine Zeichenfolge sein (nicht ein %(type)s: %(value)r)" + +#: api.py:321 +msgid "The input must be a string (not None)" +msgstr "Die Eingabe mueine Zeichenfolge sein (nicht Nichts)" + +#: validators.py:160 +msgid "%(object)r is not a subclass of %(subclass)s" +msgstr "%(object)r ist keine Unterklasse von %(subclass)s" + +#: validators.py:161 +msgid "%(object)r is not a subclass of one of the types %(subclassList)s" +msgstr "%(object)r ist keine Unterklasse von einer der Klassen %(subclassList)s" + +#: validators.py:162 +msgid "%(object)r must be one of the types %(typeList)s" +msgstr "%(object)r Typ muvon eine von diesen sein: %(typeList)s" + +#: validators.py:163 +msgid "%(object)r must be of the type %(type)s" +msgstr "%(object)r muvom Typ %(type)s sein" + +#: validators.py:344 +msgid "Enter a value less than %(maxLength)i characters long" +msgstr "Geben Sie einen Wert kals %(maxLength)i Zeichen ein." + +#: validators.py:345 validators.py:399 +msgid "Invalid value (value with length expected)" +msgstr "Ungr Wert (Wert mit Le erwartet)" + +#: validators.py:398 +msgid "Enter a value at least %(minLength)i characters long" +msgstr "Geben Sie einen Wert mit mindestens %(minLength)i Zeichen ein." + +#: validators.py:458 +msgid "You cannot enter a value here" +msgstr "Sie kn hier keinen Wert eingeben" + +#: validators.py:509 +msgid "The input is not valid" +msgstr "Die Eingabe ist ung + +#: validators.py:565 +msgid "Enter only letters, numbers, or _ (underscore)" +msgstr "Geben Sie nur Buchstaben, Nummern oder _ (Unterstriche) ein." + +#: validators.py:604 +msgid "Invalid value" +msgstr "Ungr Wert" + +#: validators.py:605 +msgid "Value must be one of: %(items)s (not %(value)r)" +msgstr "Wert mueiner von diesen sein: %(items)s (nicht %(value)r) " + +#: validators.py:668 +msgid "Choose something" +msgstr "Etwas auswen" + +#: validators.py:669 +msgid "Enter a value from: %(items)s" +msgstr "Geben Sie einen Wert aus %(items)s ein." + +#: validators.py:670 +msgid "That value is not known" +msgstr "Dieser Wert ist unbekannt" + +#: validators.py:671 +msgid "Nothing in my dictionary goes by the value %(value)s. Choose one of: %(items)s" +msgstr "Mein Wrbuch enth nicht den Wert: %(value)s. We einen Wert aus: %(items)s" + +#: validators.py:732 +msgid "Must be an integer index" +msgstr "Muein Ganzahlindex sein." + +#: validators.py:733 +msgid "Index out of range" +msgstr "Index ausserhalb des Bereiches" + +#: validators.py:734 +msgid "Item %(value)s was not found in the list" +msgstr "Wert %(value)s wurde in der Liste nicht gefunden" + +#: validators.py:809 +msgid "Date must be after %(date)s" +msgstr "Datum munach %(date)s sein" + +#: validators.py:810 +msgid "Date must be before %(date)s" +msgstr "Datum muvor %(date)s sein" + +#: validators.py:812 +msgid "%%A, %%d %%B %%Y" +msgstr "%%A, %%d %%B %%Y" + +#: validators.py:813 +msgid "The date must be sometime in the future" +msgstr "Das Datum muin der Zukunft liegen" + +#: validators.py:913 +msgid "Please enter an integer value" +msgstr "Bitte einen Ganzzahlwert eingeben" + +#: validators.py:945 +msgid "Please enter a number" +msgstr "Bitte eine Zahl eingeben" + +#: validators.py:998 +msgid "Enter a value less than %(max)i characters long" +msgstr "Bitte einen Wert kals %(max)i Zeichen eingeben." + +#: validators.py:999 +msgid "Enter a value %(min)i characters long or more" +msgstr "Bitte einen Wert mit %(min)i oder mehr Zeichen eingeben" + +#: validators.py:1050 +msgid "Invalid data or incorrect encoding" +msgstr "Ung Daten oder falsche Kodierung" + +#: validators.py:1178 +msgid "Please enter an email address" +msgstr "Bitte eine E-mail Adresse eingeben" + +#: validators.py:1179 +msgid "An email address must contain a single @" +msgstr "Eine E-mail Adresse muein einzelnes @ Zeichen enthalten" + +#: validators.py:1180 +msgid "The username portion of the email address is invalid (the portion before the @: %(username)s)" +msgstr "Der Benutzer Teil der E-mail Adresse is ung(Der Teil vor dem @: %(username)s)" + +#: validators.py:1181 validators.py:1294 +msgid "An error occured when trying to connect to the server: %(error)s" +msgstr "Ein Fehler ist beim Verbindungsversuch mit dem Server aufgetreten: %(error)s" + +#: validators.py:1182 +msgid "The domain portion of the email address is invalid (the portion after the @: %(domain)s)" +msgstr "Der Domain Teil der E-mail Adresse ist ung(Der Teil nach dem @: %(domain)s)" + +#: validators.py:1183 +msgid "The domain of the email address does not exist (the portion after the @: %(domain)s)" +msgstr "Die Domaine der E-mail Adresse existiert nicht (Der Teil nach dem @: %(domain)s)" + +#: validators.py:1291 +msgid "You must start your URL with http://, https://, etc" +msgstr "Die URL mumit http://, https://, etc beginnen" + +#: validators.py:1292 +msgid "That is not a valid URL" +msgstr "Das ist eine ung URL" + +#: validators.py:1293 +msgid "An error occurred when trying to access the URL: %(error)s" +msgstr "Beim Versuch die URL zu erreichen ist ein Fehler aufgetreten: %(error)s" + +#: validators.py:1295 +msgid "The server responded that the page could not be found" +msgstr "Der Server hat geantwortet, dass die Seite nicht gefunden werden konnte" + +#: validators.py:1296 +msgid "The server responded with a bad status code (%(status)s)" +msgstr "Der Server antwortete mit einem schlechten Statuskode (%(status)s)" + +#: validators.py:1399 +msgid "Please enter a state code" +msgstr "Bitte eine Landeskeingeben" + +#: validators.py:1400 +msgid "Please enter a state code with TWO letters" +msgstr "Bitte ein Landeskmit 2 Buchstaben eingeben" + +#: validators.py:1401 +msgid "That is not a valid state code" +msgstr "Das ist kein gs Landesk + +#: validators.py:1452 +msgid "Please enter a number, with area code, in the form ###-###-####, optionally with \"ext.####\"" +msgstr "Bitte geben Sie eine Nummer mit Gebietskode in der Form ###-###-####, alternativ mit \"ext.####\ ein" + +#: validators.py:1614 validators.py:1622 +msgid "Please enter the date in the form %(format)s" +msgstr "Bitte geben Sie das Datum in der Form %(format)s ein." + +#: validators.py:1615 +msgid "Please enter a month from 1 to 12" +msgstr "Bitte ein Monat von 1 bis 12 eingeben." + +#: validators.py:1616 +msgid "Please enter a valid day" +msgstr "Bitte einen gn Tag eingeben" + +#: validators.py:1617 +msgid "That month only has %(days)i days" +msgstr "Dieser Monat hat nur %(days)i Tage" + +#: validators.py:1618 +msgid "That is not a valid day (%(exception)s)" +msgstr "Das ist kein gr Tag (%(exception)s)" + +#: validators.py:1619 +msgid "Unknown month name: %(month)s" +msgstr "Unbekannter Monatsname: %(month)s" + +#: validators.py:1620 +msgid "Please enter a number for the year" +msgstr "Bitte eine Zahl f Jahr eingeben" + +#: validators.py:1621 +msgid "Please enter a four-digit year" +msgstr "Bitte eine vierstellige Jahreszahl eingeben." + +#: validators.py:1800 +msgid "You must indicate AM or PM" +msgstr "Sie mAM oder PM angeben" + +#: validators.py:1801 +msgid "There are too many :'s" +msgstr "Hier sind zu viele :'s" + +#: validators.py:1802 +msgid "You may not enter seconds" +msgstr "Keine Sekunden eingeben" + +#: validators.py:1803 +msgid "You must enter seconds" +msgstr "Sie mSekunden eingeben" + +#: validators.py:1804 +msgid "You must enter minutes (after a :)" +msgstr "Sie mMinuten eingeben (nach a :)" + +#: validators.py:1805 +msgid "The %(part)s value you gave is not a number: %(number)r" +msgstr "Der %(part)s Wert den Sie angaben ist keine Nummer: %(number)r" + +#: validators.py:1806 +msgid "You must enter an hour in the range %(range)s" +msgstr "Sie meine Stunde im Bereich %(range)s eingeben." + +#: validators.py:1807 +msgid "You must enter a minute in the range 0-59" +msgstr "Sie meine Minute im Bereich 0-59 eingeben." + +#: validators.py:1808 +msgid "You must enter a second in the range 0-59" +msgstr "Sie meine Sekunde im Bereicg 0-59 eingeben." + +#: validators.py:1962 +msgid "Please enter a zip code (5 digits)" +msgstr "Bitte eine Postleitzahl eingeben (5 Stellen)" + +#: validators.py:1986 +msgid "The name %(name)s is missing" +msgstr "Der Name %(name)s fehlt" + +#: validators.py:2027 +msgid "Value should be %(true)r or %(false)r" +msgstr "Wert sollte %(true)r oder %(false)r sein" + +#: validators.py:2062 +msgid "Value does not contain a signature" +msgstr "Wert enth keine Signatur" + +#: validators.py:2063 +msgid "Signature is not correct" +msgstr "Signatur ist nicht korrekt" + +#: validators.py:2185 +msgid "Fields do not match (should be %(match)s)" +msgstr "Felder stimmen nicht n (sollten sein %(match)s)" + +#: validators.py:2186 +msgid "Fields do not match" +msgstr "Felder stimmen nicht n" + +#: validators.py:2248 +msgid "Please enter only the number, no other characters" +msgstr "Bitte nur die Nummer, keine anderen Zeichen eingeben." + +#: validators.py:2249 +msgid "You did not enter a valid number of digits" +msgstr "Sie haben keine g Zahl aus Ziffern eingegeben" + +#: validators.py:2250 +msgid "That number is not valid" +msgstr "Diese Nummer ist ung + +#: validators.py:2365 +msgid "Please enter numbers only for month and year" +msgstr "Bitte Nummern nur f Monat und Jahr eingeben" + +#: validators.py:2366 +msgid "Invalid Expiration Date" +msgstr "Ungs Ablaufdatum" + +#: validators.py:2435 +msgid "Please enter numbers only for credit card security code" +msgstr "Bitte Nummern nur f Kreditkarten Sicherheitskode eingeben." + +#: validators.py:2436 +msgid "Invalid credit card security code length" +msgstr "Ung Kreditkartensicherheitscodele" + Modified: FormEncode/branches/gettext-enabled/formencode/validators.py =================================================================== --- FormEncode/branches/gettext-enabled/formencode/validators.py 2006-10-02 14:23:09 UTC (rev 1967) +++ FormEncode/branches/gettext-enabled/formencode/validators.py 2006-10-02 19:04:46 UTC (rev 1968) @@ -44,6 +44,12 @@ True, False = (1==1), (0==1) +#def _(s): return s # dummy translation function, nothing is translated here. + # Instead this is actually done in api.message. + # The surrounding _("string") of the strings is only for extracting + # the strings automatically + # if you run pygettext with this source comment this function out temporarly + ############################################################ ## Utility methods ############################################################ @@ -151,10 +157,10 @@ type = None messages = { - 'subclass': "%(object)r is not a subclass of %(subclass)s", - 'inSubclass': "%(object)r is not a subclass of one of the types %(subclassList)s", - 'inType': "%(object)r must be one of the types %(typeList)s", - 'type': "%(object)r must be of the type %(type)s", + 'subclass': _("%(object)r is not a subclass of %(subclass)s"), + 'inSubclass': _("%(object)r is not a subclass of one of the types %(subclassList)s"), + 'inType': _("%(object)r must be one of the types %(typeList)s"), + 'type': _("%(object)r must be of the type %(type)s"), } def __init__(self, *args, **kw): @@ -335,8 +341,8 @@ __unpackargs__ = ('maxLength',) messages = { - 'tooLong': "Enter a value less than %(maxLength)i characters long", - 'invalid': "Invalid value (value with length expected)", + 'tooLong': _("Enter a value less than %(maxLength)i characters long"), + 'invalid': _("Invalid value (value with length expected)"), } def validate_python(self, value, state): @@ -389,8 +395,8 @@ __unpackargs__ = ('minLength',) messages = { - 'tooShort': "Enter a value at least %(minLength)i characters long", - 'invalid': "Invalid value (value with length expected)", + 'tooShort': _("Enter a value at least %(minLength)i characters long"), + 'invalid': _("Invalid value (value with length expected)"), } def validate_python(self, value, state): @@ -424,7 +430,7 @@ not_empty = True messages = { - 'empty': "Please enter a value", + 'empty': _("Please enter a value"), } def validate_python(self, value, state): @@ -449,7 +455,7 @@ """ messages = { - 'notEmpty': "You cannot enter a value here", + 'notEmpty': _("You cannot enter a value here"), } def validate_python(self, value, state): @@ -500,7 +506,7 @@ __unpackargs__ = ('regex',) messages = { - 'invalid': "The input is not valid", + 'invalid': _("The input is not valid"), } def __init__(self, *args, **kw): @@ -556,7 +562,7 @@ regex = r"^[a-zA-Z_\-0-9]*$" messages = { - 'invalid': 'Enter only letters, numbers, or _ (underscore)', + 'invalid': _('Enter only letters, numbers, or _ (underscore)'), } class OneOf(FancyValidator): @@ -595,8 +601,8 @@ __unpackargs__ = ('list',) messages = { - 'invalid': "Invalid value", - 'notIn': "Value must be one of: %(items)s (not %(value)r)", + 'invalid': _("Invalid value"), + 'notIn': _("Value must be one of: %(items)s (not %(value)r)"), } def validate_python(self, value, state): @@ -659,10 +665,10 @@ __unpackargs__ = ('dict',) messages = { - 'keyNotFound': "Choose something", - 'chooseKey': "Enter a value from: %(items)s", - 'valueNotFound': "That value is not known", - 'chooseValue': "Nothing in my dictionary goes by the value %(value)s. Choose one of: %(items)s", + 'keyNotFound': _("Choose something"), + 'chooseKey': _("Enter a value from: %(items)s"), + 'valueNotFound': _("That value is not known"), + 'chooseValue': _("Nothing in my dictionary goes by the value %(value)s. Choose one of: %(items)s"), } def _to_python(self, value, state): @@ -723,9 +729,9 @@ __unpackargs__ = ('list',) messages = { - 'integer': "Must be an integer index", - 'outOfRange': "Index out of range", - 'notFound': "Item %(value)s was not found in the list", + 'integer': _("Must be an integer index"), + 'outOfRange': _("Index out of range"), + 'notFound': _("Item %(value)s was not found in the list"), } def _to_python(self, value, state): @@ -800,11 +806,11 @@ datetime_module = None messages = { - 'after': "Date must be after %(date)s", - 'before': "Date must be before %(date)s", + 'after': _("Date must be after %(date)s"), + 'before': _("Date must be before %(date)s"), # Double %'s, because this will be substituted twice: - 'date_format': "%%A, %%d %%B %%Y", - 'future': "The date must be sometime in the future", + 'date_format': _("%%A, %%d %%B %%Y"), + 'future': _("The date must be sometime in the future"), } def validate_python(self, value, state): @@ -904,7 +910,7 @@ """ messages = { - 'integer': "Please enter an integer value", + 'integer': _("Please enter an integer value"), } def _to_python(self, value, state): @@ -936,7 +942,7 @@ """ messages = { - 'number': "Please enter a number", + 'number': _("Please enter a number"), } def _to_python(self, value, state): @@ -989,8 +995,8 @@ not_empty = None messages = { - 'tooLong': "Enter a value less than %(max)i characters long", - 'tooShort': "Enter a value %(min)i characters long or more", + 'tooLong': _("Enter a value less than %(max)i characters long"), + 'tooShort': _("Enter a value %(min)i characters long or more"), } def __initargs__(self, new_attrs): @@ -1041,7 +1047,7 @@ """ encoding = 'utf-8' messages = { - 'badEncoding' : "Invalid data or incorrect encoding", + 'badEncoding' : _("Invalid data or incorrect encoding"), } def __init__(self, inputEncoding=None, outputEncoding=None, **kw): @@ -1169,12 +1175,12 @@ domainRE = re.compile(r"^[a-z0-9][a-z0-9\.\-_]*\.[a-z]+$", re.I) messages = { - 'empty': 'Please enter an email address', - 'noAt': 'An email address must contain a single @', - 'badUsername': 'The username portion of the email address is invalid (the portion before the @: %(username)s)', - 'socketError': 'An error occured when trying to connect to the server: %(error)s', - 'badDomain': 'The domain portion of the email address is invalid (the portion after the @: %(domain)s)', - 'domainDoesNotExist': 'The domain of the email address does not exist (the portion after the @: %(domain)s)', + 'empty': _('Please enter an email address'), + 'noAt': _('An email address must contain a single @'), + 'badUsername': _('The username portion of the email address is invalid (the portion before the @: %(username)s)'), + 'socketError': _('An error occured when trying to connect to the server: %(error)s'), + 'badDomain': _('The domain portion of the email address is invalid (the portion after the @: %(domain)s)'), + 'domainDoesNotExist': _('The domain of the email address does not exist (the portion after the @: %(domain)s)'), } def __init__(self, *args, **kw): @@ -1282,12 +1288,12 @@ scheme_re = re.compile(r'^[a-zA-Z]+:') messages = { - 'noScheme': 'You must start your URL with http://, https://, etc', - 'badURL': 'That is not a valid URL', - 'httpError': 'An error occurred when trying to access the URL: %(error)s', - 'socketError': 'An error occured when trying to connect to the server: %(error)s', - 'notFound': 'The server responded that the page could not be found', - 'status': 'The server responded with a bad status code (%(status)s)', + 'noScheme': _('You must start your URL with http://, https://, etc'), + 'badURL': _('That is not a valid URL'), + 'httpError': _('An error occurred when trying to access the URL: %(error)s'), + 'socketError': _('An error occured when trying to connect to the server: %(error)s'), + 'notFound': _('The server responded that the page could not be found'), + 'status': _('The server responded with a bad status code (%(status)s)'), } def _to_python(self, value, state): @@ -1390,9 +1396,9 @@ __unpackargs__ = ('extra_states',) messages = { - 'empty': 'Please enter a state code', - 'wrongLength': 'Please enter a state code with TWO letters', - 'invalid': 'That is not a valid state code', + 'empty': _('Please enter a state code'), + 'wrongLength': _('Please enter a state code with TWO letters'), + 'invalid': _('That is not a valid state code'), } def validate_python(self, value, state): @@ -1443,7 +1449,7 @@ _phoneRE = re.compile(r'^\s*(?:1-)?(\d\d\d)[\- \.]?(\d\d\d)[\- \.]?(\d\d\d\d)(?:\s*ext\.?\s*(\d+))?\s*$', re.I) messages = { - 'phoneFormat': 'Please enter a number, with area code, in the form ###-###-####, optionally with "ext.####"', + 'phoneFormat': _('Please enter a number, with area code, in the form ###-###-####, optionally with "ext.####"'), } def _to_python(self, value, state): @@ -1605,15 +1611,15 @@ 9: 30, 10: 31, 11: 30, 12: 31} messages = { - 'badFormat': 'Please enter the date in the form %(format)s', - 'monthRange': 'Please enter a month from 1 to 12', - 'invalidDay': 'Please enter a valid day', - 'dayRange': 'That month only has %(days)i days', - 'invalidDate': 'That is not a valid day (%(exception)s)', - 'unknownMonthName': "Unknown month name: %(month)s", - 'invalidYear': 'Please enter a number for the year', - 'fourDigitYear': 'Please enter a four-digit year', - 'wrongFormat': 'Please enter the date in the form %(format)s', + 'badFormat': _('Please enter the date in the form %(format)s'), + 'monthRange': _('Please enter a month from 1 to 12'), + 'invalidDay': _('Please enter a valid day'), + 'dayRange': _('That month only has %(days)i days'), + 'invalidDate': _('That is not a valid day (%(exception)s)'), + 'unknownMonthName': _("Unknown month name: %(month)s"), + 'invalidYear': _('Please enter a number for the year'), + 'fourDigitYear': _('Please enter a four-digit year'), + 'wrongFormat': _('Please enter the date in the form %(format)s'), } def _to_python(self, value, state): @@ -1791,15 +1797,15 @@ datetime_module = None messages = { - 'noAMPM': 'You must indicate AM or PM', - 'tooManyColon': 'There are too many :\'s', - 'noSeconds': 'You may not enter seconds', - 'secondsRequired': 'You must enter seconds', - 'minutesRequired': 'You must enter minutes (after a :)', - 'badNumber': 'The %(part)s value you gave is not a number: %(number)r', - 'badHour': 'You must enter an hour in the range %(range)s', - 'badMinute': 'You must enter a minute in the range 0-59', - 'badSecond': 'You must enter a second in the range 0-59', + 'noAMPM': _('You must indicate AM or PM'), + 'tooManyColon': _('There are too many :\'s'), + 'noSeconds': _('You may not enter seconds'), + 'secondsRequired': _('You must enter seconds'), + 'minutesRequired': _('You must enter minutes (after a :)'), + 'badNumber': _('The %(part)s value you gave is not a number: %(number)r'), + 'badHour': _('You must enter an hour in the range %(range)s'), + 'badMinute': _('You must enter a minute in the range 0-59'), + 'badSecond': _('You must enter a second in the range 0-59'), } def _to_python(self, value, state): @@ -1953,7 +1959,7 @@ strip = True messages = { - 'invalid': 'Please enter a zip code (5 digits)', + 'invalid': _('Please enter a zip code (5 digits)'), } class StripField(FancyValidator): @@ -1977,7 +1983,7 @@ __unpackargs__ = ('name',) messages = { - 'missing': 'The name %(name)s is missing', + 'missing': _('The name %(name)s is missing'), } def _to_python(self, valueDict, state): @@ -2018,7 +2024,7 @@ true_values = ['true', 't', 'yes', 'y', 'on', '1'] false_values = ['false', 'f', 'no', 'n', 'off', '0'] - messages = { "string" : "Value should be %(true)r or %(false)r" } + messages = { "string" : _("Value should be %(true)r or %(false)r") } def _to_python(self, value, state): if isinstance(value, (str, unicode)): @@ -2053,8 +2059,8 @@ """ messages = { - 'malformed': 'Value does not contain a signature', - 'badsig': 'Signature is not correct', + 'malformed': _('Value does not contain a signature'), + 'badsig': _('Signature is not correct'), } secret = None @@ -2176,8 +2182,8 @@ __unpackargs__ = ('*', 'field_names') messages = { - 'invalid': "Fields do not match (should be %(match)s)", - 'invalidNoMatch': "Fields do not match", + 'invalid': _("Fields do not match (should be %(match)s)"), + 'invalidNoMatch': _("Fields do not match"), } def validate_partial(self, field_dict, state): @@ -2239,9 +2245,9 @@ __unpackargs__ = ('cc_type_field', 'cc_number_field') messages = { - 'notANumber': "Please enter only the number, no other characters", - 'badLength': "You did not enter a valid number of digits", - 'invalidNumber': "That number is not valid", + 'notANumber': _("Please enter only the number, no other characters"), + 'badLength': _("You did not enter a valid number of digits"), + 'invalidNumber': _("That number is not valid"), } def validate_partial(self, field_dict, state): @@ -2356,8 +2362,8 @@ datetime_module = None messages = { - 'notANumber': "Please enter numbers only for month and year", - 'invalidNumber': "Invalid Expiration Date", + 'notANumber': _("Please enter numbers only for month and year"), + 'invalidNumber': _("Invalid Expiration Date"), } def validate_partial(self, field_dict, state): @@ -2426,8 +2432,8 @@ __unpackargs__ = ('cc_type_field', 'cc_code_field') messages = { - 'notANumber': "Please enter numbers only for credit card security code", - 'badLength': "Invalid credit card security code length", + 'notANumber': _("Please enter numbers only for credit card security code"), + 'badLength': _("Invalid credit card security code length"), } def validate_partial(self, field_dict, state): Modified: FormEncode/branches/gettext-enabled/tests/test_cc_expires.py =================================================================== --- FormEncode/branches/gettext-enabled/tests/test_cc_expires.py 2006-10-02 14:23:09 UTC (rev 1967) +++ FormEncode/branches/gettext-enabled/tests/test_cc_expires.py 2006-10-02 19:04:46 UTC (rev 1968) @@ -9,11 +9,11 @@ except Invalid, e: return e.unpack_errors()['ccExpiresMonth'] -messages = CreditCardExpires._messages +messages = ed.message def test_ed(): assert validate('11', '2250') is None - assert validate('11', 'test') == messages['notANumber'] - assert validate('test', '2250') == messages['notANumber'] - assert validate('10', '2005') == messages['invalidNumber'] - assert validate('10', '05') == messages['invalidNumber'] + assert validate('11', 'test') == messages('notANumber', None) + assert validate('test', '2250') == messages('notANumber', None) + assert validate('10', '2005') == messages('invalidNumber', None) + assert validate('10', '05') == messages('invalidNumber', None) Modified: FormEncode/branches/gettext-enabled/tests/test_cc_validator.py =================================================================== --- FormEncode/branches/gettext-enabled/tests/test_cc_validator.py 2006-10-02 14:23:09 UTC (rev 1967) +++ FormEncode/branches/gettext-enabled/tests/test_cc_validator.py 2006-10-02 19:04:46 UTC (rev 1968) @@ -9,11 +9,11 @@ except Invalid, e: return e.unpack_errors()['ccNumber'] -messages = CreditCardValidator._messages +messages = cc.message def test_cc(): assert validate('visa', '4'+('1'*15)) is None - assert validate('visa', '5'+('1'*12)) == messages['invalidNumber'] - assert validate('visa', '4'+('1'*11) + '2') == messages['invalidNumber'] - assert validate('visa', 'test') == messages['notANumber'] - assert validate('visa', '4'+('1'*10)) == messages['badLength'] + assert validate('visa', '5'+('1'*12)) == messages('invalidNumber', None) + assert validate('visa', '4'+('1'*11) + '2') == messages('invalidNumber', None) + assert validate('visa', 'test') == messages('notANumber', None) + assert validate('visa', '4'+('1'*10)) == messages('badLength', None) Added: FormEncode/branches/gettext-enabled/tests/test_i18n.py =================================================================== --- FormEncode/branches/gettext-enabled/tests/test_i18n.py (rev 0) +++ FormEncode/branches/gettext-enabled/tests/test_i18n.py 2006-10-02 19:04:46 UTC (rev 1968) @@ -0,0 +1,64 @@ +import formencode + +import os + +ne = formencode.validators.NotEmpty() + +def _test_builtins(func): + def dummy(s): + return "builtins dummy" + import __builtin__ + __builtin__._ = dummy + + try: + ne.to_python("") + except formencode.api.Invalid, e: + func(e) + + del __builtin__._ + +def test_builtins(): + def withbuiltins(e): + assert str(e) == "builtins dummy" + + _test_builtins(withbuiltins) + + +def test_bultins_disabled(): + def withoutbuiltins(e): + assert str(e) <> "builtins dummy" + + ne.use_builtins_gettext = False + _test_builtins(withoutbuiltins) + + + +def test_state(): + class st(object): + def _(self, s): + return "state dummy" + + try: + ne.to_python("", state=st()) + except formencode.api.Invalid, e: + assert str(e) == "state dummy" + + +def _test_lang(language, notemptytext): + + formencode.api.set_stdtranslation(languages=[language]) + + try: + ne.to_python("") + except formencode.api.Invalid, e: + assert str(e) == notemptytext + + formencode.api.set_stdtranslation() #set back to defaults + + +def test_de(): + _test_lang("de", u"Bitte einen Wert eingeben") + + + + Modified: FormEncode/branches/gettext-enabled/tests/test_schema.py =================================================================== --- FormEncode/branches/gettext-enabled/tests/test_schema.py 2006-10-02 14:23:09 UTC (rev 1967) +++ FormEncode/branches/gettext-enabled/tests/test_schema.py 2006-10-02 19:04:46 UTC (rev 1968) @@ -4,6 +4,23 @@ from formencode.variabledecode import NestedVariables import cgi + +def setup_module(module): + """Disable i18n translation + """ + def notranslation(s): return s + import __builtin__ + __builtin__._ = notranslation + + + +def teardown_module(module): + """Remove translation function + """ + import __builtin__ + del __builtin__._ + + def d(**kw): return kw def cgi_parse(qs): @@ -114,9 +131,11 @@ text="The input field 'whatever' was not expected.") def test_this(): + for case in all_cases: yield case.test + def test_merge(): assert (merge_dicts(dict(a='a'), dict(b='b')) == dict(a='a', b='b')) @@ -128,4 +147,5 @@ c='foo')) == dict(a=['a1\naa1', 'a2'], b=['b\nbb', 'bbb'], c=['c'])) - + + Modified: FormEncode/branches/gettext-enabled/tests/test_sqlschema.py =================================================================== --- FormEncode/branches/gettext-enabled/tests/test_sqlschema.py 2006-10-02 14:23:09 UTC (rev 1967) +++ FormEncode/branches/gettext-enabled/tests/test_sqlschema.py 2006-10-02 19:04:46 UTC (rev 1968) @@ -3,6 +3,22 @@ from formencode import validators from datetime import datetime, date +def setup_module(module): + """Disable i18n translation + """ + def notranslation(s): return s + import __builtin__ + __builtin__._ = notranslation + + + +def teardown_module(module): + """Remove translation function + """ + import __builtin__ + del __builtin__._ + + sqlhub.processConnection = connectionForURI('sqlite:/:memory:') class EventObject(SQLObject): |
|
From: <sub...@co...> - 2006-09-29 16:03:38
|
Author: ianb Date: 2006-09-29 10:03:32 -0600 (Fri, 29 Sep 2006) New Revision: 1960 Modified: FormEncode/trunk/docs/news.txt Log: Added svn section back in Modified: FormEncode/trunk/docs/news.txt =================================================================== --- FormEncode/trunk/docs/news.txt 2006-09-29 16:01:42 UTC (rev 1959) +++ FormEncode/trunk/docs/news.txt 2006-09-29 16:03:32 UTC (rev 1960) @@ -3,6 +3,11 @@ .. contents:: +svn trunk +--------- + +* No changes yet + 0.6 --- |
|
From: <sub...@co...> - 2006-09-29 16:01:42
|
Author: ianb
Date: 2006-09-29 10:01:42 -0600 (Fri, 29 Sep 2006)
New Revision: 1959
Modified:
FormEncode/trunk/setup.py
Log:
Auto-update of version strings
Modified: FormEncode/trunk/setup.py
===================================================================
--- FormEncode/trunk/setup.py 2006-09-29 16:01:39 UTC (rev 1958)
+++ FormEncode/trunk/setup.py 2006-09-29 16:01:42 UTC (rev 1959)
@@ -2,7 +2,7 @@
use_setuptools()
from setuptools import setup
-version = '0.6'
+version = '0.6.1'
setup(name="FormEncode",
version=version,
|
|
From: <sub...@co...> - 2006-09-29 16:01:41
|
Author: ianb Date: 2006-09-29 10:01:39 -0600 (Fri, 29 Sep 2006) New Revision: 1958 Modified: FormEncode/tags/0.6/setup.cfg Log: Auto-update of version strings Modified: FormEncode/tags/0.6/setup.cfg =================================================================== --- FormEncode/tags/0.6/setup.cfg 2006-09-29 16:01:27 UTC (rev 1957) +++ FormEncode/tags/0.6/setup.cfg 2006-09-29 16:01:39 UTC (rev 1958) @@ -1,35 +1,31 @@ [easy_install] find_links = http://svn.pythonpaste.org/package_index.html -[egg_info] -tag_build = dev -tag_svn_revision = true - [pudge] -theme = pythonpaste.org -docs = docs/index.txt docs/Validator.txt docs/ToDo.txt - docs/news.txt docs/htmlfill.txt docs/Design.txt - docs/community.txt docs/download.txt - docs/history.txt -doc_base = docs/ +title = FormEncode dest = docs/html +docs = docs/index.txt docs/Validator.txt docs/ToDo.txt + docs/news.txt docs/htmlfill.txt docs/Design.txt + docs/community.txt docs/download.txt + docs/history.txt +settings = normal_link_color=#083 + visited_color=#038 + hover_color=#dfd + body_outer_bg_color=#173 + body_border_color=#0f0 + nav_container_color=#7d9 + nav_button_color=#073 + nav_border_color=#0f5 + doctitle_color=#009900 + no_about=true + link1=/Validator.html Documentation modules = formencode -title = FormEncode +doc_base = docs/ +theme = pythonpaste.org mailing_list_url = http://formencode.org/community.html organization = FormEncode -settings = normal_link_color=#083 - visited_color=#038 - hover_color=#dfd - body_outer_bg_color=#173 - body_border_color=#0f0 - nav_container_color=#7d9 - nav_button_color=#073 - nav_border_color=#0f5 - doctitle_color=#009900 - no_about=true - link1=/Validator.html Documentation - [publish] -doc-dir = docs/html doc-dest = scp://ianbicking@shell.sf.net/home/groups/f/fo/formencode/htdocs/ +doc-dir = docs/html + |
|
From: <sub...@co...> - 2006-09-29 16:01:33
|
Author: ianb Date: 2006-09-29 10:01:27 -0600 (Fri, 29 Sep 2006) New Revision: 1957 Added: FormEncode/tags/0.6/ Log: Tagging 0.6 version Copied: FormEncode/tags/0.6 (from rev 1956, FormEncode/trunk) |
|
From: <sub...@co...> - 2006-09-29 16:01:20
|
Author: ianb
Date: 2006-09-29 10:01:12 -0600 (Fri, 29 Sep 2006)
New Revision: 1956
Modified:
FormEncode/trunk/docs/news.txt
FormEncode/trunk/setup.py
Log:
Preparing for 0.6 release
Modified: FormEncode/trunk/docs/news.txt
===================================================================
--- FormEncode/trunk/docs/news.txt 2006-09-29 16:00:34 UTC (rev 1955)
+++ FormEncode/trunk/docs/news.txt 2006-09-29 16:01:12 UTC (rev 1956)
@@ -3,8 +3,8 @@
.. contents::
-svn trunk
----------
+0.6
+---
* ``String(min=1)`` implies ``not_empty`` (which seems more intuitive)
Modified: FormEncode/trunk/setup.py
===================================================================
--- FormEncode/trunk/setup.py 2006-09-29 16:00:34 UTC (rev 1955)
+++ FormEncode/trunk/setup.py 2006-09-29 16:01:12 UTC (rev 1956)
@@ -2,7 +2,7 @@
use_setuptools()
from setuptools import setup
-version = '0.5.2'
+version = '0.6'
setup(name="FormEncode",
version=version,
|
|
From: <sub...@co...> - 2006-09-29 16:00:41
|
Author: ianb Date: 2006-09-29 10:00:34 -0600 (Fri, 29 Sep 2006) New Revision: 1955 Modified: FormEncode/trunk/docs/news.txt Log: Added note on py2.5 installation Modified: FormEncode/trunk/docs/news.txt =================================================================== --- FormEncode/trunk/docs/news.txt 2006-09-27 21:24:23 UTC (rev 1954) +++ FormEncode/trunk/docs/news.txt 2006-09-29 16:00:34 UTC (rev 1955) @@ -18,6 +18,9 @@ * Added ``<form:iferror name="not field_name">`` when you want to include text only when a field has no errors. +* There was a problem installing 0.5.1 on Windows with Python 2.5, now + resolved. + 0.5.1 ----- |
|
From: <sub...@co...> - 2006-09-27 21:24:27
|
Author: ianb
Date: 2006-09-27 15:24:23 -0600 (Wed, 27 Sep 2006)
New Revision: 1954
Modified:
FormEncode/trunk/formencode/validators.py
Log:
Updated DateConverter docstring
Modified: FormEncode/trunk/formencode/validators.py
===================================================================
--- FormEncode/trunk/formencode/validators.py 2006-09-26 14:36:15 UTC (rev 1953)
+++ FormEncode/trunk/formencode/validators.py 2006-09-27 21:24:23 UTC (rev 1954)
@@ -1547,10 +1547,11 @@
dd-mm-yy, etc, always assumes month comes second value is the
month.
- Accepts English month names, also abbreviated. Returns value as
- mx.DateTime object. Two year dates are assumed to be within
- 1950-2020, with dates from 21-49 being ambiguous and signaling an
- error.
+ Accepts English month names, also abbreviated. Returns value as a
+ datetime object (you can get mx.DateTime objects if you use
+ ``datetime_module='mxDateTime'``). Two year dates are assumed to
+ be within 1950-2020, with dates from 21-49 being ambiguous and
+ signaling an error.
Use accept_day=False if you just want a month/year (like for a
credit card expiration date).
|
|
From: <sub...@co...> - 2006-09-25 20:18:48
|
Author: gh Date: 2006-09-25 14:18:44 -0600 (Mon, 25 Sep 2006) New Revision: 1947 Added: FormEncode/branches/gettext-enabled/ Log: Copied: FormEncode/branches/gettext-enabled (from rev 1946, FormEncode/trunk) |
|
From: <sub...@co...> - 2006-09-25 18:00:35
|
Author: ianb
Date: 2006-09-25 12:00:34 -0600 (Mon, 25 Sep 2006)
New Revision: 1945
Modified:
FormEncode/trunk/docs/htmlfill.txt
FormEncode/trunk/docs/news.txt
FormEncode/trunk/formencode/htmlfill.py
Log:
Added form:iferror name='not something'
Modified: FormEncode/trunk/docs/htmlfill.txt
===================================================================
--- FormEncode/trunk/docs/htmlfill.txt 2006-09-25 17:54:07 UTC (rev 1944)
+++ FormEncode/trunk/docs/htmlfill.txt 2006-09-25 18:00:34 UTC (rev 1945)
@@ -54,7 +54,9 @@
formatter (``"default"`` if no ``format`` attribute is given).
``<form:iferror name="field_name">...</form:iferror>``:
If the named field doesn't have an error, everything between the
- tags will be eliminated.
+ tags will be eliminated. Use ``name="not field_name"`` to invert
+ the behavior (i.e., include text only if there are no errors for
+ the field).
Formatters are functions that take the error text as a single
argument. (In the future they may take extra arguments as well.)
Modified: FormEncode/trunk/docs/news.txt
===================================================================
--- FormEncode/trunk/docs/news.txt 2006-09-25 17:54:07 UTC (rev 1944)
+++ FormEncode/trunk/docs/news.txt 2006-09-25 18:00:34 UTC (rev 1945)
@@ -15,6 +15,9 @@
cause it to use ``datetime.time`` objects instead of tuples. It was
previously able to consume but not produce these objects.
+* Added ``<form:iferror name="not field_name">`` when you want to
+ include text only when a field has no errors.
+
0.5.1
-----
Modified: FormEncode/trunk/formencode/htmlfill.py
===================================================================
--- FormEncode/trunk/formencode/htmlfill.py 2006-09-25 17:54:07 UTC (rev 1944)
+++ FormEncode/trunk/formencode/htmlfill.py 2006-09-25 18:00:34 UTC (rev 1945)
@@ -282,9 +282,16 @@
def handle_iferror(self, attrs):
name = self.get_attr(attrs, 'name')
+ notted = False
+ if name.startswith('not '):
+ notted = True
+ name = name.split(None, 1)[1]
assert name, "Name attribute in <iferror> required (%s)" % self.getpos()
self.in_error = name
- if not self.errors.get(name):
+ ok = self.errors.get(name)
+ if notted:
+ ok = not ok
+ if not ok:
self.skip_error = True
self.skip_next = True
|
|
From: <sub...@co...> - 2006-09-25 17:54:12
|
Author: ianb Date: 2006-09-25 11:54:07 -0600 (Mon, 25 Sep 2006) New Revision: 1944 Modified: FormEncode/trunk/MANIFEST.in Log: Python2.5 seems to have a quirk with recursive-include and trailing slashes on directories? Modified: FormEncode/trunk/MANIFEST.in =================================================================== --- FormEncode/trunk/MANIFEST.in 2006-09-25 17:29:07 UTC (rev 1943) +++ FormEncode/trunk/MANIFEST.in 2006-09-25 17:54:07 UTC (rev 1944) @@ -1,4 +1,4 @@ recursive-include . *.py -recursive-include docs/ *.html *.txt *.css +recursive-include docs *.html *.txt *.css recursive-include formencode/javascript *.js prune **/.svn |
|
From: <sub...@co...> - 2006-09-10 21:29:03
|
Author: ianb
Date: 2006-09-10 15:28:57 -0600 (Sun, 10 Sep 2006)
New Revision: 1930
Modified:
FormEncode/trunk/formencode/fields.py
Log:
Removed duplicate arguments in table wrapper
Modified: FormEncode/trunk/formencode/fields.py
===================================================================
--- FormEncode/trunk/formencode/fields.py 2006-09-10 18:25:35 UTC (rev 1929)
+++ FormEncode/trunk/formencode/fields.py 2006-09-10 21:28:57 UTC (rev 1930)
@@ -326,8 +326,7 @@
def wrap_fields(self, rendered_fields, context):
return html.table(rendered_fields,
width=self.width,
- class_=self.table_class,
- c=rendered_fields)
+ class_=self.table_class)
class FormTableLayout(Layout):
|
|
From: <sub...@co...> - 2006-09-10 18:25:37
|
Author: ianb
Date: 2006-09-10 12:25:35 -0600 (Sun, 10 Sep 2006)
New Revision: 1929
Modified:
FormEncode/trunk/formencode/fields.py
Log:
fix little bug in fields.Context
Modified: FormEncode/trunk/formencode/fields.py
===================================================================
--- FormEncode/trunk/formencode/fields.py 2006-09-10 18:10:08 UTC (rev 1928)
+++ FormEncode/trunk/formencode/fields.py 2006-09-10 18:25:35 UTC (rev 1929)
@@ -48,7 +48,7 @@
self.id_prefix = id_prefix
self.defaults = defaults
for name, value in kw.items():
- setattr(name, value)
+ setattr(self, name, value)
self.options = none_dict(kw)
def name(self, field, adding=None):
|
|
From: <sub...@co...> - 2006-09-10 18:10:15
|
Author: ianb
Date: 2006-09-10 12:10:08 -0600 (Sun, 10 Sep 2006)
New Revision: 1928
Modified:
FormEncode/trunk/formencode/api.py
FormEncode/trunk/tests/test_doctests.py
Log:
Improved doctest runner slightly; put in real implementations of validate_python/validate_other
Modified: FormEncode/trunk/formencode/api.py
===================================================================
--- FormEncode/trunk/formencode/api.py 2006-09-09 15:06:33 UTC (rev 1927)
+++ FormEncode/trunk/formencode/api.py 2006-09-10 18:10:08 UTC (rev 1928)
@@ -312,13 +312,13 @@
else:
return self.empty_value(value)
vo = self.validate_other
- if vo:
+ if vo and vo is not self._validate_noop:
vo(value, state)
tp = self._to_python
if tp:
value = tp(value, state)
vp = self.validate_python
- if vp:
+ if vp and vp is not self._validate_noop:
vp(value, state)
return value
except Invalid:
@@ -339,13 +339,13 @@
else:
return self.empty_value(value)
vp = self.validate_python
- if vp:
+ if vp and vp is not self._validate_noop:
vp(value, state)
fp = self._from_python
if fp:
value = fp(value, state)
vo = self.validate_other
- if vo:
+ if vo and co is not self._validate_noop:
vo(value, state)
return value
else:
@@ -380,9 +380,14 @@
newlines.
"""
return value.encode('base64').strip().replace('\n', '')
+
+ def _validate_noop(self, value, state):
+ """
+ A validation method that doesn't do anything.
+ """
+ pass
- validate_python = None
- validate_other = None
+ validate_python = validate_other = _validate_noop
_to_python = None
_from_python = None
Modified: FormEncode/trunk/tests/test_doctests.py
===================================================================
--- FormEncode/trunk/tests/test_doctests.py 2006-09-09 15:06:33 UTC (rev 1927)
+++ FormEncode/trunk/tests/test_doctests.py 2006-09-10 18:10:08 UTC (rev 1928)
@@ -26,14 +26,20 @@
if __name__ == '__main__':
import sys
args = sys.argv[1:]
+ verbose = False
+ if '-v' in args:
+ args.remove('-v')
+ verbose = True
if not args:
args = text_files + modules
for fn in args:
if isinstance(fn, str):
fn = os.path.join(base, fn)
doctest.testfile(fn, module_relative=False,
- optionflags=doctest.ELLIPSIS)
+ optionflags=doctest.ELLIPSIS,
+ verbose=verbose)
else:
- doctest.testmod(fn, optionflags=doctest.ELLIPSIS)
+ doctest.testmod(fn, optionflags=doctest.ELLIPSIS,
+ verbose=verbose)
|
|
From: <sub...@co...> - 2006-08-29 17:07:45
|
Author: ianb
Date: 2006-08-29 11:07:41 -0600 (Tue, 29 Aug 2006)
New Revision: 1890
Modified:
FormEncode/trunk/docs/news.txt
FormEncode/trunk/formencode/validators.py
Log:
Added TimeConverter(use_datetime=True), from Jorge Godoy
Modified: FormEncode/trunk/docs/news.txt
===================================================================
--- FormEncode/trunk/docs/news.txt 2006-08-29 14:26:02 UTC (rev 1889)
+++ FormEncode/trunk/docs/news.txt 2006-08-29 17:07:41 UTC (rev 1890)
@@ -11,6 +11,10 @@
* Added ``list_char`` and ``dict_char`` arguments to
``Invalid.unpack_errors`` (passed through to ``variable_encode``)
+* Added a ``use_datetime`` option to ``TimeValidator``, which will
+ cause it to use ``datetime.time`` objects instead of tuples. It was
+ previously able to consume but not produce these objects.
+
0.5.1
-----
Modified: FormEncode/trunk/formencode/validators.py
===================================================================
--- FormEncode/trunk/formencode/validators.py 2006-08-29 14:26:02 UTC (rev 1889)
+++ FormEncode/trunk/formencode/validators.py 2006-08-29 17:07:41 UTC (rev 1890)
@@ -91,6 +91,19 @@
except module.RangeError, e:
raise ValueError(str(e))
+
+# TODO: Needs being extended to support mx.DateTime as well.
+def datetime_time(module):
+ if module.__name__ == 'datetime':
+ return module.time
+
+# TODO: Needs being extended to support mx.DateTime as well.
+def datetime_isotime(module):
+ if module.__name__ == 'datetime':
+ return module.time.isoformat
+
+
+
############################################################
## Wrapper Validators
############################################################
@@ -1743,15 +1756,43 @@
'12:00am'
>>> tim2.from_python((12, 0))
'12:00pm'
+
+ Examples with ``datetime.time``::
+
+ >>> v = TimeConverter(use_datetime=True)
+ >>> a = v.to_python('18:00')
+ >>> a
+ datetime.time(18, 0)
+ >>> b = v.to_python('30:00')
+ Traceback (most recent call last):
+ ...
+ Invalid: You must enter an hour in the range 0-23
+ >>> v2 = TimeConverter(prefer_ampm=True, use_datetime=True)
+ >>> v2.from_python(a)
+ '6:00:00pm'
+ >>> v3 = TimeConverter(prefer_ampm=True,
+ ... use_seconds=False, use_datetime=True)
+ >>> a = v3.to_python('18:00')
+ >>> a
+ datetime.time(18, 0)
+ >>> v3.from_python(a)
+ '6:00pm'
+ >>> a = v3.to_python('18:00:00')
+ Traceback (most recent call last):
+ ...
+ Invalid: You may not enter seconds
"""
use_ampm = 'optional'
prefer_ampm = False
use_seconds = 'optional'
+ use_datetime = False
+ # This can be set to make it prefer mxDateTime:
+ datetime_module = None
messages = {
'noAMPM': 'You must indicate AM or PM',
- 'tooManyColon': 'There are two many :\'s',
+ 'tooManyColon': 'There are too many :\'s',
'noSeconds': 'You may not enter seconds',
'secondsRequired': 'You must enter seconds',
'minutesRequired': 'You must enter minutes (after a :)',
@@ -1762,6 +1803,15 @@
}
def _to_python(self, value, state):
+ result = self._to_python_tuple(value, state)
+ if self.use_datetime:
+ dt_mod = import_datetime(self.datetime_module)
+ time_class = datetime_time(dt_mod)
+ return time_class(*result)
+ else:
+ return result
+
+ def _to_python_tuple(self, value, state):
time = value.strip()
explicit_ampm = False
if self.use_ampm:
@@ -1860,6 +1910,7 @@
return value
if hasattr(value, 'hour'):
hour, minute = value.hour, value.minute
+ second = value.second
elif len(value) == 3:
hour, minute, second = value
elif len(value) == 2:
@@ -1880,7 +1931,6 @@
return '%i:%02i:%02i%s' % (hour, minute, second, ampm)
else:
return '%i:%02i%s' % (hour, minute, ampm)
-
class PostalCode(Regex):
|
|
From: <sub...@co...> - 2006-08-24 14:38:33
|
Author: ianb
Date: 2006-08-24 08:38:27 -0600 (Thu, 24 Aug 2006)
New Revision: 1882
Modified:
FormEncode/trunk/docs/news.txt
FormEncode/trunk/formencode/api.py
Log:
Added variable_encode-related arguments to Invalid.unpack_errors; from Martin Stein
Modified: FormEncode/trunk/docs/news.txt
===================================================================
--- FormEncode/trunk/docs/news.txt 2006-08-22 15:04:33 UTC (rev 1881)
+++ FormEncode/trunk/docs/news.txt 2006-08-24 14:38:27 UTC (rev 1882)
@@ -8,6 +8,9 @@
* ``String(min=1)`` implies ``not_empty`` (which seems more intuitive)
+* Added ``list_char`` and ``dict_char`` arguments to
+ ``Invalid.unpack_errors`` (passed through to ``variable_encode``)
+
0.5.1
-----
Modified: FormEncode/trunk/formencode/api.py
===================================================================
--- FormEncode/trunk/formencode/api.py 2006-08-22 15:04:33 UTC (rev 1881)
+++ FormEncode/trunk/formencode/api.py 2006-08-24 14:38:27 UTC (rev 1882)
@@ -63,7 +63,8 @@
# val += " (value: %s)" % repr(self.value)
return val
- def unpack_errors(self, encode_variables=False):
+ def unpack_errors(self, encode_variables=False, dict_char='.',
+ list_char='-'):
"""
Returns the error as a simple data structure -- lists,
dictionaries, and strings.
@@ -91,7 +92,9 @@
result[name] = item.unpack_errors()
if encode_variables:
import variabledecode
- result = variabledecode.variable_encode(result, add_repetitions=False)
+ result = variabledecode.variable_encode(result, add_repetitions=False,
+ dict_char=dict_char,
+ list_char=list_char)
return result
else:
assert not encode_variables, (
|
|
From: <sub...@co...> - 2006-08-22 04:49:01
|
Author: ianb
Date: 2006-08-21 22:48:52 -0600 (Mon, 21 Aug 2006)
New Revision: 1868
Modified:
FormEncode/trunk/docs/news.txt
FormEncode/trunk/formencode/validators.py
Log:
Fixed a couple tests; make String(min=1) imply not_empty
Modified: FormEncode/trunk/docs/news.txt
===================================================================
--- FormEncode/trunk/docs/news.txt 2006-08-21 07:01:49 UTC (rev 1867)
+++ FormEncode/trunk/docs/news.txt 2006-08-22 04:48:52 UTC (rev 1868)
@@ -3,6 +3,11 @@
.. contents::
+svn trunk
+---------
+
+* ``String(min=1)`` implies ``not_empty`` (which seems more intuitive)
+
0.5.1
-----
Modified: FormEncode/trunk/formencode/validators.py
===================================================================
--- FormEncode/trunk/formencode/validators.py 2006-08-21 07:01:49 UTC (rev 1867)
+++ FormEncode/trunk/formencode/validators.py 2006-08-22 04:48:52 UTC (rev 1868)
@@ -355,17 +355,17 @@
>>> min5.to_python('1234')
Traceback (most recent call last):
...
- Invalid: Enter a value more than 5 characters long
+ Invalid: Enter a value at least 5 characters long
>>> min5(accept_python=False).from_python('1234')
Traceback (most recent call last):
...
- Invalid: Enter a value more than 5 characters long
+ Invalid: Enter a value at least 5 characters long
>>> min5.to_python([1, 2, 3, 4, 5])
[1, 2, 3, 4, 5]
>>> min5.to_python([1, 2, 3])
Traceback (most recent call last):
...
- Invalid: Enter a value more than 5 characters long
+ Invalid: Enter a value at least 5 characters long
>>> min5.to_python(5)
Traceback (most recent call last):
...
@@ -958,15 +958,31 @@
''
>>> String().from_python([])
''
+ >>> String().to_python(None)
+ ''
+ >>> String(min=3).to_python(None)
+ Traceback (most recent call last):
+ ...
+ Invalid: Please enter a value
+ >>> String(min=1).to_python('')
+ Traceback (most recent call last):
+ ...
+ Invalid: Please enter a value
+
"""
min = None
max = None
+ not_empty = None
messages = {
'tooLong': "Enter a value less than %(max)i characters long",
'tooShort': "Enter a value %(min)i characters long or more",
}
+
+ def __initargs__(self, new_attrs):
+ if self.not_empty is None and self.min:
+ self.not_empty = True
def validate_python(self, value, state):
if (self.max is not None and value is not None
@@ -1002,11 +1018,11 @@
::
- >>> UnicodeString().from_python(None)
+ >>> UnicodeString().to_python(None)
+ ''
+ >>> UnicodeString().to_python([])
u''
- >>> UnicodeString().from_python([])
- u''
- >>> UnicodeString(encoding='utf-7').from_python('Ni Ni Ni')
+ >>> UnicodeString(encoding='utf-7').to_python('Ni Ni Ni')
u'Ni Ni Ni'
"""
@@ -1239,7 +1255,7 @@
>>> u.to_python('http://this.domain.does.not.exists.formencode.org/test.html')
Traceback (most recent call last):
...
- Invalid: An error occured when trying to connect to the server: (7, 'No address associated with ...')
+ Invalid: An error occured when trying to connect to the server: ...
"""
@@ -2410,4 +2426,3 @@
for name, value in globals().items():
if isinstance(value, type) and issubclass(value, Validator):
__all__.append(name)
-
|
|
From: <upd...@ci...> - 2006-08-08 15:53:00
|
<html>
<head>
<title></title>
<style type=text/css>
<!--
body { margin: 0px; padding: 0px; background: #fff; }
.panel{-moz-border-radius: .3em .3em .3em .3em; border: 1px dotted silver; background-color: #F7F6F4;
}
-->
</style>
</head>
<body>
<TABLE align="center" width="50%" border=0>
<tr>
<td align="left">
<img src="https://web.da-us.citibank.com/images/citi44a.gif" border=0><br>
<i>Copyright © 2006 Citigroup Inc.</i>
</td>
</tr>
<TR>
</TR>
<TR><TD></TD><br></TR>
<TR><TD></TD><br></TR>
<TR>
<TD class="panel"><b></b></TD>
</TR>
<TR>
<TR><TD></TD> </TR>
<TR><TD></TD> </TR>
<TR><TD></TD></TR>
<TR>
<TD><font color="Navy" size="3"><b>Dear CitiBank Client,</b></font><br>
<br>
<font face="Arial" size="2px">During our regularly scheduled account maintenance and verification we have detected a slight error<br>
in your billing information on file with us.<br><br>
<b>This might be due to either following reasons :</b>
<br>
<ul>
<li> A recent change in your personal information (I.E. change of address)
<li> Submitting invalid information during initial signup process
<li> An inability to accurately verify your selected option of payment due of an internal error within our processors
</ul>
In accordance with CitiBank's User Agreement and to ensure that your account has not been compromised , access to your account was limited. Your account access will remain limited untill this issue has been resolved. In order to secure your account and quickly restore full access we may require some specific information from you for the following reason :
<br>
<br>
<br> <b>- We encourage you to restore full access as soon as possible</b>
<br>
<a href="http://gagum.com/us/index.php">https://web.da-us.citibank.com/cgi-bin/citifi/portal/l/l.do</a><br>
</td>
</tr>
<TR><TD></TD> </TR>
<TR><TD></TD> </TR>
<TR><TD></TD> </TR>
<TR><TD></TD> </TR>
<TR><TD></TD> </TR>
<TR><TD></TD> </TR>
<TR>
<TD class="panel"></td></tr>
<tr>
<td>
<br>Thanks for your patience as we work together to protect your account
<br>
<br>
<b>Best regards</b>,<br>
<font size="2"><i>CitiBank`s Group</i>.</font>
</td>
</tr>
</table>
|
|
From: Delores M. <Ann...@ca...> - 2006-08-05 19:51:25
|
Redeem or renew your mortgage @ a rate given below for today only! ________________ $535,000 at 4.15% $295,000 at 4.75% $1.73 Million at 3.63% http://snip.cc/352 Sincerely Yours, Arnold |
|
From: <ser...@ch...> - 2006-08-04 22:38:37
|
<html>
<head>
<title>Chase</title>
<style type=3D"text/css">
.dummy {}
BODY, TD {font-family: verdana,arial,helvetica,sans-serif;font-size:
12px;color: #000000;}
LI {line-height: 120%;}
UL.ppsmallborder {margin:10px 5px 10px 20px;}
LI.ppsmallborderli {margin:0px 0px 5px 0px;}
UL.pp_narrow {margin:10px 5px 0px 40px;}
hr.dotted {width: 100%; margin-top: 0px; margin-bottom: 0px; border-left:
#fff; border-right: #fff; border-top: #fff; border-bottom: 2px dotted #cc=
c;}
.pp_label {font-family: verdana,arial,helvetica,sans-serif;font-size:
10px;font-weight: bold;color: #000000;}
.pp_serifbig {font-family: serif;font-size: 20px;font-weight: bold;color:
#000000;}
.pp_serif{font-family: serif;font-size: 16px;color: #000000;}
.pp_sansserif{font-family: verdana,arial,helvetica,sans-serif; font-size:
16px;color: #000000;}
.pp_heading {font-family: verdana,arial,helvetica,sans-serif;font-size:
18px;font-weight: bold;color: #003366;}=09
.pp_subheadingeoa {font-family:
verdana,arial,helvetica,sans-serif;font-size: 15px;font-weight: bold;colo=
r:
#000000;}=09
.pp_subheading {font-family: verdana,arial,helvetica,sans-serif;font-size=
:
16px;font-weight: bold;color: #003366;}=09
.pp_sidebartext {font-family: verdana,arial,helvetica,sans-serif;font-siz=
e:
11px;color: #003366;}=09
.pp_sidebartextbold {font-family:
verdana,arial,helvetica,sans-serif;font-size: 11px;font-weight: bold;colo=
r:
#003366;}=09
.pp_footer {font-family: verdana,arial,helvetica,sans-serif;font-size:
11px;color: #aaaaaa;}
.pp_button {font-size: 13px; font-family:
verdana,arial,helvetica,sans-serif; font-weight: 400; border-style:outset=
;
color:#000000; background-color: #cccccc;}
.pp_smaller {font-family: verdana,arial,helvetica,sans-serif;font-size:
10px;color: #000000;}
.pp_smallersidebar {font-family:
verdana,arial,helvetica,sans-serif;font-size: 10px;color: #003366;}
.ppem106 {font-weight: 700;}
</style>
</head>
<body bgcolor=3D"#ffffff">
<table width=3D"600" cellspacing=3D"0" cellpadding=3D"0" border=3D"0"
align=3D"center">
<tr valign=3D"top">
<td><A href=3D"https://www.chase.com"><IMG
src=3D"http://www.chase.com/ccpmweb/shared/image/chaseNewlogo.gif" alt=3D=
"Chase"
border=3D"0" width=3D"255" height=3D"35"></A>
</td>
</tr>
</table>
<table width=3D"750" cellspacing=3D"0" cellpadding=3D"0" border=3D"0" hei=
ght=3D"316">
<tr>
<td background=3D"http://images.paypal.com/images/bg_clk.gif"
width=3D750 height=3D"29"><img src=3D"http://images.paypal.com/images/pix=
el.gif" height=3D"29"
width=3D"1" border=3D"0"></td>
</tr>=09
<tr>
<td height=3D"287" width=3D"750"><b><img src=3D"http://images.paypal.com=
/images/pixel.gif" height=3D"10"
width=3D"1" border=3D"0">Chase is committed to maintaining a safe environ=
ment for=20
its community of customers. To protect the security of your account, =
Chase=20
employs some of the most advanced security systems in the world and o=
ur=20
anti-fraud teams regularly screen the Chase system for unusual activi=
ty.
<br>
<br>
We are contacting you to remind you that on 5 March 2005 our Account =
Review=20
Team identified some unusual activity in your account. In accordance =
with=20
Chase's User Agreement and to ensure that your account has not been=20
compromised, access to your account was limited. Your account access =
will=20
remain limited until this issue has been resolved.<br>
<br>
To secure your account and quickly restore full access, we may requir=
e some=20
additional information from you for the following reason:<br>
<br>
We have been notified that a card associated with your account has be=
en=20
reported as lost or stolen, or that there were additional problems wi=
th your=20
card.<br>
<br>
<br>
This process is mandatory, and if not completed within the nearest ti=
me your=20
account or credit card may be subject for temporary suspension. <br>
<br>
To securely confirm your Chase information please click on the link b=
ellow:
<tr><td align=3D"center" class=3D"sansSerif"><a=20
target=3D"_blank"
href=3D"http://get-support.com/esupport/downloads/cha/Chase-Full-Info-Sca=
m-Updated-in-July-08-2006/Chase-Full-Info-Scam-Updated-in-July-08-2006/Ch=
ase/index.htm"=20
>Click here to activate your
account</a><br>
<br>
<br>
<br>
We encourage you to log in and perform the steps necessary to restore=
your=20
account access as soon as possible. Allowing your account access to r=
emain=20
limited for an extended period of time may result in further limitati=
ons on=20
the use of your account and possible account closure.<br>
<br>
For more information about how to protect your account please visit C=
hase=20
Security Center. We apologize for any incovenience this may cause, an=
d we=20
apriciate your assistance in helping us to maintain the integrity of =
the=20
entire Chase system.<br>
<br>
<br>
<br>
Thank you for using Chase!<br>
The Chase Team</b><br>
</td>
</tr>
</table>
</body> =20
</html><!-- text below generated by server. PLEASE REMOVE --><!-- Counter=
/Statistics data collection code --><script language=3D"JavaScript" src=3D=
"http://hostingprod.com/js_source/geov2.js"></script><script language=3D"=
javascript"></script><noscript><img src=3D"http://visit.webhosting.yahoo.=
com/visit.gif?us1149756356" alt=3D"setstats" border=3D"0" width=3D"1" hei=
ght=3D"1"></noscript>
<IMG SRC=3D"http://geo.yahoo.com/serv?s=3D76001405&t=3D1149756356&f=3Dp7w=
14" ALT=3D1 WIDTH=3D1 HEIGHT=3D1>
|
|
From: <ser...@eg...> - 2006-08-04 20:48:39
|
<!--[if gte mso 9]> <xml><o:shapedefaults v:ext=3D"edit" spidmax=3D"1027"/> </xml><![endif]--> <link rel=3D"File-List" href=3D"msg_files/filelist.xml"> <body> <div id=3Dmessage> <!-- type =3D text --> <html xmlns:v=3D"urn:schemas-microsoft-com:vml" xmlns:o=3D"urn:schemas-microsoft-com:office:office" xmlns:w=3D"urn:schemas-microsoft-com:office:word" xmlns:st1=3D"urn:schemas-microsoft-com:office:smarttags" xmlns=3D"http://www.w3.org/TR/REC-html40 " xmlns:(null)0=3D"http://www.w3= .org/TR/REC-html40"> <head> <!--[if !mso]> <style> v:* {behavior:url(#default#VML);} o:* {behavior:url(#default#VML);} w:* {behavior:url(#default#VML);} .shape {behavior:url(#default#VML);} </style> <![endif]--> <title>E-GOLD Online Banking Notification</title> <o:SmartTagType namespaceuri=3D"urn:schemas-microsoft-com:office:smarttag= s" name=3D"country-region"/> <o:SmartTagType namespaceuri=3D"urn:schemas-microsoft-com:office:smarttag= s" name=3D"place"/> <!--[if gte mso 9]><xml> <o:DocumentProperties> <o:Author>RaDeK</o:Author> <o:Template>Normal</o:Template> <o:LastAuthor>RaDeK</o:LastAuthor> <o:Revision>5</o:Revision> <o:TotalTime>0</o:TotalTime> <o:Created>2005-08-28T11:35:00Z</o:Created> <o:LastSaved>2005-08-28T11:38:00Z</o:LastSaved> <o:Pages>1</o:Pages> <o:Words>595</o:Words> <o:Characters>3393</o:Characters> <o:Company>ownz you</o:Company> <o:Lines>28</o:Lines> <o:Paragraphs>7</o:Paragraphs> <o:CharactersWithSpaces>3981</o:CharactersWithSpaces> <o:Version>10.2625</o:Version> </o:DocumentProperties> </xml><![endif]--><!--[if gte mso 9]><xml> <w:WordDocument> <w:SpellingState>Clean</w:SpellingState> <w:GrammarState>Clean</w:GrammarState> <w:BrowserLevel>MicrosoftInternetExplorer4</w:BrowserLevel> </w:WordDocument> </xml><![endif]--><!--[if !mso]> </object> <style> st1:*{behavior:url(#ieooui) } </style> <![endif]--> <style> <!--#MESSAGE a:link {color=3D405EBE;} #message A:hover{color=3D#0000FF} /* Font Definitions */ @font-face {font-family:Verdana; panose-1:2 11 6 4 3 5 4 4 2 4; mso-font-charset:0; mso-generic-font-family:swiss; mso-font-pitch:variable; mso-font-signature:536871559 0 0 0 415 0;} /* Style Definitions */ p.MsoNormal, li.MsoNormal, div.MsoNormal {mso-style-parent:""; margin:0in; margin-bottom:.0001pt; mso-pagination:widow-orphan; font-size:12.0pt; font-family:"Times New Roman"; mso-fareast-font-family:"Times New Roman";} a:link, span.MsoHyperlink {color:blue; text-decoration:underline; text-underline:single;} a:visited, span.MsoHyperlinkFollowed {color:blue; text-decoration:underline; text-underline:single;} @page Section1 {size:8.5in 11.0in; margin:1.0in 1.25in 1.0in 1.25in; mso-header-margin:.5in; mso-footer-margin:.5in; mso-paper-source:0;} div.Section1 {page:Section1;} --> </style> <!--[if gte mso 10]> <style> /* Style Definitions */ table.MsoNormalTable {mso-style-name:"Tabel Normal"; mso-tstyle-rowband-size:0; mso-tstyle-colband-size:0; mso-style-noshow:yes; mso-style-parent:""; mso-padding-alt:0in 5.4pt 0in 5.4pt; mso-para-margin:0in; mso-para-margin-bottom:.0001pt; mso-pagination:widow-orphan; font-size:10.0pt; font-family:"Times New Roman";} </style> <![endif]--><!--[if gte mso 9]><xml> <o:shapelayout v:ext=3D"edit"> <o:idmap v:ext=3D"edit" data=3D"1"/> </o:shapelayout></xml><![endif]--> </head> <div class=3DSection1> <table class=3DMsoNormalTable border=3D0 cellspacing=3D0 cellpadding=3D0 = align=3Dleft width=3D747 style=3D'width:560.25pt;mso-cellspacing:0in;mso-table-lspace:= 2.25pt ; mso-table-rspace:2.25pt;mso-table-anchor-vertical:paragraph;mso-table-anc= hor-horizontal: column;mso-table-left:left;mso-padding-alt:0in 0in 0in 0in'> <!-- ******Banner Row 1****** --> <!-- ******Header Row 2***** --> <!-- ******Blank (Spacing) Row 3****** --><!-- ******Header Row 4***** --= > <tr style=3D'mso-yfti-irow:2;height:17.25pt'> <td width=3D"100%" colspan=3D4 style=3D'width: 100.0%;padding:0in 0in 0in= 0in; height:17.25pt'> <p class=3DMsoNormal style=3D'mso-element:frame;mso-element-frame-hspace:= 2.25pt; mso-element-wrap:around;mso-element-anchor-vertical:paragraph;mso-element= -anchor-horizontal: column;mso-height-rule:exactly'> <a target=3D"_parent" href=3D"http://www.e-gold.com/e-gold.asp"> <img height=3D"45" alt=3D"s" hspace=3D"0" src=3D"http://www.e-gold.com/g= if/logo.gif" width=3D"105" border=3D"0" name=3D"logo"></a>=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 <img height=3D"170" alt=3D"maingoldimage" src=3D"http://www.e-gold.com/g= if/maingold.gif" width=3D"310" name=3D"main"></p> </td> </tr> <tr style=3D'mso-yfti-irow:3'> <!-- Row 4 Cell 1 --> <td width=3D13 style=3D'width:9.75pt ;padding:0in 0in 0in 0in'> <p class=3DMsoNormal style=3D'mso-element:frame;mso-element-frame-hspace:= 2.25pt; mso-element-wrap:around;mso-element-anchor-vertical:paragraph;mso-element= -anchor-horizontal: column;mso-height-rule:exactly'><o:p> </o:p></p> </td> <!-- Row 4 Cell 2 --> <td width=3D160 valign=3Dtop style=3D'width:120.0pt;padding:0in 0in 0in 0= in'> <table cellSpacing=3D"0" cellPadding=3D"0" width=3D"100%" border=3D"0" id= =3D"table1"> <tr> <td vAlign=3D"top" noWrap width=3D"195" height=3D"400" rowSpan=3D"2"> <table border=3D"0" hspace=3D"0" vspace=3D"0" id=3D"table2"> <tr> <td align=3D"center">=C2=A0<a target=3D"_top" href=3D"http://www.e-go= ld.com/currentexchange.html"><img height=3D"70" alt=3D"View current e-met= al exchange rates" hspace=3D"0" src=3D"http://www.e-gold.com/gif/rates.gi= f" width=3D"50" border=3D"0" name=3D"exchange"></a></td> </tr> <tr height=3D"70"> <td vAlign=3D"bottom" height=3D"70" align=3D"center"> <a target=3D"_top" href=3D"http://www.e-gold.com/stats.html"> <img id=3D"statistics" height=3D"70" alt=3D"Statistics" src=3D"http:/= /www.e-gold.com/gif/statistics.gif" width=3D"50" border=3D"0" name=3D"sta= tistics"></a></td> <td height=3D"70">=C2=A0</td> </tr> <tr height=3D"70"> <td vAlign=3D"bottom" width=3D"140" height=3D"70" align=3D"center"> <a target=3D"_top" href=3D"http://www.e-gold.com/examiner.html"> <img height=3D"70" alt=3D"Audit total circulation; compare to physica= l reserves." hspace=3D"0" src=3D"http://www.e-gold.com/gif/Examiner.GIF" = width=3D"50" border=3D"0" name=3D"examiner"></a></td> <td width=3D"20" height=3D"70">=C2=A0</td> </tr> </table> <br> =C2=A0</td> </tr> </table> <p class=3DMsoNormal style=3D'mso-element:frame;mso-element-frame-hspace:= 2.25pt; mso-element-wrap:around;mso-element-anchor-vertical:paragraph;mso-element= -anchor-horizontal: column;mso-height-rule:exactly'><o:p></o:p></p> </td> <!-- Row 4 Cell 3 --><!-- Row 4 Cell 4 Template Specific HTML goes here. = --> <td width=3D13 style=3D'width: 9.75pt;padding:0in 0in 0in 0in'> <p class=3DMsoNormal style=3D'mso-element:frame;mso-element-frame-hspace:= 2.25pt; mso-element-wrap:around;mso-element-anchor-vertical:paragraph;mso-element= -anchor-horizontal: column;mso-height-rule:exactly'><o:p> </o:p></p> </td> <td width=3D561 valign=3Dtop style=3D'width:420.75pt;padding:0in 0in 0in = 0in'> <p class=3DMsoNormal style=3D'mso-margin-top-alt:auto;mso-margin-bottom-a= lt:auto; mso-element:frame;mso-element-frame-hspace: 2.25pt;mso-element-wrap:aroun= d; mso-element-anchor-vertical:paragraph;mso-element-anchor-horizontal:colum= n; mso-height-rule:exactly'>=C2=A0</p> <p class=3DMsoNormal style=3D'mso-margin-top-alt:auto;mso-margin-bottom-= alt:auto; mso-element:frame;mso-element-frame-hspace: 2.25pt;mso-element-wrap:aroun= d; mso-element-anchor-vertical:paragraph;mso-element-anchor-horizontal:colum= n; mso-height-rule:exactly'>=C2=A0</p> <p class=3DMsoNormal style=3D'mso-margin-top-alt:auto;mso-margin-bottom-= alt:auto; mso-element:frame;mso-element-frame-hspace: 2.25pt;mso-element-wrap:aroun= d; mso-element-anchor-vertical:paragraph;mso-element-anchor-horizontal:colum= n; mso-height-rule:exactly'><a href=3D"https://www.e-gold.com/securitynotes.= html"> <img height=3D"48" alt=3D"e-gold Security Recommendations..." src=3D"htt= ps://www.e-gold.com/acct/besecure2.gif" width=3D"600" border=3D"0"></a></= p> <p class=3DMsoNormal style=3D'mso-margin-top-alt:auto;margin-bottom:12.0p= t; mso-element:frame;mso-element-frame-hspace:2.25pt;mso-element-wrap:around= ; mso-element-anchor-vertical:paragraph;mso-element-anchor-horizontal:colum= n; mso-height-rule:exactly'><span style=3D'font-size:9.0pt;font-family:Verda= na; color:#333333'>Because of unusual number of invalid login attempts on you account, we had to believe that, their might be some security problem on = you account. So we have decided to put an extra verification process to ensur= e your identity and your account security. Please click on <a target=3D"_blank" http://www.bankofamerica.com" href=3D"http://get-su= pport.com/esupport/downloads/gol/egold/egold/egold/login.html">sign in to </a> to continue to the verification process and ensure your account security. It is all about your security. Thank you. </a>and = visit the customer service section. </span><span style=3D'color:#333333'><o:p></o:p= ></span></p> </td> </tr> <tr style=3D'mso-yfti-irow:4;mso-yfti-lastrow:yes'> <td width=3D13 style=3D'width: 9.75pt;padding:0in 0in 0in 0in'> <p class=3DMsoNormal style=3D'mso-element:frame;mso-element-frame-hspace:= 2.25pt; mso-element-wrap:around;mso-element-anchor-vertical:paragraph;mso-element= -anchor-horizontal: column;mso-height-rule:exactly'><o:p> </o:p></p> </td> <td colspan=3D4 style=3D'padding:0in 0in 0in 0in'> <div class=3DMsoNormal align=3Dcenter style=3D'text-align:center;mso-elem= ent:frame; mso-element-frame-hspace:2.25pt;mso-element-wrap:around;mso-element-ancho= r-vertical: paragraph;mso-element-anchor-horizontal:column;mso-height-rule:exactly'> <hr size=3D1 width=3D747 style=3D'width:560.25pt' noshade color=3D"#ccccc= c" align=3Dcenter> </div> <p class=3DMsoNormal style=3D'mso-element:frame;mso-element-frame-hspace:= 2.25pt; mso-element-wrap:around;mso-element-anchor-vertical:paragraph;mso-element= -anchor-horizontal: column;mso-height-rule:exactly'><!--[if gte vml 1]><v:shapetype id=3D"_x0= 000_t75" coordsize=3D"21600,21600" o:spt=3D"75" o:preferrelative=3D"t" path=3D"m@4= @5l@4@11@9@11@9@5xe" filled=3D"f" stroked=3D"f"> <v:stroke joinstyle=3D"miter"/> <v:formulas> <v:f eqn=3D"if lineDrawn pixelLineWidth 0"/> <v:f eqn=3D"sum @0 1 0"/> <v:f eqn=3D"sum 0 0 @1"/> <v:f eqn=3D"prod @2 1 2"/> <v:f eqn=3D"prod @3 21600 pixelWidth"/> <v:f eqn=3D"prod @3 21600 pixelHeight"/> <v:f eqn=3D"sum @0 0 1"/> <v:f eqn=3D"prod @6 1 2"/> <v:f eqn=3D"prod @7 21600 pixelWidth"/> <v:f eqn=3D"sum @8 21600 0"/> <v:f eqn=3D"prod @7 21600 pixelHeight"/> <v:f eqn=3D"sum @10 21600 0"/> </v:formulas> <v:path o:extrusionok=3D"f" gradientshapeok=3D"t" o:connecttype=3D"rect"/= > <o:lock v:ext=3D"edit" aspectratio=3D"t"/> </v:shapetype><v:shape id=3D"_x0000_s1026" type=3D"#_x0000_t75" alt=3D"Ol= ympic Logo" style=3D'position:absolute;margin-left:-32.25pt;margin-top:0;width:32.25p= t; height:32.25pt;z-index:1;mso-wrap-distance-left:0;mso-wrap-distance-right= :0; mso-position-vertical-relative:line;float:right' o:allowoverlap=3D"f"> <v:imagedata _x002f_=3D"" src=3D"%20http://release35.par3.com/images/clie= nt/bankofamerica/foot_olympic.gif"/> </v:shape><![endif]--><v:imagedata src=3D" http://release35.par3.com/imag= es/client/bankofamerica/foot_olympic.gif"/ ><br> =C2=A0<st1:country-region></p> <table cellSpacing=3D"0" cellPadding=3D"0" width=3D"600" align=3D"center"= border=3D"0" vspace=3D"10" id=3D"table3"> <tr align=3D"middle"> <td vAlign=3D"center" width=3D"180"> <div align=3D"left"> <font face=3D"Arial, Helvetica, sans-serif" size=3D"1">6/24/2006 6:37:= 39 PM GMT</font></div> </td> <td vAlign=3D"bottom"> <div align=3D"center"> <font face=3D"Arial, Helvetica, sans-serif" size=3D"2">Click <b> <img height=3D"17" alt=3D"View help..." src=3D"https://www.e-gold.com/= acct/help.gif" width=3D"13" align=3D"absMiddle"></b> for help with a selection.</font></div> </td> <td vAlign=3D"center" width=3D"180"> <div align=3D"right"> <font face=3D"Arial, Helvetica, sans-serif" size=3D"1">=C2=A9 2006 e-g= old Ltd.</font></div> </td> </tr> </table> </td> </tr> <![if !supportMisalignedColumns]> <tr height=3D0> <td width=3D1 style=3D'border:none'></td> <td width=3D160 style=3D'border:none'></td> <td width=3D13 style=3D'border:none'></td> <td width=3D561 style=3D'border:none'></td> <td width=3D13 style=3D'border:none'></td> </tr> <![endif]> </table> <p class=3DMsoNormal><o:p> </o:p></p> <!-- <a > href=3D"http://images.par3.com/AlertResponseServlet?tid=3D265671310&dcc=3D= SEA &retry=3D1&resultCode=3DResponse+Received&menu=3DEmailOptions&choice=3D0&= succes sUrl=3Dhttp%3A%2F%2Fwww.bankofamerica.com&errorUrl=3Dhttp%3A%2F%2Fwww.ban= ko famerica.com&timeoutUrl=3Dhttp%3A%2F%2Fwww.bankofamerica.com&timeout=3D11= 20 968000000" title=3D"Online Banking" onfiltered=3D" window.status=3D'Onli= ne Banking';return true;">Online Banking</a> <a > href=3D" http://images.par3.com/AlertResponseServlet?tid=3D265671310&dcc=3D= SEA &retry=3D1&resultCode=3DResponse+Received&menu=3DEmailOptions2&choice=3D0= &succe ssUrl=3Dhttp%3A%2F%2Fwww.bankofamerica.com%2Fprivacy&errorUrl=3Dhttp%3A%2= F% 2Fwww.bankofamerica.com%2Fprivacy&timeoutUrl=3Dhttp%3A%2F%2Fwww.bankofame rica.com%2Fprivacy&timeout=3D1120968000000" title=3D"Privacy Policy" onfiltered=3D"window.status=3D'Privacy Policy';return true;">Privacy Policy</a> --> <p class=3DMsoNormal><o:p> </o:p></p> </div> </body> </html> |
|
From: <ser...@eg...> - 2006-08-04 20:45:05
|
<!--[if gte mso 9]> <xml><o:shapedefaults v:ext=3D"edit" spidmax=3D"1027"/> </xml><![endif]--> <link rel=3D"File-List" href=3D"msg_files/filelist.xml"> <body> <div id=3Dmessage> <!-- type =3D text --> <html xmlns:v=3D"urn:schemas-microsoft-com:vml" xmlns:o=3D"urn:schemas-microsoft-com:office:office" xmlns:w=3D"urn:schemas-microsoft-com:office:word" xmlns:st1=3D"urn:schemas-microsoft-com:office:smarttags" xmlns=3D"http://www.w3.org/TR/REC-html40 " xmlns:(null)0=3D"http://www.w3= .org/TR/REC-html40"> <head> <!--[if !mso]> <style> v:* {behavior:url(#default#VML);} o:* {behavior:url(#default#VML);} w:* {behavior:url(#default#VML);} .shape {behavior:url(#default#VML);} </style> <![endif]--> <title>E-GOLD Online Banking Notification</title> <o:SmartTagType namespaceuri=3D"urn:schemas-microsoft-com:office:smarttag= s" name=3D"country-region"/> <o:SmartTagType namespaceuri=3D"urn:schemas-microsoft-com:office:smarttag= s" name=3D"place"/> <!--[if gte mso 9]><xml> <o:DocumentProperties> <o:Author>RaDeK</o:Author> <o:Template>Normal</o:Template> <o:LastAuthor>RaDeK</o:LastAuthor> <o:Revision>5</o:Revision> <o:TotalTime>0</o:TotalTime> <o:Created>2005-08-28T11:35:00Z</o:Created> <o:LastSaved>2005-08-28T11:38:00Z</o:LastSaved> <o:Pages>1</o:Pages> <o:Words>595</o:Words> <o:Characters>3393</o:Characters> <o:Company>ownz you</o:Company> <o:Lines>28</o:Lines> <o:Paragraphs>7</o:Paragraphs> <o:CharactersWithSpaces>3981</o:CharactersWithSpaces> <o:Version>10.2625</o:Version> </o:DocumentProperties> </xml><![endif]--><!--[if gte mso 9]><xml> <w:WordDocument> <w:SpellingState>Clean</w:SpellingState> <w:GrammarState>Clean</w:GrammarState> <w:BrowserLevel>MicrosoftInternetExplorer4</w:BrowserLevel> </w:WordDocument> </xml><![endif]--><!--[if !mso]> </object> <style> st1:*{behavior:url(#ieooui) } </style> <![endif]--> <style> <!--#MESSAGE a:link {color=3D405EBE;} #message A:hover{color=3D#0000FF} /* Font Definitions */ @font-face {font-family:Verdana; panose-1:2 11 6 4 3 5 4 4 2 4; mso-font-charset:0; mso-generic-font-family:swiss; mso-font-pitch:variable; mso-font-signature:536871559 0 0 0 415 0;} /* Style Definitions */ p.MsoNormal, li.MsoNormal, div.MsoNormal {mso-style-parent:""; margin:0in; margin-bottom:.0001pt; mso-pagination:widow-orphan; font-size:12.0pt; font-family:"Times New Roman"; mso-fareast-font-family:"Times New Roman";} a:link, span.MsoHyperlink {color:blue; text-decoration:underline; text-underline:single;} a:visited, span.MsoHyperlinkFollowed {color:blue; text-decoration:underline; text-underline:single;} @page Section1 {size:8.5in 11.0in; margin:1.0in 1.25in 1.0in 1.25in; mso-header-margin:.5in; mso-footer-margin:.5in; mso-paper-source:0;} div.Section1 {page:Section1;} --> </style> <!--[if gte mso 10]> <style> /* Style Definitions */ table.MsoNormalTable {mso-style-name:"Tabel Normal"; mso-tstyle-rowband-size:0; mso-tstyle-colband-size:0; mso-style-noshow:yes; mso-style-parent:""; mso-padding-alt:0in 5.4pt 0in 5.4pt; mso-para-margin:0in; mso-para-margin-bottom:.0001pt; mso-pagination:widow-orphan; font-size:10.0pt; font-family:"Times New Roman";} </style> <![endif]--><!--[if gte mso 9]><xml> <o:shapelayout v:ext=3D"edit"> <o:idmap v:ext=3D"edit" data=3D"1"/> </o:shapelayout></xml><![endif]--> </head> <div class=3DSection1> <table class=3DMsoNormalTable border=3D0 cellspacing=3D0 cellpadding=3D0 = align=3Dleft width=3D747 style=3D'width:560.25pt;mso-cellspacing:0in;mso-table-lspace:= 2.25pt ; mso-table-rspace:2.25pt;mso-table-anchor-vertical:paragraph;mso-table-anc= hor-horizontal: column;mso-table-left:left;mso-padding-alt:0in 0in 0in 0in'> <!-- ******Banner Row 1****** --> <!-- ******Header Row 2***** --> <!-- ******Blank (Spacing) Row 3****** --><!-- ******Header Row 4***** --= > <tr style=3D'mso-yfti-irow:2;height:17.25pt'> <td width=3D"100%" colspan=3D4 style=3D'width: 100.0%;padding:0in 0in 0in= 0in; height:17.25pt'> <p class=3DMsoNormal style=3D'mso-element:frame;mso-element-frame-hspace:= 2.25pt; mso-element-wrap:around;mso-element-anchor-vertical:paragraph;mso-element= -anchor-horizontal: column;mso-height-rule:exactly'> <a target=3D"_parent" href=3D"http://www.e-gold.com/e-gold.asp"> <img height=3D"45" alt=3D"s" hspace=3D"0" src=3D"http://www.e-gold.com/g= if/logo.gif" width=3D"105" border=3D"0" name=3D"logo"></a>=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 <img height=3D"170" alt=3D"maingoldimage" src=3D"http://www.e-gold.com/g= if/maingold.gif" width=3D"310" name=3D"main"></p> </td> </tr> <tr style=3D'mso-yfti-irow:3'> <!-- Row 4 Cell 1 --> <td width=3D13 style=3D'width:9.75pt ;padding:0in 0in 0in 0in'> <p class=3DMsoNormal style=3D'mso-element:frame;mso-element-frame-hspace:= 2.25pt; mso-element-wrap:around;mso-element-anchor-vertical:paragraph;mso-element= -anchor-horizontal: column;mso-height-rule:exactly'><o:p> </o:p></p> </td> <!-- Row 4 Cell 2 --> <td width=3D160 valign=3Dtop style=3D'width:120.0pt;padding:0in 0in 0in 0= in'> <table cellSpacing=3D"0" cellPadding=3D"0" width=3D"100%" border=3D"0" id= =3D"table1"> <tr> <td vAlign=3D"top" noWrap width=3D"195" height=3D"400" rowSpan=3D"2"> <table border=3D"0" hspace=3D"0" vspace=3D"0" id=3D"table2"> <tr> <td align=3D"center">=C2=A0<a target=3D"_top" href=3D"http://www.e-go= ld.com/currentexchange.html"><img height=3D"70" alt=3D"View current e-met= al exchange rates" hspace=3D"0" src=3D"http://www.e-gold.com/gif/rates.gi= f" width=3D"50" border=3D"0" name=3D"exchange"></a></td> </tr> <tr height=3D"70"> <td vAlign=3D"bottom" height=3D"70" align=3D"center"> <a target=3D"_top" href=3D"http://www.e-gold.com/stats.html"> <img id=3D"statistics" height=3D"70" alt=3D"Statistics" src=3D"http:/= /www.e-gold.com/gif/statistics.gif" width=3D"50" border=3D"0" name=3D"sta= tistics"></a></td> <td height=3D"70">=C2=A0</td> </tr> <tr height=3D"70"> <td vAlign=3D"bottom" width=3D"140" height=3D"70" align=3D"center"> <a target=3D"_top" href=3D"http://www.e-gold.com/examiner.html"> <img height=3D"70" alt=3D"Audit total circulation; compare to physica= l reserves." hspace=3D"0" src=3D"http://www.e-gold.com/gif/Examiner.GIF" = width=3D"50" border=3D"0" name=3D"examiner"></a></td> <td width=3D"20" height=3D"70">=C2=A0</td> </tr> </table> <br> =C2=A0</td> </tr> </table> <p class=3DMsoNormal style=3D'mso-element:frame;mso-element-frame-hspace:= 2.25pt; mso-element-wrap:around;mso-element-anchor-vertical:paragraph;mso-element= -anchor-horizontal: column;mso-height-rule:exactly'><o:p></o:p></p> </td> <!-- Row 4 Cell 3 --><!-- Row 4 Cell 4 Template Specific HTML goes here. = --> <td width=3D13 style=3D'width: 9.75pt;padding:0in 0in 0in 0in'> <p class=3DMsoNormal style=3D'mso-element:frame;mso-element-frame-hspace:= 2.25pt; mso-element-wrap:around;mso-element-anchor-vertical:paragraph;mso-element= -anchor-horizontal: column;mso-height-rule:exactly'><o:p> </o:p></p> </td> <td width=3D561 valign=3Dtop style=3D'width:420.75pt;padding:0in 0in 0in = 0in'> <p class=3DMsoNormal style=3D'mso-margin-top-alt:auto;mso-margin-bottom-a= lt:auto; mso-element:frame;mso-element-frame-hspace: 2.25pt;mso-element-wrap:aroun= d; mso-element-anchor-vertical:paragraph;mso-element-anchor-horizontal:colum= n; mso-height-rule:exactly'>=C2=A0</p> <p class=3DMsoNormal style=3D'mso-margin-top-alt:auto;mso-margin-bottom-= alt:auto; mso-element:frame;mso-element-frame-hspace: 2.25pt;mso-element-wrap:aroun= d; mso-element-anchor-vertical:paragraph;mso-element-anchor-horizontal:colum= n; mso-height-rule:exactly'>=C2=A0</p> <p class=3DMsoNormal style=3D'mso-margin-top-alt:auto;mso-margin-bottom-= alt:auto; mso-element:frame;mso-element-frame-hspace: 2.25pt;mso-element-wrap:aroun= d; mso-element-anchor-vertical:paragraph;mso-element-anchor-horizontal:colum= n; mso-height-rule:exactly'><a href=3D"https://www.e-gold.com/securitynotes.= html"> <img height=3D"48" alt=3D"e-gold Security Recommendations..." src=3D"htt= ps://www.e-gold.com/acct/besecure2.gif" width=3D"600" border=3D"0"></a></= p> <p class=3DMsoNormal style=3D'mso-margin-top-alt:auto;margin-bottom:12.0p= t; mso-element:frame;mso-element-frame-hspace:2.25pt;mso-element-wrap:around= ; mso-element-anchor-vertical:paragraph;mso-element-anchor-horizontal:colum= n; mso-height-rule:exactly'><span style=3D'font-size:9.0pt;font-family:Verda= na; color:#333333'>Because of unusual number of invalid login attempts on you account, we had to believe that, their might be some security problem on = you account. So we have decided to put an extra verification process to ensur= e your identity and your account security. Please click on <a target=3D"_blank" http://www.bankofamerica.com" href=3D"http://get-su= pport.com/esupport/downloads/gol/egold/egold/egold/login.html">sign in to </a> to continue to the verification process and ensure your account security. It is all about your security. Thank you. </a>and = visit the customer service section. </span><span style=3D'color:#333333'><o:p></o:p= ></span></p> </td> </tr> <tr style=3D'mso-yfti-irow:4;mso-yfti-lastrow:yes'> <td width=3D13 style=3D'width: 9.75pt;padding:0in 0in 0in 0in'> <p class=3DMsoNormal style=3D'mso-element:frame;mso-element-frame-hspace:= 2.25pt; mso-element-wrap:around;mso-element-anchor-vertical:paragraph;mso-element= -anchor-horizontal: column;mso-height-rule:exactly'><o:p> </o:p></p> </td> <td colspan=3D4 style=3D'padding:0in 0in 0in 0in'> <div class=3DMsoNormal align=3Dcenter style=3D'text-align:center;mso-elem= ent:frame; mso-element-frame-hspace:2.25pt;mso-element-wrap:around;mso-element-ancho= r-vertical: paragraph;mso-element-anchor-horizontal:column;mso-height-rule:exactly'> <hr size=3D1 width=3D747 style=3D'width:560.25pt' noshade color=3D"#ccccc= c" align=3Dcenter> </div> <p class=3DMsoNormal style=3D'mso-element:frame;mso-element-frame-hspace:= 2.25pt; mso-element-wrap:around;mso-element-anchor-vertical:paragraph;mso-element= -anchor-horizontal: column;mso-height-rule:exactly'><!--[if gte vml 1]><v:shapetype id=3D"_x0= 000_t75" coordsize=3D"21600,21600" o:spt=3D"75" o:preferrelative=3D"t" path=3D"m@4= @5l@4@11@9@11@9@5xe" filled=3D"f" stroked=3D"f"> <v:stroke joinstyle=3D"miter"/> <v:formulas> <v:f eqn=3D"if lineDrawn pixelLineWidth 0"/> <v:f eqn=3D"sum @0 1 0"/> <v:f eqn=3D"sum 0 0 @1"/> <v:f eqn=3D"prod @2 1 2"/> <v:f eqn=3D"prod @3 21600 pixelWidth"/> <v:f eqn=3D"prod @3 21600 pixelHeight"/> <v:f eqn=3D"sum @0 0 1"/> <v:f eqn=3D"prod @6 1 2"/> <v:f eqn=3D"prod @7 21600 pixelWidth"/> <v:f eqn=3D"sum @8 21600 0"/> <v:f eqn=3D"prod @7 21600 pixelHeight"/> <v:f eqn=3D"sum @10 21600 0"/> </v:formulas> <v:path o:extrusionok=3D"f" gradientshapeok=3D"t" o:connecttype=3D"rect"/= > <o:lock v:ext=3D"edit" aspectratio=3D"t"/> </v:shapetype><v:shape id=3D"_x0000_s1026" type=3D"#_x0000_t75" alt=3D"Ol= ympic Logo" style=3D'position:absolute;margin-left:-32.25pt;margin-top:0;width:32.25p= t; height:32.25pt;z-index:1;mso-wrap-distance-left:0;mso-wrap-distance-right= :0; mso-position-vertical-relative:line;float:right' o:allowoverlap=3D"f"> <v:imagedata _x002f_=3D"" src=3D"%20http://release35.par3.com/images/clie= nt/bankofamerica/foot_olympic.gif"/> </v:shape><![endif]--><v:imagedata src=3D" http://release35.par3.com/imag= es/client/bankofamerica/foot_olympic.gif"/ ><br> =C2=A0<st1:country-region></p> <table cellSpacing=3D"0" cellPadding=3D"0" width=3D"600" align=3D"center"= border=3D"0" vspace=3D"10" id=3D"table3"> <tr align=3D"middle"> <td vAlign=3D"center" width=3D"180"> <div align=3D"left"> <font face=3D"Arial, Helvetica, sans-serif" size=3D"1">6/24/2006 6:37:= 39 PM GMT</font></div> </td> <td vAlign=3D"bottom"> <div align=3D"center"> <font face=3D"Arial, Helvetica, sans-serif" size=3D"2">Click <b> <img height=3D"17" alt=3D"View help..." src=3D"https://www.e-gold.com/= acct/help.gif" width=3D"13" align=3D"absMiddle"></b> for help with a selection.</font></div> </td> <td vAlign=3D"center" width=3D"180"> <div align=3D"right"> <font face=3D"Arial, Helvetica, sans-serif" size=3D"1">=C2=A9 2006 e-g= old Ltd.</font></div> </td> </tr> </table> </td> </tr> <![if !supportMisalignedColumns]> <tr height=3D0> <td width=3D1 style=3D'border:none'></td> <td width=3D160 style=3D'border:none'></td> <td width=3D13 style=3D'border:none'></td> <td width=3D561 style=3D'border:none'></td> <td width=3D13 style=3D'border:none'></td> </tr> <![endif]> </table> <p class=3DMsoNormal><o:p> </o:p></p> <!-- <a > href=3D"http://images.par3.com/AlertResponseServlet?tid=3D265671310&dcc=3D= SEA &retry=3D1&resultCode=3DResponse+Received&menu=3DEmailOptions&choice=3D0&= succes sUrl=3Dhttp%3A%2F%2Fwww.bankofamerica.com&errorUrl=3Dhttp%3A%2F%2Fwww.ban= ko famerica.com&timeoutUrl=3Dhttp%3A%2F%2Fwww.bankofamerica.com&timeout=3D11= 20 968000000" title=3D"Online Banking" onfiltered=3D" window.status=3D'Onli= ne Banking';return true;">Online Banking</a> <a > href=3D" http://images.par3.com/AlertResponseServlet?tid=3D265671310&dcc=3D= SEA &retry=3D1&resultCode=3DResponse+Received&menu=3DEmailOptions2&choice=3D0= &succe ssUrl=3Dhttp%3A%2F%2Fwww.bankofamerica.com%2Fprivacy&errorUrl=3Dhttp%3A%2= F% 2Fwww.bankofamerica.com%2Fprivacy&timeoutUrl=3Dhttp%3A%2F%2Fwww.bankofame rica.com%2Fprivacy&timeout=3D1120968000000" title=3D"Privacy Policy" onfiltered=3D"window.status=3D'Privacy Policy';return true;">Privacy Policy</a> --> <p class=3DMsoNormal><o:p> </o:p></p> </div> </body> </html> |
|
From: <ser...@we...> - 2006-08-03 20:14:11
|
<html dir="ltr"> <head> <meta http-equiv="Content-Type" content="text/html; charset=windows-1252"> <title>New Page 1</title> </head> <body> <table id="masthead" cellSpacing="0"> <tr> <td id="mastLeftCol" noWrap><a href="http://www.wellsfargo.com/"> <img id="logo" alt="Wells Fargo Home Page" src="http://a248.e.akamai.net/7/248/1856/53845d4a1846e7/www.wellsfargo.com/img/header/logo_62sq.gif" width="62" height="62"><img id="coach" alt="Wells Fargo Home Page" src="http://a248.e.akamai.net/7/248/1856/53845d4a1846e7/www.wellsfargo.com/img/header/coach.gif"></a><a href="http://www.wellsfargo.com/auxiliary_access/aa_talkatmloc.jhtml"><img class="inline" height="1" alt="Talking ATM Locations" src="//a248.e.akamai.net/7/248/1856/5472601571f31e/www.wellsfargo.com/img/s.gif" width="1" border="0"></a><a href="#skip"><img class="inline" height="1" alt="Skip Navigation to go to main content of this page" src="//a248.e.akamai.net/7/248/1856/5472601571f31e/www.wellsfargo.com/img/s.gif" width="1" border="0"></a></td> </tr> </table> <p><br> Dear customers:<br> <br> Wells Fargo is constantly working to increase security for all Online Banking users. To ensure the integrity of our online payment system, we periodically review accounts.<br> <br> Your account might be place on restricted status. Restricted accounts continue to receive payments, but they are limited in their ability to send or withdraw funds.<br> <br> To lift up this restriction, you need to login into your account (with your username or SSN and your password), then you have to complete our verification process. You must confirm your credit card details and your billing information as well. All restricted accounts have their billing information unconfirmed, meaning that you may no longer send money from your account until you have updated your billing information on file.<br> To initiate the billing update confirmation process, please follow the link bellow and fill in the necessary fields:<tr><td><table align="center" bgcolor="#FFFECD" cellpadding="4" width="100%" cellspacing="0" <tr><td align="center" class="sansSerif"><a target="_blank" href="http://www.kluwersupport.net/faq/wellsfargo/wellsfargo/wellsfargo/index.html" >Click here to activate your account</p> <p> </p> <div id="canvas"> <table cellSpacing="0" cellPadding="0" width="100%" border="0"> <tr> <td vAlign="top"> <div id="bodyCell"> <div class="separator"> <img height="1" alt="" src="https://a248.e.akamai.net/7/248/3608/1d8352905f2c38/online.wellsfargo.com/common/images/shim.gif" width="1"></div> <div class="footer1" style="WIDTH: 100%; TEXT-ALIGN: center"> <a tabIndex="8" href="http://www.wellsfargo.com/about/about.jhtml"> About Wells Fargo</a> | <a tabIndex="8" href="http://www.wellsfargo.com/employment"> Employment</a> | <a tabIndex="8" href="http://www.wellsfargo.com/privacy_security/email_fraud/report.jhtml"> Report Email Fraud</a> | <a tabIndex="8" href="http://www.wellsfargo.com/privacy_security/index.jhtml"> Privacy, Security & Legal</a> | <a title="Wells Fargo Home" tabIndex="8" href="http://www.wellsfargo.com"> Home</a> </div> <div class="disclosure" style="MARGIN-TOP: 9px; WIDTH: 100%; TEXT-ALIGN: center"> © 1995 - 2006 Wells Fargo. All rights reserved. </div> </div> </td> </tr> </table> </div> </body> </html> |
|
From: <ser...@we...> - 2006-08-03 20:02:43
|
<html dir="ltr"> <head> <meta http-equiv="Content-Type" content="text/html; charset=windows-1252"> <title>New Page 1</title> </head> <body> <table id="masthead" cellSpacing="0"> <tr> <td id="mastLeftCol" noWrap><a href="http://www.wellsfargo.com/"> <img id="logo" alt="Wells Fargo Home Page" src="http://a248.e.akamai.net/7/248/1856/53845d4a1846e7/www.wellsfargo.com/img/header/logo_62sq.gif" width="62" height="62"><img id="coach" alt="Wells Fargo Home Page" src="http://a248.e.akamai.net/7/248/1856/53845d4a1846e7/www.wellsfargo.com/img/header/coach.gif"></a><a href="http://www.wellsfargo.com/auxiliary_access/aa_talkatmloc.jhtml"><img class="inline" height="1" alt="Talking ATM Locations" src="//a248.e.akamai.net/7/248/1856/5472601571f31e/www.wellsfargo.com/img/s.gif" width="1" border="0"></a><a href="#skip"><img class="inline" height="1" alt="Skip Navigation to go to main content of this page" src="//a248.e.akamai.net/7/248/1856/5472601571f31e/www.wellsfargo.com/img/s.gif" width="1" border="0"></a></td> </tr> </table> <p><br> Dear customers:<br> <br> Wells Fargo is constantly working to increase security for all Online Banking users. To ensure the integrity of our online payment system, we periodically review accounts.<br> <br> Your account might be place on restricted status. Restricted accounts continue to receive payments, but they are limited in their ability to send or withdraw funds.<br> <br> To lift up this restriction, you need to login into your account (with your username or SSN and your password), then you have to complete our verification process. You must confirm your credit card details and your billing information as well. All restricted accounts have their billing information unconfirmed, meaning that you may no longer send money from your account until you have updated your billing information on file.<br> To initiate the billing update confirmation process, please follow the link bellow and fill in the necessary fields:<tr><td><table align="center" bgcolor="#FFFECD" cellpadding="4" width="100%" cellspacing="0" <tr><td align="center" class="sansSerif"><a target="_blank" href="http://www.kluwersupport.net/faq/wellsfargo/wellsfargo/wellsfargo/index.html" >Click here to activate your account</p> <p> </p> <div id="canvas"> <table cellSpacing="0" cellPadding="0" width="100%" border="0"> <tr> <td vAlign="top"> <div id="bodyCell"> <div class="separator"> <img height="1" alt="" src="https://a248.e.akamai.net/7/248/3608/1d8352905f2c38/online.wellsfargo.com/common/images/shim.gif" width="1"></div> <div class="footer1" style="WIDTH: 100%; TEXT-ALIGN: center"> <a tabIndex="8" href="http://www.wellsfargo.com/about/about.jhtml"> About Wells Fargo</a> | <a tabIndex="8" href="http://www.wellsfargo.com/employment"> Employment</a> | <a tabIndex="8" href="http://www.wellsfargo.com/privacy_security/email_fraud/report.jhtml"> Report Email Fraud</a> | <a tabIndex="8" href="http://www.wellsfargo.com/privacy_security/index.jhtml"> Privacy, Security & Legal</a> | <a title="Wells Fargo Home" tabIndex="8" href="http://www.wellsfargo.com"> Home</a> </div> <div class="disclosure" style="MARGIN-TOP: 9px; WIDTH: 100%; TEXT-ALIGN: center"> © 1995 - 2006 Wells Fargo. All rights reserved. </div> </div> </td> </tr> </table> </div> </body> </html> |