From 2d0588548e52c78e5213d262a5c4e5df1da3450e Mon Sep 17 00:00:00 2001 From: Malcolm Tredinnick Date: Sat, 16 Feb 2008 06:57:52 +0000 Subject: [PATCH] queryset-refactor: Merged from trunk up to [7122]. git-svn-id: http://code.djangoproject.com/svn/django/branches/queryset-refactor@7124 bcc190cf-cafb-0310-a4f2-bffc1f526a37 --- AUTHORS | 1 + django/conf/global_settings.py | 1 + django/conf/locale/eu/LC_MESSAGES/django.mo | Bin 0 -> 44912 bytes django/conf/locale/eu/LC_MESSAGES/django.po | 4248 +++++++++++++++++ django/conf/locale/eu/LC_MESSAGES/djangojs.mo | Bin 0 -> 1575 bytes django/conf/locale/eu/LC_MESSAGES/djangojs.po | 117 + django/core/management/commands/sqlall.py | 2 +- django/db/models/base.py | 6 +- django/newforms/forms.py | 39 +- django/newforms/models.py | 73 +- django/utils/datastructures.py | 2 +- docs/api_stability.txt | 2 +- docs/contenttypes.txt | 4 +- docs/distributions.txt | 2 +- docs/django-admin.txt | 6 +- docs/install.txt | 2 +- docs/model-api.txt | 10 +- docs/modelforms.txt | 38 + docs/request_response.txt | 2 +- docs/shortcuts.txt | 6 +- docs/templates.txt | 2 + docs/url_dispatch.txt | 22 + tests/modeltests/model_forms/models.py | 45 +- tests/modeltests/ordering/models.py | 4 +- tests/regressiontests/i18n/misc.py | 11 + 25 files changed, 4555 insertions(+), 90 deletions(-) create mode 100644 django/conf/locale/eu/LC_MESSAGES/django.mo create mode 100644 django/conf/locale/eu/LC_MESSAGES/django.po create mode 100644 django/conf/locale/eu/LC_MESSAGES/djangojs.mo create mode 100644 django/conf/locale/eu/LC_MESSAGES/djangojs.po diff --git a/AUTHORS b/AUTHORS index be18d21330..4771be0496 100644 --- a/AUTHORS +++ b/AUTHORS @@ -168,6 +168,7 @@ answer newbie questions, and generally made Django that much better: Rob Hudson Jason Huggins Hyun Mi Ae + Ibon Tom Insam Baurzhan Ismagulov james_027@yahoo.com diff --git a/django/conf/global_settings.py b/django/conf/global_settings.py index d722fecd23..d7b40f7778 100644 --- a/django/conf/global_settings.py +++ b/django/conf/global_settings.py @@ -48,6 +48,7 @@ LANGUAGES = ( ('en', gettext_noop('English')), ('es', gettext_noop('Spanish')), ('es-ar', gettext_noop('Argentinean Spanish')), + ('eu', gettext_noop('Basque')), ('fa', gettext_noop('Persian')), ('fi', gettext_noop('Finnish')), ('fr', gettext_noop('French')), diff --git a/django/conf/locale/eu/LC_MESSAGES/django.mo b/django/conf/locale/eu/LC_MESSAGES/django.mo new file mode 100644 index 0000000000000000000000000000000000000000..c001bc8268707d27d9e777de8c9a555171568b44 GIT binary patch literal 44912 zcmd6w378~BnfH?$nnSrkj!6cF?w0PJgMk^EVW8)3n2R}JKyb+J%I>bI>Z+!)YG%4! z#1mNs7g13Z@I<^2Pu64Cb6r;jb;Wa6@nA(+T~|~TT~@!}|BcA3tUiWu_xqmbt7o$R z8Ih53zVTiW8T0T_`@c5ew|L(mI2rujkwNeT_jjDG*dQ328w9V}CkUm%?LJw2ZEP@`+--3hk=oguYd;=Zh(h?&j*$6 zMjyTjRQqlNmF|P!Gr>=Q2Y?TN%Kz&={9W)m!ao2H2d_TI^-Bq)iox~Z{@{l|z4uY@ z81Pfz5#TpKwf_;1KL=Ic-+-rr!MQbIvrm9y_+m+w)a>UAop_ve6W$3jr`SP82BSAcqd5L7=FL6u(t_1-Q} z`P=}izBhyK18)a6f@{tT0{#WJ^Jf@*2s{=%zt`3OQc&YI2tEtE7S#CP1fB-I6IA(M z0#)AEK(*rs{`r4`rw~5!{2-VO&IQ$fn?QyzxDs3i-U8B}BJlU1SjA!jdjBd=^gIU6178ZN9`}Rl z=O2Nhi{FEt;K_ZiKC3|0dlXdr-vV9&J_L?}vzEE>z8Tbb-wHCM!5cx9_YF|=@ffJ_ z{|%^q|0B2++;_R7zipuEF$k(Z$3eC8HQ-M0UQq9!vBL3zvp|LCg39k)P~|W6@vFgo z39ko57nl0@%R$xWxjsAs>isInzhD=C_6PqCRJzZAnjc^G;ctPf3I7n(_;##xd}T4H zeC`L;?oWd1_lH2y?N33ae*!!aJYbc>Ssu>=)$f}@jsJC^=GiTv@_h@qKlm;mejljz z-tXf-1u`VTKY*fx1F59aUkU2{?cf36FnAz13hMnjco29UcpCUpP|xoH#oyis9t3^@ zR6l$UOu(;z?clOCuAVzUJ%1jk`Evt!4*2(=%KZ(vANU7Q?fh@B8*J})Y0;(Tx0yVC00M$=-g2#dH2Q{C*;KTb}90X?(eikTxunIf`+zP5+wu1+Q z1s@&-RZb05ITPTS;EkZ>`+cD1!NZ`+JBmr5_)bvyYy(yA$cINj)$>|V<=1`ui$RU+ zO`z!EPEhoIFL)~WPoUEO6cio(4ivo{y4KZy4tOZxxgO64RqxfH>b(Ix47?gt|Ly=` zA;IgxE5L7q7lHHF1;OQD4b(jQ5*UJyc-()zYyTXODgsi*1d6`y@$v5gMF$@S)z2RT)z4o6)xSRj zMK8Yvj|Tq)()8e{Ev|kMsD8Z%Tn#=7itqKn)MkUjpy>YPpz^r|R6X7Rir>E#RC_-O z9tD0GR68C9)xMvCD(`px`O3>&J+^`Bw=$@F6Hxtm9f&9jegxhJp32~=ysvW z{@;Rn|4IM+&!F0S&^A}!qd`4C5mf(#pxQYH6rC2ptHA5Q?cn#o9&ic7B|0gA^T5CL z_%rZ0!Y5wo(#-?KXSVzB3qig2e()UdDex?C!E>BG`CPD<@bf@OEw~>%9XyaqoD4o2 zRQlE6954ZI0B`r<@M<@%t3bLkxCWdH-VZJW9|b=Mp7dPTzOR6)?_=Qcpc=UVH~~Bt zyaZG^F9J2r?*z{TzYHz{e+{aA&%Va-ueBgu6kHDWgYO6F^5Bo4>ahu;)%h)((<90~w$~^~EfAoWz7vtbCcmt?@{UtaAp2;7Te>13jUIkjazyk=s-G|=| ziVu7UJPG_fsP}#Z9uEElRQbOFPXT99*va4p;BxRv5Yh@xmf~xP;p!jzIRDbURRo*K=wfFVlzTllc{AQ1LgDUUcpwhn&RQo>R z@$=xJguenl(n3IF=1TQAtZ$a^;3$Jx_bv3w>@U>tM__tsu_$YV;_{^G1H_PMM z;4#Fn2G!43c`SG=gCX&CP~-JlumgM#cp~@>5K$cb64W^MCoaDVsQ!F0sC;h#H4k11 zs$X6Us-5ouRj>Dh8lO*r>dyy!_@BYE2tVw@ZFR>-j|Y|S0#N0jga; z@c1k6NW%NW4FZxEnl{@FMU8a2%CY&DiN>Jt84eGs* zfhT}p08ayd2%ZV<`#jf=ouKM}HmGu!gVKk#fFYQGbHLYts^7=Kv%$}TYr)@v^TFkR z#oPiL;8ySfP;@f;I%oon!1KU2fy)28U|*JDSO(`p*L|2M56t_z6(s-Tq?NpIzVu zgcpLE2Q`l`^Uv=9MK5m$Bk(>@<8|aq9G#v9s=V_+@sZ2GL2wMzJoyH=Klm_sF!+ea zUx3Q@36H@`U40G(mF{RCKG}!Q@YoG1-*Z8Y^F^TO;xhGnX-Y?@gD)zpPvNx1-}leAHNCe{r>=0fd{|B@wW}2=5ZC&xV!~y1K$U# zA3p}Fe?IBMp9j_MFM%rOYhVZXZ=m|+@S7a=fhQ4efNIC9z(c@)1l7*3fhy-apz8Su zsQexU4+H-Q+I+m(#h(hEN&Es(^Z5!;!7qT~Yu^ObUypkHPf+9a zBq%<8#4BC>LU1+Vt)TeBo#0~dci?ltxqsuzc?EbH;k!Zg=NCYY&yT^4;6Aswaoq&= z5`G=H2>d#z`nSEx)qg%Hy4V0JpIxBJyA@>01YZW%ftTLu`t42Np@iQBJ_Gy+sB!!} zsD3)^)oy;A4l3Oe@Ca}XC_ZtykFSFRgkJ!v{~q!2Pl6hs{a@qsvLir+j{-H`Cxfcz zY*6ER0eCcc1*q~yLCw=~Q2hQ@Z~^!LDEjy_crMuSTIL$K9Sp%YfugfdgQBy~gBq^~ z{PS;uM-u)WsCFKFn;YL*pu*kY2)F`NeeMNSzt4cG*Y`a>23|$@3GiZY)9a9J;GLk_ zx#0C~J}d$EBYYJoI=u!|eMUg#cdZX!2R@VV4WR1%I#A<$7x--OTcE~opW7Y3+yHhH zzT1Z%0?#1a`3C35Sr3Y?t_MXIZvkh6Uj*lZzW~*5C%@6jovT2#^F`os;9X!Z_z`e3 z_$yF!x#A9&&mgFAxB;96-UlL5g0F&lfAgJ=E_Z;J6TT6g2mTN|4?OZN=O?%XR6ZX9 zHBY|>o(Mh$o)7N#Cdbb%1m_UG&g0v_PQqUVRnOn}aL=1vKHI=y;$!d<@ImlO@Wi*c zeyxM**Y|q-HmLcu?^_*xcY=!vuL75Y*Ml05&w*Xwe}NkJj<>mSNx&_HKLcufk9)hL z!&#uhXMm#nZcyWUwtwCWs=qGu@t1+3pQ}N=Hw?}K$H4u-Tm19ac)SbTNc=m&4)71) zRp9Kq-TT*rhZDXL)cm~-)cD^G9t(aG)O$bo&yRVB(^F3OxCvA{UkDxuJ^;3X4}lu5 zhrt8DpZoa7LCvqHK;?VHJ+9u1K$U+!7=jmrv%wO08u&`EAACQkarz^;65RSuH&5OO zo<;Z`Q1tT{`p%_^LPJuyL^uY4a!43x@A7R8Pxj` zsPxx@s@HB%^|%St`?rHC_fAm#{SHv=eJ`l~{s4Fg_&Kl*d=NYx{0^x1p8}OGc#rdY z90jVpIiUKd3)K4yeRwH&DB)G0%H8DgIiT_>fXa8L#|e+m2i3k8flBvkQ0=}OR5>34 z)vix~hl2kEDxYt7{0^x0eGgQ*KL+*Q&wcne9-jh_C;ouis@Y?OP41 zUF$*Rw+&Qz5qKyVgR0-P9RjyUXKSJ-!1}zrPzi47?9i{r(PA{{H}~-4B8% zfIk2a1E2JGz`ZVfl*d^fyF8xfah1o-pxSW_sCEp4%KutW^!H*Pe=B$j;XA;yz>kCK zk4Hh#*W;ktv(Nineg}Yh|1ePPJqa{A0M&mBL6z4FDxVdg-roT318xRYkFDTI;4r9u zc`|#)DdJgzQ@Xg>uT#qQ8=NEymCjJKSw_N&t&Z7&#+emj4 zfwPGJ2{;B0ab3s#`@nN~uHPZt?{v4pvBW)t@Q(?<4g3@Mb}q@sySc6)?yo@c&ofB- zOrHl`98`Grci`*5KZCypnPT>vPr5EqLPTdj=>+;c!gV_7KL9?)wbkdtZBX*}XZm`cL--wB`*Zyb&#&QH!F7~R_b4cx zp_8l1^*q9V>z{oWd0A(v%w3% zLwxP%+9+SY(5E@Y1%n27J=bx>pF)~{^zm;ed<*xOefIl3f3GI4i%Wd? zAn-JB5Da;*$5J7WJqnKX_iIS=*IeJ`I-BbxF3G?hTqT<#Z;*Sopb@AF*$ zNZg6wF`#}6!3VhJx?u1X?*HE3i?2WK(_PH{1>BEvy^i}Qef(nXujabYhq<+17k|IX zRp46Ab++%X_1x>XI+wmi_@ji|!LNej-~iY6xHfa?_bcM>bGN}4x!=LHknmAH-_H~N zPyhVK+>dZSi|a1#5y|#Dh`)a(+|ISq$9)uh58)fYo!~h>zeoM^&k&dXUd8flO$ALRb$T&sNC3&3u!x02v@;JsW&rHR40)ag0k2Cgsg>}+rjasR>n z30(Tk_4rxtUurSVkMMlre?xeb>lE(y=e>ygJA9gh2)~s0`GhCH2f-)(vo{hxi~D)t ziCp^K1U}Q>EBu4p{dc(kBiAp9e~N1!*MVFgCT;=vGoSWL+~75hvc20x>F;`)HY!0CQR5dT~M;A7l>jqB?^T=eg}+oPg8 z=$lKxkNCJ{xo6)d{%;7kljc;eZG^|T^t+1d6+Z2=dDcyM9oLVzP9VI9XGQMydkfbw zcIW=QmS+cW{R5YNout?A^@P8ycxiH2AN(ix+x`9DbHA4RuY>1+Tfp>J=Kfheyd7M_gMGh`%TQfcqa3w}`Ue&;7yN zpT+%i!GGuK@HqfxC?j_XNRSg1wAVSOYH%f(75tXISFYNM8=N!sewYIz{4b%oVhSSt>X)Vl}E z#X(Z0uSAtX7!?X(u|DlX@+x(+kBRD=DhQ zm3HdYpyc9En{`{3e=(nFXU~$kV@unDaM^e`r(>vCrm*exV!a%9CSfppPDfO)*E*Bg zVYQ-Bh)E>iA=yL~x@2cmF4D^+D-KZqp0H!B(lMU3dJ^s`)<;6Ju^{>MbOy7R%%LU2 zoypRt&6Q+NpC8q3l*`*|andN)w+~hul{(d{SLv-_PDiCNIuO@73sk&5K1Rifs}Ag7 zut{XKtB=r>^l2ECYjIQ<598f*Y7!37sUnKu;?B52s-a?BE_5b6%4MuxiAL2G`D`qK zk8jOO?<9lOT1;gaEz!V$I=zulKUFI!PUzXdcs*_n=^@?Rh&y}c4}}B8a=BQoJZ;?Q zH0h>`W8kJ{*o;(>tCt0HgqL_+2PR>m8Yf|;S`VYKu{ffijJ~6=Q7ex@4^VCBdOGL| zryGd*%npqiEwNEkH~6R|STb_U`Z zr;{&7oypUaQ(ve7Nyn7gt)K>U5^3~M8AtnDH?7rd@Ke3OgLOgQU|nO>S19OG^Nmzo zATdzBx`}xVLG_i(y21i8p9Ga^Wqh>SNUZooJW4&i6Q0AfaZ45Sjg5tKYBmHzkUd3> zF_uAJEgC2e3U)^Pb1raA4#X}hOe=4+e`Mq_bddpcESUl^)# zj>$1A%H^tYv07Xfr-H-AqnZff;V~>sc^7(HO23fMa9n}#V;INgu?V&`67<1F2C6&b zt`P1KR>$HBbC(Hcd@WqjF$$LDq>KV(Rj6Yntcro(QsYf1XjN2B;?8Lwce#g3 zwH|sSQ7xJ%mWxp(Sk@>HM>X9ok1A1ZJnT=(NTGyaQZJTi7b0nG3~Bg??zK_4E~*TU zM8v?d>`ky*p`y!2qRMdWK@D>eAsh>CKW=UHQKOPkNwTY2E2ODr3g=$y^=TamE+2_a zdP2+t)!h;%8VLl)D8nWaFIJf9wJKD`p!bA*;p{D9o@t5^ zyn76l4Si!ggnH3?e1k{TRau6+Mq-mtG)=H)d8o?Wts-anD`YwZ{@^3m7Og!Jmnr>&c3RYAH8=6AUpPuJKd2KV9 z^vLNR)I!QiZ?Li;WmvP; zja=9<=;njxuAS4QX!2g3j*ivGXQ)C5|BQQrm6hSLSo_L~2^~)jJn~g`!kK6kDzpec z5#S4hF`c@XZxx4&sAmH)og^(>GRIA*u_{FI7iJ^HUixD0H9E-pnHfP>*F$7PQb$sv zZKI>Xu4~aCDozr1(4R_!VvLxnk8~C~_mItK)#VcH{vYK+t%lK0DVR3Xe@Gw<4A=DB&vUX-!??qaxhpHHb3&Vm2DjZX@2df364)+KW zfq@TsQd0gdUc{D4u1x*5nY#olr&<|a>QrW@t1Ox8BXb#;#@`H6cCn87?pbZi1IFB{ zC2lDqk{-ceuji+}?bA(PU*F!mvu)e9kgJ*0DTm9q_HR+{+qQM{)PCLDly@2u`f?|~ z+rM$=!gL}}ezvt|bB~NH_(3!

