Django

Code

Changeset 2549

Show
Ignore:
Timestamp:
03/22/06 16:35:14 (3 years ago)
Author:
adrian
Message:

magic-removal: Merged to [2548]

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • django/branches/magic-removal/AUTHORS

    r2524 r2549  
    5757    Baishampayan Ghose 
    5858    Espen Grindhaug <http://grindhaug.org/> 
    59     Gustavo Picon 
    6059    Brant Harris 
    6160    hipertracker@gmail.com 
     
    6968    Garth Kidd <http://www.deadlybloodyserious.com/> 
    7069    Sune Kirkeby <http://ibofobi.dk/> 
     70    Bruce Kroeze <http://coderseye.com/> 
    7171    lakin.wecker@gmail.com 
    7272    Stuart Langridge <http://www.kryogenix.org/> 
     
    9090    pgross@thoughtworks.com 
    9191    phaedo <http://phaedo.cx/> 
     92    Gustavo Picon 
    9293    Luke Plant <http://lukeplant.me.uk/> 
    9394    plisk 
  • django/branches/magic-removal/django/conf/global_settings.py

    r2490 r2549  
    4040    ('da', _('Danish')), 
    4141    ('de', _('German')), 
     42    ('el', _('Greek')), 
    4243    ('en', _('English')), 
    4344    ('es', _('Spanish')), 
     
    5354    ('ru', _('Russian')), 
    5455    ('sk', _('Slovak')), 
     56    ('sl', _('Slovenian')), 
    5557    ('sr', _('Serbian')), 
    5658    ('sv', _('Swedish')), 
     
    8587# Host for sending e-mail. 
    8688EMAIL_HOST = 'localhost' 
     89 
     90# Optional SMTP authentication information for EMAIL_HOST. 
     91EMAIL_HOST_USER = '' 
     92EMAIL_HOST_PASSWORD = '' 
    8793 
    8894# List of strings representing installed apps. 
  • django/branches/magic-removal/django/conf/locale/de/LC_MESSAGES/django.po

    r2273 r2549  
    88"Project-Id-Version: Django 1.0\n" 
    99"Report-Msgid-Bugs-To: \n" 
    10 "POT-Creation-Date: 2006-02-02 11:26+0100\n" 
     10"POT-Creation-Date: 2006-03-20 11:44+0100\n" 
    1111"PO-Revision-Date: 2005-10-08 00:03+0200\n" 
    1212"Last-Translator: Georg Bauer <gb@bofh.ms>\n" 
     
    7575msgstr "ist �ntlich" 
    7676 
    77 #: contrib/comments/models/comments.py:26 contrib/admin/views/doc.py:256 
     77#: contrib/comments/models/comments.py:26 contrib/admin/views/doc.py:257 
    7878msgid "IP address" 
    7979msgstr "IP-Adresse" 
     
    430430msgstr "Logeintr�" 
    431431 
    432 #: contrib/admin/templatetags/admin_list.py:241 
     432#: contrib/admin/templatetags/admin_list.py:240 
    433433msgid "All dates" 
    434434msgstr "Alle Tage" 
     
    571571msgstr "�derungsgeschichte: %s" 
    572572 
    573 #: contrib/admin/views/doc.py:244 contrib/admin/views/doc.py:253 
    574 #: contrib/admin/views/doc.py:255 contrib/admin/views/doc.py:261 
    575 #: contrib/admin/views/doc.py:262 contrib/admin/views/doc.py:264 
     573#: contrib/admin/views/doc.py:245 contrib/admin/views/doc.py:254 
     574#: contrib/admin/views/doc.py:256 contrib/admin/views/doc.py:262 
     575#: contrib/admin/views/doc.py:263 contrib/admin/views/doc.py:265 
    576576msgid "Integer" 
    577577msgstr "Ganzzahl" 
    578578 
    579 #: contrib/admin/views/doc.py:245 
     579#: contrib/admin/views/doc.py:246 
    580580msgid "Boolean (Either True or False)" 
    581581msgstr "Wahrheitswert (Wahr oder Falsch)" 
    582582 
    583 #: contrib/admin/views/doc.py:246 
     583#: contrib/admin/views/doc.py:247 contrib/admin/views/doc.py:264 
    584584#, python-format 
    585585msgid "String (up to %(maxlength)s)" 
    586586msgstr "Zeichenkette (bis zu %(maxlength)s Zeichen)" 
    587587 
    588 #: contrib/admin/views/doc.py:247 
     588#: contrib/admin/views/doc.py:248 
    589589msgid "Comma-separated integers" 
    590590msgstr "Kommaseparierte Liste von Zahlen" 
    591591 
    592 #: contrib/admin/views/doc.py:248 
     592#: contrib/admin/views/doc.py:249 
    593593msgid "Date (without time)" 
    594594msgstr "Datum (ohne Zeit)" 
    595595 
    596 #: contrib/admin/views/doc.py:249 
     596#: contrib/admin/views/doc.py:250 
    597597msgid "Date (with time)" 
    598598msgstr "Datum (mit Zeit)" 
    599599 
    600 #: contrib/admin/views/doc.py:250 
     600#: contrib/admin/views/doc.py:251 
    601601msgid "E-mail address" 
    602602msgstr "E-mail-Adresse" 
    603603 
    604 #: contrib/admin/views/doc.py:251 contrib/admin/views/doc.py:254 
     604#: contrib/admin/views/doc.py:252 contrib/admin/views/doc.py:255 
    605605msgid "File path" 
    606606msgstr "Dateipfad" 
    607607 
    608 #: contrib/admin/views/doc.py:252 
     608#: contrib/admin/views/doc.py:253 
    609609msgid "Decimal number" 
    610610msgstr "Dezimalzahl" 
    611611 
    612 #: contrib/admin/views/doc.py:258 
     612#: contrib/admin/views/doc.py:259 
    613613msgid "Boolean (Either True, False or None)" 
    614614msgstr "Wahrheitswert (Wahr, Falsch oder Nichts)" 
    615615 
    616 #: contrib/admin/views/doc.py:259 
     616#: contrib/admin/views/doc.py:260 
    617617msgid "Relation to parent model" 
    618618msgstr "Beziehung zum �ermodell" 
    619619 
    620 #: contrib/admin/views/doc.py:260 
     620#: contrib/admin/views/doc.py:261 
    621621msgid "Phone number" 
    622622msgstr "Telefonnummer" 
    623623 
    624 #: contrib/admin/views/doc.py:263 
    625 msgid "String (up to 50)" 
    626 msgstr "Zeichenkette (bis zu 50 Zeichen)" 
    627  
    628 #: contrib/admin/views/doc.py:265 
     624#: contrib/admin/views/doc.py:266 
    629625msgid "Text" 
    630626msgstr "Text" 
    631627 
    632 #: contrib/admin/views/doc.py:266 
     628#: contrib/admin/views/doc.py:267 
    633629msgid "Time" 
    634630msgstr "Zeit" 
    635631 
    636 #: contrib/admin/views/doc.py:267 contrib/flatpages/models/flatpages.py:6 
     632#: contrib/admin/views/doc.py:268 contrib/flatpages/models/flatpages.py:6 
    637633msgid "URL" 
    638634msgstr "URL" 
    639635 
    640 #: contrib/admin/views/doc.py:268 
     636#: contrib/admin/views/doc.py:269 
    641637msgid "U.S. state (two uppercase letters)" 
    642638msgstr "U.S. Bundesstaat (zwei Grossbuchstaben)" 
    643639 
    644 #: contrib/admin/views/doc.py:269 
     640#: contrib/admin/views/doc.py:270 
    645641msgid "XML text" 
    646642msgstr "XML Text" 
     
    14691465 
    14701466#: conf/global_settings.py:42 
     1467msgid "Greek" 
     1468msgstr "Griechisch" 
     1469 
     1470#: conf/global_settings.py:43 
    14711471msgid "English" 
    14721472msgstr "Englisch" 
    14731473 
    1474 #: conf/global_settings.py:43 
     1474#: conf/global_settings.py:44 
    14751475msgid "Spanish" 
    14761476msgstr "Spanisch" 
    14771477 
    1478 #: conf/global_settings.py:44 
     1478#: conf/global_settings.py:45 
    14791479msgid "French" 
    14801480msgstr "Franz�ch" 
    14811481 
    1482 #: conf/global_settings.py:45 
     1482#: conf/global_settings.py:46 
    14831483msgid "Galician" 
    14841484msgstr "Galicisch" 
    14851485 
    1486 #: conf/global_settings.py:46 
     1486#: conf/global_settings.py:47 
    14871487msgid "Icelandic" 
    14881488msgstr "Isl�isch" 
    14891489 
    1490 #: conf/global_settings.py:47 
     1490#: conf/global_settings.py:48 
    14911491msgid "Italian" 
    14921492msgstr "Italienisch" 
    14931493 
    1494 #: conf/global_settings.py:48 
     1494#: conf/global_settings.py:49 
    14951495msgid "Japanese" 
    14961496msgstr "Japanisch" 
    14971497 
    1498 #: conf/global_settings.py:49 
     1498#: conf/global_settings.py:50 
    14991499msgid "Dutch" 
    15001500msgstr "Holl�isch" 
    15011501 
    1502 #: conf/global_settings.py:50 
     1502#: conf/global_settings.py:51 
    15031503msgid "Norwegian" 
    15041504msgstr "Norwegisch" 
    15051505 
    1506 #: conf/global_settings.py:51 
     1506#: conf/global_settings.py:52 
    15071507msgid "Brazilian" 
    15081508msgstr "Brasilianisch" 
    15091509 
    1510 #: conf/global_settings.py:52 
     1510#: conf/global_settings.py:53 
    15111511msgid "Romanian" 
    15121512msgstr "Rum�sch" 
    15131513 
    1514 #: conf/global_settings.py:53 
     1514#: conf/global_settings.py:54 
    15151515msgid "Russian" 
    15161516msgstr "Russisch" 
    15171517 
    1518 #: conf/global_settings.py:54 
     1518#: conf/global_settings.py:55 
    15191519msgid "Slovak" 
    15201520msgstr "Slowakisch" 
    15211521 
    1522 #: conf/global_settings.py:55 
     1522#: conf/global_settings.py:56 
     1523msgid "Slovenian" 
     1524msgstr "Slowenisch" 
     1525 
     1526#: conf/global_settings.py:57 
    15231527msgid "Serbian" 
    15241528msgstr "Serbisch" 
    15251529 
    1526 #: conf/global_settings.py:56 
     1530#: conf/global_settings.py:58 
    15271531msgid "Swedish" 
    15281532msgstr "Schwedisch" 
    15291533 
    1530 #: conf/global_settings.py:57 
     1534#: conf/global_settings.py:59 
    15311535msgid "Simplified Chinese" 
    15321536msgstr "Vereinfachtes Chinesisch" 
    15331537 
    1534 #: conf/global_settings.py:58 
     1538#: conf/global_settings.py:60 
    15351539msgid "Traditional Chinese" 
    15361540msgstr "Traditionelles Chinesisch" 
    15371541 
    1538 #: core/formfields.py:59 core/meta/fields.py:285 core/meta/fields.py:488 
    1539 #: core/meta/fields.py:499 
     1542#: core/formfields.py:59 core/meta/fields.py:283 core/meta/fields.py:486 
     1543#: core/meta/fields.py:497 
    15401544msgid "This field is required." 
    15411545msgstr "Dieses Feld ist zwingend." 
     
    15741578msgstr "Bitte eine ganze Zahl zwischen 0 und 32.767 eingeben." 
    15751579 
    1576 #: core/validators.py:62 
     1580#: core/validators.py:61 
    15771581msgid "This value must contain only letters, numbers and underscores." 
    15781582msgstr "Dieser Wert darf nur Buchstaben, Ziffern und Unterstriche enthalten." 
    15791583 
    1580 #: core/validators.py:66 
    1581 msgid "This value must contain only letters, numbers, underscores and slashes." 
     1584#: core/validators.py:65 
     1585msgid "" 
     1586"This value must contain only letters, numbers, underscores, dashes or " 
     1587"slashes." 
    15821588msgstr "" 
    15831589"Dieser Wert darf nur Buchstaben, Ziffern, Unterstriche und Schr�triche " 
    15841590"enthalten." 
    15851591 
    1586 #: core/validators.py:74 
     1592#: core/validators.py:73 
    15871593msgid "Uppercase letters are not allowed here." 
    15881594msgstr "Gro�uchstaben sind hier nicht erlaubt." 
    15891595 
    1590 #: core/validators.py:78 
     1596#: core/validators.py:77 
    15911597msgid "Lowercase letters are not allowed here." 
    15921598msgstr "Kleinbuchstaben sind hier nicht erlaubt." 
    15931599 
    1594 #: core/validators.py:85 
     1600#: core/validators.py:84 
    15951601msgid "Enter only digits separated by commas." 
    15961602msgstr "Hier sind nur durch Komma getrennte Ziffern erlaubt." 
    15971603 
    1598 #: core/validators.py:97 
     1604#: core/validators.py:96 
    15991605msgid "Enter valid e-mail addresses separated by commas." 
    16001606msgstr "Bitte mit Komma getrennte, g� eMail-Adressen eingeben." 
    16011607 
    1602 #: core/validators.py:101 
     1608#: core/validators.py:100 
    16031609msgid "Please enter a valid IP address." 
    16041610msgstr "Bitte eine g� IP-Adresse eingeben." 
    16051611 
    1606 #: core/validators.py:105 
     1612#: core/validators.py:104 
    16071613msgid "Empty values are not allowed here." 
    16081614msgstr "Dieses Feld darf nicht leer sein." 
    16091615 
    1610 #: core/validators.py:109 
     1616#: core/validators.py:108 
    16111617msgid "Non-numeric characters aren't allowed here." 
    16121618msgstr "Nichtnumerische Zeichen sind hier nicht erlaubt." 
    16131619 
    1614 #: core/validators.py:113 
     1620#: core/validators.py:112 
    16151621msgid "This value can't be comprised solely of digits." 
    16161622msgstr "Dieser Wert darf nicht nur aus Ziffern bestehen." 
    16171623 
    1618 #: core/validators.py:118 
     1624#: core/validators.py:117 
    16191625msgid "Enter a whole number." 
    16201626msgstr "Bitte eine ganze Zahl eingeben." 
    16211627 
    1622 #: core/validators.py:122 
     1628#: core/validators.py:121 
    16231629msgid "Only alphabetical characters are allowed here." 
    16241630msgstr "Nur alphabetische Zeichen sind hier erlaubt." 
    16251631 
    1626 #: core/validators.py:126 
     1632#: core/validators.py:125 
    16271633msgid "Enter a valid date in YYYY-MM-DD format." 
    16281634msgstr "Bitte ein g�s Datum im Format JJJJ-MM-TT eingeben." 
    16291635 
    1630 #: core/validators.py:130 
     1636#: core/validators.py:129 
    16311637msgid "Enter a valid time in HH:MM format." 
    16321638msgstr "Bitte eine g� Zeit im Format SS:MM eingeben." 
    16331639 
    1634 #: core/validators.py:134 
     1640#: core/validators.py:133 
    16351641msgid "Enter a valid date/time in YYYY-MM-DD HH:MM format." 
    16361642msgstr "" 
     
    16381644"eingeben." 
    16391645 
    1640 #: core/validators.py:138 
     1646#: core/validators.py:137 
    16411647msgid "Enter a valid e-mail address." 
    16421648msgstr "Bitte eine g� eMail-Adresse eingeben" 
    16431649 
    1644 #: core/validators.py:150 
     1650#: core/validators.py:149 
    16451651msgid "" 
    16461652"Upload a valid image. The file you uploaded was either not an image or a " 
     
    16501656"oder ist defekt." 
    16511657 
    1652 #: core/validators.py:157 
     1658#: core/validators.py:156 
    16531659#, python-format 
    16541660msgid "The URL %s does not point to a valid image." 
    16551661msgstr "Die URL %s zeigt nicht auf ein g�s Bild." 
    16561662 
    1657 #: core/validators.py:161 
     1663#: core/validators.py:160 
    16581664#, python-format 
    16591665msgid "Phone numbers must be in XXX-XXX-XXXX format. \"%s\" is invalid." 
     
    16611667"Telefonnummern m�im Format XXX-XXX-XXXX sein. \"%s\" ist ung�" 
    16621668 
    1663 #: core/validators.py:169 
     1669#: core/validators.py:168 
    16641670#, python-format 
    16651671msgid "The URL %s does not point to a valid QuickTime video." 
    16661672msgstr "Die URL %s zeigt nicht auf ein g�s QuickTime video." 
    16671673 
    1668 #: core/validators.py:173 
     1674#: core/validators.py:172 
    16691675msgid "A valid URL is required." 
    16701676msgstr "Eine g� URL ist hier verlangt." 
    16711677 
    1672 #: core/validators.py:187 
     1678#: core/validators.py:186 
    16731679#, python-format 
    16741680msgid "" 
     
    16791685"%s" 
    16801686 
    1681 #: core/validators.py:194 
     1687#: core/validators.py:193 
    16821688#, python-format 
    16831689msgid "Badly formed XML: %s" 
    16841690msgstr "Ung�s XML: %s" 
    16851691 
    1686 #: core/validators.py:204 
     1692#: core/validators.py:203 
    16871693#, python-format 
    16881694msgid "Invalid URL: %s" 
    16891695msgstr "Ung� URL: %s" 
    16901696 
    1691 #: core/validators.py:208 core/validators.py:210 
     1697#: core/validators.py:207 core/validators.py:209 
    16921698#, python-format 
    16931699msgid "The URL %s is a broken link." 
    16941700msgstr "Die URL %s funktioniert nicht." 
    16951701 
    1696 #: core/validators.py:216 
     1702#: core/validators.py:215 
    16971703msgid "Enter a valid U.S. state abbreviation." 
    16981704msgstr "Bitte eine g� Abk� f�en US-Staat eingeben." 
    16991705 
    1700 #: core/validators.py:231 
     1706#: core/validators.py:230 
    17011707#, python-format 
    17021708msgid "Watch your mouth! The word %s is not allowed here." 
     
    17051711msgstr[1] "Keine Schimpfworte! Die W�r %s sind hier nicht gern gesehen!" 
    17061712 
    1707 #: core/validators.py:238 
     1713#: core/validators.py:237 
    17081714#, python-format 
    17091715msgid "This field must match the '%s' field." 
    17101716msgstr "Dieses Feld muss zum Feld '%s' passen." 
    17111717 
    1712 #: core/validators.py:257 
     1718#: core/validators.py:256 
    17131719msgid "Please enter something for at least one field." 
    17141720msgstr "Bitte mindestens eines der Felder ausf�" 
    17151721 
    1716 #: core/validators.py:266 core/validators.py:277 
     1722#: core/validators.py:265 core/validators.py:276 
    17171723msgid "Please enter both fields or leave them both empty." 
    17181724msgstr "Bitte entweder beide Felder ausf� oder beide leer lassen." 
    17191725 
    1720 #: core/validators.py:284 
     1726#: core/validators.py:283 
    17211727#, python-format 
    17221728msgid "This field must be given if %(field)s is %(value)s" 
     
    17241730"Dieses Feld muss gef�ein, wenn Feld %(field)s den Wert %(value)s hat." 
    17251731 
    1726 #: core/validators.py:296 
     1732#: core/validators.py:295 
    17271733#, python-format 
    17281734msgid "This field must be given if %(field)s is not %(value)s" 
     
    17301736"Dieses Feld muss gef�ein, wenn Feld %(field)s nicht %(value)s ist." 
    17311737 
    1732 #: core/validators.py:315 
     1738#: core/validators.py:314 
    17331739msgid "Duplicate values are not allowed." 
    17341740msgstr "Doppelte Werte sind hier nicht erlaubt." 
    17351741 
    1736 #: core/validators.py:338 
     1742#: core/validators.py:337 
    17371743#, python-format 
    17381744msgid "This value must be a power of %s." 
    17391745msgstr "Dieser Wert muss eine Potenz von %s sein." 
    17401746 
    1741 #: core/validators.py:349 
     1747#: core/validators.py:348 
    17421748msgid "Please enter a valid decimal number." 
    17431749msgstr "Bitte eine g� Dezimalzahl eingeben." 
    17441750 
    1745 #: core/validators.py:351 
     1751#: core/validators.py:350 
    17461752#, python-format 
    17471753msgid "Please enter a valid decimal number with at most %s total digit." 
     
    17511757msgstr[1] "Bitte eine g� Dezimalzahl mit maximal %s Ziffern eingeben." 
    17521758 
    1753 #: core/validators.py:354 
     1759#: core/validators.py:353 
    17541760#, python-format 
    17551761msgid "Please enter a valid decimal number with at most %s decimal place." 
     
    17611767"Bitte eine g� Dezimalzahl mit maximal %s Dezimalstellen eingeben." 
    17621768 
    1763 #: core/validators.py:364 
     1769#: core/validators.py:363 
    17641770#, python-format 
    17651771msgid "Make sure your uploaded file is at least %s bytes big." 
     
    17681774"ist." 
    17691775 
    1770 #: core/validators.py:365 
     1776#: core/validators.py:364 
    17711777#, python-format 
    17721778msgid "Make sure your uploaded file is at most %s bytes big." 
     
    17741780"Bitte sicherstellen, da�die hochgeladene Datei maximal %s Bytes gross ist." 
    17751781 
    1776 #: core/validators.py:378 
     1782#: core/validators.py:377 
    17771783msgid "The format for this field is wrong." 
    17781784msgstr "Das Format f�ses Feld ist falsch." 
    17791785 
    1780 #: core/validators.py:393 
     1786#: core/validators.py:392 
    17811787msgid "This field is invalid." 
    17821788msgstr "Dieses Feld ist ung�" 
    17831789 
    1784 #: core/validators.py:428 
     1790#: core/validators.py:427 
    17851791#, python-format 
    17861792msgid "Could not retrieve anything from %s." 
    17871793msgstr "Konnte nichts von %s empfangen." 
    17881794 
    1789 #: core/validators.py:431 
     1795#: core/validators.py:430 
    17901796#, python-format 
    17911797msgid "" 
     
    17931799msgstr "Die URL %(url)s lieferte den falschen Content-Type '%(contenttype)s'." 
    17941800 
    1795 #: core/validators.py:464 
     1801#: core/validators.py:463 
    17961802#, python-format 
    17971803msgid "" 
     
    18021808"beginnt mit \"%(start)s\"." 
    18031809 
    1804 #: core/validators.py:468 
     1810#: core/validators.py:467 
    18051811#, python-format 
    18061812msgid "" 
     
    18111817"beginnt mit \"%(start)s\"." 
    18121818 
    1813 #: core/validators.py:473 
     1819#: core/validators.py:472 
    18141820#, python-format 
    18151821msgid "" 
     
    18201826"\"%(start)s\"." 
    18211827 
    1822 #: core/validators.py:478 
     1828#: core/validators.py:477 
    18231829#, python-format 
    18241830msgid "" 
     
    18291835"\"." 
    18301836 
    1831 #: core/validators.py:482 
     1837#: core/validators.py:481 
    18321838#, python-format 
    18331839msgid "" 
     
    18381844"Zeile beginnt mit \"%(start)s\"." 
    18391845 
    1840 #: core/validators.py:487 
     1846#: core/validators.py:486 
    18411847#, python-format 
    18421848msgid "" 
     
    18751881"\", beim Klicken gedr�alten." 
    18761882 
    1877 #: core/meta/fields.py:508 
     1883#: core/meta/fields.py:506 
    18781884msgid "Enter a valid filename." 
    18791885msgstr "Bitte einen g�n Dateinamen eingeben" 
    18801886 
    1881 #: core/meta/fields.py:782 
     1887#: core/meta/fields.py:780 
    18821888#, python-format 
    18831889msgid "Please enter valid %(self)s IDs. The value %(value)r is invalid." 
  • django/branches/magic-removal/django/core/mail.py

    r2443 r2549  
    1515        MIMEText.__setitem__(self, name, val) 
    1616 
    17 def send_mail(subject, message, from_email, recipient_list, fail_silently=False): 
     17def send_mail(subject, message, from_email, recipient_list, fail_silently=False, auth_user=settings.EMAIL_HOST_USER, auth_password=settings.EMAIL_HOST_PASSWORD): 
    1818    """ 
    1919    Easy wrapper for sending a single message to a recipient list. All members 
    2020    of the recipient list will see the other recipients in the 'To' field. 
    2121    """ 
    22     return send_mass_mail([[subject, message, from_email, recipient_list]], fail_silently
     22    return send_mass_mail([[subject, message, from_email, recipient_list]], fail_silently, auth_user, auth_password
    2323 
    24 def send_mass_mail(datatuple, fail_silently=False): 
     24def send_mass_mail(datatuple, fail_silently=False, auth_user=settings.EMAIL_HOST_USER, auth_password=settings.EMAIL_HOST_PASSWORD): 
    2525    """ 
    2626    Given a datatuple of (subject, message, from_email, recipient_list), sends 
     
    2828 
    2929    If from_email is None, the DEFAULT_FROM_EMAIL setting is used. 
     30    If auth_user and auth_password are set, they're used to log in. 
    3031    """ 
    3132    try: 
    3233        server = smtplib.SMTP(settings.EMAIL_HOST) 
     34        if auth_user and auth_password: 
     35            server.login(auth_user, auth_password) 
    3336    except: 
    3437        if fail_silently: 
     
    5962 
    6063def mail_admins(subject, message, fail_silently=False): 
    61     "Sends a message to the admins, as defined by the ADMINS constant in settings.py." 
     64    "Sends a message to the admins, as defined by the ADMINS setting." 
    6265    send_mail(settings.EMAIL_SUBJECT_PREFIX + subject, message, settings.SERVER_EMAIL, [a[1] for a in settings.ADMINS], fail_silently) 
    6366 
    6467def mail_managers(subject, message, fail_silently=False): 
    65     "Sends a message to the managers, as defined by the MANAGERS constant in settings.py
     68    "Sends a message to the managers, as defined by the MANAGERS setting.
    6669    send_mail(settings.EMAIL_SUBJECT_PREFIX + subject, message, settings.SERVER_EMAIL, [a[1] for a in settings.MANAGERS], fail_silently) 
  • django/branches/magic-removal/docs/email.txt

    r2137 r2549  
    2727``django.core.mail.send_mail``. Here's its definition:: 
    2828 
    29     send_mail(subject, message, from_email, recipient_list, fail_silently=False) 
     29    send_mail(subject, message, from_email, recipient_list, 
     30        fail_silently=False, auth_user=EMAIL_HOST_USER, 
     31        auth_password=EMAIL_HOST_PASSWORD) 
    3032 
    31 All parameters are required except for ``fail_silently``, which is ``False`` by 
    32 default
     33The ``subject``, ``message``, ``from_email`` and ``recipient_list`` parameters 
     34are required
    3335 
    3436    * ``subject``: A string. 
     
    4143      an ``smtplib.SMTPException``. See the `smtplib docs`_ for a list of 
    4244      possible exceptions, all of which are subclasses of ``SMTPException``. 
     45    * ``auth_user``: **New in Django development version.** The optional 
     46      username to use to authenticate to the SMTP server. If this isn't 
     47      provided, Django will use the value of the ``EMAIL_HOST_USER`` setting. 
     48    * ``auth_password``: **New in Django development version.** The optional 
     49      password to use to authenticate to the SMTP server. If this isn't 
     50      provided, Django will use the value of the ``EMAIL_HOST_PASSWORD`` 
     51      setting. 
    4352 
    4453.. _smtplib docs: http://www.python.org/doc/current/lib/module-smtplib.html 
     
    5059Here's the definition:: 
    5160 
    52     send_mass_mail(datatuple, fail_silently=False): 
     61    send_mass_mail(datatuple, fail_silently=False, 
     62        auth_user=EMAIL_HOST_USER, auth_password=EMAIL_HOST_PASSWORD): 
    5363 
    5464``datatuple`` is a tuple in which each element is in this format:: 
     
    5666    (subject, message, from_email, recipient_list) 
    5767 
    58 ``fail_silently`` has the same function as in ``send_mail()``. 
     68``fail_silently``, ``auth_user`` and ``auth_password`` have the same functions 
     69as in ``send_mail()``. Note that ``auth_user`` and ``auth_password`` are only 
     70available in the Django development version. 
    5971 
    6072Each separate element of ``datatuple`` results in a separate e-mail message. 
  • django/branches/magic-removal/docs/generic_views.txt

    r2455 r2549  
    258258    dictionary to indicate the name of the slug field. 
    259259 
    260     If your using the object_id-style URLs, you'll just need to give the URL 
     260    If you're using the object_id-style URLs, you'll just need to give the URL 
    261261    pattern an ``object_id`` field. 
    262262 
     
    291291    Takes the following optional arguments: 
    292292 
    293         =======================  ================================================= 
    294         Argument                 Description 
    295         =======================  ================================================= 
    296         ``paginate_by``          If set to an integer, the view will paginate 
    297                                  objects with ``paginate_by`` objects per page. 
    298                                  The view will expect a ``page`` GET param with 
    299                                  the (zero-indexed) page number. 
    300  
    301         ``allow_empty``          If ``False`` and there are no objects to display, 
    302                                  the view will raise a 404 instead of displaying 
    303                                  an empty index page. ``False`` is default. 
    304         ``template_object_name`` **New in Django development version.** Designates 
    305                                  the name of the object template variable. Default 
    306                                  is ``'object'``. 
    307         =======================  ================================================= 
    308  
    309     Uses the template ``<app_label>/<model_name>_list`` by default. 
     293        ========================  ================================================= 
     294        Argument                  Description 
     295        ========================  ================================================= 
     296        ``paginate_by``           If set to an integer, the view will paginate 
     297                                  objects with ``paginate_by`` objects per page. 
     298                                  The view will expect a ``page`` GET param with 
     299                                  the (zero-indexed) page number. 
     300 
     301        ``allow_empty``           If ``False`` and there are no objects to display, 
     302                                  the view will raise a 404 instead of displaying 
     303                                  an empty index page. ``False`` is default. 
     304 
     305        ``template_object_name``  **New in Django development version.** Designates 
     306                                  the name of the object template variable. Default 
     307                                  is ``'object'``. 
     308        ========================  ================================================= 
     309 
     310    Uses the template ``<app_label>/<module_name_list>`` by default. 
    310311 
    311312    Has the following template context: 
  • django/branches/magic-removal/docs/settings.txt

    r2524 r2549  
    334334 
    335335The host to use for sending e-mail. 
     336 
     337EMAIL_HOST_PASSWORD 
     338------------------- 
     339 
     340Default: ``''`` (Empty string) 
     341 
     342**New in Django development version.** 
     343 
     344Username to use for the SMTP server defined in ``EMAIL_HOST``. If empty, 
     345Django won't attempt authentication. 
     346 
     347See also ``EMAIL_HOST_USER``. 
     348 
     349EMAIL_HOST_USER 
     350--------------- 
     351 
     352Default: ``''`` (Empty string) 
     353 
     354**New in Django development version.** 
     355 
     356Username to use for the SMTP server defined in ``EMAIL_HOST``. If empty, 
     357Django won't attempt authentication. 
     358 
     359See also ``EMAIL_HOST_PASSWORD``. 
    336360 
    337361EMAIL_SUBJECT_PREFIX