diff --git a/addons/account_sequence/i18n/id.po b/addons/account_sequence/i18n/id.po new file mode 100644 index 00000000000..5f613642a41 --- /dev/null +++ b/addons/account_sequence/i18n/id.po @@ -0,0 +1,221 @@ +# Indonesian translation for openobject-addons +# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011 +# This file is distributed under the same license as the openobject-addons package. +# FIRST AUTHOR , 2011. +# +msgid "" +msgstr "" +"Project-Id-Version: openobject-addons\n" +"Report-Msgid-Bugs-To: FULL NAME \n" +"POT-Creation-Date: 2011-01-11 11:14+0000\n" +"PO-Revision-Date: 2011-02-16 13:25+0000\n" +"Last-Translator: FULL NAME \n" +"Language-Team: Indonesian \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Launchpad-Export-Date: 2011-02-17 04:36+0000\n" +"X-Generator: Launchpad (build 12351)\n" + +#. module: account_sequence +#: view:account.sequence.installer:0 +#: model:ir.actions.act_window,name:account_sequence.action_account_seq_installer +msgid "Account Sequence Application Configuration" +msgstr "" + +#. module: account_sequence +#: constraint:account.move:0 +msgid "" +"You cannot create entries on different periods/journals in the same move" +msgstr "" + +#. module: account_sequence +#: help:account.move,internal_sequence_number:0 +#: help:account.move.line,internal_sequence_number:0 +msgid "Internal Sequence Number" +msgstr "" + +#. module: account_sequence +#: help:account.sequence.installer,number_next:0 +msgid "Next number of this sequence" +msgstr "" + +#. module: account_sequence +#: field:account.sequence.installer,number_next:0 +msgid "Next Number" +msgstr "" + +#. module: account_sequence +#: field:account.sequence.installer,number_increment:0 +msgid "Increment Number" +msgstr "" + +#. module: account_sequence +#: model:ir.module.module,description:account_sequence.module_meta_information +msgid "" +"\n" +" This module maintains internal sequence number for accounting entries.\n" +" " +msgstr "" + +#. module: account_sequence +#: model:ir.module.module,shortdesc:account_sequence.module_meta_information +msgid "Entries Sequence Numbering" +msgstr "" + +#. module: account_sequence +#: help:account.sequence.installer,number_increment:0 +msgid "The next number of the sequence will be incremented by this number" +msgstr "" + +#. module: account_sequence +#: view:account.sequence.installer:0 +msgid "Configure Your Account Sequence Application" +msgstr "" + +#. module: account_sequence +#: field:account.sequence.installer,progress:0 +msgid "Configuration Progress" +msgstr "" + +#. module: account_sequence +#: help:account.sequence.installer,suffix:0 +msgid "Suffix value of the record for the sequence" +msgstr "" + +#. module: account_sequence +#: field:account.sequence.installer,company_id:0 +msgid "Company" +msgstr "" + +#. module: account_sequence +#: help:account.journal,internal_sequence_id:0 +msgid "" +"This sequence will be used to maintain the internal number for the journal " +"entries related to this journal." +msgstr "" + +#. module: account_sequence +#: field:account.sequence.installer,padding:0 +msgid "Number padding" +msgstr "" + +#. module: account_sequence +#: model:ir.model,name:account_sequence.model_account_move_line +msgid "Journal Items" +msgstr "" + +#. module: account_sequence +#: field:account.move,internal_sequence_number:0 +#: field:account.move.line,internal_sequence_number:0 +msgid "Internal Number" +msgstr "" + +#. module: account_sequence +#: constraint:account.move.line:0 +msgid "Company must be same for its related account and period." +msgstr "" + +#. module: account_sequence +#: help:account.sequence.installer,padding:0 +msgid "" +"OpenERP will automatically adds some '0' on the left of the 'Next Number' to " +"get the required padding size." +msgstr "" + +#. module: account_sequence +#: field:account.sequence.installer,name:0 +msgid "Name" +msgstr "" + +#. module: account_sequence +#: constraint:account.move.line:0 +msgid "You can not create move line on closed account." +msgstr "" + +#. module: account_sequence +#: constraint:account.move:0 +msgid "" +"You cannot create more than one move per period on centralized journal" +msgstr "" + +#. module: account_sequence +#: sql_constraint:account.move.line:0 +msgid "Wrong credit or debit value in accounting entry !" +msgstr "" + +#. module: account_sequence +#: field:account.journal,internal_sequence_id:0 +msgid "Internal Sequence" +msgstr "" + +#. module: account_sequence +#: model:ir.model,name:account_sequence.model_account_sequence_installer +msgid "account.sequence.installer" +msgstr "" + +#. module: account_sequence +#: view:account.sequence.installer:0 +msgid "Configure" +msgstr "" + +#. module: account_sequence +#: help:account.sequence.installer,prefix:0 +msgid "Prefix value of the record for the sequence" +msgstr "" + +#. module: account_sequence +#: model:ir.model,name:account_sequence.model_account_move +msgid "Account Entry" +msgstr "" + +#. module: account_sequence +#: field:account.sequence.installer,suffix:0 +msgid "Suffix" +msgstr "" + +#. module: account_sequence +#: field:account.sequence.installer,config_logo:0 +msgid "Image" +msgstr "" + +#. module: account_sequence +#: view:account.sequence.installer:0 +msgid "title" +msgstr "" + +#. module: account_sequence +#: sql_constraint:account.journal:0 +msgid "The name of the journal must be unique per company !" +msgstr "" + +#. module: account_sequence +#: field:account.sequence.installer,prefix:0 +msgid "Prefix" +msgstr "" + +#. module: account_sequence +#: sql_constraint:account.journal:0 +msgid "The code of the journal must be unique per company !" +msgstr "" + +#. module: account_sequence +#: constraint:account.move.line:0 +msgid "" +"You can not create move line on receivable/payable account without partner" +msgstr "" + +#. module: account_sequence +#: model:ir.model,name:account_sequence.model_account_journal +msgid "Journal" +msgstr "" + +#. module: account_sequence +#: view:account.sequence.installer:0 +msgid "You can enhance the Account Sequence Application by installing ." +msgstr "" + +#. module: account_sequence +#: constraint:account.move.line:0 +msgid "You can not create move line on view account." +msgstr "" diff --git a/addons/anonymization/i18n/nl.po b/addons/anonymization/i18n/nl.po new file mode 100644 index 00000000000..d42120f75eb --- /dev/null +++ b/addons/anonymization/i18n/nl.po @@ -0,0 +1,229 @@ +# Dutch translation for openobject-addons +# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011 +# This file is distributed under the same license as the openobject-addons package. +# FIRST AUTHOR , 2011. +# +msgid "" +msgstr "" +"Project-Id-Version: openobject-addons\n" +"Report-Msgid-Bugs-To: FULL NAME \n" +"POT-Creation-Date: 2011-01-11 11:14+0000\n" +"PO-Revision-Date: 2011-02-16 11:28+0000\n" +"Last-Translator: Douwe Wullink (Dypalio) \n" +"Language-Team: Dutch \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Launchpad-Export-Date: 2011-02-17 04:36+0000\n" +"X-Generator: Launchpad (build 12351)\n" + +#. module: anonymization +#: model:ir.model,name:anonymization.model_ir_model_fields_anonymize_wizard +msgid "ir.model.fields.anonymize.wizard" +msgstr "ir.model.fields.anonymize.wizard" + +#. module: anonymization +#: field:ir.model.fields.anonymization,field_name:0 +msgid "Field Name" +msgstr "Veldnaam" + +#. module: anonymization +#: field:ir.model.fields.anonymization,field_id:0 +msgid "Field" +msgstr "Veld" + +#. module: anonymization +#: field:ir.model.fields.anonymization.history,state:0 +#: field:ir.model.fields.anonymize.wizard,state:0 +msgid "State" +msgstr "Status" + +#. module: anonymization +#: field:ir.model.fields.anonymize.wizard,file_import:0 +msgid "Import" +msgstr "Importeren" + +#. module: anonymization +#: model:ir.model,name:anonymization.model_ir_model_fields_anonymization +msgid "ir.model.fields.anonymization" +msgstr "ir.model.fields.anonymization" + +#. module: anonymization +#: model:ir.module.module,shortdesc:anonymization.module_meta_information +msgid "Database anonymization module" +msgstr "Database anonimisatie module" + +#. module: anonymization +#: field:ir.model.fields.anonymization.history,direction:0 +msgid "Direction" +msgstr "Richting" + +#. module: anonymization +#: model:ir.actions.act_window,name:anonymization.action_ir_model_fields_anonymization_tree +#: view:ir.model.fields.anonymization:0 +#: model:ir.ui.menu,name:anonymization.menu_administration_anonymization_fields +msgid "Anonymized Fields" +msgstr "Anonieme velden" + +#. module: anonymization +#: model:ir.ui.menu,name:anonymization.menu_administration_anonymization +msgid "Database anonymization" +msgstr "Database anonimisatie" + +#. module: anonymization +#: code:addons/anonymization/anonymization.py:55 +#: sql_constraint:ir.model.fields.anonymization:0 +#, python-format +msgid "You cannot have two records having the same model and the same field" +msgstr "U kunt niet twee regels hebben met hetzelfde model en veld" + +#. module: anonymization +#: selection:ir.model.fields.anonymization,state:0 +#: selection:ir.model.fields.anonymize.wizard,state:0 +msgid "Anonymized" +msgstr "Geanonimiseerd" + +#. module: anonymization +#: field:ir.model.fields.anonymization,state:0 +msgid "unknown" +msgstr "onbekend" + +#. module: anonymization +#: field:ir.model.fields.anonymization,model_id:0 +msgid "Object" +msgstr "Object" + +#. module: anonymization +#: field:ir.model.fields.anonymization.history,filepath:0 +msgid "File path" +msgstr "Bestandspad" + +#. module: anonymization +#: field:ir.model.fields.anonymization.history,date:0 +msgid "Date" +msgstr "Datum" + +#. module: anonymization +#: field:ir.model.fields.anonymize.wizard,file_export:0 +msgid "Export" +msgstr "Exporteren" + +#. module: anonymization +#: view:ir.model.fields.anonymize.wizard:0 +msgid "Reverse the Database Anonymization" +msgstr "De database anonimisatie ongedaan maken" + +#. module: anonymization +#: view:ir.model.fields.anonymize.wizard:0 +msgid "Database Anonymization" +msgstr "Database anonimisatie" + +#. module: anonymization +#: model:ir.ui.menu,name:anonymization.menu_administration_anonymization_wizard +msgid "Anonymize database" +msgstr "Database anonimiseren" + +#. module: anonymization +#: view:ir.model.fields.anonymization.history:0 +#: field:ir.model.fields.anonymization.history,field_ids:0 +msgid "Fields" +msgstr "Velden" + +#. module: anonymization +#: selection:ir.model.fields.anonymization,state:0 +#: selection:ir.model.fields.anonymize.wizard,state:0 +msgid "Clear" +msgstr "Duidelijk" + +#. module: anonymization +#: selection:ir.model.fields.anonymization.history,direction:0 +msgid "clear -> anonymized" +msgstr "duidelijk -> geanonimiseerd" + +#. module: anonymization +#: view:ir.model.fields.anonymize.wizard:0 +#: field:ir.model.fields.anonymize.wizard,summary:0 +msgid "Summary" +msgstr "Samenvatting" + +#. module: anonymization +#: view:ir.model.fields.anonymization:0 +msgid "Anonymized Field" +msgstr "Geanonimiseerd veld" + +#. module: anonymization +#: model:ir.module.module,description:anonymization.module_meta_information +msgid "" +"\n" +"This module allows you to anonymize a database.\n" +" " +msgstr "" +"\n" +"Deze module laat u een database anonimiseren.\n" +" " + +#. module: anonymization +#: selection:ir.model.fields.anonymize.wizard,state:0 +msgid "Unstable" +msgstr "Onstabiel" + +#. module: anonymization +#: selection:ir.model.fields.anonymization.history,state:0 +msgid "Exception occured" +msgstr "Uitzondering opgetreden" + +#. module: anonymization +#: selection:ir.model.fields.anonymization,state:0 +#: selection:ir.model.fields.anonymize.wizard,state:0 +msgid "Not Existing" +msgstr "Niet bestaand" + +#. module: anonymization +#: field:ir.model.fields.anonymization,model_name:0 +msgid "Object Name" +msgstr "Objectnaam" + +#. module: anonymization +#: model:ir.actions.act_window,name:anonymization.action_ir_model_fields_anonymization_history_tree +#: view:ir.model.fields.anonymization.history:0 +#: model:ir.ui.menu,name:anonymization.menu_administration_anonymization_history +msgid "Anonymization History" +msgstr "Anonimisatie geschiedenis" + +#. module: anonymization +#: model:ir.model,name:anonymization.model_ir_model_fields_anonymization_history +msgid "ir.model.fields.anonymization.history" +msgstr "ir.model.fields.anonymization.history" + +#. module: anonymization +#: model:ir.actions.act_window,name:anonymization.action_ir_model_fields_anonymize_wizard +#: view:ir.model.fields.anonymize.wizard:0 +msgid "Anonymize Database" +msgstr "Database anonimiseren" + +#. module: anonymization +#: field:ir.model.fields.anonymize.wizard,name:0 +msgid "File Name" +msgstr "Bestandsnaam" + +#. module: anonymization +#: selection:ir.model.fields.anonymization.history,direction:0 +msgid "anonymized -> clear" +msgstr "geanonimiseerd -> duidelijk" + +#. module: anonymization +#: selection:ir.model.fields.anonymization.history,state:0 +msgid "Started" +msgstr "Gestart" + +#. module: anonymization +#: selection:ir.model.fields.anonymization.history,state:0 +msgid "Done" +msgstr "Gereed" + +#. module: anonymization +#: view:ir.model.fields.anonymization.history:0 +#: field:ir.model.fields.anonymization.history,msg:0 +#: field:ir.model.fields.anonymize.wizard,msg:0 +msgid "Message" +msgstr "Bericht" diff --git a/addons/base_crypt/i18n/nl.po b/addons/base_crypt/i18n/nl.po new file mode 100644 index 00000000000..934926ea855 --- /dev/null +++ b/addons/base_crypt/i18n/nl.po @@ -0,0 +1,88 @@ +# Dutch translation for openobject-addons +# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011 +# This file is distributed under the same license as the openobject-addons package. +# FIRST AUTHOR , 2011. +# +msgid "" +msgstr "" +"Project-Id-Version: openobject-addons\n" +"Report-Msgid-Bugs-To: FULL NAME \n" +"POT-Creation-Date: 2011-01-11 11:14+0000\n" +"PO-Revision-Date: 2011-02-16 11:37+0000\n" +"Last-Translator: Douwe Wullink (Dypalio) \n" +"Language-Team: Dutch \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Launchpad-Export-Date: 2011-02-17 04:36+0000\n" +"X-Generator: Launchpad (build 12351)\n" + +#. module: base_crypt +#: sql_constraint:res.users:0 +msgid "You can not have two users with the same login !" +msgstr "U kunt niet twee gebruikers hebben met dezelfde gebruikersnaam !" + +#. module: base_crypt +#: model:ir.model,name:base_crypt.model_res_users +msgid "res.users" +msgstr "res.users" + +#. module: base_crypt +#: constraint:res.users:0 +msgid "The chosen company is not in the allowed companies for this user" +msgstr "Het gekozen bedrijf is geen toegestaan bedrijf voor deze gebruiker" + +#. module: base_crypt +#: code:addons/base_crypt/crypt.py:132 +#, python-format +msgid "Please specify the password !" +msgstr "Geef aub een wachtwoord in !" + +#. module: base_crypt +#: model:ir.module.module,shortdesc:base_crypt.module_meta_information +msgid "Base - Password Encryption" +msgstr "Basis - Wachtwoord versleuteling" + +#. module: base_crypt +#: code:addons/base_crypt/crypt.py:132 +#, python-format +msgid "Error" +msgstr "Fout" + +#. module: base_crypt +#: model:ir.module.module,description:base_crypt.module_meta_information +msgid "" +"This module replaces the cleartext password in the database with a password " +"hash,\n" +"preventing anyone from reading the original password.\n" +"For your existing user base, the removal of the cleartext passwords occurs " +"the first time\n" +"a user logs into the database, after installing base_crypt.\n" +"After installing this module it won't be possible to recover a forgotten " +"password for your\n" +"users, the only solution is for an admin to set a new password.\n" +"\n" +"Note: installing this module does not mean you can ignore basic security " +"measures,\n" +"as the password is still transmitted unencrypted on the network (by the " +"client),\n" +"unless you are using a secure protocol such as XML-RPCS.\n" +" " +msgstr "" +"Deze module vervangt het (leesbare) tekst wachtwoord in de database met een " +"versleuteld wachtwoord,\n" +"waardoor niemand het originele wachtwoord nog kan lezen.\n" +"Voor bestaande gebruikers worden de (leesbare) tekst wachtwoorden verwijderd " +"bij de eerste keer\n" +"aanmelden van de gebruiker, na installatie van deze module.\n" +"Na installatie van deze module is het niet meer mogelijk om vergeten " +"wachtwoorden op te zoeken voor uw\n" +"gebruikers; de enige oplossing voor de beheerder is om een nieuw wachtwoord " +"in te stellen.\n" +"\n" +"Letop: Installatie van deze module betekent niet dat u basis " +"beveiligingsmaatregelen kunt negeren,\n" +"omdat het wachtwoord nog steeds onversleuteld over het netwerk wordt " +"gestuurd (door de gebruiker),\n" +"tenzij u een veilig protocol gebruikt zoals XML-RPCS.\n" +" " diff --git a/addons/base_crypt/i18n/pt_BR.po b/addons/base_crypt/i18n/pt_BR.po index fb7513b3c75..345b88fc2da 100644 --- a/addons/base_crypt/i18n/pt_BR.po +++ b/addons/base_crypt/i18n/pt_BR.po @@ -8,46 +8,47 @@ msgstr "" "Project-Id-Version: openobject-addons\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2011-01-11 11:14+0000\n" -"PO-Revision-Date: 2011-02-15 15:37+0000\n" -"Last-Translator: FULL NAME \n" +"PO-Revision-Date: 2011-02-16 23:06+0000\n" +"Last-Translator: Emerson \n" "Language-Team: Brazilian Portuguese \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2011-02-16 05:03+0000\n" +"X-Launchpad-Export-Date: 2011-02-17 04:36+0000\n" "X-Generator: Launchpad (build 12351)\n" #. module: base_crypt #: sql_constraint:res.users:0 msgid "You can not have two users with the same login !" -msgstr "" +msgstr "Você não pode ter dois usuários com o mesmo login!" #. module: base_crypt #: model:ir.model,name:base_crypt.model_res_users msgid "res.users" -msgstr "" +msgstr "res.users" #. module: base_crypt #: constraint:res.users:0 msgid "The chosen company is not in the allowed companies for this user" msgstr "" +"A empresa escolhida não está entre as empresas habilitadas para este usuário" #. module: base_crypt #: code:addons/base_crypt/crypt.py:132 #, python-format msgid "Please specify the password !" -msgstr "" +msgstr "Por favor informe a senha!" #. module: base_crypt #: model:ir.module.module,shortdesc:base_crypt.module_meta_information msgid "Base - Password Encryption" -msgstr "" +msgstr "Base - Criptografia de Senha" #. module: base_crypt #: code:addons/base_crypt/crypt.py:132 #, python-format msgid "Error" -msgstr "" +msgstr "Erro" #. module: base_crypt #: model:ir.module.module,description:base_crypt.module_meta_information @@ -69,3 +70,18 @@ msgid "" "unless you are using a secure protocol such as XML-RPCS.\n" " " msgstr "" +"Este módulo substitui as senhas em texto puro na base de dados por senhas " +"embaralhadas,\n" +"impedindo que qualquer pessoa leia a senha original.\n" +"Para os dados de usuários existentes, a remoção da senha em texto puro " +"ocorre na primeira vez\n" +"que o usuário se conecta ao banco de dados após a instalação base_crypt.\n" +"Depois de instalar este módulo não será possível recuperar uma senha " +"esquecida para os seus\n" +"usuários, a única solução é que um administrador defina uma nova senha.\n" +"\n" +"Nota: A instalação deste módulo não significa que você pode ignorar as " +"medidas básicas de segurança,\n" +"como a senha ainda é transmitida sem criptografia na rede (pelo cliente),\n" +"a menos que você estiver usando um protocolo seguro, como XML-RPCS.\n" +" " diff --git a/addons/base_tools/i18n/nl.po b/addons/base_tools/i18n/nl.po new file mode 100644 index 00000000000..4aa74108cdb --- /dev/null +++ b/addons/base_tools/i18n/nl.po @@ -0,0 +1,32 @@ +# Dutch translation for openobject-addons +# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011 +# This file is distributed under the same license as the openobject-addons package. +# FIRST AUTHOR , 2011. +# +msgid "" +msgstr "" +"Project-Id-Version: openobject-addons\n" +"Report-Msgid-Bugs-To: FULL NAME \n" +"POT-Creation-Date: 2011-01-11 11:14+0000\n" +"PO-Revision-Date: 2011-02-16 11:39+0000\n" +"Last-Translator: Douwe Wullink (Dypalio) \n" +"Language-Team: Dutch \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Launchpad-Export-Date: 2011-02-17 04:36+0000\n" +"X-Generator: Launchpad (build 12351)\n" + +#. module: base_tools +#: model:ir.module.module,shortdesc:base_tools.module_meta_information +msgid "Common base for tools modules" +msgstr "Algemene basis voor tools modules" + +#. module: base_tools +#: model:ir.module.module,description:base_tools.module_meta_information +msgid "" +"\n" +" " +msgstr "" +"\n" +" " diff --git a/addons/base_tools/i18n/pt_BR.po b/addons/base_tools/i18n/pt_BR.po new file mode 100644 index 00000000000..e585cd4424d --- /dev/null +++ b/addons/base_tools/i18n/pt_BR.po @@ -0,0 +1,32 @@ +# Brazilian Portuguese translation for openobject-addons +# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011 +# This file is distributed under the same license as the openobject-addons package. +# FIRST AUTHOR , 2011. +# +msgid "" +msgstr "" +"Project-Id-Version: openobject-addons\n" +"Report-Msgid-Bugs-To: FULL NAME \n" +"POT-Creation-Date: 2011-01-11 11:14+0000\n" +"PO-Revision-Date: 2011-02-16 22:10+0000\n" +"Last-Translator: FULL NAME \n" +"Language-Team: Brazilian Portuguese \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Launchpad-Export-Date: 2011-02-17 04:36+0000\n" +"X-Generator: Launchpad (build 12351)\n" + +#. module: base_tools +#: model:ir.module.module,shortdesc:base_tools.module_meta_information +msgid "Common base for tools modules" +msgstr "Base Comum para módulos de ferramentas" + +#. module: base_tools +#: model:ir.module.module,description:base_tools.module_meta_information +msgid "" +"\n" +" " +msgstr "" +"\n" +" " diff --git a/addons/google_base_account/wizard/google_login.py b/addons/google_base_account/wizard/google_login.py index 23602be0403..3b7a376f1be 100644 --- a/addons/google_base_account/wizard/google_login.py +++ b/addons/google_base_account/wizard/google_login.py @@ -31,7 +31,16 @@ class google_login(osv.osv_memory): 'user': fields.char('User Name', size=64, required=True), 'password': fields.char('Password', size=64), } - + def google_login(self,cr,uid,user,password,context=None): + gd_client = gdata.contacts.service.ContactsService() + gd_client.email = user + gd_client.password = password + gd_client.source = 'OpenERP' + try: + gd_client.ProgrammaticLogin() + except Exception, e: + return False + return gd_client def check_login(self, cr, uid, ids, context=None): if context == None: context = {} diff --git a/addons/l10n_nl/i18n/nl.po b/addons/l10n_nl/i18n/nl.po new file mode 100644 index 00000000000..dbf83cd9c9f --- /dev/null +++ b/addons/l10n_nl/i18n/nl.po @@ -0,0 +1,126 @@ +# Dutch translation for openobject-addons +# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011 +# This file is distributed under the same license as the openobject-addons package. +# FIRST AUTHOR , 2011. +# +msgid "" +msgstr "" +"Project-Id-Version: openobject-addons\n" +"Report-Msgid-Bugs-To: FULL NAME \n" +"POT-Creation-Date: 2011-01-07 06:11+0000\n" +"PO-Revision-Date: 2011-02-16 11:41+0000\n" +"Last-Translator: Douwe Wullink (Dypalio) \n" +"Language-Team: Dutch \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Launchpad-Export-Date: 2011-02-17 04:36+0000\n" +"X-Generator: Launchpad (build 12351)\n" + +#. module: l10n_nl +#: model:ir.actions.todo,note:l10n_nl.config_call_account_template +msgid "" +"Na installatie van deze module word de configuratie wizard voor " +"\"Accounting\" aangeroepen.\n" +"* U krijgt een lijst met grootboektemplates aangeboden waarin zich ook het " +"Nederlandse grootboekschema bevind.\n" +"* Als de configuratie wizard start, wordt u gevraagd om de naam van uw " +"bedrijf in te voeren, welke grootboekschema te installeren, uit hoeveel " +"cijfers een grootboekrekening mag bestaan, het rekeningnummer van uw bank en " +"de currency om Journalen te creeren.\n" +" \n" +"Let op!! -> De template van het Nederlandse rekeningschema is opgebouwd uit " +"4 cijfers. Dit is het minimale aantal welk u moet invullen, u mag het aantal " +"verhogen. De extra cijfers worden dan achter het rekeningnummer aangevult " +"met \"nullen\"\n" +" \n" +"* Dit is dezelfe configuratie wizard welke aangeroepen kan worden via " +"Financial Management/Configuration/Financial Accounting/Financial " +"Accounts/Generate Chart of Accounts from a Chart Template.\n" +msgstr "" +"Na installatie van deze module word de configuratie wizard voor " +"\"Accounting\" aangeroepen.\n" +"* U krijgt een lijst met grootboektemplates aangeboden waarin zich ook het " +"Nederlandse grootboekschema bevind.\n" +"* Als de configuratie wizard start, wordt u gevraagd om de naam van uw " +"bedrijf in te voeren, welke grootboekschema te installeren, uit hoeveel " +"cijfers een grootboekrekening mag bestaan, het rekeningnummer van uw bank en " +"de currency om Journalen te creeren.\n" +" \n" +"Let op!! -> De template van het Nederlandse rekeningschema is opgebouwd uit " +"4 cijfers. Dit is het minimale aantal welk u moet invullen, u mag het aantal " +"verhogen. De extra cijfers worden dan achter het rekeningnummer aangevult " +"met \"nullen\"\n" +" \n" +"* Dit is dezelfe configuratie wizard welke aangeroepen kan worden via " +"Financial Management/Configuration/Financial Accounting/Financial " +"Accounts/Generate Chart of Accounts from a Chart Template.\n" + +#. module: l10n_nl +#: model:ir.module.module,shortdesc:l10n_nl.module_meta_information +msgid "Netherlands - Grootboek en BTW rekeningen" +msgstr "Netherlands - Grootboek en BTW rekeningen" + +#. module: l10n_nl +#: model:ir.module.module,description:l10n_nl.module_meta_information +msgid "" +"\n" +"Read changelog in file __terp__.py for version information. \n" +"Dit is een basismodule om een uitgebreid grootboek- en BTW schema voor " +"Nederlandse bedrijven te installeren in OpenERP versie 5.\n" +" De BTW rekeningen zijn waar nodig gekoppeld om de juiste rapportage te " +"genereren, denk b.v. aan intracommunautaire verwervingen\n" +" waarbij u 19% BTW moet opvoeren, maar tegelijkertijd ook 19% als " +"voorheffing weer mag aftrekken.\n" +" \n" +" Na installatie van deze module word de configuratie wizard voor " +"\"Accounting\" aangeroepen.\n" +" * U krijgt een lijst met grootboektemplates aangeboden waarin zich ook " +"het Nederlandse grootboekschema bevind.\n" +" \n" +" * Als de configuratie wizard start, wordt u gevraagd om de naam van uw " +"bedrijf in te voeren, welke grootboekschema te installeren, uit hoeveel " +"cijfers een grootboekrekening mag bestaan, het rekeningnummer van uw bank en " +"de currency om Journalen te creeren.\n" +" \n" +" Let op!! -> De template van het Nederlandse rekeningschema is opgebouwd " +"uit 4 cijfers. Dit is het minimale aantal welk u moet invullen, u mag het " +"aantal verhogen. De extra cijfers worden dan achter het rekeningnummer " +"aangevult met \"nullen\"\n" +" \n" +" * Dit is dezelfe configuratie wizard welke aangeroepen kan worden via " +"Financial Management/Configuration/Financial Accounting/Financial " +"Accounts/Generate Chart of Accounts from a Chart Template.\n" +"\n" +" " +msgstr "" +"\n" +"Lees changelog in file __terp__.py voor versie informatie. \n" +"\n" +"Dit is een basismodule om een uitgebreid grootboek- en BTW schema voor " +"Nederlandse bedrijven te installeren in OpenERP versie 5.\n" +" De BTW rekeningen zijn waar nodig gekoppeld om de juiste rapportage te " +"genereren, denk b.v. aan intracommunautaire verwervingen\n" +" waarbij u 19% BTW moet opvoeren, maar tegelijkertijd ook 19% als " +"voorheffing weer mag aftrekken.\n" +" \n" +" Na installatie van deze module word de configuratie wizard voor " +"\"Accounting\" aangeroepen.\n" +" * U krijgt een lijst met grootboektemplates aangeboden waarin zich ook " +"het Nederlandse grootboekschema bevind.\n" +" \n" +" * Als de configuratie wizard start, wordt u gevraagd om de naam van uw " +"bedrijf in te voeren, welke grootboekschema te installeren, uit hoeveel " +"cijfers een grootboekrekening mag bestaan, het rekeningnummer van uw bank en " +"de currency om Journalen te creeren.\n" +" \n" +" Let op!! -> De template van het Nederlandse rekeningschema is opgebouwd " +"uit 4 cijfers. Dit is het minimale aantal welk u moet invullen, u mag het " +"aantal verhogen. De extra cijfers worden dan achter het rekeningnummer " +"aangevult met \"nullen\"\n" +" \n" +" * Dit is dezelfe configuratie wizard welke aangeroepen kan worden via " +"Financial Management/Configuration/Financial Accounting/Financial " +"Accounts/Generate Chart of Accounts from a Chart Template.\n" +"\n" +" " diff --git a/addons/point_of_sale/i18n/pt_BR.po b/addons/point_of_sale/i18n/pt_BR.po index 609fe7d0b96..489f73ec92e 100644 --- a/addons/point_of_sale/i18n/pt_BR.po +++ b/addons/point_of_sale/i18n/pt_BR.po @@ -7,14 +7,14 @@ msgstr "" "Project-Id-Version: OpenERP Server 6.0dev\n" "Report-Msgid-Bugs-To: support@openerp.com\n" "POT-Creation-Date: 2011-01-03 16:58+0000\n" -"PO-Revision-Date: 2011-02-10 00:49+0000\n" -"Last-Translator: Adriano Prado \n" +"PO-Revision-Date: 2011-02-16 22:57+0000\n" +"Last-Translator: Emerson \n" "Language-Team: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2011-02-11 04:59+0000\n" -"X-Generator: Launchpad (build 12177)\n" +"X-Launchpad-Export-Date: 2011-02-17 04:36+0000\n" +"X-Generator: Launchpad (build 12351)\n" #. module: point_of_sale #: field:pos.discount,discount_notes:0 @@ -286,7 +286,7 @@ msgstr "" #: code:addons/point_of_sale/point_of_sale.py:1075 #, python-format msgid "No valid pricelist line found !" -msgstr "" +msgstr "Nenhuma linha de lista de preços válida encontrada!" #. module: point_of_sale #: report:pos.details:0 @@ -491,7 +491,7 @@ msgstr "" #: model:ir.model,name:point_of_sale.model_pos_add_product #, python-format msgid "Add Product" -msgstr "" +msgstr "Adicionar Produto" #. module: point_of_sale #: field:report.transaction.pos,invoice_am:0 @@ -808,7 +808,7 @@ msgstr "Produto para Despesas" #: model:ir.actions.act_window,name:point_of_sale.action_report_pos_sales_user_today_current_user #: view:pos.sales.user.today.current_user:0 msgid "Sales for Current User" -msgstr "" +msgstr "Vendas do Usuário Atual" #. module: point_of_sale #: report:pos.invoice:0 @@ -872,7 +872,7 @@ msgstr "Filtros Extendidos..." #. module: point_of_sale #: field:pos.order,num_sale:0 msgid "Internal Note" -msgstr "" +msgstr "Nota Interna" #. module: point_of_sale #: model:ir.model,name:point_of_sale.model_res_company @@ -915,7 +915,7 @@ msgstr "" #. module: point_of_sale #: field:report.transaction.pos,no_trans:0 msgid "Number of Transaction" -msgstr "" +msgstr "Número da Transação" #. module: point_of_sale #: view:pos.add.product:0 @@ -1292,7 +1292,7 @@ msgstr "" #. module: point_of_sale #: field:pos.order,nb_print:0 msgid "Number of Print" -msgstr "" +msgstr "Número da Impressão" #. module: point_of_sale #: model:ir.model,name:point_of_sale.model_pos_make_payment @@ -1383,7 +1383,7 @@ msgstr "" #: code:addons/point_of_sale/point_of_sale.py:337 #, python-format msgid "No order lines defined for this sale." -msgstr "" +msgstr "Sem linhas de pedido definidas nesta venda." #. module: point_of_sale #: field:report.cash.register,balance_start:0 @@ -1799,7 +1799,7 @@ msgstr "" #. module: point_of_sale #: view:pos.scan.product:0 msgid "Scan Barcode" -msgstr "" +msgstr "Ler Código de Barras" #. module: point_of_sale #: field:pos.box.entries,product_id:0 @@ -1973,7 +1973,7 @@ msgstr "Ponto de Venda" #: view:report.pos.order:0 #: field:report.pos.order,user_id:0 msgid "Salesman" -msgstr "" +msgstr "Vendedor" #. module: point_of_sale #: report:pos.details:0 @@ -2024,7 +2024,7 @@ msgstr "" #. module: point_of_sale #: report:pos.invoice:0 msgid "PRO-FORMA" -msgstr "" +msgstr "PRO-FORMA" #. module: point_of_sale #: code:addons/point_of_sale/point_of_sale.py:637 diff --git a/addons/purchase_double_validation/i18n/nl.po b/addons/purchase_double_validation/i18n/nl.po new file mode 100644 index 00000000000..c88a2824ce5 --- /dev/null +++ b/addons/purchase_double_validation/i18n/nl.po @@ -0,0 +1,88 @@ +# Dutch translation for openobject-addons +# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011 +# This file is distributed under the same license as the openobject-addons package. +# FIRST AUTHOR , 2011. +# +msgid "" +msgstr "" +"Project-Id-Version: openobject-addons\n" +"Report-Msgid-Bugs-To: FULL NAME \n" +"POT-Creation-Date: 2011-01-11 11:15+0000\n" +"PO-Revision-Date: 2011-02-16 11:07+0000\n" +"Last-Translator: Douwe Wullink (Dypalio) \n" +"Language-Team: Dutch \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Launchpad-Export-Date: 2011-02-17 04:36+0000\n" +"X-Generator: Launchpad (build 12351)\n" + +#. module: purchase_double_validation +#: view:purchase.double.validation.installer:0 +msgid "Purchase Application Configuration" +msgstr "Inkoop applicatie configuratie" + +#. module: purchase_double_validation +#: field:purchase.double.validation.installer,progress:0 +msgid "Configuration Progress" +msgstr "Configuratievoortgang" + +#. module: purchase_double_validation +#: view:purchase.double.validation.installer:0 +msgid "Define minimum amount after which puchase is needed to be validated." +msgstr "Minimum bedrag definiëren waarboven een inkoop moet worden bevestigd" + +#. module: purchase_double_validation +#: view:purchase.double.validation.installer:0 +msgid "title" +msgstr "titel" + +#. module: purchase_double_validation +#: model:ir.module.module,shortdesc:purchase_double_validation.module_meta_information +msgid "purchase_double_validation" +msgstr "purchase_double_validation" + +#. module: purchase_double_validation +#: field:purchase.double.validation.installer,config_logo:0 +msgid "Image" +msgstr "Afbeelding" + +#. module: purchase_double_validation +#: model:ir.module.module,description:purchase_double_validation.module_meta_information +msgid "" +"\n" +"\tThis module modifies the purchase workflow in order to validate purchases " +"that exceeds minimum amount set by configuration wizard\n" +" " +msgstr "" +"\n" +"\tDeze module verandert de inkoop workflow om inkopen boven een door de " +"configuratie assistent ingesteld minimum bedrag te laten bevestigen\n" +" " + +#. module: purchase_double_validation +#: model:ir.actions.act_window,name:purchase_double_validation.action_config_purchase_limit_amount +#: view:purchase.double.validation.installer:0 +msgid "Configure Limit Amount for Purchase" +msgstr "Limietbedrag voor inkoop configureren" + +#. module: purchase_double_validation +#: view:purchase.double.validation.installer:0 +msgid "res_config_contents" +msgstr "res_config_contents" + +#. module: purchase_double_validation +#: help:purchase.double.validation.installer,limit_amount:0 +msgid "Maximum amount after which validation of purchase is required." +msgstr "" +"Minimum bedrag waarboven bevestiging van de inkoop moet plaatsvinden." + +#. module: purchase_double_validation +#: model:ir.model,name:purchase_double_validation.model_purchase_double_validation_installer +msgid "purchase.double.validation.installer" +msgstr "purchase.double.validation.installer" + +#. module: purchase_double_validation +#: field:purchase.double.validation.installer,limit_amount:0 +msgid "Maximum Purchase Amount" +msgstr "Maximum inkoopbedrag" diff --git a/addons/sale_order_dates/i18n/tr.po b/addons/sale_order_dates/i18n/tr.po new file mode 100644 index 00000000000..c3ec4153987 --- /dev/null +++ b/addons/sale_order_dates/i18n/tr.po @@ -0,0 +1,72 @@ +# Turkish translation for openobject-addons +# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011 +# This file is distributed under the same license as the openobject-addons package. +# FIRST AUTHOR , 2011. +# +msgid "" +msgstr "" +"Project-Id-Version: openobject-addons\n" +"Report-Msgid-Bugs-To: FULL NAME \n" +"POT-Creation-Date: 2011-01-11 11:16+0000\n" +"PO-Revision-Date: 2011-02-16 11:54+0000\n" +"Last-Translator: FULL NAME \n" +"Language-Team: Turkish \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Launchpad-Export-Date: 2011-02-17 04:36+0000\n" +"X-Generator: Launchpad (build 12351)\n" + +#. module: sale_order_dates +#: sql_constraint:sale.order:0 +msgid "Order Reference must be unique !" +msgstr "Sipariş referans no'su tek olmalı !" + +#. module: sale_order_dates +#: help:sale.order,requested_date:0 +msgid "Date on which customer has requested for sales." +msgstr "Müşterinin talep ettiği tarih." + +#. module: sale_order_dates +#: field:sale.order,commitment_date:0 +msgid "Commitment Date" +msgstr "Vaadedilen Tarih" + +#. module: sale_order_dates +#: field:sale.order,effective_date:0 +msgid "Effective Date" +msgstr "Gerçek Tarih" + +#. module: sale_order_dates +#: model:ir.module.module,shortdesc:sale_order_dates.module_meta_information +msgid "Sales Order Dates" +msgstr "Satış Sipariş Günü" + +#. module: sale_order_dates +#: help:sale.order,effective_date:0 +msgid "Date on which picking is created." +msgstr "Paketlemenin yapıldığı gün." + +#. module: sale_order_dates +#: field:sale.order,requested_date:0 +msgid "Requested Date" +msgstr "İstenilen Tarih" + +#. module: sale_order_dates +#: model:ir.model,name:sale_order_dates.model_sale_order +msgid "Sales Order" +msgstr "Satış Siparişi" + +#. module: sale_order_dates +#: model:ir.module.module,description:sale_order_dates.module_meta_information +msgid "" +"\n" +"Add commitment, requested and effective dates on the sales order.\n" +msgstr "" +"\n" +"Satış siparişine, vaadedilen, istenilen ve gerçek tarihleri gir.\n" + +#. module: sale_order_dates +#: help:sale.order,commitment_date:0 +msgid "Date on which delivery of products is to be made." +msgstr "Ürünlerin teslimatının yapılacağı gün." diff --git a/addons/stock_location/i18n/id.po b/addons/stock_location/i18n/id.po index 4e5a0272100..696bf34996c 100644 --- a/addons/stock_location/i18n/id.po +++ b/addons/stock_location/i18n/id.po @@ -13,7 +13,7 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2011-02-16 05:02+0000\n" +"X-Launchpad-Export-Date: 2011-02-17 04:36+0000\n" "X-Generator: Launchpad (build 12351)\n" #. module: stock_location diff --git a/addons/sync_google_contact/__openerp__.py b/addons/sync_google_contact/__openerp__.py index 4d0d98a48a0..b40f787cdf8 100644 --- a/addons/sync_google_contact/__openerp__.py +++ b/addons/sync_google_contact/__openerp__.py @@ -27,7 +27,7 @@ 'description': """The module adds google contact in partner address""", 'author': 'OpenERP SA', 'website': 'http://www.openerp.com', - 'depends': ['base','google_base_account'], + 'depends': ['base','google_base_account','sync_base'], 'init_xml': [], 'update_xml': [ 'wizard/google_contact_import_view.xml' diff --git a/addons/sync_google_contact/wizard/google_contact_import.py b/addons/sync_google_contact/wizard/google_contact_import.py index 764cffcb18c..2463ad8fb9a 100644 --- a/addons/sync_google_contact/wizard/google_contact_import.py +++ b/addons/sync_google_contact/wizard/google_contact_import.py @@ -21,12 +21,11 @@ from osv import fields,osv from tools.translate import _ +import tools class google_contact_import(osv.osv_memory): - _name = "google.import.contact" _inherit = 'google.login' _columns = { - 'create_partner': fields.boolean('Create Partner', help="It will create Partner for given gmail user otherwise only adds contacts in Partner Addresses.") } def default_get(self, cr, uid, fields, context=None): @@ -37,79 +36,135 @@ class google_contact_import(osv.osv_memory): if 'password' in fields: res.update({'password': user_obj.gmail_password}) return res - - def import_contact(self, cr, uid, ids, context=None): - # Only see the result, we will change the code - + def check_login_contact(self, cr, uid, ids, context=None): gd_client = self.check_login(cr, uid, ids, context=context) if not gd_client: - return {'type': 'ir.actions.act_window_close'} + raise osv.except_osv(_('Error'), _("Authication fail check the user and password !")) + data_obj = self.pool.get('ir.model.data') + data_id = data_obj._get_id(cr, uid, 'sync_google_contact', 'view_synchronize_google_contact_import_form') + view_id = False + if data_id: + view_id = data_obj.browse(cr, uid, data_id, context=context).res_id + value = { + 'name': _('Import Contact'), + 'view_type': 'form', + 'view_mode': 'form,tree', + 'res_model': 'synchronize.base', + 'view_id': False, + 'context': context, + 'views': [(view_id, 'form')], + 'type': 'ir.actions.act_window', + 'target': 'new', + } + return value + +google_contact_import() +class synchronize_google_contact(osv.osv_memory): + _name = "synchronize.base" + _inherit = 'synchronize.base' + def _get_group(self, cr, uid, context=None): + user_obj = self.pool.get('res.users').browse(cr, uid, uid) + google=self.pool.get('google.login') + gd_client=google.google_login(cr,uid,user_obj.gmail_user,user_obj.gmail_password) + res=[] + if gd_client: + groups=gd_client.GetGroupsFeed() + for grp in groups.entry: + res.append((grp.id.text ,grp.title.text)) + res.append(('none','None')) + res.append(('all','All Group')) + return res + _columns = { + 'tools': fields.selection([('gmail','Gmail')], 'Tools'), + 'create_partner': fields.boolean('Create Partner', help="It will create Partner for given gmail user otherwise only adds contacts in Partner Addresses.") , + 'group_name': fields.selection(_get_group, "Group Name", size=32,help="Choose which group to import, By defult it take all "), + + } + + def import_contact(self, cr, uid, ids, context=None): addresss_obj = self.pool.get('res.partner.address') partner_obj = self.pool.get('res.partner') user_obj = self.pool.get('res.users').browse(cr, uid, uid) gmail_user = user_obj.gmail_user gamil_pwd = user_obj.gmail_password + google=self.pool.get('google.login') + gd_client=google.google_login(cr,uid,user_obj.gmail_user,user_obj.gmail_password) if not gmail_user or not gamil_pwd: raise osv.except_osv(_('Error'), _("Please specify the user and password !")) contact = gd_client.GetContactsFeed() partner_id = [] addresses = [] - + partner_ids=[] + for obj in self.browse(cr, uid, ids, context=context): - if obj.create_partner: - for user in contact.author: - partner_name = user.name.text - partner_id = partner_obj.search(cr, uid, [('name','ilike',partner_name)], context=context) - if not partner_id: - partner_id.append(partner_obj.create(cr, uid, {'name': partner_name}, context=context)) - while contact: - for entry in contact.entry: - name = entry.title.text - phone_numbers = ','.join(phone_number.text for phone_number in entry.phone_number) - emails = ','.join(email.address for email in entry.email) - data = { - 'name': name, - 'phone': phone_numbers, - 'email': emails, - 'partner_id': partner_id and partner_id[0] - } - contact_ids = addresss_obj.search(cr, uid, [('email','ilike',emails)]) - if not contact_ids: - addresses.append(addresss_obj.create(cr, uid, data, context=context)) - if not contact: - break - next = contact.GetNextLink() - contact = None - if next: - contact = gd_client.GetContactsFeed(next.href) - if partner_id: - partner_id = partner_id[0] - return { - 'name': _('Partner'), - 'domain': "[('id','=',"+str(partner_id)+")]", - 'view_type': 'form', - 'view_mode': 'tree,form', - 'res_model': 'res.partner', - 'context': context, - 'views': [(False, 'tree'),(False, 'form')], - 'type': 'ir.actions.act_window', - } - elif addresses: - return { - 'name': _('Contacts'), - 'domain': "[('id','in', ["+','.join(map(str,addresses))+"])]", - 'view_type': 'form', - 'view_mode': 'tree,form', - 'res_model': 'res.partner.address', - 'context': context, - 'views': [(False, 'tree'),(False, 'form')], - 'type': 'ir.actions.act_window', - } + if obj.tools=='gmail': +# if obj.create_partner: +# for user in contact.author: +# partner_name = user.name.text +# if not partner_id: +# partner_id.append(partner_obj.create(cr, uid, {'name': partner_name}, context=context)) + while contact: + data={} + for entry in contact.entry: + partner_id=False + if obj.create_partner: + partner_name = tools.ustr(entry.title.text) + if partner_name: + partner_id = partner_obj.search(cr, uid, [('name','ilike',partner_name)], context=context) + if not partner_id: + partner_id.append(partner_obj.create(cr, uid, {'name': partner_name}, context=context)) + partner_ids.append(partner_id) + data.update({'partner_id': partner_id and partner_id[0]} ) + + name = entry.title.text + phone_numbers = ','.join(phone_number.text for phone_number in entry.phone_number) + emails = ','.join(email.address for email in entry.email) + data = { + 'name': name or '', + 'phone': phone_numbers, + 'email': emails, + } + contact_ids = addresss_obj.search(cr, uid, [('email','ilike',emails)]) + if obj.group_name and entry.group_membership_info and not contact_ids: + for grp in entry.group_membership_info: + if grp.href == obj.group_name: + addresss_obj.create(cr, uid, data, context=context) + else: + if obj.group_name=='all': + addresses.append(addresss_obj.create(cr, uid, data, context=context)) + if not contact: + break + next = contact.GetNextLink() + contact = None + if next: + contact = gd_client.GetContactsFeed(next.href) + if partner_ids: + return { + 'name': _('Partner'), + 'domain': "[('id','in', ["+','.join(map(str,partner_ids))+"])]", + 'view_type': 'form', + 'view_mode': 'tree,form', + 'res_model': 'res.partner', + 'context': context, + 'views': [(False, 'tree'),(False, 'form')], + 'type': 'ir.actions.act_window', + } + elif addresses: + return { + 'name': _('Contacts'), + 'domain': "[('id','in', ["+','.join(map(str,addresses))+"])]", + 'view_type': 'form', + 'view_mode': 'tree,form', + 'res_model': 'res.partner.address', + 'context': context, + 'views': [(False, 'tree'),(False, 'form')], + 'type': 'ir.actions.act_window', + } else: return {'type': 'ir.actions.act_window_close'} -google_contact_import() +synchronize_google_contact() # vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/sync_google_contact/wizard/google_contact_import_view.xml b/addons/sync_google_contact/wizard/google_contact_import_view.xml index 370636864a3..8144df6d4e5 100644 --- a/addons/sync_google_contact/wizard/google_contact_import_view.xml +++ b/addons/sync_google_contact/wizard/google_contact_import_view.xml @@ -2,36 +2,56 @@ - - google.import.contact.form - google.import.contact + + google.import.login.form + google.login form -
- - - - + + + + + - - - +