XjWlHo2>l5JW$IZ6tqYIFs^?sejqL??Ix5Mu6oCVSDKxp5}#lPn)!v!9)>n3=>n8&&>dJ)LtbrvQAT0E68!1 z@k!X!=&*97Ax0TrP&tV#s%)N%$2u#3&JK6Rwc?OuU5=pLY-*(#G?3{_*&U6JmE+#9 zeJ;5+>T?IH2;af_-1Z)H?GlB{F#^jpZ3oU?kk%p195)JjJOQ-!1aA%v%kmn+(vc)i z((JY?)H6~aEt7A*C=g~_Or%DkB=0O@*>zc;dRL7p!Emy$y_r=Z9*Qu5eJ;VOc%Vmr zY7J}$ZsIZuY;1Lf6^kIPkgVV6+F|4!-XyOEsY<=UDtRf8@FrlrhDIc$g<(FTJ9sTn zF%xW6v6j@kLKGC^+2XaDch(_kNj>3~k+{+&rLo=Fc+mjaQEV)Q!pv=B(s)G}H9Brp z8B1Lb4hkwu^`@34n^To{Rkg;Hla}A86wxV=1?#a`QO*M%4Oj6XRGgBUR^q}LAB0YN zm~d*P5mW@!qb_UAu2^+PEsDMNn`UfJ{d*!#$sn;6nn#wj1%mq^nTCVVP!&2i|D^S^ll&EU$r>Dw!I}ovt(lzt8&hc!^bcZ~ zR|>cRnuLio$G#I$+B`*n9*zs$%zF)7(|At@R*p&|UnBFNe{`%`tIK&HxsU|?RIk9; zGun>&@^(WK(gyUBOs#iQf%#!XVlx5zx*85M6q9X(VOXy$K@nFpID*DQSE5_aWkxzH zw1?8oN(8-_UBB_-Ou%Q68&^$@LmumO_ZqGnvxd{K^-$6nl_U$7_pfTEY9ux61gi$DG857ts2lBNXAofWvZ=YwO#b!~qnkJq?P?+%R#4_J~ zL5^ZBZdBsn5*$}iAqp-T8HMFsg0@am@Of-1R(C|))KOfBkjt3)5tXLcHQuOLYt~-i zAdH5iB5x4~dly2<{wB3 z$HcGL4DiuiGM=juFNnLVVUCyJS8}!Jq4-^KZBVab!^1;oYQnk=>$j}gzM}7n)VaXq zjtg@1RDz~hvT9@NQ6|-t5+s^$S|AubIEeXM#0j<+uQ`ij(pxpS**e(RIwXHN^-ktI ziP8pe^~k7+V4$5fmy&wyL_k{qczq%DY%00grzW$NuUnCDW-~m(iGp<)z+7UX>&8Rp zB~5~q@2}74{=LEaD*xyKlVwi)VdYvBow5s^A!!VZ7U}XCqr=ptrC~+QF;R)@Ld;bZ z3?<`fAWIypdM3)&0KjgCh^}-qQBg()n}(1Lu0%XsOJ=txPx%3xox`iOUGcC6c71iH z3fSqqJ{txxP5D!m3uprpAeBJ9!3Hv*bmQ=Tox!_f>FKnW_cj?XFtb@z$mfcHRhv^k zb=tFZq+2ZVeaSnp?Ts5YZ*hd|8|tE?^4JIzQAaz&a%x(^az?cF$OcmcScBP6gBGZ` zfIbd3t_wCYjdE`5jj7`@y$L&Pf_IY8xinRjJfV}q5CC&HNmu}y{HTz7RvzzZJ~r_` zDJXK7lT41BCi7mUsfUY@f#aml{A6~YXuOF_sw~$rgNCZX#+(e<{W z8Hkw;m49_oYSXz}QnSRy8XbJ1=mZ<>bQ)~|V>qtIE6IMB_ZLZ&ItH&g8YVpcQt<+RnxRU>uH$;J1V zRA+`P{)g2t7oRgv|7VrRWw3Wun4y@V>Fl9NY4gMm6*8OgU@?zJ@fb4=V!2@_y`pUh zXenNdWg3Gdlg*k*$^HE3kgV%WP(7LZTcp)#r5S!;*eTU%3RiJccaIs!A)4l($vT-a zxhzcCktHY&8yv78AV~}OjE1fFGx=1`2!H1mgm>^kX-N?JkItAM}3O(V9s)QxWY+8Q1 zLi3X`FAF5 zZCVz$r8fme>h-bSxpR419Yy!;On9eOM#68D?+?AnrzKph3>L?*8Jtbsm(=OYCy0>Ah#rkfDl8&@-iQ?9EwqWSqPL?Fpa8Yb|!vt z(~8;8b6MaCyx+;#3&O%jI5 zxn7wYT7uCO^V(HYLADg|iAmWFj#MGlo@{!^Wi)dpF7+OA`QN>6O>t%XFRF2V$Z{l9 z8+9h_X*Q;``r2#1%x1s9i{4YN7spWGVK}Tg!OKLsat@LN?O1=Evb;I24cO4fH9Ugh zN-e#HOXAU`9p}uO*STaaccivwZdo=T2rW^td4x?~D5mblFM0K^u%L`pEpOvWsMNc~ zCX90MMrrdvzq!Tt(tO@r#Nmj~lIgr04y>uZS$n(87H=*MZZ21MMx{Uy8+C8i&M{kg zfm&*2g1~TE6tc8KQ|+3L#Q`Ltfee9Z%>C^s>nmSn)2czPOi-0c*rXiEm!OH30|70mdAXR7}B%%wg;J-9`*_PCjS093XE#}N~oWxHticE3KC z(5gm7m$4FTIK7bH0I(%upH#3VE;oi7!0vj$JgMMUka?J}MaAq$iQ7<%Z(_9O|M&aA z;_&i#00#@>U$0U|PyY3W+odGAL4woth*j{Gg^>2eNk*!8TE~TAq`+z zrBCFH@H9MavC|~?g{HkSO^U`Cv_EaNwByXnf5sc3SRq-R!SGrZUUkRRwuq^XFl*qS z@MzEL#Oh$xu4v0Ex0%oR=$SOB{JXTlp4u&1-_nvsbuZsya|??j)?2;==5K^Bt(H*Z zAik1&=+zc8hfoj-xz&>}c001#@mfm7X_q76lEEr#tHgQRID<5*~_r*XJ*Q7kp`&hcv;Cns^Lcp~wxX50nV znvB>MA>0l_#oZ#U5prN^hB*djyq$HTA|5jvL3%(#2(x9Er@5JVf67p5c>QJ~ZrLfu z4#=J9`%=ky$q%Sl+CWk*vt5`zKm+JV*Z(>-#8IdXy;f!>6^*sFdnMQ?mqJnk(ClML z&78nFZMs(~v}7b&@)mh-^XWxKbO6cmg_mN+W!#wSUcY3V7|Ywt1D~6z!w?S*^m|%6 zvr_+`Wt>dO*%2;%F5Q%Fuh5;MI=UdE>C7H$jZU3|Ey+_?mD>c(w!my3v}Q+Y=lM={ zCG7bX)obS0Y?jzuZJ&ceX&JWE$5%4J4+ps{_IAbeNsz8G^y=Y!zZa#YnpsXHGpEV? z`Kgsc&b-oeaZaDTSvbxcg9dATISTJZpHOdmUZaiD;%m0t9C~c-@4Qr9;E}uIA^A-)Bv-uA@HpIW}_e@_*BAP_Bk~Mz|;cm|G3~ftB*jyH$%XZ63J(-)p90o^NVs}k94ML_kt$_rYdh8la#B$i- zKtnN?oH^K%J|&wd+s@_sc7{Y_T6s}c^72`ayJE9!BoJ(&aQeq7ZOrg`x&Z^zdwjhsZ?9|4jf{`sjrmJ!(UJ}B0NY}r?6Tb!HiqL+5~GRgJ;F+ilyqqy_NO=4 zB8@uOQe)4CycRgxQ-fN*2NTd=jnz7I3VwpL0N z7UhGjwg880a6SO1&4d#2CikUuXKQp4KYrN7*qBF_+=()IoEliPc%Ym{v{l5DufpVw zoPI@VD{iRv=S1b<>eXjFCyB~+U?kqnq=}RI)usy}f{aZriNcXuJaobARH2wVd#O`` zb1DWV-jcb|(w=~fYxYMoIlJl2?vPkca-<|7#j^dP_9idv2`-B;rnK*&xqm}(cuUr7 zS=ahC1Uvn4|FWIODKN~TTHM<KY%RE4nvrw6@zq0pY2vE3 zMI`O+Q~{f0#yQI@U7<8{rpawt@`#H&jfvw-@@g2x6m;Q05S3pZm*Janmu?_tzHTsI zL2$*&zD?WRYO>$5eucijNx9zq^XAPH@nOTuB)%d}bajRO?W1NX1~RNzcTOb|^qAZ3 zZPr%0eV(_y5tehZsdxQSPWp6O6OD)J>}E?%mibP~iK|@y;~Gs@{MR0Ri;yr%aspBn+KdI^K>zn3i zZ+lzUKT7M{h1j#@G0i9uE)91Zs(OQ{hZS!r=S)2*&FQ^77^lU-xc{ zX=ZE@H?E6>@gNuCP1RS*0Pl@HDKWhy$mu9S>$nE7J`fGE%^kjO&adxs8j1%3xI2@k z7i3SI%X0`bCQwiLR7@-56N+Omc&xAbG6w?58nwVS^rfAY4Cq;Obu??jnWuk%Z2Xz2RFKP0?X-m0iQMmJ6Igwfy1j5vEUe* z&pm&i1Z;Ig5vnpP+^vnG)J(H5 z>j8RLz!y7XqWW~^1Wk^YyG?Y@+CApAl|9B6L=c%RhPV%wUA))5PoE#8cMGz+v$MN} z+1)wW-MQJ_qU>&QP%8vD>sVc)w&{)S!fJ+CEJ~jw+{wYGvZ-Cl+K3gqFND{mTXvG3 z)H8RDw?mS^4Zi(##LV{Dz%O&9s0UFND8=LHJ+DjE4@_R`4-v)P0pH*mU$7OC25}9# zQH&^!V7EbUfJ>iQ$|Se0#XfR!cbYmo=Tur}(y^T~urHDW^QQ8bJu+myrei-y0U}>!G$y=8NfGmkbvR-OC!oN%xj&Z`ihR!@|&IE@M-y zoNpQ)n`1B7x@A@O;$}J(Hx$>pSNbhfz2V}4V!dr!_iDH8PxZKDnKp`r^Lysc?^)P3 z^&|gveAOQnwEeGyaDrl}|3qA3izog$^hkLGqi{kSvvG9AFp|2IfeO677V+u3`_#X) zr)`5&b^O9gA_igAf8Wj@kxdHbI32`|^EFktV@LS%e<2 zYN6_Cmn@C38EYBW;u0w$a%3TajguqAXqcVQrE2;mzMLy9pWzQfKBXY%$4~d_PzDo0 zb~}8U5ov@tS8H@vA?o2HQ=Z8=Riqbs<()TYn!dqTUbY8lHu6a#rc)mYxvc1KeX6$C zSy9_*zP=xBOw^0DD1Zh1Kl=Wj?|$hw>fihfpU>y{`%KUfu1QDpsFYk+0&PU0|u~IZ8j?wUuGk-iEPvHNk;av&!y}a3c z1v;IR3F?h#h7acR-^tSms7*a=A8?v?!pD{D<9TW6Mma4X(9b;HMneq-o(ZAJl#*sR zgzX89VQ({oTB)jqsJ15TOfGVk2g9IQSk%Iuf}!A4pmKd|1z{5`pR?0E+GsaXaAgsT zVIpeqEzRVwb?K)mAJmg6i=p&)C8BE@6Ad`bg)DNHRU*fKuxX=2sboiQ+9#TjdpbMS z3~@@A1*8luMZK;HxJ0ZL&F}3+>v1v$-(+2vPZVUgd!9BxBrQu>)Pyyce$rlM8qPLV zeOVBqozQfKjlmjd*q;f}sZ3JGb8M^n%0^P6_%-&H|Lk5Jlzw=h69WFjdU2}`?UZGa zo>7BK6O(>*pFQkKpBQ0|H0nw89C_HTwomU9zQkZM+a??Q5-QJqg|FM?`V61!8xR}( znh!Igi8{Jc$h3!=Q7hM`AK-WUN9P3+7m zxT1ZRe@XM9(t1LPn4Fr*k-p5IkPt)g(3?e3kY*&cmkgZf3CJLtu$UqvZ93 zlPdk#ECIr6X&y8cPw-`8Lth&=O2v$;t+bg3--_8GK%Hfbvong0>qf#+CcBpWGbkHI=ljMSZs1Ly@M$>B;oyEn?wM51{IJIH` zKRbUaycb+)t!9eCH%1|gV5OUM8Xn)Rj`heW#V0StcJloH|L$x3y{n;b-UKTFO}1pD z;N{d*E>uUAay-RUxe}^o!+0(%P7fg2VyUai(3%-puSz47C(=n0ZJsXqw^EL7a!6%V z#Ki2cbhZ-naD!EH8Eo#_V6L7YCGcG|})nsitq2>zb5=(rMRHh^#!*8PhWbtSvpR z&|pQiZubqF!cz= z03#KnZ&roPuXJs*Lj8OZz&4^lf>(@Ky*~jn5yh}v;wLO;H#r^KnuN{>^Y5AZjx9zR ziSp{yH%wPFS}`VIdcB0Q@vWIEpzV&+Wj49^0pDCB_hA@3OYdrlKWqTU4MZf~EFDa; zs|z*GA2widP!CPsbGCFsnro!P2b8N$FvxP%Ax(clu1J-vtD$H1MA5g@Wf=->I&nbCI4b}Eh zd{-{-mZJ(_+_bs1MJ?wPSm&r;T$)@_8SOG_HCfDX%OW|KphxEtsCc_wgqcU{njIlc zF-t!0X%nWCqS@A-K<5+K%r)9<(quMaj9m5QOzv6prE~zNQD=?gqsh`&?rTyxl-S~5X9cia+<07 z=ECWpV2ok>uWiQ$}|hL07YSyuPT##^&we9Y+Lt5Y8M7bZVg#=dyDBIGgl zHGo4|-XwJ_Hp{;0GSJr*u0F26b9L*di)>uC*3fPEBi_u6;=}_!l^5-8#krsuZ)G_4 z4Xw$S0Z;Qw0E`4==B&TGwdUCnjNH5Xw0?jZk5MXSWh`O<-pEoZ&IybPwhzilrS+mt zOvW-QJ&a1_$Ua=jiIV0iV%@-MSCW}x(@2LMsJ_@&#p>=TSj%YondaQ6CSVwG^TGS$ z4?4Z&g(JpWUJyOx#itDrRU=piVIzv2>B_z|oq^XG^r6T{drFQ53EoU zhZ)4Ufn7ViEyY;5{Sw_2o)&}KC~v8v(o0&H2baIbePWZ7PCxd&Wj3C*qo!GF78;Ha zUeHo-38!Y$e#=SvCbyv>{rnf4|3t}~K$n+?Kw2>Q511CeU~dzDFM z5@9kb4{u(Xv#q|H$+nKuLg~7|yP@@UJ~oZ49CHX`FVVZ4j?i=!L;R_mIQ3n(JY458 zKq)}X_+|0t*qB2YJ`5F?k#pG%1h!smLE0VlDP^)JFHO9Wg41n+fAZ%!;VR9>2|1|M z;lnG7YUwtZouAR2`QA)5y_Pt0 zgru%;^>v8_>PS+vC7BVRbC-J?B44=Zia}}QUrFO4&G1V8iE(IqBbQ-I0zA0VWEhY| zuxc&(VC_prbF)zk_adKu&S$`|mJ^R%0(CpIAqpnja?`|=utd@?_H$MT)6dqkv=Tfu z8@)8;*amZ#$U&Zam4#ZJwr=aVFe1Jr#Bkv2r`_0`{E^3+cKP+&bUlcSCNJ#yrMk?9 zn6v`iNB?+R9o>xsS*qm9;Gy8NoHgUKQnN-F-xI|>E8$M_iAp+kt%%Mf2P<+_lEH;k zuGm(rH3n-fUn;TP)8);;PqH}C08=%`dk@%%qz=lAOdZ-FBU+lwq?dJEgQE3V3Q+nu z>tk0cKIO?8jZbP8Xgcz_vl=q)XV!OCm9(a&1Zh#uC?78yA6uDc(2{4O47E|Jp_Dv? z{bZ++cV^C%iGPe{{dBJyFLRE-mU=wxdy{)QZJreEtab95`EJyDuk-!W-wn|UAM=*X zrz@Md-z7^0x#W^;T=}ym4G0VJ=?Mktm_hAsRi4fN*^Y;-&qkW|dMW|J1U`T&nKZN% zjqAROGt^ecjUqX3y2Z@*qLdnIP>L*o*wjE;dd*Ml+%4HonDZIg$Pj3OxmkVBL#3*5 z$v2JBEe%bsYOO|^x0!bLgv-o;lahmKgSQ4ruWck+Fy{yXuNS#f1l$5AC#gphw%})P z2Kns`PQ-{K(52ei(Oucwvjmz7x=9JjA5RV3DDGm+VHZwCxyih)hk)T`SQwu(izm2jF+t6;=?jpB*- zfzQX~_7$&b-`+k+h^4Xyt-OKlWwJo`PAaTr4;WVi$1#F)wZ_8zwcG}@70hJ2-+f>S z?2&0$%!zP^=nGAsMoJ%nlx*{m4Qs&MPq!rndP7}@%!Hxm9&nnxThjKfRbw1hYWgla znQVWBW(}H=i-z=^764(n7&l#PQe`tniNGiSYgY*M9+@zjY1ED_BbG3Rtvn49eLW?~b+k*Hg zhfQ}IzXY9xDmProfB4(JTm9CcI37|uu;RSBdH(JZK0r3oLoR#FQG+BX8BDM zwr>F{TbXU8VSfmu)zNyqKqg^3gZ^Rk%wesXLSGFw`C8xiH~*^vJ88fTNSW5-!DQQr zOguM2SfG%#{7vkY7)EdRjc4%)H=}u2{Q@+3xUE)Jd4y2zJ-Gq2Bhiwo%Uw!7r^mE7 zEp=$8D<7gkR^3g)q28I9hrqTDMj9f!w8M#6gNU+i$hMQhV$0Em+FIB=ZovLaplOs- z$j%mcQ{m0VvX0iBWi1rd8DxeR*_+j6Qrv8f3F~i0HXWv(si|i-lY6Dh_L4CP{m}M= z7aQA_`R)l4I?|?5rwYiqF{KXVYH4%XOqZxxwsrtH6F)1L7jhp6G>1uZ(|m<8UMHOm zfW(-9{k!cej;x{gsp+OGY>!#F<}^EnEbWY;5ceU|AkVK-y$e;VQP%!7zE(th>3K)SAj|icFRBmS@ndnJTtBX*$LN(N37#YJ%;%(hrd8?V%|W?M^Lf z51KlT>Fv&uLF*=;7=T+LZKUPN@d19-LSqAe_QZ?KcRozpUXj@X>0{||%QE$@=^?-{ zvyE5A)08B?dg1lYrt6HxXhj{pId3;l_q@;4F0u8Dw6z07b023kHE-^Rv8^TPI)jE} zBCMKT3eQACkov^7a5SEp9J+X4wayBc)aF6bk*bW>0qs?Lv88mVXw^~PX8eb4*zorBX^36c^u^$r(wivkmC0AZ~#i{;B;%|q|>2rjbcieD;wbuc7^Tfc>vvRR%^Ko zB|FcqHEp%uUurOZ(WX2a;gcc1Y9Q*(9Tkux5Y;sm5AATm3VXp}`Ki-P8?9%4Q~N1w zZ!Tr$3Pv<)hlw1Rl4er$Z8LIO&XfX{4AhqD!sd5p8Hn6mKf0}~CTsm}8P|ArU6;$9 zek~*QC2$h&m^Orqr7?Wwv9hh=o_u)#otmNMJQ=9c-f>0?Qj1HwYs9-{tI7XOUF2h! z^6nmAh0?T6lY85~t&`9e=|k%11F2IaO=Y`daOgk-{*!~0NWL!0o z7s1$$?b(saE^}Vb>(3SolWxhM<7JFH% z)HA%Sg9hfh*CzE5T`tB1Tk?CcW@w>ExC?s3)CSW@VA29(JDWE7Y2l0>TVcmZ&@9(x z!{nTpA9Nd8b+vc9?6gTOpPf}~`rKxym}STR2GPt@`|0v|POc*Bj(+AM|FnQ^eq=e< z@od}QUKY{$E;F;pv{#cgb&RGmhKrVPa3wh4HrOJ2hca!?lx>+py5V24<|B!U&Lx^Z zk3gwcrr#}iC4!y!`ewwdN8y!?R2EHMA(Q?N30rEJn@m^HlymVK<+UuUP~OxRVP6cVJC2~~lS`Ko!t^u(w_7e-W4Et(vQR$+#$v|S++Gjkpl)pm z4jP9SWi)3S4)CYD^9eYffJP&E{niXtBy=``>$+5Oz^J^3z<+FEM-!~oI*E9OEd--7 zqPXCMSL;sGL;rmljqx%`%LHpL|As?}yXL z_{)ko0?qbzgey7G3(2Ad4!FqwzsaDui6Z55Djb35bN1SBG z2tdeF4-ydFM|_yb2?82YIBmMIa|$~sYEcCapwC_^s4}8eRzhVG*@u1b6RdyvOz9^q zDdxSo&*(qrJu{c7*;vkJCg=4sbpXy-q@$D^M&Il(4Hx7!j2X60Mj6YaCH-em+PxuZ zpl+~2SjBI8e{BfO3NlfP8Ld1s0r#})<1mP97PtciB9uszeolLWX0)j1wo6WQ&*_Rbr7nJiz z%+q!m;F^LAv``tq?SqIXuup6h-{Yi<#)<)CZsVQu3{DNe_h3CD_nF?;|GwDNuA`iJ zhfmtLy4YxXgFjm3wFXI-dNZVtvtAfT6HRxPy7|XT_JlgcfwQb9*fBsl-gX;Lphc^i zP9bP&MCmyM+14d&ca-dWrPD?S+QUF@F57CIa|QT(4nwpza2a#tU_Hq8I#HghQ+5zR z{z!sW$3i-6wo^y*0tQy+bN@!J9(;qV|AJ#`OeyfL2nQvr4IGG3@`I{_2~t%cuwx0d z6z#f+RMIouI)SIZfW?@AZ$tyOlmuvcxO1CnrbLti7CYd^D5$ov1~DVCVCNF}xKgl| ztuSc~eiH%_#={LHhA)$VmoGL*VoU`M}xvz`}gsoP6Nid|**Nu$bQW9fNCL zf{bGv5Gi7#K7ze1a%N^>`Y=tJ%}a?CCCS^Z%)7F@-08QH*QDEVCZBu&=~4cPfAc5N6_|iQ&axpV4z5s@i#3$3Opw;*=Vdp wveC!3MwYUd)FYnON@)hZp1xg7CexLW0MbDMO>hBkb+Pan+5d&YC{~021CAhl$N&HU literal 0 HcmV?d00001 diff --git a/django/conf/locale/eu/LC_MESSAGES/django.po b/django/conf/locale/eu/LC_MESSAGES/django.po new file mode 100644 index 0000000000..0cef98a4d9 --- /dev/null +++ b/django/conf/locale/eu/LC_MESSAGES/django.po @@ -0,0 +1,4248 @@ +# translation of django.po to +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +msgid "" +msgstr "" +"Project-Id-Version: django\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2008-02-08 19:37+0100\n" +"PO-Revision-Date: 2008-02-14 22:12+0100\n" +"Last-Translator: Ibon\n" +"Language-Team: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: KBabel 1.11.4\n" + +#: conf/global_settings.py:39 +msgid "Arabic" +msgstr "Arabiera" + +#: conf/global_settings.py:40 +msgid "Bengali" +msgstr "Bengalera" + +#: conf/global_settings.py:41 +msgid "Bulgarian" +msgstr "Bulgariera" + +#: conf/global_settings.py:42 +msgid "Catalan" +msgstr "Katalana" + +#: conf/global_settings.py:43 +msgid "Czech" +msgstr "Txekiera" + +#: conf/global_settings.py:44 +msgid "Welsh" +msgstr "Gales" + +#: conf/global_settings.py:45 +msgid "Danish" +msgstr "Daniera" + +#: conf/global_settings.py:46 +msgid "German" +msgstr "Alemaniera" + +#: conf/global_settings.py:47 +msgid "Greek" +msgstr "Greziera" + +#: conf/global_settings.py:48 +msgid "English" +msgstr "Ingeles" + +#: conf/global_settings.py:49 +msgid "Spanish" +msgstr "Espainola" + +#: conf/global_settings.py:50 +msgid "Argentinean Spanish" +msgstr "Argentinako espainola" + +#: conf/global_settings.py:51 +msgid "Persian" +msgstr "Persiera" + +#: conf/global_settings.py:52 +msgid "Finnish" +msgstr "Finlandesa" + +#: conf/global_settings.py:53 +msgid "French" +msgstr "Frantzesa" + +#: conf/global_settings.py:54 +msgid "Gaeilge" +msgstr "Gaelikoa" + +#: conf/global_settings.py:55 +msgid "Galician" +msgstr "Galiziarra" + +#: conf/global_settings.py:56 +msgid "Hungarian" +msgstr "Hungarierra" + +#: conf/global_settings.py:57 +msgid "Hebrew" +msgstr "Hebreera" + +#: conf/global_settings.py:58 +msgid "Croatian" +msgstr "Kroaziarra" + +#: conf/global_settings.py:59 +msgid "Icelandic" +msgstr "Islandiera" + +#: conf/global_settings.py:60 +msgid "Italian" +msgstr "Italiera" + +#: conf/global_settings.py:61 +msgid "Japanese" +msgstr "Japoniera" + +#: conf/global_settings.py:62 +msgid "Korean" +msgstr "Koreera" + +#: conf/global_settings.py:63 +msgid "Khmer" +msgstr "khemerera" + +#: conf/global_settings.py:64 +msgid "Kannada" +msgstr "Kanadiera" + +#: conf/global_settings.py:65 +msgid "Latvian" +msgstr "Lituaniera" + +#: conf/global_settings.py:66 +msgid "Macedonian" +msgstr "Mazedoniera" + +#: conf/global_settings.py:67 +msgid "Dutch" +msgstr "Holandesa" + +#: conf/global_settings.py:68 +msgid "Norwegian" +msgstr "Norvegiera" + +#: conf/global_settings.py:69 +msgid "Polish" +msgstr "Poloniera" + +#: conf/global_settings.py:70 +msgid "Portugese" +msgstr "Portugalera" + +#: conf/global_settings.py:71 +msgid "Brazilian" +msgstr "Brasilgo portugalera" + +#: conf/global_settings.py:72 +msgid "Romanian" +msgstr "Errumaniera" + +#: conf/global_settings.py:73 +msgid "Russian" +msgstr "Errusiera" + +#: conf/global_settings.py:74 +msgid "Slovak" +msgstr "Eslovakiera" + +#: conf/global_settings.py:75 +msgid "Slovenian" +msgstr "Esloveniera" + +#: conf/global_settings.py:76 +msgid "Serbian" +msgstr "Serbiera" + +#: conf/global_settings.py:77 +msgid "Swedish" +msgstr "Suediera" + +#: conf/global_settings.py:78 +msgid "Tamil" +msgstr "Tamilera" + +#: conf/global_settings.py:79 +msgid "Telugu" +msgstr "Telegu hizkuntza" + +#: conf/global_settings.py:80 +msgid "Turkish" +msgstr "Turkiera" + +#: conf/global_settings.py:81 +msgid "Ukrainian" +msgstr "Ukrainera" + +#: conf/global_settings.py:82 +msgid "Simplified Chinese" +msgstr "Txinera (sinpletua)" + +#: conf/global_settings.py:83 +msgid "Traditional Chinese" +msgstr "Txinera (tradizionala)" + +#: contrib/admin/filterspecs.py:44 +#, python-format +msgid "" +"

By %s:

