Revision: 393
Author: maxpowel
Date: Fri Sep 24 14:15:10 2010
Log: Se guarda el pais cuando te registras
http://code.google.com/p/wixet/source/detail?r=393
Modified:
/trunk/apps/core/modules/account/actions/actions.class.php
/trunk/config/doctrine/userIntegration.yml
/trunk/data/fixtures/country.yml
/trunk/plugins/sfDoctrineGuardPlugin/lib/task/sfGuardCreateUserTask.class.php
=======================================
--- /trunk/apps/core/modules/account/actions/actions.class.php Thu Sep 23
13:13:12 2010
+++ /trunk/apps/core/modules/account/actions/actions.class.php Fri Sep 24
14:15:10 2010
@@ -241,15 +241,22 @@
$lastname = $request->getParameter("lastname");
$password = $request->getParameter("password");
$birthday = $request->getParameter("date");
+ //Get the country
+ $ch = curl_init();
+ curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
+ $url="
http://api.wipmania.com/".$_SERVER['REMOTE_ADDR'];
+ curl_setopt($ch, CURLOPT_URL,$url);
+ $country = curl_exec ($ch);
+ //
$user =
Doctrine::getTable("sfGuardUser")->findByUsername($username)->getFirst();
if(!is_object($user)){
if($lastname && $firstname && $password)
{
$normal = "/^[0-9]{4}-[0-9]{1,2}-[0-9]{1,2}$/i";
if(preg_match($normal,$birthday)){
- exec('/'.sfConfig::get("sf_root_dir").'/symfony
guard:create '.$validation->getEmail().' '.$username.' '.$password.'
--firstname='.$firstname.' --lastname='.$lastname.' --birthday='.$birthday,
$stdout, $error);
+ exec('/'.sfConfig::get("sf_root_dir").'/symfony
guard:create '.$validation->getEmail().' '.$username.' '.$password.'
--firstname='.$firstname.' --lastname='.$lastname.'
--birthday='.$birthday.' --country='.$country, $stdout, $error);
if($error == 1)
- throw new Exception("User can not be created. Probably the
username is wrong");
+ throw new Exception("User can not be created. Probably the
username is wrong or your country is undefined");
else{
$validation->delete();
echo json_encode(array("error"=>false));
=======================================
--- /trunk/config/doctrine/userIntegration.yml Wed Sep 22 04:11:49 2010
+++ /trunk/config/doctrine/userIntegration.yml Fri Sep 24 14:15:10 2010
@@ -27,8 +27,6 @@
type: integer(4)
primary: true
autoincrement: true
- name:
- type: varchar(50)
code:
type: char(2)
=======================================
--- /trunk/data/fixtures/country.yml Wed Sep 22 04:34:53 2010
+++ /trunk/data/fixtures/country.yml Fri Sep 24 14:15:10 2010
@@ -1,737 +1,491 @@
country:
AD:
code: AD
- name: Andorra
AE:
code: AE
- name: United Arab Emirates
AF:
code: AF
- name: Afghanistan
AG:
code: AG
- name: Antigua & Barbuda
AI:
code: AI
- name: Anguilla
AL:
code: AL
- name: Albania
AM:
code: AM
- name: Armenia
AN:
code: AN
- name: Netherlands Antilles
AO:
code: AO
- name: Angola
AQ:
code: AQ
- name: Antarctica
AR:
code: AR
- name: Argentina
AS:
code: AS
- name: American Samoa
AT:
code: AT
- name: Austria
AU:
code: AU
- name: Australia
AW:
code: AW
- name: Aruba
AZ:
code: AZ
- name: Azerbaijan
BA:
code: BA
- name: Bosnia and Herzegovina
BB:
code: BB
- name: Barbados
BD:
code: BD
- name: Bangladesh
BE:
code: BE
- name: Belgium
BF:
code: BF
- name: Burkina Faso
BG:
code: BG
- name: Bulgaria
BH:
code: BH
- name: Bahrain
BI:
code: BI
- name: Burundi
BJ:
code: BJ
- name: Benin
BM:
code: BM
- name: Bermuda
BN:
code: BN
- name: Brunei Darussalam
BO:
code: BO
- name: Bolivia
BR:
code: BR
- name: Brazil
BS:
code: BS
- name: Bahama
BT:
code: BT
- name: Bhutan
BU:
code: BU
- name: Burma (no longer exists)
BV:
code: BV
- name: Bouvet Island
BW:
code: BW
- name: Botswana
BY:
code: BY
- name: Belarus
BZ:
code: BZ
- name: Belize
CA:
code: CA
- name: Canada
CC:
code: CC
- name: Cocos (Keeling) Islands
CF:
code: CF
- name: Central African Republic
CG:
code: CG
- name: Congo
CH:
code: CH
- name: Switzerland
CI:
code: CI
- name: Côte D'ivoire (Ivory Coast)
CK:
code: CK
- name: Cook Iislands
CL:
code: CL
- name: Chile
CM:
code: CM
- name: Cameroon
CN:
code: CN
- name: China
CO:
code: CO
- name: Colombia
CR:
code: CR
- name: Costa Rica
CS:
code: CS
- name: Czechoslovakia (no longer exists)
CU:
code: CU
- name: Cuba
CV:
code: CV
- name: Cape Verde
CX:
code: CX
- name: Christmas Island
CY:
code: CY
- name: Cyprus
CZ:
code: CZ
- name: Czech Republic
DD:
code: DD
- name: German Democratic Republic (no longer exists)
DE:
code: DE
- name: Germany
DJ:
code: DJ
- name: Djibouti
DK:
code: DK
- name: Denmark
DM:
code: DM
- name: Dominica
DO:
code: DO
- name: Dominican Republic
DZ:
code: DZ
- name: Algeria
EC:
code: EC
- name: Ecuador
EE:
code: EE
- name: Estonia
EG:
code: EG
- name: Egypt
EH:
code: EH
- name: Western Sahara
ER:
code: ER
- name: Eritrea
ES:
code: ES
- name: Spain
ET:
code: ET
- name: Ethiopia
FI:
code: FI
- name: Finland
FJ:
code: FJ
- name: Fiji
FK:
code: FK
- name: Falkland Islands (Malvinas)
FM:
code: FM
- name: Micronesia
FO:
code: FO
- name: Faroe Islands
FR:
code: FR
- name: France
FX:
code: FX
- name: France, Metropolitan
GA:
code: GA
- name: Gabon
GB:
code: GB
- name: United Kingdom (Great Britain)
GD:
code: GD
- name: Grenada
GE:
code: GE
- name: Georgia
GF:
code: GF
- name: French Guiana
GH:
code: GH
- name: Ghana
GI:
code: GI
- name: Gibraltar
GL:
code: GL
- name: Greenland
GM:
code: GM
- name: Gambia
GN:
code: GN
- name: Guinea
GP:
code: GP
- name: Guadeloupe
GQ:
code: GQ
- name: Equatorial Guinea
GR:
code: GR
- name: Greece
GS:
code: GS
- name: South Georgia and the South Sandwich Islands
GT:
code: GT
- name: Guatemala
GU:
code: GU
- name: Guam
GW:
code: GW
- name: Guinea-Bissau
GY:
code: GY
- name: Guyana
HK:
code: HK
- name: Hong Kong
HM:
code: HM
- name: Heard & McDonald Islands
HN:
code: HN
- name: Honduras
HR:
code: HR
- name: Croatia
HT:
code: HT
- name: Haiti
HU:
code: HU
- name: Hungary
ID:
code: ID
- name: Indonesia
IE:
code: IE
- name: Ireland
IL:
code: IL
- name: Israel
IN:
code: IN
- name: India
IO:
code: IO
- name: British Indian Ocean Territory
IQ:
code: IQ
- name: Iraq
IR:
code: IR
- name: Islamic Republic of Iran
IS:
code: IS
- name: Iceland
IT:
code: IT
- name: Italy
JM:
code: JM
- name: Jamaica
JO:
code: JO
- name: Jordan
JP:
code: JP
- name: Japan
KE:
code: KE
- name: Kenya
KG:
code: KG
- name: Kyrgyzstan
KH:
code: KH
- name: Cambodia
KI:
code: KI
- name: Kiribati
KM:
code: KM
- name: Comoros
KN:
code: KN
- name: St. Kitts and Nevis
KP:
code: KP
- name: Korea, Democratic People's Republic of
KR:
code: KR
- name: Korea, Republic of
KW:
code: KW
- name: Kuwait
KY:
code: KY
- name: Cayman Islands
KZ:
code: KZ
- name: Kazakhstan
LA:
code: LA
- name: Lao People's Democratic Republic
LB:
code: LB
- name: Lebanon
LC:
code: LC
- name: Saint Lucia
LI:
code: LI
- name: Liechtenstein
LK:
code: LK
- name: Sri Lanka
LR:
code: LR
- name: Liberia
LS:
code: LS
- name: Lesotho
LT:
code: LT
- name: Lithuania
LU:
code: LU
- name: Luxembourg
LV:
code: LV
- name: Latvia
LY:
code: LY
- name: Libyan Arab Jamahiriya
MA:
code: MA
- name: Morocco
MC:
code: MC
- name: Monaco
MD:
code: MD
- name: Moldova, Republic of
MG:
code: MG
- name: Madagascar
MH:
code: MH
- name: Marshall Islands
ML:
code: ML
- name: Mali
MN:
code: MN
- name: Mongolia
MM:
code: MM
- name: Myanmar
MO:
code: MO
- name: Macau
MP:
code: MP
- name: Northern Mariana Islands
MQ:
code: MQ
- name: Martinique
MR:
code: MR
- name: Mauritania
MS:
code: MS
- name: Monserrat
MT:
code: MT
- name: Malta
MU:
code: MU
- name: Mauritius
MV:
code: MV
- name: Maldives
MW:
code: MW
- name: Malawi
MX:
code: MX
- name: Mexico
MY:
code: MY
- name: Malaysia
MZ:
code: MZ
- name: Mozambique
NA:
code: NA
- name: Namibia
NC:
code: NC
- name: New Caledonia
NE:
code: NE
- name: Niger
NF:
code: NF
- name: Norfolk Island
NG:
code: NG
- name: Nigeria
NI:
code: NI
- name: Nicaragua
NL:
code: NL
- name: Netherlands
NO:
code: NO
- name: Norway
NP:
code: NP
- name: Nepal
NR:
code: NR
- name: Nauru
NT:
code: NT
- name: Neutral Zone (no longer exists)
NU:
code: NU
- name: Niue
NZ:
code: NZ
- name: New Zealand
OM:
code: OM
- name: Oman
PA:
code: PA
- name: Panama
PE:
code: PE
- name: Peru
PF:
code: PF
- name: French Polynesia
PG:
code: PG
- name: Papua New Guinea
PH:
code: PH
- name: Philippines
PK:
code: PK
- name: Pakistan
PL:
code: PL
- name: Poland
PM:
code: PM
- name: St. Pierre & Miquelon
PN:
code: PN
- name: Pitcairn
PR:
code: PR
- name: Puerto Rico
PT:
code: PT
- name: Portugal
PW:
code: PW
- name: Palau
PY:
code: PY
- name: Paraguay
QA:
code: QA
- name: Qatar
RE:
code: RE
- name: Réunion
RO:
code: RO
- name: Romania
RU:
code: RU
- name: Russian Federation
RW:
code: RW
- name: Rwanda
SA:
code: SA
- name: Saudi Arabia
SB:
code: SB
- name: Solomon Islands
SC:
code: SC
- name: Seychelles
SD:
code: SD
- name: Sudan
SE:
code: SE
- name: Sweden
SG:
code: SG
- name: Singapore
SH:
code: SH
- name: St. Helena
SI:
code: SI
- name: Slovenia
SJ:
code: SJ
- name: Svalbard & Jan Mayen Islands
SK:
code: SK
- name: Slovakia
SL:
code: SL
- name: Sierra Leone
SM:
code: SM
- name: San Marino
SN:
code: SN
- name: Senegal
SO:
code: SO
- name: Somalia
SR:
code: SR
- name: Suriname
ST:
code: ST
- name: Sao Tome & Principe
SU:
code: SU
- name: Union of Soviet Socialist Republics (no longer exists)
SV:
code: SV
- name: El Salvador
SY:
code: SY
- name: Syrian Arab Republic
SZ:
code: SZ
- name: Swaziland
TC:
code: TC
- name: Turks & Caicos Islands
TD:
code: TD
- name: Chad
TF:
code: TF
- name: French Southern Territories
TG:
code: TG
- name: Togo
TH:
code: TH
- name: Thailand
TJ:
code: TJ
- name: Tajikistan
TK:
code: TK
- name: Tokelau
TM:
code: TM
- name: Turkmenistan
TN:
code: TN
- name: Tunisia
TO:
code: TO
- name: Tonga
TP:
code: TP
- name: East Timor
TR:
code: TR
- name: Turkey
TT:
code: TT
- name: Trinidad & Tobago
TV:
code: TV
- name: Tuvalu
TW:
code: TW
- name: Taiwan, Province of China
TZ:
code: TZ
- name: Tanzania, United Republic of
UA:
code: UA
- name: Ukraine
UG:
code: UG
- name: Uganda
UM:
code: UM
- name: United States Minor Outlying Islands
US:
code: US
- name: United States of America
UY:
code: UY
- name: Uruguay
UZ:
code: UZ
- name: Uzbekistan
VA:
code: VA
- name: Vatican City State (Holy See)
VC:
code: VC
- name: St. Vincent & the Grenadines
VE:
code: VE
- name: Venezuela
VG:
code: VG
- name: British Virgin Islands
VI:
code: VI
- name: United States Virgin Islands
VN:
code: VN
- name: Viet Nam
VU:
code: VU
- name: Vanuatu
WF:
code: WF
- name: Wallis & Futuna Islands
WS:
code: WS
- name: Samoa
YD:
code: YD
- name: Democratic Yemen (no longer exists)
YE:
code: YE
- name: Yemen
YT:
code: YT
- name: Mayotte
YU:
code: YU
- name: Yugoslavia
ZA:
code: ZA
- name: South Africa
ZM:
code: ZM
- name: Zambia
ZR:
code: ZR
- name: Zaire
ZW:
code: ZW
- name: Zimbabwe
ZZ:
code: ZZ
- name: Unknown or unspecified country
-
=======================================
---
/trunk/plugins/sfDoctrineGuardPlugin/lib/task/sfGuardCreateUserTask.class.php
Mon Sep 20 08:59:23 2010
+++
/trunk/plugins/sfDoctrineGuardPlugin/lib/task/sfGuardCreateUserTask.class.php
Fri Sep 24 14:15:10 2010
@@ -41,6 +41,7 @@
new sfCommandOption('application', null,
sfCommandOption::PARAMETER_OPTIONAL, 'The application name', null),
new sfCommandOption('firstname', null,
sfCommandOption::PARAMETER_OPTIONAL, 'The firstname', null),
new sfCommandOption('lastname', null,
sfCommandOption::PARAMETER_OPTIONAL, 'The lastname', null),
+ new sfCommandOption('country', null,
sfCommandOption::PARAMETER_OPTIONAL, 'The country code', null),
new sfCommandOption('birthday', null,
sfCommandOption::PARAMETER_OPTIONAL, 'The birthday', null),
new sfCommandOption('env', null,
sfCommandOption::PARAMETER_REQUIRED, 'The environment', 'dev'),
@@ -138,11 +139,22 @@
}
}else{
//Normal user
+
//Profile
$profile = new Profile();
$profile->setVisits(0);
$profile->setUserId($user->getId());
$profile->setBirthday($options['birthday']);
+ if($options['country']){
+ $country =
Doctrine::getTable("Country")->findByCode($options['country'])->getFirst();
+ if(is_object($country))
+ $profile->setCountry($country);
+ else{
+ $user->delete();
+ LdapLogin::removeUser($user->getUsername());
+ throw new Exception("Invalid country");
+ }
+ }
$profile->save();