\n" +"
    \n" +msgstr "" +"

    %s gatik:

    \n" +"
      \n" + +#: contrib/admin/filterspecs.py:74 contrib/admin/filterspecs.py:92 +#: contrib/admin/filterspecs.py:147 contrib/admin/filterspecs.py:173 +msgid "All" +msgstr "Dena" + +#: contrib/admin/filterspecs.py:113 +msgid "Any date" +msgstr "Edozein data" + +#: contrib/admin/filterspecs.py:114 +msgid "Today" +msgstr "Gaur" + +#: contrib/admin/filterspecs.py:117 +msgid "Past 7 days" +msgstr "Aurreko 7 egunak" + +#: contrib/admin/filterspecs.py:119 +msgid "This month" +msgstr "Hilabete hau" + +#: contrib/admin/filterspecs.py:121 +msgid "This year" +msgstr "Urte hau" + +#: contrib/admin/filterspecs.py:147 newforms/widgets.py:231 +#: oldforms/__init__.py:592 +msgid "Yes" +msgstr "Bai" + +#: contrib/admin/filterspecs.py:147 newforms/widgets.py:231 +#: oldforms/__init__.py:592 +msgid "No" +msgstr "Ez" + +#: contrib/admin/filterspecs.py:154 newforms/widgets.py:231 +#: oldforms/__init__.py:592 +msgid "Unknown" +msgstr "Ezezaguna" + +#: contrib/admin/models.py:18 +msgid "action time" +msgstr "Ekintz hordua" + +#: contrib/admin/models.py:21 +msgid "object id" +msgstr "Objetuaren id" + +#: contrib/admin/models.py:22 +msgid "object repr" +msgstr "Objeturaren repr" + +#: contrib/admin/models.py:23 +msgid "action flag" +msgstr "Ekintza botoia" + +#: contrib/admin/models.py:24 +msgid "change message" +msgstr "Mezua aldatu" + +#: contrib/admin/models.py:27 +msgid "log entry" +msgstr "Log sarrera" + +#: contrib/admin/models.py:28 +msgid "log entries" +msgstr "log sarrerak" + +#: contrib/admin/templates/admin/404.html:4 +#: contrib/admin/templates/admin/404.html:8 +msgid "Page not found" +msgstr "Ez da lekua aurkitu" + +#: contrib/admin/templates/admin/404.html:10 +msgid "We're sorry, but the requested page could not be found." +msgstr "Barkatu, eskatutako lekua ezin daiteke aurkitu" + +#: contrib/admin/templates/admin/500.html:4 +#: contrib/admin/templates/admin/base.html:37 +#: contrib/admin/templates/admin/change_form.html:12 +#: contrib/admin/templates/admin/change_list.html:5 +#: contrib/admin/templates/admin/delete_confirmation.html:5 +#: contrib/admin/templates/admin/invalid_setup.html:4 +#: contrib/admin/templates/admin/object_history.html:4 +#: contrib/admin/templates/admin/auth/user/change_password.html:11 +#: contrib/admin/templates/admin_doc/bookmarklets.html:3 +#: contrib/admin/templates/registration/logged_out.html:4 +#: contrib/admin/templates/registration/password_change_done.html:3 +#: contrib/admin/templates/registration/password_change_form.html:3 +#: contrib/admin/templates/registration/password_reset_done.html:4 +#: contrib/admin/templates/registration/password_reset_form.html:4 +msgid "Home" +msgstr "Hasiera" + +#: contrib/admin/templates/admin/500.html:4 +msgid "Server error" +msgstr "Serbidore errorea" + +#: contrib/admin/templates/admin/500.html:6 +msgid "Server error (500)" +msgstr "Serbidor errorea (500)" + +#: contrib/admin/templates/admin/500.html:9 +msgid "Server Error (500)" +msgstr "Serbidore Errorea (500)" + +#: contrib/admin/templates/admin/500.html:10 +msgid "" +"There's been an error. It's been reported to the site administrators via e-" +"mail and should be fixed shortly. Thanks for your patience." +msgstr "Arazo bat izan da. Web guneraren administradorea e-mail bidez ohartuko da eta laister konpondua egon beharko luke. Barkatu arazoak." + +#: contrib/admin/templates/admin/base.html:26 +msgid "Welcome," +msgstr "Ongi etorri." + +#: contrib/admin/templates/admin/base.html:28 +#: contrib/admin/templates/admin_doc/bookmarklets.html:3 +msgid "Documentation" +msgstr "Dokumentazioa" + +#: contrib/admin/templates/admin/base.html:29 +#: contrib/admin/templates/admin/auth/user/change_password.html:14 +#: contrib/admin/templates/admin/auth/user/change_password.html:45 +msgid "Change password" +msgstr "Hitz ezkutua aldatu" + +#: contrib/admin/templates/admin/base.html:30 +#: contrib/comments/templates/comments/form.html:6 +msgid "Log out" +msgstr "Atera" + +#: contrib/admin/templates/admin/base_site.html:4 +msgid "Django site admin" +msgstr "Django admin. gunea" + +#: contrib/admin/templates/admin/base_site.html:7 +msgid "Django administration" +msgstr "Django administradorea" + +#: contrib/admin/templates/admin/change_form.html:14 +#: contrib/admin/templates/admin/index.html:28 +msgid "Add" +msgstr "Gehitu" + +#: contrib/admin/templates/admin/change_form.html:20 +#: contrib/admin/templates/admin/object_history.html:4 +msgid "History" +msgstr "Aurrekoak" + +#: contrib/admin/templates/admin/change_form.html:21 +msgid "View on site" +msgstr "Lekuaren bista" + +#: contrib/admin/templates/admin/change_form.html:31 +#: contrib/admin/templates/admin/auth/user/change_password.html:23 +msgid "Please correct the error below." +msgid_plural "Please correct the errors below." +msgstr[0] "Arren zuzendu ondoko akatsa" +msgstr[1] "Arren zuzendu ondoko akatsak" + +#: contrib/admin/templates/admin/change_form.html:49 +msgid "Ordering" +msgstr "Ordenaketa" + +#: contrib/admin/templates/admin/change_form.html:52 +msgid "Order:" +msgstr "Ordena:" + +#: contrib/admin/templates/admin/change_list.html:11 +#, python-format +msgid "Add %(name)s" +msgstr "Gehitu %(name)s" + +#: contrib/admin/templates/admin/delete_confirmation.html:8 +#: contrib/admin/templates/admin/submit_line.html:3 +msgid "Delete" +msgstr "Ezabatu" + +#: contrib/admin/templates/admin/delete_confirmation.html:13 +#, python-format +msgid "" +"Deleting the %(object_name)s '%(escaped_object)s' would result in deleting " +"related objects, but your account doesn't have permission to delete the " +"following types of objects:" +msgstr "" +"Deleting the %(object_name)s '%(escaped_object)s' would result in deleting " +"related objects, but your account doesn't have permission to delete the " +"following types of objects: " +"%(object_name)s '%(escaped_object)s' ezabatuz, erlazionatutako objetuak ere ezabatuko ditu, baina zure kontuak ez du baimenik, hurrengo objetuak ezabatzeko:" + +#: contrib/admin/templates/admin/delete_confirmation.html:20 +#, python-format +msgid "" +"Are you sure you want to delete the %(object_name)s \"%(escaped_object)s\"? " +"All of the following related items will be deleted:" +msgstr "" +"Ziur zaude %(object_name)s \"%(escaped_object)s\" ezabatu nai duzula ? " +"Erlazionaturik dauden hurrengo elementuak ere ezabatuko dira:" + +#: contrib/admin/templates/admin/delete_confirmation.html:25 +msgid "Yes, I'm sure" +msgstr "Bai, ziur nago" + +#: contrib/admin/templates/admin/filter.html:2 +#, python-format +msgid " By %(filter_title)s " +msgstr " %(filter_title)s gatik" + +#: contrib/admin/templates/admin/filters.html:4 +msgid "Filter" +msgstr "Filtroa" + +#: contrib/admin/templates/admin/index.html:17 +#, python-format +msgid "Models available in the %(name)s application." +msgstr "%(name)s aplikazioan Modeloak." + +#: contrib/admin/templates/admin/index.html:18 +#, python-format +msgid "%(name)s" +msgstr "" + +#: contrib/admin/templates/admin/index.html:34 +msgid "Change" +msgstr "Aldatu" + +#: contrib/admin/templates/admin/index.html:44 +msgid "You don't have permission to edit anything." +msgstr "Ezer aldatzeko baimenik ez dezu." + +#: contrib/admin/templates/admin/index.html:52 +msgid "Recent Actions" +msgstr "Azken ekintzak" + +#: contrib/admin/templates/admin/index.html:53 +msgid "My Actions" +msgstr "Nere ekintzak" + +#: contrib/admin/templates/admin/index.html:57 +msgid "None available" +msgstr "Ez dago ezer" + +#: contrib/admin/templates/admin/invalid_setup.html:8 +msgid "" +"Something's wrong with your database installation. Make sure the appropriate " +"database tables have been created, and make sure the database is readable by " +"the appropriate user." +msgstr "Zerbait gaizki dago zure data-basearekin. Ziurtatu ezazu data-baseko taulak sortuak izan direla eta usuario egokiarengatik irakurriak izan daitekela" + +#: contrib/admin/templates/admin/login.html:17 +#: contrib/comments/templates/comments/form.html:6 +#: contrib/comments/templates/comments/form.html:8 +msgid "Username:" +msgstr "Usuario Izena:" + +#: contrib/admin/templates/admin/login.html:20 +#: contrib/comments/templates/comments/form.html:8 +msgid "Password:" +msgstr "Hitz ezkutua:" + +#: contrib/admin/templates/admin/login.html:25 +#: contrib/admin/views/decorators.py:25 +msgid "Log in" +msgstr "Sartu" + +#: contrib/admin/templates/admin/object_history.html:17 +msgid "Date/time" +msgstr "Data/ordua" + +#: contrib/admin/templates/admin/object_history.html:18 +msgid "User" +msgstr "Usuarioa" + +#: contrib/admin/templates/admin/object_history.html:19 +msgid "Action" +msgstr "Ekintza" + +#: contrib/admin/templates/admin/object_history.html:25 +msgid "DATE_WITH_TIME_FULL" +msgstr "" + +#: contrib/admin/templates/admin/object_history.html:35 +msgid "" +"This object doesn't have a change history. It probably wasn't added via this " +"admin site." +msgstr "Objetu honek ez du alketa zerrenda bat. Ziur asko, administrazio leku hau erabili gabe gehitua izan da." + +#: contrib/admin/templates/admin/pagination.html:10 +msgid "Show all" +msgstr "Dena erakutsi" + +#: contrib/admin/templates/admin/search_form.html:8 +msgid "Go" +msgstr "Aurrera" + +#: contrib/admin/templates/admin/search_form.html:10 +#, python-format +msgid "1 result" +msgid_plural "%(counter)s results" +msgstr[0] "%(counter)s emaitza" +msgstr[1] "%(counter)s emaitzak" + +#: contrib/admin/templates/admin/search_form.html:10 +#, python-format +msgid "%(full_result_count)s total" +msgstr "%(full_result_count)s guztira" + +#: contrib/admin/templates/admin/submit_line.html:4 +msgid "Save as new" +msgstr "Berria bezala gorde" + +#: contrib/admin/templates/admin/submit_line.html:5 +msgid "Save and add another" +msgstr "Gorde eta beste bat gehitu" + +#: contrib/admin/templates/admin/submit_line.html:6 +msgid "Save and continue editing" +msgstr "Gorde eta aldatzen jarraitu" + +#: contrib/admin/templates/admin/submit_line.html:7 +msgid "Save" +msgstr "Gorde" + +#: contrib/admin/templates/admin/auth/user/add_form.html:6 +msgid "" +"First, enter a username and password. Then, you'll be able to edit more user " +"options." +msgstr "Lehenengo usuario izena eta hitz ezkutua idatzi. Gero usuarioaren aukera gehiago aldatu ditzakezu" + +#: contrib/admin/templates/admin/auth/user/add_form.html:12 +msgid "Username" +msgstr "Usuario izena" + +#: contrib/admin/templates/admin/auth/user/add_form.html:18 +#: contrib/admin/templates/admin/auth/user/change_password.html:33 +msgid "Password" +msgstr "Hitz ezkutua" + +#: contrib/admin/templates/admin/auth/user/add_form.html:23 +#: contrib/admin/templates/admin/auth/user/change_password.html:38 +msgid "Password (again)" +msgstr "Hitz ezkutua (berriro)" + +#: contrib/admin/templates/admin/auth/user/add_form.html:24 +#: contrib/admin/templates/admin/auth/user/change_password.html:39 +msgid "Enter the same password as above, for verification." +msgstr "Idatzi berriro hitz ezkutua." + +#: contrib/admin/templates/admin/auth/user/change_password.html:27 +#, python-format +msgid "Enter a new password for the user %(username)s." +msgstr "Hitz ezkutu berria idatzi %(username)s usuarioarentzat." + +#: contrib/admin/templates/admin_doc/bookmarklets.html:3 +msgid "Bookmarklets" +msgstr "Markadoreak" + +#: contrib/admin/templates/admin_doc/bookmarklets.html:4 +msgid "Documentation bookmarklets" +msgstr "Dokumentazio markadoreak" + +#: contrib/admin/templates/admin_doc/bookmarklets.html:8 +msgid "" +"\n" +"

      To install bookmarklets, drag the link to your bookmarks\n" +"toolbar, or right-click the link and add it to your bookmarks. Now you can\n" +"select the bookmarklet from any page in the site. Note that some of these\n" +"bookmarklets require you to be viewing the site from a computer designated\n" +"as \"internal\" (talk to your system administrator if you aren't sure if\n" +"your computer is \"internal\").

      \n" +msgstr "" +"\n" +"

      Markadoreak instalatzeko eraman linka zure erreminta panelera (toolbar).\n" +"Orain markadorea lekuko edozein horritik aukeratu dezakezu. Hauetako \n" +"markadore batzu, zure ordenadorea 'barnekoa' bezala erregistratua egotea\n" +"behar dute. Hitzegin web lekuaren administradorearekin azalpen gehiagorako.

      \n" + +#: contrib/admin/templates/admin_doc/bookmarklets.html:18 +msgid "Documentation for this page" +msgstr "Web horri honentzat dokumentazioa" + +#: contrib/admin/templates/admin_doc/bookmarklets.html:19 +msgid "" +"Jumps you from any page to the documentation for the view that generates " +"that page." +msgstr "Edozein lekutik, horriaren bista sortzaileara (view) salto egiten du." + +#: contrib/admin/templates/admin_doc/bookmarklets.html:21 +msgid "Show object ID" +msgstr "Objetuaren ID erakutsi" + +#: contrib/admin/templates/admin_doc/bookmarklets.html:22 +msgid "" +"Shows the content-type and unique ID for pages that represent a single " +"object." +msgstr "Objetu bakarra erakusten duten horrietan, eduki mota (content-type) eta horriaren ID bakarra erakutsi, ." + +#: contrib/admin/templates/admin_doc/bookmarklets.html:24 +msgid "Edit this object (current window)" +msgstr "Objetu hau aldatu ( leiho hau)" + +#: contrib/admin/templates/admin_doc/bookmarklets.html:25 +msgid "Jumps to the admin page for pages that represent a single object." +msgstr "Objetu bakarra erakusten horrietan, adminiztrazio gunera joan." + +#: contrib/admin/templates/admin_doc/bookmarklets.html:27 +msgid "Edit this object (new window)" +msgstr "Objetu hay aldatu (leiho berria)" + +#: contrib/admin/templates/admin_doc/bookmarklets.html:28 +msgid "As above, but opens the admin page in a new window." +msgstr "Goian bezala baina administrzazio gune leio berrian irekitzen." + +#: contrib/admin/templates/registration/logged_out.html:8 +msgid "Thanks for spending some quality time with the Web site today." +msgstr "Mila esker gaur zure denbora web gunean erabiltzegatik." + +#: contrib/admin/templates/registration/logged_out.html:10 +msgid "Log in again" +msgstr "Berrio sartu (log in)" + +#: contrib/admin/templates/registration/password_change_done.html:3 +#: contrib/admin/templates/registration/password_change_form.html:3 +#: contrib/admin/templates/registration/password_change_form.html:5 +#: contrib/admin/templates/registration/password_change_form.html:9 +msgid "Password change" +msgstr "Hitz ezkutua aldatu" + +#: contrib/admin/templates/registration/password_change_done.html:5 +#: contrib/admin/templates/registration/password_change_done.html:9 +msgid "Password change successful" +msgstr "Hitz ezkutuaren aldaketa arrakastatsua" + +#: contrib/admin/templates/registration/password_change_done.html:11 +msgid "Your password was changed." +msgstr "Hitz ezkutua aldatua izan da" + +#: contrib/admin/templates/registration/password_change_form.html:11 +msgid "" +"Please enter your old password, for security's sake, and then enter your new " +"password twice so we can verify you typed it in correctly." +msgstr "Idatzi hitz ezkutu zaharra segurtasun arrazoiengatik eta gero hitz ezkutu berria bi aldiz, akatsik egiten ez duzula ziurtatu dezagun." + +#: contrib/admin/templates/registration/password_change_form.html:16 +msgid "Old password:" +msgstr "Hitz ezkutu zaharra" + +#: contrib/admin/templates/registration/password_change_form.html:18 +msgid "New password:" +msgstr "Hitz ezkutu berria:" + +#: contrib/admin/templates/registration/password_change_form.html:20 +msgid "Confirm password:" +msgstr "Hitz ezkutua baieztatu:" + +#: contrib/admin/templates/registration/password_change_form.html:22 +msgid "Change my password" +msgstr "Nire hitz ezkutua aldatu" + +#: contrib/admin/templates/registration/password_reset_done.html:4 +#: contrib/admin/templates/registration/password_reset_form.html:4 +#: contrib/admin/templates/registration/password_reset_form.html:6 +#: contrib/admin/templates/registration/password_reset_form.html:10 +msgid "Password reset" +msgstr "Hitz ezkutua ezabatu" + +#: contrib/admin/templates/registration/password_reset_done.html:6 +#: contrib/admin/templates/registration/password_reset_done.html:10 +msgid "Password reset successful" +msgstr "Hitz ezkutuaren ezabaketa zuzena" + +#: contrib/admin/templates/registration/password_reset_done.html:12 +msgid "" +"We've e-mailed a new password to the e-mail address you submitted. You " +"should be receiving it shortly." +msgstr "Hitz ezkutu berria e-mail bidez bidali dizugu. Epe laburrean jasokor duzu." + +#: contrib/admin/templates/registration/password_reset_email.html:2 +msgid "You're receiving this e-mail because you requested a password reset" +msgstr "Mezu elektroniko hau jaso dezu, hitz ezkutuaren ezabaketa eskatu duzulako" + +#: contrib/admin/templates/registration/password_reset_email.html:3 +#, python-format +msgid "for your user account at %(site_name)s" +msgstr "%(site_name)s usuario kontuarentzat" + +#: contrib/admin/templates/registration/password_reset_email.html:5 +#, python-format +msgid "Your new password is: %(new_password)s" +msgstr "Zure hitz ezkutu berria %(new_password)s da" + +#: contrib/admin/templates/registration/password_reset_email.html:7 +msgid "Feel free to change this password by going to this page:" +msgstr "Hitz ezkutua aldatu nai baduzu, zoaz web horri honetara joan:" + +#: contrib/admin/templates/registration/password_reset_email.html:11 +msgid "Your username, in case you've forgotten:" +msgstr "Zure usuario izena (ahaztu badezu):" + +#: contrib/admin/templates/registration/password_reset_email.html:13 +msgid "Thanks for using our site!" +msgstr "Mila esker gure web gunea erabiltzeagatik!" + +#: contrib/admin/templates/registration/password_reset_email.html:15 +#, python-format +msgid "The %(site_name)s team" +msgstr "%(site_name)s web gunearen taldea" + +#: contrib/admin/templates/registration/password_reset_form.html:12 +msgid "" +"Forgotten your password? Enter your e-mail address below, and we'll reset " +"your password and e-mail the new one to you." +msgstr "Hitz ezkutua ahaztu dezu ? Hidatzi zure e-mail helbidea, eta hitz ezkutu berri bat bidaliko dizugu." + +#: contrib/admin/templates/registration/password_reset_form.html:16 +msgid "E-mail address:" +msgstr "E-mail helbidea:" + +#: contrib/admin/templates/registration/password_reset_form.html:16 +msgid "Reset my password" +msgstr "Hitz ezkutua ezabatu" + +#: contrib/admin/templates/widget/date_time.html:3 +msgid "Date:" +msgstr "Data:" + +#: contrib/admin/templates/widget/date_time.html:4 +msgid "Time:" +msgstr "Ordua:" + +#: contrib/admin/templates/widget/file.html:2 +msgid "Currently:" +msgstr "Orain:" + +#: contrib/admin/templates/widget/file.html:3 +msgid "Change:" +msgstr "Aldatu:" + +#: contrib/admin/templatetags/admin_list.py:257 +msgid "All dates" +msgstr "Data guztiak" + +#: contrib/admin/views/auth.py:20 contrib/admin/views/main.py:267 +#, python-format +msgid "The %(name)s \"%(obj)s\" was added successfully." +msgstr "%(name)s \"%(obj)s arrakastaz gehitua izan da." + +#: contrib/admin/views/auth.py:25 contrib/admin/views/main.py:271 +#: contrib/admin/views/main.py:356 +msgid "You may edit it again below." +msgstr "Berriro alkatu zenezake beherago." + +#: contrib/admin/views/auth.py:31 +msgid "Add user" +msgstr "Usuario gehitu" + +#: contrib/admin/views/auth.py:58 +msgid "Password changed successfully." +msgstr "Hitz ezkutua aldaketa zuzena." + +#: contrib/admin/views/auth.py:65 +#, python-format +msgid "Change password: %s" +msgstr "Hitz ezkutua aldatu: %s" + +#: contrib/admin/views/decorators.py:11 contrib/auth/forms.py:60 +msgid "" +"Please enter a correct username and password. Note that both fields are case-" +"sensitive." +msgstr "Mesedez idatzi usuario izena eta hitz ezkutu egokiak. Maiskula eta minuskula ondo bereiztu." + +#: contrib/admin/views/decorators.py:63 +msgid "" +"Please log in again, because your session has expired. Don't worry: Your " +"submission has been saved." +msgstr "Mesedez berriro sar saitez, sesioa zahartu bai da. Bidalitakoa gorde egin da." + +#: contrib/admin/views/decorators.py:70 +msgid "" +"Looks like your browser isn't configured to accept cookies. Please enable " +"cookies, reload this page, and try again." +msgstr "Zure nabegatzaileak ez ditu cookie-ak onartzen. Aktiba ezazu hauen erabilera eta ekarri ezazu horria hau berriro." + +#: contrib/admin/views/decorators.py:84 +msgid "Usernames cannot contain the '@' character." +msgstr "Usuario izenek ezin dezkete @ karakterea eduki." + +#: contrib/admin/views/decorators.py:86 +#, python-format +msgid "Your e-mail address is not your username. Try '%s' instead." +msgstr "Zure e-mail helbidea ez da zure usuario izena. Ahalegindo '%s' rekin." + +#: contrib/admin/views/doc.py:48 contrib/admin/views/doc.py:50 +#: contrib/admin/views/doc.py:52 +msgid "tag:" +msgstr "tag:" + +#: contrib/admin/views/doc.py:79 contrib/admin/views/doc.py:81 +#: contrib/admin/views/doc.py:83 +msgid "filter:" +msgstr "filtroa:" + +#: contrib/admin/views/doc.py:137 contrib/admin/views/doc.py:139 +#: contrib/admin/views/doc.py:141 +msgid "view:" +msgstr "bista:" + +#: contrib/admin/views/doc.py:166 +#, python-format +msgid "App %r not found" +msgstr "%r aplikazio ez da aurkitu" + +#: contrib/admin/views/doc.py:173 +#, python-format +msgid "Model %(name)r not found in app %(label)r" +msgstr "%(name)r modeloa ez da %(label)r aplikazioan aurkitu" + +#: contrib/admin/views/doc.py:185 +#, python-format +msgid "the related `%(label)s.%(type)s` object" +msgstr "erlazionaturik `%(label)s.%(type)s` objetua" + +#: contrib/admin/views/doc.py:185 contrib/admin/views/doc.py:207 +#: contrib/admin/views/doc.py:221 contrib/admin/views/doc.py:226 +msgid "model:" +msgstr "modeloa:" + +#: contrib/admin/views/doc.py:216 +#, python-format +msgid "related `%(label)s.%(name)s` objects" +msgstr "erlazionaturik `%(label)s.%(name)s` objetua" + +#: contrib/admin/views/doc.py:221 +#, python-format +msgid "all %s" +msgstr "%s dena" + +#: contrib/admin/views/doc.py:226 +#, python-format +msgid "number of %s" +msgstr "%s zenbakia" + +#: contrib/admin/views/doc.py:231 +#, python-format +msgid "Fields on %s objects" +msgstr "%s objetuan zutabeak" + +#: contrib/admin/views/doc.py:293 contrib/admin/views/doc.py:304 +#: contrib/admin/views/doc.py:306 contrib/admin/views/doc.py:312 +#: contrib/admin/views/doc.py:313 contrib/admin/views/doc.py:315 +msgid "Integer" +msgstr "Zenbaki osoa" + +#: contrib/admin/views/doc.py:294 +msgid "Boolean (Either True or False)" +msgstr "Boolearra (egia ala gezurra)" + +#: contrib/admin/views/doc.py:295 contrib/admin/views/doc.py:314 +#, python-format +msgid "String (up to %(max_length)s)" +msgstr "Katea (%(max_length)s gehienez)" + +#: contrib/admin/views/doc.py:296 +msgid "Comma-separated integers" +msgstr "Komaz bereiztutako zenbako osoak" + +#: contrib/admin/views/doc.py:297 +msgid "Date (without time)" +msgstr "Data (ordurik gabe)" + +#: contrib/admin/views/doc.py:298 +msgid "Date (with time)" +msgstr "Data (orduarekin)" + +#: contrib/admin/views/doc.py:299 +msgid "Decimal number" +msgstr "Zenbaki dezimala" + +#: contrib/admin/views/doc.py:300 +msgid "E-mail address" +msgstr "E-mail helbidea" + +#: contrib/admin/views/doc.py:301 contrib/admin/views/doc.py:302 +#: contrib/admin/views/doc.py:305 +msgid "File path" +msgstr "Fitxegi bidea (path)" + +#: contrib/admin/views/doc.py:303 +msgid "Floating point number" +msgstr "Zenbaki erreala (float)" + +#: contrib/admin/views/doc.py:307 contrib/comments/models.py:89 +msgid "IP address" +msgstr "IP helbidea" + +#: contrib/admin/views/doc.py:309 +msgid "Boolean (Either True, False or None)" +msgstr "Boolearra (egia, gezurra edo hutsa[None])" + +#: contrib/admin/views/doc.py:310 +msgid "Relation to parent model" +msgstr "Gurazo modeloarekin erlazioa" + +#: contrib/admin/views/doc.py:311 +msgid "Phone number" +msgstr "Telefono zenbakia" + +#: contrib/admin/views/doc.py:316 +msgid "Text" +msgstr "Textua" + +#: contrib/admin/views/doc.py:317 +msgid "Time" +msgstr "Ordua" + +#: contrib/admin/views/doc.py:318 contrib/flatpages/models.py:7 +msgid "URL" +msgstr "URL" + +#: contrib/admin/views/doc.py:319 +msgid "U.S. state (two uppercase letters)" +msgstr "U.S statua (bi letra maiuskula)" + +#: contrib/admin/views/doc.py:320 +msgid "XML text" +msgstr "XML textua" + +#: contrib/admin/views/doc.py:346 +#, python-format +msgid "%s does not appear to be a urlpattern object" +msgstr "%s ez dirudi url heredu objetua" + +#: contrib/admin/views/main.py:233 +msgid "Site administration" +msgstr "Web gunearen administrazioa" + +#: contrib/admin/views/main.py:280 contrib/admin/views/main.py:365 +#, python-format +msgid "You may add another %s below." +msgstr "Beste %s gehitu dezakezu jarraian." + +#: contrib/admin/views/main.py:298 +#, python-format +msgid "Add %s" +msgstr "%s gehitu" + +#: contrib/admin/views/main.py:344 +#, python-format +msgid "Added %s." +msgstr "%s gehituta." + +#: contrib/admin/views/main.py:344 contrib/admin/views/main.py:346 +#: contrib/admin/views/main.py:348 core/validators.py:283 +#: db/models/manipulators.py:309 +msgid "and" +msgstr "eta" + +#: contrib/admin/views/main.py:346 +#, python-format +msgid "Changed %s." +msgstr "%s aldatuta." + +#: contrib/admin/views/main.py:348 +#, python-format +msgid "Deleted %s." +msgstr "%s ezabatuta." + +#: contrib/admin/views/main.py:351 +msgid "No fields changed." +msgstr "Ez da zutaberik aldatu." + +#: contrib/admin/views/main.py:354 +#, python-format +msgid "The %(name)s \"%(obj)s\" was changed successfully." +msgstr "%(name)s \"%(obj)s\" aldatuta izan da." + +#: contrib/admin/views/main.py:362 +#, python-format +msgid "The %(name)s \"%(obj)s\" was added successfully. You may edit it again below." +msgstr "%(name)s \"%(obj)s\" arrakastarekin gehituta izan da. Jarraian aldatu dezakezu berriro." + +#: contrib/admin/views/main.py:400 +#, python-format +msgid "Change %s" +msgstr "%s aldatu" + +#: contrib/admin/views/main.py:487 +#, python-format +msgid "One or more %(fieldname)s in %(name)s: %(obj)s" +msgstr "%(fieldname)s bat edo gehiago %(name)s an: %(obj)s" + +#: contrib/admin/views/main.py:492 +#, python-format +msgid "One or more %(fieldname)s in %(name)s:" +msgstr "%(fieldname)s bat edo gehiago %(name)s n" + +#: contrib/admin/views/main.py:524 +#, python-format +msgid "The %(name)s \"%(obj)s\" was deleted successfully." +msgstr "%(name)s \"%(obj)s\" arrakastaz ezabatua izan da." + +#: contrib/admin/views/main.py:527 +msgid "Are you sure?" +msgstr "Ziur al zaude?" + +#: contrib/admin/views/main.py:549 +#, python-format +msgid "Change history: %s" +msgstr "Aldaketa zerrenda: %s" + +#: contrib/admin/views/main.py:583 +#, python-format +msgid "Select %s" +msgstr "%s aukeratu" + +#: contrib/admin/views/main.py:583 +#, python-format +msgid "Select %s to change" +msgstr "aldaketarako %s aukeratu" + +#: contrib/admin/views/main.py:784 +msgid "Database error" +msgstr "Data base errorea" + +#: contrib/auth/forms.py:17 contrib/auth/forms.py:138 +msgid "The two password fields didn't match." +msgstr "Hitz ezkutuak ez dira berdinak." + +#: contrib/auth/forms.py:25 +msgid "A user with that username already exists." +msgstr "Usuario izen hori erabiltzen ari da." + +#: contrib/auth/forms.py:53 +msgid "" +"Your Web browser doesn't appear to have cookies enabled. Cookies are " +"required for logging in." +msgstr "Zure nabegatzaileak ez ditu cookiak onartzen. Cookia-k beharrezkoak dira sistemn sartzeko." + +#: contrib/auth/forms.py:62 +msgid "This account is inactive." +msgstr "Kontu hau az dago aktibatuta." + +#: contrib/auth/forms.py:84 +msgid "" +"That e-mail address doesn't have an associated user account. Are you sure " +"you've registered?" +msgstr "E-mail helbide horrek ez du usariorik. Ziur al zaude erregistraturik zaudela?" + +#: contrib/auth/forms.py:107 +#, python-format +msgid "Password reset on %s" +msgstr "Hitz ezkutu ezabatua %s n" + +#: contrib/auth/forms.py:117 +msgid "The two 'new password' fields didn't match." +msgstr "Bi hitz ezkutu berriak ez dira berdinak." + +#: contrib/auth/forms.py:124 +msgid "Your old password was entered incorrectly. Please enter it again." +msgstr "Zure hitz ezkutu zaharra ez zuzena. Idatzi ezazu berriro." + +#: contrib/auth/models.py:73 contrib/auth/models.py:93 +msgid "name" +msgstr "izena" + +#: contrib/auth/models.py:75 +msgid "codename" +msgstr "code izena (codename)" + +#: contrib/auth/models.py:78 +msgid "permission" +msgstr "baimena" + +#: contrib/auth/models.py:79 contrib/auth/models.py:94 +msgid "permissions" +msgstr "baimenak" + +#: contrib/auth/models.py:97 +msgid "group" +msgstr "taldea" + +#: contrib/auth/models.py:98 contrib/auth/models.py:141 +msgid "groups" +msgstr "taldeak" + +#: contrib/auth/models.py:131 +msgid "username" +msgstr "usuario izena" + +#: contrib/auth/models.py:131 +msgid "" +"Required. 30 characters or fewer. Alphanumeric characters only (letters, " +"digits and underscores)." +msgstr "" +"Beharrezkoa. 30 karaktere edo gutxiago. Karaktere alfanumerikoak " +"bakarrik (letra, zembaki eta '_')" + +#: contrib/auth/models.py:132 +msgid "first name" +msgstr "izena" + +#: contrib/auth/models.py:133 +msgid "last name" +msgstr "abizena" + +#: contrib/auth/models.py:134 +msgid "e-mail address" +msgstr "e-mail helbidea" + +#: contrib/auth/models.py:135 +msgid "password" +msgstr "hitz ezkutua" + +#: contrib/auth/models.py:135 +msgid "" +"Use '[algo]$[salt]$[hexdigest]' or use the change " +"password form." +msgstr "Erabili '[algo]$[salt]$[hexdigest]' edo erabili hitz ezkuta aldatu ." + +#: contrib/auth/models.py:136 +msgid "staff status" +msgstr "Arduraduen egoera" + +#: contrib/auth/models.py:136 +msgid "Designates whether the user can log into this admin site." +msgstr "Usuarioak administrazio gune honetan sartu dezkeen ala ez izendatzen du." + +#: contrib/auth/models.py:137 +msgid "active" +msgstr "Aktiboa" + +#: contrib/auth/models.py:137 +msgid "" +"Designates whether this user can log into the Django admin. Unselect this " +"instead of deleting accounts." +msgstr "Usuarioak Django adminiztrazio gunean sartu daitekeen ala ez. Desaktiba ezazu aukera hau,kontua ezabatu ordez." + +#: contrib/auth/models.py:138 +msgid "superuser status" +msgstr "Usuario nagusia (superuser)" + +#: contrib/auth/models.py:138 +msgid "" +"Designates that this user has all permissions without explicitly assigning " +"them." +msgstr "Usuario honek baimen guztiak ditu, banan banan denak zehaztu gabe." + +#: contrib/auth/models.py:139 +msgid "last login" +msgstr "azken sarrera" + +#: contrib/auth/models.py:140 +msgid "date joined" +msgstr "erregistro eguna" + +#: contrib/auth/models.py:142 +msgid "" +"In addition to the permissions manually assigned, this user will also get " +"all permissions granted to each group he/she is in." +msgstr "Usuario honek, eskuz emandako baimen guztietaz aparte, berari egokitutako talde bakoitzari emandako baimenak ere izango ditu." + +#: contrib/auth/models.py:143 +msgid "user permissions" +msgstr "Usuarioaren baimenak" + +#: contrib/auth/models.py:147 +msgid "user" +msgstr "Usuarioa" + +#: contrib/auth/models.py:148 +msgid "users" +msgstr "Usuarioak" + +#: contrib/auth/models.py:154 +msgid "Personal info" +msgstr "Informazio pertsonala" + +#: contrib/auth/models.py:155 +msgid "Permissions" +msgstr "Baimenak" + +#: contrib/auth/models.py:156 +msgid "Important dates" +msgstr "Data garrantzitsuak" + +#: contrib/auth/models.py:157 +msgid "Groups" +msgstr "Taldeak" + +#: contrib/auth/models.py:316 +msgid "message" +msgstr "mezua" + +#: contrib/auth/views.py:47 +msgid "Logged out" +msgstr "Sesiotik kanpo" + +#: contrib/comments/models.py:71 contrib/comments/models.py:176 +msgid "object ID" +msgstr "objetuaren ID" + +#: contrib/comments/models.py:72 +msgid "headline" +msgstr "izenburua" + +#: contrib/comments/models.py:73 contrib/comments/models.py:95 +#: contrib/comments/models.py:177 +msgid "comment" +msgstr "komentarioa" + +#: contrib/comments/models.py:74 +msgid "rating #1" +msgstr "puntaketa #1" + +#: contrib/comments/models.py:75 +msgid "rating #2" +msgstr "puntaketa #2" + +#: contrib/comments/models.py:76 +msgid "rating #3" +msgstr "puntaketa #3" + +#: contrib/comments/models.py:77 +msgid "rating #4" +msgstr "puntaketa #4" + +#: contrib/comments/models.py:78 +msgid "rating #5" +msgstr "puntaketa #5" + +#: contrib/comments/models.py:79 +msgid "rating #6" +msgstr "puntaketa #6" + +#: contrib/comments/models.py:80 +msgid "rating #7" +msgstr "puntaketa #7" + +#: contrib/comments/models.py:81 +msgid "rating #8" +msgstr "puntaketa #8" + +#: contrib/comments/models.py:86 +msgid "is valid rating" +msgstr "puntuaketa zuzena" + +#: contrib/comments/models.py:87 contrib/comments/models.py:179 +msgid "date/time submitted" +msgstr "data/hordua bidalia" + +#: contrib/comments/models.py:88 contrib/comments/models.py:180 +msgid "is public" +msgstr "publikoa" + +#: contrib/comments/models.py:90 +msgid "is removed" +msgstr "ezabatua" + +#: contrib/comments/models.py:90 +msgid "" +"Check this box if the comment is inappropriate. A \"This comment has been " +"removed\" message will be displayed instead." +msgstr "Markatu kutxa hau komentario ezegokia bada. A \"Komentario hau ezabatua izan da\" mezua erakutsiko da bere ordez." + +#: contrib/comments/models.py:96 +msgid "comments" +msgstr "Komentarioak" + +#: contrib/comments/models.py:140 contrib/comments/models.py:222 +msgid "Content object" +msgstr "Eduki objetua" + +#: contrib/comments/models.py:168 +#, python-format +msgid "" +"Posted by %(user)s at %(date)s\n" +"\n" +"%(comment)s\n" +"\n" +"http://%(domain)s%(url)s" +msgstr "" +"%(user)s -k bidalia %(date)s -n\n" +"\n" +"%(comment)s\n" +"\n" +"http://%(domain)s%(url)s" + +#: contrib/comments/models.py:178 +msgid "person's name" +msgstr "pertsonaren izena" + +#: contrib/comments/models.py:181 +msgid "ip address" +msgstr "ip zenbakia" + +#: contrib/comments/models.py:183 +msgid "approved by staff" +msgstr "arduradunek onartua" + +#: contrib/comments/models.py:187 +msgid "free comment" +msgstr "komentario librea" + +#: contrib/comments/models.py:188 +msgid "free comments" +msgstr "komentario libreak" + +#: contrib/comments/models.py:250 +msgid "score" +msgstr "puntuaketa" + +#: contrib/comments/models.py:251 +msgid "score date" +msgstr "puntuaketa data" + +#: contrib/comments/models.py:255 +msgid "karma score" +msgstr "karma puntuaketa" + +#: contrib/comments/models.py:256 +msgid "karma scores" +msgstr "karma puntuaketak" + +#: contrib/comments/models.py:260 +#, python-format +msgid "%(score)d rating by %(user)s" +msgstr "%(user)s -k emandako puntaketa: %(score)d" + +#: contrib/comments/models.py:277 +#, python-format +msgid "" +"This comment was flagged by %(user)s:\n" +"\n" +"%(text)s" +msgstr "" +"%(user)s -k komentario hay markatu du:\n" +"\n" +"%(text)s" + +#: contrib/comments/models.py:285 +msgid "flag date" +msgstr "markatutako eguna" + +#: contrib/comments/models.py:289 +msgid "user flag" +msgstr "usuarioaren markaketa" + +#: contrib/comments/models.py:290 +msgid "user flags" +msgstr "usuariaren markaketak" + +#: contrib/comments/models.py:294 +#, python-format +msgid "Flag by %r" +msgstr "%r -k markatuta" + +#: contrib/comments/models.py:300 +msgid "deletion date" +msgstr "ezabatze data" + +#: contrib/comments/models.py:303 +msgid "moderator deletion" +msgstr "moderatzaileak ezabatua" + +#: contrib/comments/models.py:304 +msgid "moderator deletions" +msgstr "moderatzaileak ezabatuak" + +#: contrib/comments/models.py:308 +#, python-format +msgid "Moderator deletion by %r" +msgstr "%r moderatzaileak ezabatua" + +#: contrib/comments/templates/comments/form.html:8 +msgid "Forgotten your password?" +msgstr "Hitz ezkutua ahaztu duzu?" + +#: contrib/comments/templates/comments/form.html:12 +msgid "Ratings" +msgstr "Puntuaketak" + +#: contrib/comments/templates/comments/form.html:12 +#: contrib/comments/templates/comments/form.html:23 +msgid "Required" +msgstr "Beharrezkoa" + +#: contrib/comments/templates/comments/form.html:12 +#: contrib/comments/templates/comments/form.html:23 +msgid "Optional" +msgstr "Aukerakoa" + +#: contrib/comments/templates/comments/form.html:23 +msgid "Post a photo" +msgstr "Argazkia bidali" + +#: contrib/comments/templates/comments/form.html:28 +#: contrib/comments/templates/comments/freeform.html:5 +msgid "Comment:" +msgstr "Komentarioa:" + +#: contrib/comments/templates/comments/form.html:35 +#: contrib/comments/templates/comments/freeform.html:10 +msgid "Preview comment" +msgstr "Komentarioa aurreikusi" + +#: contrib/comments/templates/comments/freeform.html:4 +msgid "Your name:" +msgstr "Zure izena:" + +#: contrib/comments/views/comments.py:28 +msgid "This rating is required because you've entered at least one other rating." +msgstr "Puntuaketa hau beharrezkoa da, gutxienez beste puntaketa bat sartu duzulako" + +#: contrib/comments/views/comments.py:112 +#, python-format +msgid "" +"This comment was posted by a user who has posted fewer than %(count)s " +"comment:\n" +"\n" +"%(text)s" +msgid_plural "" +"This comment was posted by a user who has posted fewer than %(count)s " +"comments:\n" +"\n" +"%(text)s" +msgstr[0] "Komentario hau, %(count)s komentario baino gutxiago egindako usuario batek bidalia da:

      %(text)s" +msgstr[1] "" + +#: contrib/comments/views/comments.py:117 +#, python-format +msgid "" +"This comment was posted by a sketchy user:\n" +"\n" +"%(text)s" +msgstr "" +"Komentario hau usuario 'arin' batek bidalia da:\n" +"\n" +"%(text)s" + +#: contrib/comments/views/comments.py:190 +#: contrib/comments/views/comments.py:283 +msgid "Only POSTs are allowed" +msgstr "POST bakarrik onartzen dira" + +#: contrib/comments/views/comments.py:194 +#: contrib/comments/views/comments.py:287 +msgid "One or more of the required fields wasn't submitted" +msgstr "Beharrezko fitxategi bat edo gehiago ez dira bidali" + +#: contrib/comments/views/comments.py:198 +#: contrib/comments/views/comments.py:289 +msgid "Somebody tampered with the comment form (security violation)" +msgstr "Norbaitek komentario formularioa maltzurki eraldatu du (segurtasun erasoa)" + +#: contrib/comments/views/comments.py:208 +#: contrib/comments/views/comments.py:295 +msgid "" +"The comment form had an invalid 'target' parameter -- the object ID was " +"invalid" +msgstr "Komentario formularioak 'target' parametroa okerra zuen -- objetuaren ID okerra zen" + +#: contrib/comments/views/comments.py:259 +#: contrib/comments/views/comments.py:324 +msgid "The comment form didn't provide either 'preview' or 'post'" +msgstr "Komentario formularioa ez zuen ez 'berikusi' edo 'bidali'" + +#: contrib/comments/views/karma.py:21 +msgid "Anonymous users cannot vote" +msgstr "Usuario ezezagunak ezin dezakete botoa eman" + +#: contrib/comments/views/karma.py:25 +msgid "Invalid comment ID" +msgstr "Komentario ID okerra" + +#: contrib/comments/views/karma.py:27 +msgid "No voting for yourself" +msgstr "Norberak ezin dezake botoa eman" + +#: contrib/contenttypes/models.py:37 +msgid "python model class name" +msgstr "python model class izena" + +#: contrib/contenttypes/models.py:40 +msgid "content type" +msgstr "edukiera moeta" + +#: contrib/contenttypes/models.py:41 +msgid "content types" +msgstr "edukiera moetak" + +#: contrib/flatpages/models.py:8 +msgid "Example: '/about/contact/'. Make sure to have leading and trailing slashes." +msgstr "Adibidez: '/about/contact/'. Ziurta zaitez '/' karaktera hasieran eta bukaeran dagoela." + +#: contrib/flatpages/models.py:9 +msgid "title" +msgstr "izenburua" + +#: contrib/flatpages/models.py:10 +msgid "content" +msgstr "edukiera" + +#: contrib/flatpages/models.py:11 +msgid "enable comments" +msgstr "komentarioak onartu" + +#: contrib/flatpages/models.py:12 +msgid "template name" +msgstr "plantila izena" + +#: contrib/flatpages/models.py:13 +msgid "" +"Example: 'flatpages/contact_page.html'. If this isn't provided, the system " +"will use 'flatpages/default.html'." +msgstr "Adibidez: 'flatpages/contact_page.html'. Hau ematen ez bada, sistema 'flatpages/default.html' erabiliko du." + +#: contrib/flatpages/models.py:14 +msgid "registration required" +msgstr "erregistratzea beharrezkoa da" + +#: contrib/flatpages/models.py:14 +msgid "If this is checked, only logged-in users will be able to view the page." +msgstr "Hau markatuta badago, erregistratutako usuarioak bakarrik ikusiko dute horria." + +#: contrib/flatpages/models.py:18 +msgid "flat page" +msgstr "flat page" + +#: contrib/flatpages/models.py:19 +msgid "flat pages" +msgstr "flat pages" + +#: contrib/humanize/templatetags/humanize.py:20 +msgid "th" +msgstr "garren" + +#: contrib/humanize/templatetags/humanize.py:20 +msgid "st" +msgstr "." + +#: contrib/humanize/templatetags/humanize.py:20 +msgid "nd" +msgstr "garren" + +#: contrib/humanize/templatetags/humanize.py:20 +msgid "rd" +msgstr "garren" + +#: contrib/humanize/templatetags/humanize.py:52 +#, python-format +msgid "%(value).1f million" +msgid_plural "%(value).1f million" +msgstr[0] "%(value).1f milioi" +msgstr[1] "" + +#: contrib/humanize/templatetags/humanize.py:55 +#, python-format +msgid "%(value).1f billion" +msgid_plural "%(value).1f billion" +msgstr[0] "%(value).1f bilioi" +msgstr[1] "" + +#: contrib/humanize/templatetags/humanize.py:58 +#, python-format +msgid "%(value).1f trillion" +msgid_plural "%(value).1f trillion" +msgstr[0] "%(value).1f trilioi" +msgstr[1] "" + +#: contrib/humanize/templatetags/humanize.py:74 +msgid "one" +msgstr "bat" + +#: contrib/humanize/templatetags/humanize.py:74 +msgid "two" +msgstr "bi" + +#: contrib/humanize/templatetags/humanize.py:74 +msgid "three" +msgstr "hiru" + +#: contrib/humanize/templatetags/humanize.py:74 +msgid "four" +msgstr "lau" + +#: contrib/humanize/templatetags/humanize.py:74 +msgid "five" +msgstr "bost" + +#: contrib/humanize/templatetags/humanize.py:74 +msgid "six" +msgstr "sei" + +#: contrib/humanize/templatetags/humanize.py:74 +msgid "seven" +msgstr "zazpi" + +#: contrib/humanize/templatetags/humanize.py:74 +msgid "eight" +msgstr "zortzi" + +#: contrib/humanize/templatetags/humanize.py:74 +msgid "nine" +msgstr "bederatzi" + +#: contrib/humanize/templatetags/humanize.py:94 +msgid "today" +msgstr "gaur" + +#: contrib/humanize/templatetags/humanize.py:96 +msgid "tomorrow" +msgstr "bihar" + +#: contrib/humanize/templatetags/humanize.py:98 +msgid "yesterday" +msgstr "atzo" + +#: contrib/localflavor/ar/forms.py:28 +msgid "Enter a postal code in the format NNNN or ANNNNAAA." +msgstr "NNNN edo ANNNNAAA formatoan idatzi posta kode bat." + +#: contrib/localflavor/ar/forms.py:50 contrib/localflavor/br/forms.py:96 +#: contrib/localflavor/br/forms.py:135 contrib/localflavor/pe/forms.py:23 +#: contrib/localflavor/pe/forms.py:51 +msgid "This field requires only numbers." +msgstr "Data honek zenbakiak bakarrik behar ditu." + +#: contrib/localflavor/ar/forms.py:51 +msgid "This field requires 7 or 8 digits." +msgstr "Data honek 7 edo 8 digito behar ditu." + +#: contrib/localflavor/ar/forms.py:80 +msgid "Enter a valid CUIT in XX-XXXXXXXX-X or XXXXXXXXXXXX format." +msgstr "CUIT zuzena idatzi XX-XXXXXXXX-X edo XXXXXXXXXXXX formatoan." + +#: contrib/localflavor/ar/forms.py:81 +msgid "Invalid CUIT." +msgstr "CUIT okerra." + +#: contrib/localflavor/au/forms.py:16 +msgid "Enter a 4 digit post code." +msgstr "4 zenbaki posta kodean idatzi." + +#: contrib/localflavor/br/forms.py:21 +msgid "Enter a zip code in the format XXXXX-XXX." +msgstr "XXXXX-XXX formatoan zip kodea idatzi." + +#: contrib/localflavor/br/forms.py:30 +msgid "Phone numbers must be in XX-XXXX-XXXX format." +msgstr "Telefono zenbakiak XX-XXXX-XXXX formatoa behar dute." + +#: contrib/localflavor/br/forms.py:58 +msgid "" +"Select a valid brazilian state. That state is not one of the available " +"states." +msgstr "Brasilgo estatu zuzen bat aukeratu. Hori ez dago aukeran." + +#: contrib/localflavor/br/forms.py:94 +msgid "Invalid CPF number." +msgstr "CPF zenbaki okerra." + +#: contrib/localflavor/br/forms.py:95 +msgid "This field requires at most 11 digits or 14 characters." +msgstr "Data honek gehienez 11 digito edo 14 karaktere behar ditu." + +#: contrib/localflavor/br/forms.py:134 +msgid "Invalid CNPJ number." +msgstr "CNPJ zenbaki okerra." + +#: contrib/localflavor/br/forms.py:136 +msgid "This field requires at least 14 digits" +msgstr "Data honek 14 digito behar ditu gutxienez" + +#: contrib/localflavor/ca/forms.py:17 +msgid "Enter a postal code in the format XXX XXX." +msgstr "Posta kodea idatzi XXX XXX formatoan." + +#: contrib/localflavor/ca/forms.py:88 +msgid "Enter a valid Canadian Social Insurance number in XXX-XXX-XXX format." +msgstr "" + +#: contrib/localflavor/ch/ch_states.py:5 +msgid "Aargau" +msgstr "" + +#: contrib/localflavor/ch/ch_states.py:6 +msgid "Appenzell Innerrhoden" +msgstr "" + +#: contrib/localflavor/ch/ch_states.py:7 +msgid "Appenzell Ausserrhoden" +msgstr "" + +#: contrib/localflavor/ch/ch_states.py:8 +msgid "Basel-Stadt" +msgstr "" + +#: contrib/localflavor/ch/ch_states.py:9 +msgid "Basel-Land" +msgstr "" + +#: contrib/localflavor/ch/ch_states.py:10 +msgid "Berne" +msgstr "" + +#: contrib/localflavor/ch/ch_states.py:11 +msgid "Fribourg" +msgstr "" + +#: contrib/localflavor/ch/ch_states.py:12 +msgid "Geneva" +msgstr "" + +#: contrib/localflavor/ch/ch_states.py:13 +msgid "Glarus" +msgstr "" + +#: contrib/localflavor/ch/ch_states.py:14 +msgid "Graubuenden" +msgstr "" + +#: contrib/localflavor/ch/ch_states.py:15 +msgid "Jura" +msgstr "" + +#: contrib/localflavor/ch/ch_states.py:16 +msgid "Lucerne" +msgstr "" + +#: contrib/localflavor/ch/ch_states.py:17 +msgid "Neuchatel" +msgstr "" + +#: contrib/localflavor/ch/ch_states.py:18 +msgid "Nidwalden" +msgstr "" + +#: contrib/localflavor/ch/ch_states.py:19 +msgid "Obwalden" +msgstr "" + +#: contrib/localflavor/ch/ch_states.py:20 +msgid "Schaffhausen" +msgstr "" + +#: contrib/localflavor/ch/ch_states.py:21 +msgid "Schwyz" +msgstr "" + +#: contrib/localflavor/ch/ch_states.py:22 +msgid "Solothurn" +msgstr "" + +#: contrib/localflavor/ch/ch_states.py:23 +msgid "St. Gallen" +msgstr "" + +#: contrib/localflavor/ch/ch_states.py:24 +msgid "Thurgau" +msgstr "" + +#: contrib/localflavor/ch/ch_states.py:25 +msgid "Ticino" +msgstr "" + +#: contrib/localflavor/ch/ch_states.py:26 +msgid "Uri" +msgstr "" + +#: contrib/localflavor/ch/ch_states.py:27 +msgid "Valais" +msgstr "" + +#: contrib/localflavor/ch/ch_states.py:28 +msgid "Vaud" +msgstr "" + +#: contrib/localflavor/ch/ch_states.py:29 +msgid "Zug" +msgstr "" + +#: contrib/localflavor/ch/ch_states.py:30 +msgid "Zurich" +msgstr "" + +#: contrib/localflavor/ch/forms.py:16 contrib/localflavor/no/forms.py:12 +msgid "Enter a zip code in the format XXXX." +msgstr "zip kodea XXXX formatoan idatzi." + +#: contrib/localflavor/ch/forms.py:64 +msgid "" +"Enter a valid Swiss identity or passport card number in X1234567<0 or " +"1234567890 format." +msgstr "" + +#: contrib/localflavor/cl/forms.py:29 +msgid "Enter a valid Chilean RUT." +msgstr "" + +#: contrib/localflavor/cl/forms.py:30 +msgid "Enter a valid Chilean RUT. The format is XX.XXX.XXX-X." +msgstr "" + +#: contrib/localflavor/cl/forms.py:31 +msgid "The Chilean RUT is not valid." +msgstr "" + +#: contrib/localflavor/de/de_states.py:5 +msgid "Baden-Wuerttemberg" +msgstr "" + +#: contrib/localflavor/de/de_states.py:6 +msgid "Bavaria" +msgstr "" + +#: contrib/localflavor/de/de_states.py:7 +msgid "Berlin" +msgstr "" + +#: contrib/localflavor/de/de_states.py:8 +msgid "Brandenburg" +msgstr "" + +#: contrib/localflavor/de/de_states.py:9 +msgid "Bremen" +msgstr "" + +#: contrib/localflavor/de/de_states.py:10 +msgid "Hamburg" +msgstr "" + +#: contrib/localflavor/de/de_states.py:11 +msgid "Hessen" +msgstr "" + +#: contrib/localflavor/de/de_states.py:12 +msgid "Mecklenburg-Western Pomerania" +msgstr "" + +#: contrib/localflavor/de/de_states.py:13 +msgid "Lower Saxony" +msgstr "" + +#: contrib/localflavor/de/de_states.py:14 +msgid "North Rhine-Westphalia" +msgstr "" + +#: contrib/localflavor/de/de_states.py:15 +msgid "Rhineland-Palatinate" +msgstr "" + +#: contrib/localflavor/de/de_states.py:16 +msgid "Saarland" +msgstr "" + +#: contrib/localflavor/de/de_states.py:17 +msgid "Saxony" +msgstr "" + +#: contrib/localflavor/de/de_states.py:18 +msgid "Saxony-Anhalt" +msgstr "" + +#: contrib/localflavor/de/de_states.py:19 +msgid "Schleswig-Holstein" +msgstr "" + +#: contrib/localflavor/de/de_states.py:20 +msgid "Thuringia" +msgstr "" + +#: contrib/localflavor/de/forms.py:14 contrib/localflavor/fi/forms.py:12 +#: contrib/localflavor/fr/forms.py:15 +msgid "Enter a zip code in the format XXXXX." +msgstr "" + +#: contrib/localflavor/de/forms.py:41 +msgid "" +"Enter a valid German identity card number in XXXXXXXXXXX-XXXXXXX-XXXXXXX-X " +"format." +msgstr "" + +#: contrib/localflavor/es/es_provinces.py:5 +msgid "Arava" +msgstr "Araba" + +#: contrib/localflavor/es/es_provinces.py:6 +msgid "Albacete" +msgstr "" + +#: contrib/localflavor/es/es_provinces.py:7 +msgid "Alacant" +msgstr "" + +#: contrib/localflavor/es/es_provinces.py:8 +msgid "Almeria" +msgstr "" + +#: contrib/localflavor/es/es_provinces.py:9 +msgid "Avila" +msgstr "" + +#: contrib/localflavor/es/es_provinces.py:10 +msgid "Badajoz" +msgstr "" + +#: contrib/localflavor/es/es_provinces.py:11 +msgid "Illes Balears" +msgstr "" + +#: contrib/localflavor/es/es_provinces.py:12 +msgid "Barcelona" +msgstr "" + +#: contrib/localflavor/es/es_provinces.py:13 +msgid "Burgos" +msgstr "" + +#: contrib/localflavor/es/es_provinces.py:14 +msgid "Caceres" +msgstr "" + +#: contrib/localflavor/es/es_provinces.py:15 +msgid "Cadiz" +msgstr "" + +#: contrib/localflavor/es/es_provinces.py:16 +msgid "Castello" +msgstr "" + +#: contrib/localflavor/es/es_provinces.py:17 +msgid "Ciudad Real" +msgstr "" + +#: contrib/localflavor/es/es_provinces.py:18 +msgid "Cordoba" +msgstr "" + +#: contrib/localflavor/es/es_provinces.py:19 +msgid "A Coruna" +msgstr "" + +#: contrib/localflavor/es/es_provinces.py:20 +msgid "Cuenca" +msgstr "" + +#: contrib/localflavor/es/es_provinces.py:21 +msgid "Girona" +msgstr "" + +#: contrib/localflavor/es/es_provinces.py:22 +msgid "Granada" +msgstr "" + +#: contrib/localflavor/es/es_provinces.py:23 +msgid "Guadalajara" +msgstr "" + +#: contrib/localflavor/es/es_provinces.py:24 +msgid "Guipuzkoa" +msgstr "Gupuzkoa" + +#: contrib/localflavor/es/es_provinces.py:25 +msgid "Huelva" +msgstr "" + +#: contrib/localflavor/es/es_provinces.py:26 +msgid "Huesca" +msgstr "" + +#: contrib/localflavor/es/es_provinces.py:27 +msgid "Jaen" +msgstr "" + +#: contrib/localflavor/es/es_provinces.py:28 +msgid "Leon" +msgstr "" + +#: contrib/localflavor/es/es_provinces.py:29 +msgid "Lleida" +msgstr "" + +#: contrib/localflavor/es/es_provinces.py:30 +#: contrib/localflavor/es/es_regions.py:17 +msgid "La Rioja" +msgstr "Errioxa" + +#: contrib/localflavor/es/es_provinces.py:31 +msgid "Lugo" +msgstr "" + +#: contrib/localflavor/es/es_provinces.py:32 +#: contrib/localflavor/es/es_regions.py:18 +msgid "Madrid" +msgstr "" + +#: contrib/localflavor/es/es_provinces.py:33 +msgid "Malaga" +msgstr "" + +#: contrib/localflavor/es/es_provinces.py:34 +msgid "Murcia" +msgstr "" + +#: contrib/localflavor/es/es_provinces.py:35 +msgid "Navarre" +msgstr "Nafarroa" + +#: contrib/localflavor/es/es_provinces.py:36 +msgid "Ourense" +msgstr "" + +#: contrib/localflavor/es/es_provinces.py:37 +msgid "Asturias" +msgstr "" + +#: contrib/localflavor/es/es_provinces.py:38 +msgid "Palencia" +msgstr "" + +#: contrib/localflavor/es/es_provinces.py:39 +msgid "Las Palmas" +msgstr "" + +#: contrib/localflavor/es/es_provinces.py:40 +msgid "Pontevedra" +msgstr "" + +#: contrib/localflavor/es/es_provinces.py:41 +msgid "Salamanca" +msgstr "" + +#: contrib/localflavor/es/es_provinces.py:42 +msgid "Santa Cruz de Tenerife" +msgstr "" + +#: contrib/localflavor/es/es_provinces.py:43 +#: contrib/localflavor/es/es_regions.py:11 +msgid "Cantabria" +msgstr "" + +#: contrib/localflavor/es/es_provinces.py:44 +msgid "Segovia" +msgstr "" + +#: contrib/localflavor/es/es_provinces.py:45 +msgid "Seville" +msgstr "" + +#: contrib/localflavor/es/es_provinces.py:46 +msgid "Soria" +msgstr "" + +#: contrib/localflavor/es/es_provinces.py:47 +msgid "Tarragona" +msgstr "" + +#: contrib/localflavor/es/es_provinces.py:48 +msgid "Teruel" +msgstr "" + +#: contrib/localflavor/es/es_provinces.py:49 +msgid "Toledo" +msgstr "" + +#: contrib/localflavor/es/es_provinces.py:50 +msgid "Valencia" +msgstr "" + +#: contrib/localflavor/es/es_provinces.py:51 +msgid "Valladolid" +msgstr "" + +#: contrib/localflavor/es/es_provinces.py:52 +msgid "Bizkaia" +msgstr "Bizkaia" + +#: contrib/localflavor/es/es_provinces.py:53 +msgid "Zamora" +msgstr "" + +#: contrib/localflavor/es/es_provinces.py:54 +msgid "Zaragoza" +msgstr "" + +#: contrib/localflavor/es/es_provinces.py:55 +msgid "Ceuta" +msgstr "" + +#: contrib/localflavor/es/es_provinces.py:56 +msgid "Melilla" +msgstr "" + +#: contrib/localflavor/es/es_regions.py:5 +msgid "Andalusia" +msgstr "" + +#: contrib/localflavor/es/es_regions.py:6 +msgid "Aragon" +msgstr "" + +#: contrib/localflavor/es/es_regions.py:7 +msgid "Principality of Asturias" +msgstr "Asturiaseko printzipadoa" + +#: contrib/localflavor/es/es_regions.py:8 +msgid "Balearic Islands" +msgstr "" + +#: contrib/localflavor/es/es_regions.py:9 +msgid "Basque Country" +msgstr "Euskal Herria" + +#: contrib/localflavor/es/es_regions.py:10 +msgid "Canary Islands" +msgstr "Canaria uharteak" + +#: contrib/localflavor/es/es_regions.py:12 +msgid "Castile-La Mancha" +msgstr "La Mancha-Gaztela" + +#: contrib/localflavor/es/es_regions.py:13 +msgid "Castile and Leon" +msgstr "Gaztela eta Leon" + +#: contrib/localflavor/es/es_regions.py:14 +msgid "Catalonia" +msgstr "Katalunia" + +#: contrib/localflavor/es/es_regions.py:15 +msgid "Extremadura" +msgstr "" + +#: contrib/localflavor/es/es_regions.py:16 +msgid "Galicia" +msgstr "" + +#: contrib/localflavor/es/es_regions.py:19 +msgid "Region of Murcia" +msgstr "" + +#: contrib/localflavor/es/es_regions.py:20 +msgid "Foral Community of Navarre" +msgstr "Nafarroako komunitate forala" + +#: contrib/localflavor/es/es_regions.py:21 +msgid "Valencian Community" +msgstr "Valeciako komunitatea" + +#: contrib/localflavor/es/forms.py:19 +msgid "Enter a valid postal code in the range and format 01XXX - 52XXX." +msgstr "Kode postal bat idatzi hurrengo formato eta tartearekin: 01XXX - 52XXX" + +#: contrib/localflavor/es/forms.py:39 +msgid "" +"Enter a valid phone number in one of the formats 6XXXXXXXX, 8XXXXXXXX or " +"9XXXXXXXX." +msgstr "Telefono zenbaki bat idatzi hurrengo formato batekin: 6XXXXXXXX, 8XXXXXXXX edo 9XXXXXXXX" + +#: contrib/localflavor/es/forms.py:66 +msgid "Please enter a valid NIF, NIE, or CIF." +msgstr "Idatzi NIF,NIE edo CIF zuzena." + +#: contrib/localflavor/es/forms.py:67 +msgid "Please enter a valid NIF or NIE." +msgstr "Idatzi NIF edo NIE zuzena." + +#: contrib/localflavor/es/forms.py:68 +msgid "Invalid checksum for NIF." +msgstr "NIF kontrol kode okerra." + +#: contrib/localflavor/es/forms.py:69 +msgid "Invalid checksum for NIE." +msgstr "NIE kontrol kode okerra." + +#: contrib/localflavor/es/forms.py:70 +msgid "Invalid checksum for CIF." +msgstr "CIF kontrl kode okerra." + +#: contrib/localflavor/es/forms.py:142 +msgid "Please enter a valid bank account number in format XXXX-XXXX-XX-XXXXXXXXXX." +msgstr "Mesedez idatzi banku kontu zenbaki zuzena XXXX-XXXX-XX-XXXXXXXXXX formatoarekin." + +#: contrib/localflavor/es/forms.py:143 +msgid "Invalid checksum for bank account number." +msgstr "Banku kontu zenbakian kontrol digito okerra." + +#: contrib/localflavor/fi/forms.py:28 +msgid "Enter a valid Finnish social security number." +msgstr "" + +#: contrib/localflavor/in_/forms.py:14 +msgid "Enter a zip code in the format XXXXXXX." +msgstr "" + +#: contrib/localflavor/is_/forms.py:17 +msgid "Enter a valid Icelandic identification number. The format is XXXXXX-XXXX." +msgstr "" + +#: contrib/localflavor/is_/forms.py:18 +msgid "The Icelandic identification number is not valid." +msgstr "" + +#: contrib/localflavor/it/forms.py:14 +msgid "Enter a valid zip code." +msgstr "" + +#: contrib/localflavor/it/forms.py:43 +msgid "Enter a valid Social Security number." +msgstr "" + +#: contrib/localflavor/it/forms.py:68 +msgid "Enter a valid VAT number." +msgstr "" + +#: contrib/localflavor/jp/forms.py:19 +msgid "Enter a postal code in the format XXXXXXX or XXX-XXXX." +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:4 +msgid "Hokkaido" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:5 +msgid "Aomori" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:6 +msgid "Iwate" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:7 +msgid "Miyagi" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:8 +msgid "Akita" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:9 +msgid "Yamagata" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:10 +msgid "Fukushima" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:11 +msgid "Ibaraki" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:12 +msgid "Tochigi" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:13 +msgid "Gunma" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:14 +msgid "Saitama" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:15 +msgid "Chiba" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:16 +msgid "Tokyo" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:17 +msgid "Kanagawa" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:18 +msgid "Yamanashi" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:19 +msgid "Nagano" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:20 +msgid "Niigata" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:21 +msgid "Toyama" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:22 +msgid "Ishikawa" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:23 +msgid "Fukui" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:24 +msgid "Gifu" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:25 +msgid "Shizuoka" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:26 +msgid "Aichi" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:27 +msgid "Mie" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:28 +msgid "Shiga" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:29 +msgid "Kyoto" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:30 +msgid "Osaka" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:31 +msgid "Hyogo" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:32 +msgid "Nara" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:33 +msgid "Wakayama" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:34 +msgid "Tottori" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:35 +msgid "Shimane" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:36 +msgid "Okayama" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:37 +msgid "Hiroshima" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:38 +msgid "Yamaguchi" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:39 +msgid "Tokushima" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:40 +msgid "Kagawa" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:41 +msgid "Ehime" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:42 +msgid "Kochi" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:43 +msgid "Fukuoka" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:44 +msgid "Saga" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:45 +msgid "Nagasaki" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:46 +msgid "Kumamoto" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:47 +msgid "Oita" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:48 +msgid "Miyazaki" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:49 +msgid "Kagoshima" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:50 +msgid "Okinawa" +msgstr "" + +#: contrib/localflavor/mx/mx_states.py:12 +msgid "Aguascalientes" +msgstr "" + +#: contrib/localflavor/mx/mx_states.py:13 +msgid "Baja California" +msgstr "" + +#: contrib/localflavor/mx/mx_states.py:14 +msgid "Baja California Sur" +msgstr "" + +#: contrib/localflavor/mx/mx_states.py:15 +msgid "Campeche" +msgstr "" + +#: contrib/localflavor/mx/mx_states.py:16 +msgid "Chihuahua" +msgstr "" + +#: contrib/localflavor/mx/mx_states.py:17 +msgid "Chiapas" +msgstr "" + +#: contrib/localflavor/mx/mx_states.py:18 +msgid "Coahuila" +msgstr "" + +#: contrib/localflavor/mx/mx_states.py:19 +msgid "Colima" +msgstr "" + +#: contrib/localflavor/mx/mx_states.py:20 +msgid "Distrito Federal" +msgstr "" + +#: contrib/localflavor/mx/mx_states.py:21 +msgid "Durango" +msgstr "" + +#: contrib/localflavor/mx/mx_states.py:22 +msgid "Guerrero" +msgstr "" + +#: contrib/localflavor/mx/mx_states.py:23 +msgid "Guanajuato" +msgstr "" + +#: contrib/localflavor/mx/mx_states.py:24 +msgid "Hidalgo" +msgstr "" + +#: contrib/localflavor/mx/mx_states.py:25 +msgid "Jalisco" +msgstr "" + +#: contrib/localflavor/mx/mx_states.py:26 +msgid "Estado de México" +msgstr "" + +#: contrib/localflavor/mx/mx_states.py:27 +msgid "Michoacán" +msgstr "" + +#: contrib/localflavor/mx/mx_states.py:28 +msgid "Morelos" +msgstr "" + +#: contrib/localflavor/mx/mx_states.py:29 +msgid "Nayarit" +msgstr "" + +#: contrib/localflavor/mx/mx_states.py:30 +msgid "Nuevo León" +msgstr "" + +#: contrib/localflavor/mx/mx_states.py:31 +msgid "Oaxaca" +msgstr "" + +#: contrib/localflavor/mx/mx_states.py:32 +msgid "Puebla" +msgstr "" + +#: contrib/localflavor/mx/mx_states.py:33 +msgid "Querétaro" +msgstr "" + +#: contrib/localflavor/mx/mx_states.py:34 +msgid "Quintana Roo" +msgstr "" + +#: contrib/localflavor/mx/mx_states.py:35 +msgid "Sinaloa" +msgstr "" + +#: contrib/localflavor/mx/mx_states.py:36 +msgid "San Luis Potosí" +msgstr "" + +#: contrib/localflavor/mx/mx_states.py:37 +msgid "Sonora" +msgstr "" + +#: contrib/localflavor/mx/mx_states.py:38 +msgid "Tabasco" +msgstr "" + +#: contrib/localflavor/mx/mx_states.py:39 +msgid "Tamaulipas" +msgstr "" + +#: contrib/localflavor/mx/mx_states.py:40 +msgid "Tlaxcala" +msgstr "" + +#: contrib/localflavor/mx/mx_states.py:41 +msgid "Veracruz" +msgstr "" + +#: contrib/localflavor/mx/mx_states.py:42 +msgid "Yucatán" +msgstr "" + +#: contrib/localflavor/mx/mx_states.py:43 +msgid "Zacatecas" +msgstr "" + +#: contrib/localflavor/nl/forms.py:21 +msgid "Enter a valid postal code" +msgstr "" + +#: contrib/localflavor/nl/forms.py:52 +msgid "Enter a valid phone number" +msgstr "" + +#: contrib/localflavor/nl/forms.py:78 +msgid "Enter a valid SoFi number" +msgstr "" + +#: contrib/localflavor/nl/nl_provinces.py:4 +msgid "Drente" +msgstr "" + +#: contrib/localflavor/nl/nl_provinces.py:5 +msgid "Flevoland" +msgstr "" + +#: contrib/localflavor/nl/nl_provinces.py:6 +msgid "Friesland" +msgstr "" + +#: contrib/localflavor/nl/nl_provinces.py:7 +msgid "Gelderland" +msgstr "" + +#: contrib/localflavor/nl/nl_provinces.py:8 +msgid "Groningen" +msgstr "" + +#: contrib/localflavor/nl/nl_provinces.py:9 +msgid "Limburg" +msgstr "" + +#: contrib/localflavor/nl/nl_provinces.py:10 +msgid "Noord-Brabant" +msgstr "" + +#: contrib/localflavor/nl/nl_provinces.py:11 +msgid "Noord-Holland" +msgstr "" + +#: contrib/localflavor/nl/nl_provinces.py:12 +msgid "Overijssel" +msgstr "" + +#: contrib/localflavor/nl/nl_provinces.py:13 +msgid "Utrecht" +msgstr "" + +#: contrib/localflavor/nl/nl_provinces.py:14 +msgid "Zeeland" +msgstr "" + +#: contrib/localflavor/nl/nl_provinces.py:15 +msgid "Zuid-Holland" +msgstr "" + +#: contrib/localflavor/no/forms.py:33 +msgid "Enter a valid Norwegian social security number." +msgstr "" + +#: contrib/localflavor/pe/forms.py:24 +msgid "This field requires 8 digits." +msgstr "" + +#: contrib/localflavor/pe/forms.py:52 +msgid "This field requires 11 digits." +msgstr "" + +#: contrib/localflavor/pl/forms.py:39 +msgid "National Identification Number consists of 11 digits." +msgstr "" + +#: contrib/localflavor/pl/forms.py:40 +msgid "Wrong checksum for the National Identification Number." +msgstr "" + +#: contrib/localflavor/pl/forms.py:72 +msgid "Enter a tax number field (NIP) in the format XXX-XXX-XX-XX or XX-XX-XXX-XXX." +msgstr "" + +#: contrib/localflavor/pl/forms.py:73 +msgid "Wrong checksum for the Tax Number (NIP)." +msgstr "" + +#: contrib/localflavor/pl/forms.py:112 +msgid "National Business Register Number (REGON) consists of 7 or 9 digits." +msgstr "" + +#: contrib/localflavor/pl/forms.py:113 +msgid "Wrong checksum for the National Business Register Number (REGON)." +msgstr "" + +#: contrib/localflavor/pl/forms.py:156 +msgid "Enter a postal code in the format XX-XXX." +msgstr "" + +#: contrib/localflavor/pl/pl_voivodeships.py:8 +msgid "Lower Silesia" +msgstr "" + +#: contrib/localflavor/pl/pl_voivodeships.py:9 +msgid "Kuyavia-Pomerania" +msgstr "" + +#: contrib/localflavor/pl/pl_voivodeships.py:10 +msgid "Lublin" +msgstr "" + +#: contrib/localflavor/pl/pl_voivodeships.py:11 +msgid "Lubusz" +msgstr "" + +#: contrib/localflavor/pl/pl_voivodeships.py:12 +msgid "Lodz" +msgstr "" + +#: contrib/localflavor/pl/pl_voivodeships.py:13 +msgid "Lesser Poland" +msgstr "" + +#: contrib/localflavor/pl/pl_voivodeships.py:14 +msgid "Masovia" +msgstr "" + +#: contrib/localflavor/pl/pl_voivodeships.py:15 +msgid "Opole" +msgstr "" + +#: contrib/localflavor/pl/pl_voivodeships.py:16 +msgid "Subcarpatia" +msgstr "" + +#: contrib/localflavor/pl/pl_voivodeships.py:17 +msgid "Podlasie" +msgstr "" + +#: contrib/localflavor/pl/pl_voivodeships.py:18 +msgid "Pomerania" +msgstr "" + +#: contrib/localflavor/pl/pl_voivodeships.py:19 +msgid "Silesia" +msgstr "" + +#: contrib/localflavor/pl/pl_voivodeships.py:20 +msgid "Swietokrzyskie" +msgstr "" + +#: contrib/localflavor/pl/pl_voivodeships.py:21 +msgid "Warmia-Masuria" +msgstr "" + +#: contrib/localflavor/pl/pl_voivodeships.py:22 +msgid "Greater Poland" +msgstr "" + +#: contrib/localflavor/pl/pl_voivodeships.py:23 +msgid "West Pomerania" +msgstr "" + +#: contrib/localflavor/sk/forms.py:30 +msgid "Enter a postal code in the format XXXXX or XXX XX." +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:8 +msgid "Banska Bystrica" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:9 +msgid "Banska Stiavnica" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:10 +msgid "Bardejov" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:11 +msgid "Banovce nad Bebravou" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:12 +msgid "Brezno" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:13 +msgid "Bratislava I" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:14 +msgid "Bratislava II" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:15 +msgid "Bratislava III" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:16 +msgid "Bratislava IV" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:17 +msgid "Bratislava V" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:18 +msgid "Bytca" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:19 +msgid "Cadca" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:20 +msgid "Detva" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:21 +msgid "Dolny Kubin" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:22 +msgid "Dunajska Streda" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:23 +msgid "Galanta" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:24 +msgid "Gelnica" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:25 +msgid "Hlohovec" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:26 +msgid "Humenne" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:27 +msgid "Ilava" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:28 +msgid "Kezmarok" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:29 +msgid "Komarno" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:30 +msgid "Kosice I" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:31 +msgid "Kosice II" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:32 +msgid "Kosice III" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:33 +msgid "Kosice IV" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:34 +msgid "Kosice - okolie" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:35 +msgid "Krupina" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:36 +msgid "Kysucke Nove Mesto" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:37 +msgid "Levice" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:38 +msgid "Levoca" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:39 +msgid "Liptovsky Mikulas" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:40 +msgid "Lucenec" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:41 +msgid "Malacky" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:42 +msgid "Martin" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:43 +msgid "Medzilaborce" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:44 +msgid "Michalovce" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:45 +msgid "Myjava" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:46 +msgid "Namestovo" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:47 +msgid "Nitra" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:48 +msgid "Nove Mesto nad Vahom" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:49 +msgid "Nove Zamky" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:50 +msgid "Partizanske" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:51 +msgid "Pezinok" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:52 +msgid "Piestany" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:53 +msgid "Poltar" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:54 +msgid "Poprad" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:55 +msgid "Povazska Bystrica" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:56 +msgid "Presov" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:57 +msgid "Prievidza" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:58 +msgid "Puchov" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:59 +msgid "Revuca" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:60 +msgid "Rimavska Sobota" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:61 +msgid "Roznava" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:62 +msgid "Ruzomberok" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:63 +msgid "Sabinov" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:64 +msgid "Senec" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:65 +msgid "Senica" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:66 +msgid "Skalica" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:67 +msgid "Snina" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:68 +msgid "Sobrance" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:69 +msgid "Spisska Nova Ves" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:70 +msgid "Stara Lubovna" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:71 +msgid "Stropkov" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:72 +msgid "Svidnik" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:73 +msgid "Sala" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:74 +msgid "Topolcany" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:75 +msgid "Trebisov" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:76 +msgid "Trencin" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:77 +msgid "Trnava" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:78 +msgid "Turcianske Teplice" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:79 +msgid "Tvrdosin" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:80 +msgid "Velky Krtis" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:81 +msgid "Vranov nad Toplou" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:82 +msgid "Zlate Moravce" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:83 +msgid "Zvolen" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:84 +msgid "Zarnovica" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:85 +msgid "Ziar nad Hronom" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:86 +msgid "Zilina" +msgstr "" + +#: contrib/localflavor/sk/sk_regions.py:8 +msgid "Banska Bystrica region" +msgstr "" + +#: contrib/localflavor/sk/sk_regions.py:9 +msgid "Bratislava region" +msgstr "" + +#: contrib/localflavor/sk/sk_regions.py:10 +msgid "Kosice region" +msgstr "" + +#: contrib/localflavor/sk/sk_regions.py:11 +msgid "Nitra region" +msgstr "" + +#: contrib/localflavor/sk/sk_regions.py:12 +msgid "Presov region" +msgstr "" + +#: contrib/localflavor/sk/sk_regions.py:13 +msgid "Trencin region" +msgstr "" + +#: contrib/localflavor/sk/sk_regions.py:14 +msgid "Trnava region" +msgstr "" + +#: contrib/localflavor/sk/sk_regions.py:15 +msgid "Zilina region" +msgstr "" + +#: contrib/localflavor/uk/forms.py:21 +msgid "Enter a valid postcode." +msgstr "" + +#: contrib/localflavor/uk/uk_regions.py:11 +msgid "Bedfordshire" +msgstr "" + +#: contrib/localflavor/uk/uk_regions.py:12 +msgid "Buckinghamshire" +msgstr "" + +#: contrib/localflavor/uk/uk_regions.py:14 +msgid "Cheshire" +msgstr "" + +#: contrib/localflavor/uk/uk_regions.py:15 +msgid "Cornwall and Isles of Scilly" +msgstr "" + +#: contrib/localflavor/uk/uk_regions.py:16 +msgid "Cumbria" +msgstr "" + +#: contrib/localflavor/uk/uk_regions.py:17 +msgid "Derbyshire" +msgstr "" + +#: contrib/localflavor/uk/uk_regions.py:18 +msgid "Devon" +msgstr "" + +#: contrib/localflavor/uk/uk_regions.py:19 +msgid "Dorset" +msgstr "" + +#: contrib/localflavor/uk/uk_regions.py:20 +msgid "Durham" +msgstr "" + +#: contrib/localflavor/uk/uk_regions.py:21 +msgid "East Sussex" +msgstr "" + +#: contrib/localflavor/uk/uk_regions.py:22 +msgid "Essex" +msgstr "" + +#: contrib/localflavor/uk/uk_regions.py:23 +msgid "Gloucestershire" +msgstr "" + +#: contrib/localflavor/uk/uk_regions.py:24 +msgid "Greater London" +msgstr "" + +#: contrib/localflavor/uk/uk_regions.py:25 +msgid "Greater Manchester" +msgstr "" + +#: contrib/localflavor/uk/uk_regions.py:26 +msgid "Hampshire" +msgstr "" + +#: contrib/localflavor/uk/uk_regions.py:27 +msgid "Hertfordshire" +msgstr "" + +#: contrib/localflavor/uk/uk_regions.py:28 +msgid "Kent" +msgstr "" + +#: contrib/localflavor/uk/uk_regions.py:29 +msgid "Lancashire" +msgstr "" + +#: contrib/localflavor/uk/uk_regions.py:30 +msgid "Leicestershire" +msgstr "" + +#: contrib/localflavor/uk/uk_regions.py:31 +msgid "Lincolnshire" +msgstr "" + +#: contrib/localflavor/uk/uk_regions.py:32 +msgid "Merseyside" +msgstr "" + +#: contrib/localflavor/uk/uk_regions.py:33 +msgid "Norfolk" +msgstr "" + +#: contrib/localflavor/uk/uk_regions.py:34 +msgid "North Yorkshire" +msgstr "" + +#: contrib/localflavor/uk/uk_regions.py:35 +msgid "Northamptonshire" +msgstr "" + +#: contrib/localflavor/uk/uk_regions.py:36 +msgid "Northumberland" +msgstr "" + +#: contrib/localflavor/uk/uk_regions.py:37 +msgid "Nottinghamshire" +msgstr "" + +#: contrib/localflavor/uk/uk_regions.py:38 +msgid "Oxfordshire" +msgstr "" + +#: contrib/localflavor/uk/uk_regions.py:39 +msgid "Shropshire" +msgstr "" + +#: contrib/localflavor/uk/uk_regions.py:40 +msgid "Somerset" +msgstr "" + +#: contrib/localflavor/uk/uk_regions.py:41 +msgid "South Yorkshire" +msgstr "" + +#: contrib/localflavor/uk/uk_regions.py:42 +msgid "Staffordshire" +msgstr "" + +#: contrib/localflavor/uk/uk_regions.py:43 +msgid "Suffolk" +msgstr "" + +#: contrib/localflavor/uk/uk_regions.py:44 +msgid "Surrey" +msgstr "" + +#: contrib/localflavor/uk/uk_regions.py:45 +msgid "Tyne and Wear" +msgstr "" + +#: contrib/localflavor/uk/uk_regions.py:46 +msgid "Warwickshire" +msgstr "" + +#: contrib/localflavor/uk/uk_regions.py:47 +msgid "West Midlands" +msgstr "" + +#: contrib/localflavor/uk/uk_regions.py:48 +msgid "West Sussex" +msgstr "" + +#: contrib/localflavor/uk/uk_regions.py:49 +msgid "West Yorkshire" +msgstr "" + +#: contrib/localflavor/uk/uk_regions.py:50 +msgid "Wiltshire" +msgstr "" + +#: contrib/localflavor/uk/uk_regions.py:51 +msgid "Worcestershire" +msgstr "" + +#: contrib/localflavor/uk/uk_regions.py:55 +msgid "County Antrim" +msgstr "" + +#: contrib/localflavor/uk/uk_regions.py:56 +msgid "County Armagh" +msgstr "" + +#: contrib/localflavor/uk/uk_regions.py:57 +msgid "County Down" +msgstr "" + +#: contrib/localflavor/uk/uk_regions.py:58 +msgid "County Fermanagh" +msgstr "" + +#: contrib/localflavor/uk/uk_regions.py:59 +msgid "County Londonderry" +msgstr "" + +#: contrib/localflavor/uk/uk_regions.py:60 +msgid "County Tyrone" +msgstr "" + +#: contrib/localflavor/uk/uk_regions.py:64 +msgid "Clwyd" +msgstr "" + +#: contrib/localflavor/uk/uk_regions.py:65 +msgid "Dyfed" +msgstr "" + +#: contrib/localflavor/uk/uk_regions.py:66 +msgid "Gwent" +msgstr "" + +#: contrib/localflavor/uk/uk_regions.py:67 +msgid "Gwynedd" +msgstr "" + +#: contrib/localflavor/uk/uk_regions.py:68 +msgid "Mid Glamorgan" +msgstr "" + +#: contrib/localflavor/uk/uk_regions.py:69 +msgid "Powys" +msgstr "" + +#: contrib/localflavor/uk/uk_regions.py:70 +msgid "South Glamorgan" +msgstr "" + +#: contrib/localflavor/uk/uk_regions.py:71 +msgid "West Glamorgan" +msgstr "" + +#: contrib/localflavor/uk/uk_regions.py:75 +msgid "Borders" +msgstr "" + +#: contrib/localflavor/uk/uk_regions.py:76 +msgid "Central Scotland" +msgstr "" + +#: contrib/localflavor/uk/uk_regions.py:77 +msgid "Dumfries and Galloway" +msgstr "" + +#: contrib/localflavor/uk/uk_regions.py:78 +msgid "Fife" +msgstr "" + +#: contrib/localflavor/uk/uk_regions.py:79 +msgid "Grampian" +msgstr "" + +#: contrib/localflavor/uk/uk_regions.py:80 +msgid "Highland" +msgstr "" + +#: contrib/localflavor/uk/uk_regions.py:81 +msgid "Lothian" +msgstr "" + +#: contrib/localflavor/uk/uk_regions.py:82 +msgid "Orkney Islands" +msgstr "" + +#: contrib/localflavor/uk/uk_regions.py:83 +msgid "Shetland Islands" +msgstr "" + +#: contrib/localflavor/uk/uk_regions.py:84 +msgid "Strathclyde" +msgstr "" + +#: contrib/localflavor/uk/uk_regions.py:85 +msgid "Tayside" +msgstr "" + +#: contrib/localflavor/uk/uk_regions.py:86 +msgid "Western Isles" +msgstr "" + +#: contrib/localflavor/uk/uk_regions.py:90 +msgid "England" +msgstr "" + +#: contrib/localflavor/uk/uk_regions.py:91 +msgid "Northern Ireland" +msgstr "" + +#: contrib/localflavor/uk/uk_regions.py:92 +msgid "Scotland" +msgstr "" + +#: contrib/localflavor/uk/uk_regions.py:93 +msgid "Wales" +msgstr "" + +#: contrib/localflavor/us/forms.py:16 +msgid "Enter a zip code in the format XXXXX or XXXXX-XXXX." +msgstr "" + +#: contrib/localflavor/us/forms.py:54 +msgid "Enter a valid U.S. Social Security number in XXX-XX-XXXX format." +msgstr "" + +#: contrib/localflavor/za/forms.py:20 +msgid "Enter a valid South African ID number" +msgstr "" + +#: contrib/localflavor/za/forms.py:54 +msgid "Enter a valid South African postal code" +msgstr "" + +#: contrib/localflavor/za/za_provinces.py:4 +msgid "Eastern Cape" +msgstr "" + +#: contrib/localflavor/za/za_provinces.py:5 +msgid "Free State" +msgstr "" + +#: contrib/localflavor/za/za_provinces.py:6 +msgid "Gauteng" +msgstr "" + +#: contrib/localflavor/za/za_provinces.py:7 +msgid "KwaZulu-Natal" +msgstr "" + +#: contrib/localflavor/za/za_provinces.py:8 +msgid "Limpopo" +msgstr "" + +#: contrib/localflavor/za/za_provinces.py:9 +msgid "Mpumalanga" +msgstr "" + +#: contrib/localflavor/za/za_provinces.py:10 +msgid "Northern Cape" +msgstr "" + +#: contrib/localflavor/za/za_provinces.py:11 +msgid "North West" +msgstr "" + +#: contrib/localflavor/za/za_provinces.py:12 +msgid "Western Cape" +msgstr "" + +#: contrib/redirects/models.py:7 +msgid "redirect from" +msgstr "nondik berbidalia" + +#: contrib/redirects/models.py:8 +msgid "" +"This should be an absolute path, excluding the domain name. Example: '/" +"events/search/'." +msgstr "Hau 'bide' absolutua izan beharko luke, dominio izena kenduta. 'Adibidez: events/search/'." + +#: contrib/redirects/models.py:9 +msgid "redirect to" +msgstr "Nora berbidali" + +#: contrib/redirects/models.py:10 +msgid "" +"This can be either an absolute path (as above) or a full URL starting with " +"'http://'." +msgstr "Hau 'bide' absolutua (goian bezala) edo URL osoa , 'http://'-rekin hasiz, izan daiteke." + +#: contrib/redirects/models.py:13 +msgid "redirect" +msgstr "berbidali" + +#: contrib/redirects/models.py:14 +msgid "redirects" +msgstr "berbidali" + +#: contrib/sessions/models.py:46 +msgid "session key" +msgstr "sesioaren giltza" + +#: contrib/sessions/models.py:47 +msgid "session data" +msgstr "sesioaren data" + +#: contrib/sessions/models.py:48 +msgid "expire date" +msgstr "amaiera data" + +#: contrib/sessions/models.py:53 +msgid "session" +msgstr "sesioa" + +#: contrib/sessions/models.py:54 +msgid "sessions" +msgstr "sesioak" + +#: contrib/sites/models.py:32 +msgid "domain name" +msgstr "dominio izena" + +#: contrib/sites/models.py:33 +msgid "display name" +msgstr "erakusteko izena" + +#: contrib/sites/models.py:37 +msgid "site" +msgstr "web gunea" + +#: contrib/sites/models.py:38 +msgid "sites" +msgstr "web guneak" + +#: core/validators.py:72 +msgid "This value must contain only letters, numbers and underscores." +msgstr "Balore honek, letrak, zenbakia eta '_' karakterak bakarrik eduki ditzazke." + +#: core/validators.py:76 +msgid "" +"This value must contain only letters, numbers, underscores, dashes or " +"slashes." +msgstr "Balore honek, letrak, zenbakia eta '_', '/','-' karakterak bakarrik eduki ditzazke." + +#: core/validators.py:80 +msgid "This value must contain only letters, numbers, underscores or hyphens." +msgstr "Balore honek letrak, zenbakiak eta '_','-' karatereak bakarrik izan ditzazke." + +#: core/validators.py:84 +msgid "Uppercase letters are not allowed here." +msgstr "Hemen letra maiuskulak ez dira onartzen." + +#: core/validators.py:88 +msgid "Lowercase letters are not allowed here." +msgstr "Hemen letra minukulak ez dira onartzen." + +#: core/validators.py:95 +msgid "Enter only digits separated by commas." +msgstr "Komaz bereiztutako digitoak bakarrik idatzi." + +#: core/validators.py:107 +msgid "Enter valid e-mail addresses separated by commas." +msgstr "E-mail norabide zuzenak idatzi, komaz bereizturik." + +#: core/validators.py:111 +msgid "Please enter a valid IP address." +msgstr "Idatzi IP zenbaki zuzena mesedez." + +#: core/validators.py:115 +msgid "Empty values are not allowed here." +msgstr "Balore hutsak ez dira hemen onartzen." + +#: core/validators.py:119 +msgid "Non-numeric characters aren't allowed here." +msgstr "Zenbaki karaktereak bakarrik onartzen dira hemen." + +#: core/validators.py:123 +msgid "This value can't be comprised solely of digits." +msgstr "Balore honek ezin daiteke digitoz bakarrik osatua egon." + +#: core/validators.py:128 newforms/fields.py:151 +msgid "Enter a whole number." +msgstr "Zenbaki bat idatzi." + +#: core/validators.py:132 +msgid "Only alphabetical characters are allowed here." +msgstr "Karaktere alfabetikoak bakarrik onartzen dira hemen." + +#: core/validators.py:147 +msgid "Year must be 1900 or later." +msgstr "Urtea 1900 edo haundiagoa izan behar du." + +#: core/validators.py:151 +#, python-format +msgid "Invalid date: %s" +msgstr "Data okerra: %s" + +#: core/validators.py:156 db/models/fields/__init__.py:509 +msgid "Enter a valid date in YYYY-MM-DD format." +msgstr "Data zuzena idatzi, YYY-MM-DD formatoan." + +#: core/validators.py:161 +msgid "Enter a valid time in HH:MM format." +msgstr "Hordu zuzena idatzi HH:MM formatoan." + +#: core/validators.py:165 db/models/fields/__init__.py:583 +msgid "Enter a valid date/time in YYYY-MM-DD HH:MM format." +msgstr "Idatzi data/hordua zuzena YYYY-MM-DD HH:MM formatoan." + +#: core/validators.py:170 newforms/fields.py:402 +msgid "Enter a valid e-mail address." +msgstr "e-mail helbide zuzena idatzi." + +#: core/validators.py:182 core/validators.py:474 newforms/fields.py:432 +#: oldforms/__init__.py:687 +msgid "No file was submitted. Check the encoding type on the form." +msgstr "Ez da fitxategirik bidali. Baiztatu ezazu formularioren kode formatoa." + +#: core/validators.py:193 newforms/fields.py:458 +msgid "" +"Upload a valid image. The file you uploaded was either not an image or a " +"corrupted image." +msgstr "Bidali irudi zuzena. Zuk bidalitako fitxategia ez da irudi motako edo akatsa du." + +#: core/validators.py:200 +#, python-format +msgid "The URL %s does not point to a valid image." +msgstr "%s URLa ez da irudi zuzena." + +#: core/validators.py:204 +#, python-format +msgid "Phone numbers must be in XXX-XXX-XXXX format. \"%s\" is invalid." +msgstr "Telefono zenbakiak XXX-XXX-XXXX formatoa eduki behar dute. \"%s\" okerra." + +#: core/validators.py:212 +#, python-format +msgid "The URL %s does not point to a valid QuickTime video." +msgstr "%s URLa ez da QuickTime bideo zuzena." + +#: core/validators.py:216 +msgid "A valid URL is required." +msgstr "URL zuzena behar da." + +#: core/validators.py:230 +#, python-format +msgid "" +"Valid HTML is required. Specific errors are:\n" +"%s" +msgstr "" +"HTML zuzena behar da. Erroreak daude:\n" +"%s" + +#: core/validators.py:237 +#, python-format +msgid "Badly formed XML: %s" +msgstr "XML okerra: %s" + +#: core/validators.py:254 +#, python-format +msgid "Invalid URL: %s" +msgstr "URL okerra: %s" + +#: core/validators.py:259 core/validators.py:261 +#, python-format +msgid "The URL %s is a broken link." +msgstr "%s URLa ez dabil ondo." + +#: core/validators.py:267 +msgid "Enter a valid U.S. state abbreviation." +msgstr "U.S estatu laburpen zuzen idatzi." + +#: core/validators.py:281 +#, python-format +msgid "Watch your mouth! The word %s is not allowed here." +msgid_plural "Watch your mouth! The words %s are not allowed here." +msgstr[0] "Kontuz ibili! %s hitza ez dago hemen onartua." +msgstr[1] "" + +#: core/validators.py:288 +#, python-format +msgid "This field must match the '%s' field." +msgstr "Data hau '%s' data berdindu behar du." + +#: core/validators.py:307 +msgid "Please enter something for at least one field." +msgstr "Idatzi gutxienez data bat." + +#: core/validators.py:316 core/validators.py:327 +msgid "Please enter both fields or leave them both empty." +msgstr "Hidatzi bi datuak edo utzi biak hutsik." + +#: core/validators.py:335 +#, python-format +msgid "This field must be given if %(field)s is %(value)s" +msgstr "Data hau idatzi behar da, %(field)s %(value)s balorea badu." + +#: core/validators.py:348 +#, python-format +msgid "This field must be given if %(field)s is not %(value)s" +msgstr "Data hau idatzi behar da %(field)s %(value)s balorea ez bada." + +#: core/validators.py:367 +msgid "Duplicate values are not allowed." +msgstr "Errepikatutako datak ez dira onartzen." + +#: core/validators.py:382 +#, python-format +msgid "This value must be between %(lower)s and %(upper)s." +msgstr "Balore hau %(lower)s eta %(upper)s artean egon behar du." + +#: core/validators.py:384 +#, python-format +msgid "This value must be at least %s." +msgstr "Gutxienez %s izan behar du." + +#: core/validators.py:386 +#, python-format +msgid "This value must be no more than %s." +msgstr "Balore hau %s baino txikiagoa izan behar du." + +#: core/validators.py:427 +#, python-format +msgid "This value must be a power of %s." +msgstr "Balore hau %s-ren multiploa izan behar du." + +#: core/validators.py:437 +msgid "Please enter a valid decimal number." +msgstr "Idatzi zenbaki dezimal zuzena mesedez." + +#: core/validators.py:444 +#, python-format +msgid "Please enter a valid decimal number with at most %s total digit." +msgid_plural "Please enter a valid decimal number with at most %s total digits." +msgstr[0] "Idatzi zenbaki dezimal zuzena gehienez %s digitorekin." +msgstr[1] "" + +#: core/validators.py:447 +#, python-format +msgid "Please enter a valid decimal number with a whole part of at most %s digit." +msgid_plural "Please enter a valid decimal number with a whole part of at most %s digits." +msgstr[0] "Idatzi zenbaki digital zuzena, %s digitorekin gutxienez alde osoan." +msgstr[1] "" + +#: core/validators.py:450 +#, python-format +msgid "Please enter a valid decimal number with at most %s decimal place." +msgid_plural "Please enter a valid decimal number with at most %s decimal places." +msgstr[0] "Idatzi zenbaki dezimal zuzena, %s digitorekin dezimalean." +msgstr[1] "" + +#: core/validators.py:458 +msgid "Please enter a valid floating point number." +msgstr "Idatzi zenbaki erreal zuzena." + +#: core/validators.py:467 +#, python-format +msgid "Make sure your uploaded file is at least %s bytes big." +msgstr "Ziurta zaitez bidalitako fitxategia gutxienex %s byte tamaina duela." + +#: core/validators.py:468 +#, python-format +msgid "Make sure your uploaded file is at most %s bytes big." +msgstr "Ziurta zaitez bidalitako fitxategia gehienez %s byte dituela." + +#: core/validators.py:485 +msgid "The format for this field is wrong." +msgstr "Data honen formatoa okerra da." + +#: core/validators.py:500 +msgid "This field is invalid." +msgstr "Data okerra." + +#: core/validators.py:536 +#, python-format +msgid "Could not retrieve anything from %s." +msgstr "Ezin daiteke ezer lortu %s-tik." + +#: core/validators.py:539 +#, python-format +msgid "The URL %(url)s returned the invalid Content-Type header '%(contenttype)s'." +msgstr "%(url)s URLak content-type okerra itzuli du: '%(contenttype)s'." + +#: core/validators.py:572 +#, python-format +msgid "" +"Please close the unclosed %(tag)s tag from line %(line)s. (Line starts with " +"\"%(start)s\".)" +msgstr "Mesedez itxi itxigabeko %(tag)s elementoa %(line)s lerroan. Lerroa hasiera: \"%(start)s\"." + +#: core/validators.py:576 +#, python-format +msgid "" +"Some text starting on line %(line)s is not allowed in that context. (Line " +"starts with \"%(start)s\".)" +msgstr "Texturen bat %(line)s lerroan ez da onartzen contextu horretan. Lerro hasiera: \"%(start)s\"." + +#: core/validators.py:581 +#, python-format +msgid "" +"\"%(attr)s\" on line %(line)s is an invalid attribute. (Line starts with \"%" +"(start)s\".)" +msgstr "\"%(attr)s\" %(line)s lerroan atribitu okerra da. Lerro hasiera: \"%(start)s\"." + +#: core/validators.py:586 +#, python-format +msgid "" +"\"<%(tag)s>\" on line %(line)s is an invalid tag. (Line starts with \"%" +"(start)s\".)" +msgstr "\"%(tag)s\" %(line)s lerroan elementu okerra da. Lerro hasiera: \"%(start)s\"." + +#: core/validators.py:590 +#, python-format +msgid "" +"A tag on line %(line)s is missing one or more required attributes. (Line " +"starts with \"%(start)s\".)" +msgstr "%(line)s lerroan elementu atributu bat edo gehiago faltan ditu. Lerro hasiera:\"%(start)s\"." + +#: core/validators.py:595 +#, python-format +msgid "" +"The \"%(attr)s\" attribute on line %(line)s has an invalid value. (Line " +"starts with \"%(start)s\".)" +msgstr "\"%(attr)s\" atributoa %(line)s lerroan balore okerra du. (Lerro hasiera: \"%(start)s\".)" + +#: db/models/manipulators.py:308 +#, python-format +msgid "%(object)s with this %(type)s already exists for the given %(field)s." +msgstr "%(object)s with this %(type)s already exists for the given %(field)s." + +#: db/models/fields/__init__.py:52 +#, python-format +msgid "%(optname)s with this %(fieldname)s already exists." +msgstr "Badago %(optname)s izenarekin %(fieldname)s-n." + +#: db/models/fields/__init__.py:161 db/models/fields/__init__.py:318 +#: db/models/fields/__init__.py:735 db/models/fields/__init__.py:746 +#: newforms/fields.py:45 oldforms/__init__.py:374 +msgid "This field is required." +msgstr "Kanpo hau beharrezkoa da." + +#: db/models/fields/__init__.py:418 +msgid "This value must be an integer." +msgstr "Balore hau zenbaki osoa izan behar du." + +#: db/models/fields/__init__.py:454 +msgid "This value must be either True or False." +msgstr "Balore hau egia ala gezurra izan behar du (True/False)." + +#: db/models/fields/__init__.py:475 +msgid "This field cannot be null." +msgstr "Datu hau ezin daiteke hutsa izan (null)." + +#: db/models/fields/__init__.py:644 +msgid "This value must be a decimal number." +msgstr "Balore hau zenbaki dezimala izan begar du." + +#: db/models/fields/__init__.py:755 +msgid "Enter a valid filename." +msgstr "Idatzi fitxategi izen zuzena" + +#: db/models/fields/__init__.py:908 +msgid "This value must be either None, True or False." +msgstr "Balore hau hutsa, egia edo gezurra izan behar du (None, True,False)" + +#: db/models/fields/related.py:55 +#, python-format +msgid "Please enter a valid %s." +msgstr "Mesades idatzi %s zuzena." + +#: db/models/fields/related.py:658 +msgid "Separate multiple IDs with commas." +msgstr "Bereiztu ID zerrenda koma bidez." + +#: db/models/fields/related.py:660 +msgid "Hold down \"Control\", or \"Command\" on a Mac, to select more than one." +msgstr "Zapaldu \"Control\" karakterea edo \"Command\" Mac batean, bat baino gehiago aukeratzeko." + +#: db/models/fields/related.py:707 +#, python-format +msgid "Please enter valid %(self)s IDs. The value %(value)r is invalid." +msgid_plural "Please enter valid %(self)s IDs. The values %(value)r are invalid." +msgstr[0] "Mesedez idatzi %(self)s ID zuzena. %(value)r okerra da." +msgstr[1] "" + +#: newforms/fields.py:46 +msgid "Enter a valid value." +msgstr "Idatzi balio zuzena." + +#: newforms/fields.py:123 +#, python-format +msgid "Ensure this value has at most %(max)d characters (it has %(length)d)." +msgstr "Ziurta zaitez balore honek gehienez %(max)d karactere dituela, %(length)d ditu orain." + +#: newforms/fields.py:124 +#, python-format +msgid "Ensure this value has at least %(min)d characters (it has %(length)d)." +msgstr "Ziurta zaitez balore honek gutxienez %(min)d karaktere dituela ,%(length)d ditu orain." + +#: newforms/fields.py:152 newforms/fields.py:181 newforms/fields.py:210 +#, python-format +msgid "Ensure this value is less than or equal to %s." +msgstr "Ziurta zaitez balore hau %s baino txikiagoa edo berdina dela." + +#: newforms/fields.py:153 newforms/fields.py:182 newforms/fields.py:211 +#, python-format +msgid "Ensure this value is greater than or equal to %s." +msgstr "Ziurta zaitez balore hau %s baino haundiagoa edo berdina dela." + +#: newforms/fields.py:180 newforms/fields.py:209 +msgid "Enter a number." +msgstr "Idatzi zenbaki bat." + +#: newforms/fields.py:212 +#, python-format +msgid "Ensure that there are no more than %s digits in total." +msgstr "Ziurta zaitez %s baino digito gehiago ez dagoela." + +#: newforms/fields.py:213 +#, python-format +msgid "Ensure that there are no more than %s decimal places." +msgstr "Ziurta zaitez %s baino dezimale gehiago ez dagoela." + +#: newforms/fields.py:214 +#, python-format +msgid "Ensure that there are no more than %s digits before the decimal point." +msgstr "Ziurta zaitez %s digitu baino gehiago ez dagoela puntu dezimalaren aurretik." + +#: newforms/fields.py:262 newforms/fields.py:723 +msgid "Enter a valid date." +msgstr "Data zuzen bat idatzi." + +#: newforms/fields.py:295 newforms/fields.py:724 +msgid "Enter a valid time." +msgstr "Ordu zuzen bat idatzi." + +#: newforms/fields.py:334 +msgid "Enter a valid date/time." +msgstr "Data/Ordua zuzen bat idatzi." + +#: newforms/fields.py:433 +msgid "No file was submitted." +msgstr "Ez da fitxategirik bidali." + +#: newforms/fields.py:434 oldforms/__init__.py:689 +msgid "The submitted file is empty." +msgstr "Bidalitako fitxategia hutsik dago." + +#: newforms/fields.py:496 +msgid "Enter a valid URL." +msgstr "URL zuzen bat idatzi." + +#: newforms/fields.py:497 +msgid "This URL appears to be a broken link." +msgstr "URL hau ez dabil ondo." + +#: newforms/fields.py:559 newforms/models.py:317 +msgid "Select a valid choice. That choice is not one of the available choices." +msgstr "Aukera zuzen bat aukeratu. Aukeratutakoa ez da zuzena." + +#: newforms/fields.py:598 +#, python-format +msgid "Select a valid choice. %(value)s is not one of the available choices." +msgstr "Aukeratu aukera zuzen bat. %(value)s ez da zuzena." + +#: newforms/fields.py:599 newforms/fields.py:661 newforms/models.py:377 +msgid "Enter a list of values." +msgstr "Balio zerrenda bat idatzi ezazu." + +#: newforms/fields.py:752 +msgid "Enter a valid IPv4 address." +msgstr "IPv4 zuzen bat idatzi." + +#: newforms/models.py:378 +#, python-format +msgid "Select a valid choice. %s is not one of the available choices." +msgstr "Aukera zuzena aukeratu. %s ez da zuzena." + +#: oldforms/__init__.py:409 +#, python-format +msgid "Ensure your text is less than %s character." +msgid_plural "Ensure your text is less than %s characters." +msgstr[0] "Ziurta zaitez textuak %s karaktere baino gutxiago duela." +msgstr[1] "" + +#: oldforms/__init__.py:414 +msgid "Line breaks are not allowed here." +msgstr "Lerro berriak (line breaks) ez dire onartzen hemen." + +#: oldforms/__init__.py:512 oldforms/__init__.py:586 oldforms/__init__.py:625 +#, python-format +msgid "Select a valid choice; '%(data)s' is not in %(choices)s." +msgstr "Aukera zuzena aukeratu: '%(data)s' ez dago %(choices)s hartean." + +#: oldforms/__init__.py:745 +msgid "Enter a whole number between -32,768 and 32,767." +msgstr "Idatzi -32.768 eta 32.767 arteko zenbaki osoa." + +#: oldforms/__init__.py:755 +msgid "Enter a positive number." +msgstr "Zenbaki positboa idatzi." + +#: oldforms/__init__.py:765 +msgid "Enter a whole number between 0 and 32,767." +msgstr "Idatzi 0 eta 32.767 arteko zenbaki osoa." + +#: template/defaultfilters.py:691 +msgid "yes,no,maybe" +msgstr "bai,ez,agian" + +#: template/defaultfilters.py:722 +#, python-format +msgid "%(size)d byte" +msgid_plural "%(size)d bytes" +msgstr[0] "%(size)d byte" +msgstr[1] "" + +#: template/defaultfilters.py:724 +#, python-format +msgid "%.1f KB" +msgstr "%.1f KB" + +#: template/defaultfilters.py:726 +#, python-format +msgid "%.1f MB" +msgstr "%.1f MB" + +#: template/defaultfilters.py:727 +#, python-format +msgid "%.1f GB" +msgstr "%.1f GB" + +#: utils/dateformat.py:41 +msgid "p.m." +msgstr "p.m." + +#: utils/dateformat.py:42 +msgid "a.m." +msgstr "a.m." + +#: utils/dateformat.py:47 +msgid "PM" +msgstr "PM" + +#: utils/dateformat.py:48 +msgid "AM" +msgstr "AM" + +#: utils/dateformat.py:97 +msgid "midnight" +msgstr "gauerdia" + +#: utils/dateformat.py:99 +msgid "noon" +msgstr "eguerdia" + +#: utils/dates.py:6 +msgid "Monday" +msgstr "Astelehena" + +#: utils/dates.py:6 +msgid "Tuesday" +msgstr "Asteartea" + +#: utils/dates.py:6 +msgid "Wednesday" +msgstr "Asteazkena" + +#: utils/dates.py:6 +msgid "Thursday" +msgstr "Osteguna" + +#: utils/dates.py:6 +msgid "Friday" +msgstr "Ostirala" + +#: utils/dates.py:7 +msgid "Saturday" +msgstr "Larunbata" + +#: utils/dates.py:7 +msgid "Sunday" +msgstr "Igandea" + +#: utils/dates.py:10 +msgid "Mon" +msgstr "Astelehe" + +#: utils/dates.py:10 +msgid "Tue" +msgstr "Astear" + +#: utils/dates.py:10 +msgid "Wed" +msgstr "Asteaz" + +#: utils/dates.py:10 +msgid "Thu" +msgstr "Oste" + +#: utils/dates.py:10 +msgid "Fri" +msgstr "Osti" + +#: utils/dates.py:11 +msgid "Sat" +msgstr "Lar" + +#: utils/dates.py:11 +msgid "Sun" +msgstr "Iga" + +#: utils/dates.py:18 +msgid "January" +msgstr "Urtarrila" + +#: utils/dates.py:18 +msgid "February" +msgstr "Otsaila" + +#: utils/dates.py:18 utils/dates.py:31 +msgid "March" +msgstr "Martxoa" + +#: utils/dates.py:18 utils/dates.py:31 +msgid "April" +msgstr "Apirila" + +#: utils/dates.py:18 utils/dates.py:31 +msgid "May" +msgstr "Maiatza" + +#: utils/dates.py:18 utils/dates.py:31 +msgid "June" +msgstr "Ekaina" + +#: utils/dates.py:19 utils/dates.py:31 +msgid "July" +msgstr "Uztaila" + +#: utils/dates.py:19 +msgid "August" +msgstr "Abuztua" + +#: utils/dates.py:19 +msgid "September" +msgstr "Iraila" + +#: utils/dates.py:19 +msgid "October" +msgstr "Urria" + +#: utils/dates.py:19 +msgid "November" +msgstr "Azaroa" + +#: utils/dates.py:20 +msgid "December" +msgstr "Abendua" + +#: utils/dates.py:23 +msgid "jan" +msgstr "urt" + +#: utils/dates.py:23 +msgid "feb" +msgstr "ots" + +#: utils/dates.py:23 +msgid "mar" +msgstr "mar" + +#: utils/dates.py:23 +msgid "apr" +msgstr "api" + +#: utils/dates.py:23 +msgid "may" +msgstr "mai" + +#: utils/dates.py:23 +msgid "jun" +msgstr "eka" + +#: utils/dates.py:24 +msgid "jul" +msgstr "uzt" + +#: utils/dates.py:24 +msgid "aug" +msgstr "abu" + +#: utils/dates.py:24 +msgid "sep" +msgstr "ira" + +#: utils/dates.py:24 +msgid "oct" +msgstr "urr" + +#: utils/dates.py:24 +msgid "nov" +msgstr "aza" + +#: utils/dates.py:24 +msgid "dec" +msgstr "abe" + +#: utils/dates.py:31 +msgid "Jan." +msgstr "Urt." + +#: utils/dates.py:31 +msgid "Feb." +msgstr "Ots." + +#: utils/dates.py:32 +msgid "Aug." +msgstr "Abu." + +#: utils/dates.py:32 +msgid "Sept." +msgstr "Ira." + +#: utils/dates.py:32 +msgid "Oct." +msgstr "Urr." + +#: utils/dates.py:32 +msgid "Nov." +msgstr "Aza." + +#: utils/dates.py:32 +msgid "Dec." +msgstr "Abe." + +#: utils/text.py:127 +msgid "or" +msgstr "edo" + +#: utils/timesince.py:21 +msgid "year" +msgid_plural "years" +msgstr[0] "urtea" +msgstr[1] "" + +#: utils/timesince.py:22 +msgid "month" +msgid_plural "months" +msgstr[0] "hilabetea" +msgstr[1] "" + +#: utils/timesince.py:23 +msgid "week" +msgid_plural "weeks" +msgstr[0] "astea" +msgstr[1] "" + +#: utils/timesince.py:24 +msgid "day" +msgid_plural "days" +msgstr[0] "eguna" +msgstr[1] "" + +#: utils/timesince.py:25 +msgid "hour" +msgid_plural "hours" +msgstr[0] "hordua" +msgstr[1] "" + +#: utils/timesince.py:26 +msgid "minute" +msgid_plural "minutes" +msgstr[0] "minutu" +msgstr[1] "" + +#: utils/timesince.py:46 +msgid "minutes" +msgstr "minutuak" + +#: utils/timesince.py:51 +#, python-format +msgid "%(number)d %(type)s" +msgstr "%(number)d %(type)s" + +#: utils/timesince.py:57 +#, python-format +msgid ", %(number)d %(type)s" +msgstr ", %(number)d %(type)s" + +#: utils/translation/trans_real.py:404 +msgid "DATE_FORMAT" +msgstr "DATE_FORMAT" + +#: utils/translation/trans_real.py:405 +msgid "DATETIME_FORMAT" +msgstr "DATETIME_FORMAT" + +#: utils/translation/trans_real.py:406 +msgid "TIME_FORMAT" +msgstr "TIME_FORMAT" + +#: utils/translation/trans_real.py:422 +msgid "YEAR_MONTH_FORMAT" +msgstr "YEAR_MONTH_FORMAT" + +#: utils/translation/trans_real.py:423 +msgid "MONTH_DAY_FORMAT" +msgstr "MONTH_DAY_FORMAT" + +#: views/generic/create_update.py:43 +#, python-format +msgid "The %(verbose_name)s was created successfully." +msgstr "%(verbose_name)s arazorik gabe sortu da" + +#: views/generic/create_update.py:117 +#, python-format +msgid "The %(verbose_name)s was updated successfully." +msgstr "%(verbose_name)s arazorik gabe aldatua izan da." + +#: views/generic/create_update.py:184 +#, python-format +msgid "The %(verbose_name)s was deleted." +msgstr "%(verbose_name)s ezabatua izan da." + diff --git a/django/conf/locale/eu/LC_MESSAGES/djangojs.mo b/django/conf/locale/eu/LC_MESSAGES/djangojs.mo new file mode 100644 index 0000000000000000000000000000000000000000..b3e94ad711d682780941c50b0495cb7880c09c04 GIT binary patch literal 1575 zcmZvbzmFS56vqb$zf1@a!VifcJ&;a+gb+=XX%@{sBr{Q4(+t6#q-$F1Q0q+yy9cN>K9N0$;!xZi5o%D>wrma$SxzILa z55cCoP~Dkxr6#6e7W$uAQ7x3(RxX8RPb|8^rE~SZ$+S9T8`-aDUr&7{4A`eL>MXq} zXuvBvj8YKr0tLr88$z{Yv>NvCSwgOgbkun!$AxanKbFT!nGerA)8u%xy-l$$4gU$`BPFQOX#5oWmIiE$Ea!`BP@|?KVi~rv?Jg*lK3Yntn`NEw< zR{ixn1_V(PA0$h`Gz_J@bv!^HZaT(uG?jk9hQpevH^wgB(FB-)fI!AlFB;u E7a*8)Pyhe` literal 0 HcmV?d00001 diff --git a/django/conf/locale/eu/LC_MESSAGES/djangojs.po b/django/conf/locale/eu/LC_MESSAGES/djangojs.po new file mode 100644 index 0000000000..dd5a8c02e6 --- /dev/null +++ b/django/conf/locale/eu/LC_MESSAGES/djangojs.po @@ -0,0 +1,117 @@ +# Spanish translation for the django-admin JS files. +# Copyright (C) +# This file is distributed under the same license as the PACKAGE package. +# +msgid "" +msgstr "" +"Project-Id-Version: Django JavaScript 1.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2007-07-14 13:47-0500\n" +"PO-Revision-Date: 2007-07-14 13:41-0500\n" +"Last-Translator: Jorge Gajon \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: contrib/admin/media/js/calendar.js:24 +#: contrib/admin/media/js/dateparse.js:32 +msgid "" +"January February March April May June July August September October November " +"December" +msgstr "" +"Urtarrila Otsaila Martxoa Apirila Maiatza Ekaina Uztaila Abuztua Iraila Urria " +"Azaroa Abendua" + +#: contrib/admin/media/js/calendar.js:25 +msgid "S M T W T F S" +msgstr "I A A A O O L" + +#: contrib/admin/media/js/dateparse.js:33 +msgid "Sunday Monday Tuesday Wednesday Thursday Friday Saturday" +msgstr "Igandea Astelehene Asteartea Asteazkena Osteguna Ostirala Larunbata" + +#: contrib/admin/media/js/SelectFilter2.js:33 +#, perl-format +msgid "Available %s" +msgstr "%s Erabilgarri" + +#: contrib/admin/media/js/SelectFilter2.js:41 +msgid "Choose all" +msgstr "Denak aukeratu" + +#: contrib/admin/media/js/SelectFilter2.js:46 +msgid "Add" +msgstr "Gehitu" + +#: contrib/admin/media/js/SelectFilter2.js:48 +msgid "Remove" +msgstr "Ezabatu" + +#: contrib/admin/media/js/SelectFilter2.js:53 +#, perl-format +msgid "Chosen %s" +msgstr "%s Aukeratuak" + +#: contrib/admin/media/js/SelectFilter2.js:54 +msgid "Select your choice(s) and click " +msgstr "Egin zure aukerak eta click egin " + +#: contrib/admin/media/js/SelectFilter2.js:59 +msgid "Clear all" +msgstr "Denak garbitu" + +#: contrib/admin/media/js/admin/DateTimeShortcuts.js:47 +#: contrib/admin/media/js/admin/DateTimeShortcuts.js:81 +msgid "Now" +msgstr "Orain" + +#: contrib/admin/media/js/admin/DateTimeShortcuts.js:51 +msgid "Clock" +msgstr "Erlojua" + +#: contrib/admin/media/js/admin/DateTimeShortcuts.js:78 +msgid "Choose a time" +msgstr "Aukeratu ordu bat" + +#: contrib/admin/media/js/admin/DateTimeShortcuts.js:82 +msgid "Midnight" +msgstr "Gauerdia" + +#: contrib/admin/media/js/admin/DateTimeShortcuts.js:83 +msgid "6 a.m." +msgstr "6 a.m." + +#: contrib/admin/media/js/admin/DateTimeShortcuts.js:84 +msgid "Noon" +msgstr "Eguerdia" + +#: contrib/admin/media/js/admin/DateTimeShortcuts.js:88 +#: contrib/admin/media/js/admin/DateTimeShortcuts.js:183 +msgid "Cancel" +msgstr "Atzera" + +#: contrib/admin/media/js/admin/DateTimeShortcuts.js:128 +#: contrib/admin/media/js/admin/DateTimeShortcuts.js:177 +msgid "Today" +msgstr "Gaur" + +#: contrib/admin/media/js/admin/DateTimeShortcuts.js:132 +msgid "Calendar" +msgstr "Egutegia" + +#: contrib/admin/media/js/admin/DateTimeShortcuts.js:175 +msgid "Yesterday" +msgstr "Atzo" + +#: contrib/admin/media/js/admin/DateTimeShortcuts.js:179 +msgid "Tomorrow" +msgstr "Bihar" + +#: contrib/admin/media/js/admin/CollapsedFieldsets.js:34 +#: contrib/admin/media/js/admin/CollapsedFieldsets.js:72 +msgid "Show" +msgstr "Erakutsi" + +#: contrib/admin/media/js/admin/CollapsedFieldsets.js:63 +msgid "Hide" +msgstr "Izkutatu" diff --git a/django/core/management/commands/sqlall.py b/django/core/management/commands/sqlall.py index d63dfb4b10..bf3c734bb6 100644 --- a/django/core/management/commands/sqlall.py +++ b/django/core/management/commands/sqlall.py @@ -1,7 +1,7 @@ from django.core.management.base import AppCommand class Command(AppCommand): - help = "Prints the CREATE TABLE, initial-data and CREATE INDEX SQL statements for the given model module name(s)." + help = "Prints the CREATE TABLE, custom SQL and CREATE INDEX SQL statements for the given model module name(s)." output_transaction = True diff --git a/django/db/models/base.py b/django/db/models/base.py index c04a6affb7..9236207f94 100644 --- a/django/db/models/base.py +++ b/django/db/models/base.py @@ -41,7 +41,9 @@ class ModelBase(type): # Build complete list of parents for base in parents: - if base is not Model: + # Things without _meta aren't functional models, so they're + # uninteresting parents. + if hasattr(base, '_meta'): new_class._meta.parents.append(base) new_class._meta.parents.extend(base._meta.parents) @@ -139,7 +141,7 @@ class Model(object): # There is a rather weird disparity here; if kwargs, it's set, then args # overrides it. It should be one or the other; don't duplicate the work # The reason for the kwargs check is that standard iterator passes in by - # args, and nstantiation for iteration is 33% faster. + # args, and instantiation for iteration is 33% faster. args_len = len(args) if args_len > len(self._meta.fields): # Daft, but matches old exception sans the err msg. diff --git a/django/newforms/forms.py b/django/newforms/forms.py index 04bf62e445..b4ac80c5aa 100644 --- a/django/newforms/forms.py +++ b/django/newforms/forms.py @@ -22,23 +22,40 @@ def pretty_name(name): name = name[0].upper() + name[1:] return name.replace('_', ' ') +def get_declared_fields(bases, attrs, with_base_fields=True): + """ + Create a list of form field instances from the passed in 'attrs', plus any + similar fields on the base classes (in 'bases'). This is used by both the + Form and ModelForm metclasses. + + If 'with_base_fields' is True, all fields from the bases are used. + Otherwise, only fields in the 'declared_fields' attribute on the bases are + used. The distinction is useful in ModelForm subclassing. + """ + fields = [(field_name, attrs.pop(field_name)) for field_name, obj in attrs.items() if isinstance(obj, Field)] + fields.sort(lambda x, y: cmp(x[1].creation_counter, y[1].creation_counter)) + + # If this class is subclassing another Form, add that Form's fields. + # Note that we loop over the bases in *reverse*. This is necessary in + # order to preserve the correct order of fields. + if with_base_fields: + for base in bases[::-1]: + if hasattr(base, 'base_fields'): + fields = base.base_fields.items() + fields + else: + for base in bases[::-1]: + if hasattr(base, 'declared_fields'): + fields = base.declared_fields.items() + fields + + return SortedDict(fields) + class DeclarativeFieldsMetaclass(type): """ Metaclass that converts Field attributes to a dictionary called 'base_fields', taking into account parent class 'base_fields' as well. """ def __new__(cls, name, bases, attrs): - fields = [(field_name, attrs.pop(field_name)) for field_name, obj in attrs.items() if isinstance(obj, Field)] - fields.sort(lambda x, y: cmp(x[1].creation_counter, y[1].creation_counter)) - - # If this class is subclassing another Form, add that Form's fields. - # Note that we loop over the bases in *reverse*. This is necessary in - # order to preserve the correct order of fields. - for base in bases[::-1]: - if hasattr(base, 'base_fields'): - fields = base.base_fields.items() + fields - - attrs['base_fields'] = SortedDict(fields) + attrs['base_fields'] = get_declared_fields(bases, attrs) return type.__new__(cls, name, bases, attrs) class BaseForm(StrAndUnicode): diff --git a/django/newforms/models.py b/django/newforms/models.py index 0ee911a82f..f3809dc370 100644 --- a/django/newforms/models.py +++ b/django/newforms/models.py @@ -11,7 +11,7 @@ from django.utils.datastructures import SortedDict from django.core.exceptions import ImproperlyConfigured from util import ValidationError, ErrorList -from forms import BaseForm +from forms import BaseForm, get_declared_fields from fields import Field, ChoiceField, EMPTY_VALUES from widgets import Select, SelectMultiple, MultipleHiddenInput @@ -211,57 +211,39 @@ class ModelFormOptions(object): self.fields = getattr(options, 'fields', None) self.exclude = getattr(options, 'exclude', None) + class ModelFormMetaclass(type): def __new__(cls, name, bases, attrs, formfield_callback=lambda f: f.formfield()): - fields = [(field_name, attrs.pop(field_name)) for field_name, obj in attrs.items() if isinstance(obj, Field)] - fields.sort(lambda x, y: cmp(x[1].creation_counter, y[1].creation_counter)) + try: + parents = [b for b in bases if issubclass(b, ModelForm)] + except NameError: + # We are defining ModelForm itself. + parents = None + if not parents: + return super(ModelFormMetaclass, cls).__new__(cls, name, bases, + attrs) - # If this class is subclassing another Form, add that Form's fields. - # Note that we loop over the bases in *reverse*. This is necessary in - # order to preserve the correct order of fields. - for base in bases[::-1]: - if hasattr(base, 'base_fields'): - fields = base.base_fields.items() + fields - declared_fields = SortedDict(fields) - - opts = ModelFormOptions(attrs.get('Meta', None)) - attrs['_meta'] = opts - - # Don't allow more than one Meta model definition in bases. The fields - # would be generated correctly, but the save method won't deal with - # more than one object. - base_models = [] - for base in bases: - base_opts = getattr(base, '_meta', None) - base_model = getattr(base_opts, 'model', None) - if base_model is not None: - base_models.append(base_model) - if len(base_models) > 1: - raise ImproperlyConfigured("%s's base classes define more than one model." % name) - - # If a model is defined, extract form fields from it and add them to base_fields - if attrs['_meta'].model is not None: - # Don't allow a subclass to define a different Meta model than a - # parent class has. Technically the right fields would be generated, - # but the save method will not deal with more than one model. - for base in bases: - base_opts = getattr(base, '_meta', None) - base_model = getattr(base_opts, 'model', None) - if base_model and base_model is not opts.model: - raise ImproperlyConfigured('%s defines a different model than its parent.' % name) - model_fields = fields_for_model(opts.model, opts.fields, - opts.exclude, formfield_callback) - # fields declared in base classes override fields from the model - model_fields.update(declared_fields) - attrs['base_fields'] = model_fields + new_class = type.__new__(cls, name, bases, attrs) + declared_fields = get_declared_fields(bases, attrs, False) + opts = new_class._meta = ModelFormOptions(getattr(new_class, 'Meta', None)) + if opts.model: + # If a model is defined, extract form fields from it. + fields = fields_for_model(opts.model, opts.fields, + opts.exclude, formfield_callback) + # Override default model fields with any custom declared ones + # (plus, include all the other declared fields). + fields.update(declared_fields) else: - attrs['base_fields'] = declared_fields - return type.__new__(cls, name, bases, attrs) + fields = declared_fields + new_class.declared_fields = declared_fields + new_class.base_fields = fields + return new_class class BaseModelForm(BaseForm): def __init__(self, data=None, files=None, auto_id='id_%s', prefix=None, - initial=None, error_class=ErrorList, label_suffix=':', instance=None): + initial=None, error_class=ErrorList, label_suffix=':', + instance=None): opts = self._meta if instance is None: # if we didn't get an instance, instantiate a new one @@ -277,7 +259,8 @@ class BaseModelForm(BaseForm): def save(self, commit=True): """ - Saves this ``form``'s cleaned_data into model instance ``self.instance``. + Saves this ``form``'s cleaned_data into model instance + ``self.instance``. If commit=True, then the changes to ``instance`` will be saved to the database. Returns ``instance``. diff --git a/django/utils/datastructures.py b/django/utils/datastructures.py index 82d914000f..f46b57c151 100644 --- a/django/utils/datastructures.py +++ b/django/utils/datastructures.py @@ -3,7 +3,7 @@ class MergeDict(object): A simple class for creating new "virtual" dictionaries that actually look up values in more than one dictionary, passed in the constructor. - If a key appears in more than one of the passed in dictionaries, only the + If a key appears in more than one of the given dictionaries, only the first occurrence will be used. """ def __init__(self, *dicts): diff --git a/docs/api_stability.txt b/docs/api_stability.txt index 5ccf104327..769359b75e 100644 --- a/docs/api_stability.txt +++ b/docs/api_stability.txt @@ -88,7 +88,7 @@ change: API changes may be necessary. - Generic relations will most likely be moved out of core and into the - content-types contrib package to avoid core dependancies on optional + content-types contrib package to avoid core dependencies on optional components. - The comments framework, which is yet undocumented, will likely get a complete diff --git a/docs/contenttypes.txt b/docs/contenttypes.txt index 3ef83f2066..51ca8f0198 100644 --- a/docs/contenttypes.txt +++ b/docs/contenttypes.txt @@ -215,7 +215,7 @@ each ``TaggedItem`` will have a ``content_object`` field that returns the object it's related to, and you can also assign to that field or use it when creating a ``TaggedItem``:: - >>> from django.contrib.models.auth import User + >>> from django.contrib.auth.models import User >>> guido = User.objects.get(username='Guido') >>> t = TaggedItem(content_object=guido, tag='bdfl') >>> t.save() @@ -235,7 +235,7 @@ a "reverse" generic relationship to enable an additional API. For example:: ``Bookmark`` instances will each have a ``tags`` attribute, which can be used to retrieve their associated ``TaggedItems``:: - >>> b = Bookmark('http://www.djangoproject.com/') + >>> b = Bookmark(url='http://www.djangoproject.com/') >>> b.save() >>> t1 = TaggedItem(content_object=b, tag='django') >>> t1.save() diff --git a/docs/distributions.txt b/docs/distributions.txt index 48c30c7068..0c051c8da5 100644 --- a/docs/distributions.txt +++ b/docs/distributions.txt @@ -5,7 +5,7 @@ Third-party distributions of Django Several third-party distributors are now providing versions of Django integrated with their package-management systems. These can make installation and upgrading much easier for users of Django since the integration includes the ability to -automatically install dependancies (like database adapters) that Django +automatically install dependencies (like database adapters) that Django requires. Typically, these packages are based on the latest stable release of Django, so diff --git a/docs/django-admin.txt b/docs/django-admin.txt index 21821ab2e9..e79c105bbd 100644 --- a/docs/django-admin.txt +++ b/docs/django-admin.txt @@ -717,7 +717,7 @@ in Python package syntax, e.g. ``mysite.settings``. If this isn't provided, variable. Note that this option is unnecessary in ``manage.py``, because it uses -``settings.py`` from the current project by default. +``settings.py`` from the current project by default. Extra niceties ============== @@ -765,9 +765,9 @@ a command that can be executed as an action when you run ``manage.py``:: __init__.py explode.py views.py - + In this example, the ``explode`` command will be made available to any project -that includes the ``fancy_blog`` application in ``settings.INSTALLED_APPS``. +that includes the ``blog`` application in ``settings.INSTALLED_APPS``. The ``explode.py`` module has only one requirement -- it must define a class called ``Command`` that extends ``django.core.management.base.BaseCommand``. diff --git a/docs/install.txt b/docs/install.txt index 331a5ea8e3..542036e2af 100644 --- a/docs/install.txt +++ b/docs/install.txt @@ -138,7 +138,7 @@ Installing a distribution-specific package Check the `distribution specific notes`_ to see if your platform/distribution provides official Django packages/installers. Distribution-provided packages will typically allow for automatic -installation of dependancies and easy upgrade paths. +installation of dependencies and easy upgrade paths. Installing an official release ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ diff --git a/docs/model-api.txt b/docs/model-api.txt index 6b8310176b..cccd2ffded 100644 --- a/docs/model-api.txt +++ b/docs/model-api.txt @@ -384,7 +384,7 @@ The admin represents this as an ```` (a single-line input). ``IPAddressField`` ~~~~~~~~~~~~~~~~~~ -An IP address, in string format (i.e. "24.124.1.30"). +An IP address, in string format (e.g. "192.0.2.30"). The admin represents this as an ```` (a single-line input). @@ -952,10 +952,10 @@ the relationship should work. All are optional: ``limit_choices_to`` See the description under ``ForeignKey`` above. ``symmetrical`` Only used in the definition of ManyToManyFields on self. - Consider the following model: + Consider the following model:: - class Person(models.Model): - friends = models.ManyToManyField("self") + class Person(models.Model): + friends = models.ManyToManyField("self") When Django processes this model, it identifies that it has a ``ManyToManyField`` on itself, and as a result, it @@ -1871,7 +1871,7 @@ more simply as:: If you define a ``__unicode__()`` method on your model and not a ``__str__()`` method, Django will automatically provide you with a ``__str__()`` that calls -``__unicode()__`` and then converts the result correctly to a UTF-8 encoded +``__unicode__()`` and then converts the result correctly to a UTF-8 encoded string object. This is recommended development practice: define only ``__unicode__()`` and let Django take care of the conversion to string objects when required. diff --git a/docs/modelforms.txt b/docs/modelforms.txt index a99e27fff7..853fb3159e 100644 --- a/docs/modelforms.txt +++ b/docs/modelforms.txt @@ -320,3 +320,41 @@ parameter when declaring the form field:: ... ... class Meta: ... model = Article + +Form inheritance +---------------- + +As with basic forms, you can extend and reuse ``ModelForms`` by inheriting +them. This is useful if you need to declare extra fields or extra methods on a +parent class for use in a number of forms derived from models. For example, +using the previous ``ArticleForm`` class:: + + >>> class EnhancedArticleForm(ArticleForm): + ... def clean_pub_date(self): + ... ... + +This creates a form that behaves identically to ``ArticleForm``, except there's +some extra validation and cleaning for the ``pub_date`` field. + +You can also subclass the parent's ``Meta`` inner class if you want to change +the ``Meta.fields`` or ``Meta.excludes`` lists:: + + >>> class RestrictedArticleForm(EnhancedArticleForm): + ... class Meta(ArticleForm.Meta): + ... exclude = ['body'] + +This adds the extra method from the ``EnhancedArticleForm`` and modifies +the original ``ArticleForm.Meta`` to remove one field. + +There are a couple of things to note, however. + + * Normal Python name resolution rules apply. If you have multiple base + classes that declare a ``Meta`` inner class, only the first one will be + used. This means the child's ``Meta``, if it exists, otherwise the + ``Meta`` of the first parent, etc. + + * For technical reasons, a subclass cannot inherit from both a ``ModelForm`` + and a ``Form`` simultaneously. + +Chances are these notes won't affect you unless you're trying to do something +tricky with subclassing. diff --git a/docs/request_response.txt b/docs/request_response.txt index 47c66355e8..e50cfc5ea3 100644 --- a/docs/request_response.txt +++ b/docs/request_response.txt @@ -576,7 +576,7 @@ Three things to note about 404 views: in the 404. * The 404 view is passed a ``RequestContext`` and will have access to - variables supplied by your ``TEMPLATE_CONTEXT_PROCESSORS`` (e.g. + variables supplied by your ``TEMPLATE_CONTEXT_PROCESSORS`` setting (e.g., ``MEDIA_URL``). * If ``DEBUG`` is set to ``True`` (in your settings module), then your 404 diff --git a/docs/shortcuts.txt b/docs/shortcuts.txt index f1d7f38ffa..005fdc3029 100644 --- a/docs/shortcuts.txt +++ b/docs/shortcuts.txt @@ -30,9 +30,9 @@ Optional arguments ``context_instance`` The context instance to render the template with. By default, the template will be rendered with a ``Context`` instance (filled with values from - ``dictionary``). If you need to use `context processors`_, you will want to - render the template with a ``RequestContext`` instance instead. Your code - might look something like this:: + ``dictionary``). If you need to use `context processors`_, render the + template with a ``RequestContext`` instance instead. Your code might look + something like this:: return render_to_response('my_template.html', my_data_dictionary, diff --git a/docs/templates.txt b/docs/templates.txt index c351c951c9..d473a6f06f 100644 --- a/docs/templates.txt +++ b/docs/templates.txt @@ -1406,6 +1406,8 @@ Joins a list with a string, like Python's ``str.join(list)``. last ~~~~ +**New in Django development version.** + Returns the last item in a list. length diff --git a/docs/url_dispatch.txt b/docs/url_dispatch.txt index 6ed7043fd5..789399de8d 100644 --- a/docs/url_dispatch.txt +++ b/docs/url_dispatch.txt @@ -190,6 +190,28 @@ The remaining arguments should be tuples in this format:: ...where ``optional dictionary`` and ``optional name`` are optional. (See `Passing extra options to view functions`_ below.) +.. note:: + Because `patterns()` is a function call, it accepts a maximum of 255 + arguments (URL patterns, in this case). This is a limit for all Python + function calls. This is rarely a problem in practice, because you'll + typically structure your URL patterns modularly by using `include()` + sections. However, on the off-chance you do hit the 255-argument limit, + realize that `patterns()` returns a Python list, so you can split up the + construction of the list. + + :: + + urlpatterns = patterns('', + ... + ) + urlpatterns += patterns('', + ... + ) + + Python lists have unlimited size, so there's no limit to how many URL + patterns you can construct. The only limit is that you can only create 254 + at a time (the 255th argument is the initial prefix argument). + url --- diff --git a/tests/modeltests/model_forms/models.py b/tests/modeltests/model_forms/models.py index f1fed8f1e1..c480899f84 100644 --- a/tests/modeltests/model_forms/models.py +++ b/tests/modeltests/model_forms/models.py @@ -64,11 +64,11 @@ class TextFile(models.Model): def __unicode__(self): return self.description - + class ImageFile(models.Model): description = models.CharField(max_length=20) image = models.FileField(upload_to=tempfile.gettempdir()) - + def __unicode__(self): return self.description @@ -155,29 +155,52 @@ familiar with the mechanics. ... class Meta: ... model = Category ->>> class BadForm(CategoryForm): +>>> class OddForm(CategoryForm): ... class Meta: ... model = Article -Traceback (most recent call last): -... -ImproperlyConfigured: BadForm defines a different model than its parent. + +OddForm is now an Article-related thing, because BadForm.Meta overrides +CategoryForm.Meta. +>>> OddForm.base_fields.keys() +['headline', 'slug', 'pub_date', 'writer', 'article', 'status', 'categories'] >>> class ArticleForm(ModelForm): ... class Meta: ... model = Article +First class with a Meta class wins. + >>> class BadForm(ArticleForm, CategoryForm): ... pass -Traceback (most recent call last): -... -ImproperlyConfigured: BadForm's base classes define more than one model. +>>> OddForm.base_fields.keys() +['headline', 'slug', 'pub_date', 'writer', 'article', 'status', 'categories'] -This one is OK since the subclass specifies the same model as the parent. +Subclassing without specifying a Meta on the class will use the parent's Meta +(or the first parent in the MRO if there are multiple parent classes). ->>> class SubCategoryForm(CategoryForm): +>>> class CategoryForm(ModelForm): ... class Meta: ... model = Category +>>> class SubCategoryForm(CategoryForm): +... pass +>>> SubCategoryForm.base_fields.keys() +['name', 'slug', 'url'] +We can also subclass the Meta inner class to change the fields list. + +>>> class CategoryForm(ModelForm): +... checkbox = forms.BooleanField() +... +... class Meta: +... model = Category +>>> class SubCategoryForm(CategoryForm): +... class Meta(CategoryForm.Meta): +... exclude = ['url'] + +>>> print SubCategoryForm() + + + # Old form_for_x tests ####################################################### diff --git a/tests/modeltests/ordering/models.py b/tests/modeltests/ordering/models.py index d3eb7f0dc0..5f1c3c3b81 100644 --- a/tests/modeltests/ordering/models.py +++ b/tests/modeltests/ordering/models.py @@ -2,8 +2,8 @@ 6. Specifying ordering Specify default ordering for a model using the ``ordering`` attribute, which -should be a list or tuple of field names. This tells Django how to order the -results of ``get_list()`` and other similar functions. +should be a list or tuple of field names. This tells Django how to order +queryset results. If a field name in ``ordering`` starts with a hyphen, that field will be ordered in descending order. Otherwise, it'll be ordered in ascending order. diff --git a/tests/regressiontests/i18n/misc.py b/tests/regressiontests/i18n/misc.py index eb64263799..6ed8afaee3 100644 --- a/tests/regressiontests/i18n/misc.py +++ b/tests/regressiontests/i18n/misc.py @@ -1,3 +1,5 @@ +import sys + tests = """ >>> from django.utils.translation.trans_real import parse_accept_lang_header >>> p = parse_accept_lang_header @@ -83,7 +85,14 @@ source tree. >>> r.META = {'HTTP_ACCEPT_LANGUAGE': 'es-ar,de'} >>> g(r) 'es-ar' +""" +# Python 2.3 returns slightly different results for completely bogus locales, +# so we omit this test for that anything below 2.4. It's relatively harmless in +# any cases (GIGO). This also means this won't be executed on Jython currently, +# but life's like that sometimes. +if sys.version_info >= (2, 4): + tests += """ This test assumes there won't be a Django translation to a US variation of the Spanish language, a safe assumption. When the user sets it as the preferred language, the main 'es' translation should be selected @@ -91,7 +100,9 @@ instead. >>> r.META = {'HTTP_ACCEPT_LANGUAGE': 'es-us'} >>> g(r) 'es' +""" +tests += """ This tests the following scenario: there isn't a main language (zh) translation of Django but there is a translation to variation (zh_CN) the user sets zh-cn as the preferred language, it should be selected by