diff options
| author | Rucha (Open ERP) <rpa@tinyerp.com> | 2012-08-17 10:36:50 +0530 |
|---|---|---|
| committer | Rucha (Open ERP) <rpa@tinyerp.com> | 2012-08-17 10:36:50 +0530 |
| commit | b392bc8e46e4e335c7e870fb949949f83ddd5b2b (patch) | |
| tree | 7548e08579bbecf31a9c15304d360965c361a022 | |
| parent | 7a24bdb1f7b408bda4cb3674691e5dd53a5e8766 (diff) | |
| parent | 9b7e11cb047a889fdd56a5575a05b3f74d7f2730 (diff) | |
[MERGE]: Merge with latest trunk-addons
bzr revid: rpa@tinyerp.com-20120817050650-o9bv5oav40s7s6ql
| -rw-r--r-- | addons/account_analytic_analysis/i18n/it.po | 71 | ||||
| -rw-r--r-- | addons/crm/crm_lead_view.xml | 1 | ||||
| -rw-r--r-- | addons/document/report/document_report.py | 6 | ||||
| -rw-r--r-- | addons/hr_recruitment/__openerp__.py | 20 | ||||
| -rw-r--r-- | addons/hr_recruitment/hr_recruitment.py | 23 | ||||
| -rw-r--r-- | addons/hr_recruitment/hr_recruitment_view.xml | 12 | ||||
| -rw-r--r-- | addons/hr_recruitment/security/ir.model.access.csv | 2 | ||||
| -rw-r--r-- | addons/hr_recruitment/static/src/js/hr_recruitment.js | 35 | ||||
| -rw-r--r-- | addons/portal/__openerp__.py | 12 | ||||
| -rwxr-xr-x[-rw-r--r--] | addons/portal_event/portal_event_view.xml | 16 | ||||
| -rw-r--r-- | addons/portal_sale/portal_sale_view.xml | 56 | ||||
| -rw-r--r-- | addons/project/__openerp__.py | 62 | ||||
| -rw-r--r-- | addons/project/project_view.xml | 2 | ||||
| -rw-r--r-- | addons/project/security/ir.model.access.csv | 2 | ||||
| -rw-r--r-- | addons/project_issue/project_issue_view.xml | 1 |
15 files changed, 235 insertions, 86 deletions
diff --git a/addons/account_analytic_analysis/i18n/it.po b/addons/account_analytic_analysis/i18n/it.po index 8ccf91b1fd3..c71ad83d9c7 100644 --- a/addons/account_analytic_analysis/i18n/it.po +++ b/addons/account_analytic_analysis/i18n/it.po @@ -7,19 +7,19 @@ msgstr "" "Project-Id-Version: OpenERP Server 6.0dev_rc3\n" "Report-Msgid-Bugs-To: support@openerp.com\n" "POT-Creation-Date: 2012-02-08 00:35+0000\n" -"PO-Revision-Date: 2011-01-13 18:03+0000\n" -"Last-Translator: Nicola Riolini - Micronaet <Unknown>\n" +"PO-Revision-Date: 2012-08-16 09:05+0000\n" +"Last-Translator: gagarin <Unknown>\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: 2012-08-07 05:14+0000\n" -"X-Generator: Launchpad (build 15745)\n" +"X-Launchpad-Export-Date: 2012-08-17 04:38+0000\n" +"X-Generator: Launchpad (build 15810)\n" #. module: account_analytic_analysis #: field:account.analytic.account,revenue_per_hour:0 msgid "Revenue per Time (real)" -msgstr "" +msgstr "Ricavo orario (reale)" #. module: account_analytic_analysis #: help:account.analytic.account,remaining_ca:0 @@ -38,11 +38,13 @@ msgid "" "The contracts to be renewed because the deadline is passed or the working " "hours are higher than the allocated hours" msgstr "" +"I contratti da rinnovare perchè la scadenza è passata o le ore lavorate sono " +"maggiori delle ore allocate" #. module: account_analytic_analysis #: view:account.analytic.account:0 msgid "Pending contracts to renew with your customer" -msgstr "" +msgstr "Contratti in sospeso da rinnovare con il cliente" #. module: account_analytic_analysis #: help:account.analytic.account,hours_qtt_non_invoiced:0 @@ -50,6 +52,8 @@ msgid "" "Number of time (hours/days) (from journal of type 'general') that can be " "invoiced if you invoice based on analytic account." msgstr "" +"Tempo fatturabile (in ore/giorni, dal giornale di tipo 'generale') se si " +"fattura tramite conto analitico" #. module: account_analytic_analysis #: view:account.analytic.account:0 @@ -59,17 +63,17 @@ msgstr "" #. module: account_analytic_analysis #: view:account.analytic.account:0 msgid "Group By..." -msgstr "" +msgstr "Raggruppa per..." #. module: account_analytic_analysis #: view:account.analytic.account:0 msgid "End Date" -msgstr "" +msgstr "Data fine" #. module: account_analytic_analysis #: view:account.analytic.account:0 msgid "Create Invoice" -msgstr "" +msgstr "Crea Fattura" #. module: account_analytic_analysis #: field:account.analytic.account,last_invoice_date:0 @@ -87,16 +91,18 @@ msgid "" "Number of time you spent on the analytic account (from timesheet). It " "computes quantities on all journal of type 'general'." msgstr "" +"Costi orari da attribuire al conto analitico (da timesheet). Calcola " +"quantità su tutti i sezionali di tipo 'generale'." #. module: account_analytic_analysis #: view:account.analytic.account:0 msgid "Contracts in progress" -msgstr "" +msgstr "Contratti attivi" #. module: account_analytic_analysis #: field:account.analytic.account,is_overdue_quantity:0 msgid "Overdue Quantity" -msgstr "" +msgstr "Quantità Scadute" #. module: account_analytic_analysis #: model:ir.actions.act_window,help:account_analytic_analysis.action_account_analytic_overdue @@ -108,16 +114,22 @@ msgid "" "pending accounts and reopen or close the according to the negotiation with " "the customer." msgstr "" +"Qui troverai i contratti da rinnovare in quanto scaduti o le ore lavorate " +"sono maggiori di quelle allocate. OpenERP imposta automaticamente questi " +"conti analitici in stato sospeso, in modo da notificare un avviso durante la " +"fase di inserimento dei timesheet. I commerciali dovrebbero ricontrollare " +"tutti i contratti sospesi e riaprirli/chiuderli coerentemente con quanto il " +"cliente vuole rinegoziare." #. module: account_analytic_analysis #: field:account.analytic.account,ca_theorical:0 msgid "Theoretical Revenue" -msgstr "Ricavo teorico" +msgstr "Ricavo Teorico" #. module: account_analytic_analysis #: field:account.analytic.account,hours_qtt_non_invoiced:0 msgid "Uninvoiced Time" -msgstr "" +msgstr "Tempo non fatturato" #. module: account_analytic_analysis #: help:account.analytic.account,last_worked_invoiced_date:0 @@ -131,7 +143,7 @@ msgstr "" #. module: account_analytic_analysis #: view:account.analytic.account:0 msgid "To Renew" -msgstr "" +msgstr "Da Rinnovare" #. module: account_analytic_analysis #: field:account.analytic.account,last_worked_date:0 @@ -141,24 +153,25 @@ msgstr "Data dell'ultimo costo/lavoro" #. module: account_analytic_analysis #: field:account.analytic.account,hours_qtt_invoiced:0 msgid "Invoiced Time" -msgstr "" +msgstr "Tempo Fatturato" #. module: account_analytic_analysis #: view:account.analytic.account:0 msgid "" "A contract in OpenERP is an analytic account having a partner set on it." msgstr "" +"Un contratto in OpenERP è un conto analitico associato ad un partner." #. module: account_analytic_analysis #: field:account.analytic.account,remaining_hours:0 msgid "Remaining Time" -msgstr "" +msgstr "Tempo rimanente" #. module: account_analytic_analysis #: model:ir.actions.act_window,name:account_analytic_analysis.action_account_analytic_overdue #: model:ir.ui.menu,name:account_analytic_analysis.menu_action_account_analytic_overdue msgid "Contracts to Renew" -msgstr "" +msgstr "Contratti da Rinnovare" #. module: account_analytic_analysis #: field:account.analytic.account,theorical_margin:0 @@ -168,7 +181,7 @@ msgstr "Margine teorico" #. module: account_analytic_analysis #: view:account.analytic.account:0 msgid " +1 Month" -msgstr "" +msgstr " +1 Mese" #. module: account_analytic_analysis #: help:account.analytic.account,ca_theorical:0 @@ -184,7 +197,7 @@ msgstr "" #. module: account_analytic_analysis #: view:account.analytic.account:0 msgid "Pending" -msgstr "" +msgstr "In sospeso" #. module: account_analytic_analysis #: field:account.analytic.account,ca_to_invoice:0 @@ -199,7 +212,7 @@ msgstr "Calcolato utilizzando la formula: importo fatturato - totale costi" #. module: account_analytic_analysis #: view:account.analytic.account:0 msgid "Parent" -msgstr "" +msgstr "Mastro" #. module: account_analytic_analysis #: field:account.analytic.account,user_ids:0 @@ -231,7 +244,7 @@ msgstr "Data dell'ultimo costo fatturato" #. module: account_analytic_analysis #: view:account.analytic.account:0 msgid "Contract" -msgstr "" +msgstr "Contratto" #. module: account_analytic_analysis #: field:account.analytic.account,real_margin_rate:0 @@ -266,14 +279,14 @@ msgstr "Reddito rimanente" #. module: account_analytic_analysis #: help:account.analytic.account,remaining_hours:0 msgid "Computed using the formula: Maximum Time - Total Time" -msgstr "" +msgstr "Calcolato usando la formula: Tempo Massimo - Tempo Totale" #. module: account_analytic_analysis #: help:account.analytic.account,hours_qtt_invoiced:0 msgid "" "Number of time (hours/days) that can be invoiced plus those that already " "have been invoiced." -msgstr "" +msgstr "Tempo (ore/giorni) fatturabile più tempo già fatturato." #. module: account_analytic_analysis #: help:account.analytic.account,ca_to_invoice:0 @@ -287,7 +300,7 @@ msgstr "" #. module: account_analytic_analysis #: help:account.analytic.account,revenue_per_hour:0 msgid "Computed using the formula: Invoiced Amount / Total Time" -msgstr "" +msgstr "Calcolato usando la formula: Fatturato / Tempo Totale" #. module: account_analytic_analysis #: field:account.analytic.account,total_cost:0 @@ -312,12 +325,12 @@ msgstr "Contabilità Analitica" #: model:ir.actions.act_window,name:account_analytic_analysis.action_account_analytic_overdue_all #: model:ir.ui.menu,name:account_analytic_analysis.menu_action_account_analytic_overdue_all msgid "Contracts" -msgstr "" +msgstr "Contratti" #. module: account_analytic_analysis #: view:account.analytic.account:0 msgid "Manager" -msgstr "" +msgstr "Manager" #. module: account_analytic_analysis #: model:ir.actions.act_window,name:account_analytic_analysis.action_hr_tree_invoiced_all @@ -328,12 +341,12 @@ msgstr "Voci da Fatturare" #. module: account_analytic_analysis #: help:account.analytic.account,last_invoice_date:0 msgid "If invoice from the costs, this is the date of the latest invoiced." -msgstr "" +msgstr "Se si fattura dai costi, questa è la data dell'ultima fattura." #. module: account_analytic_analysis #: view:account.analytic.account:0 msgid "Associated Partner" -msgstr "" +msgstr "Partner Associato" #. module: account_analytic_analysis #: view:account.analytic.account:0 @@ -343,7 +356,7 @@ msgstr "" #. module: account_analytic_analysis #: view:account.analytic.account:0 msgid "Contracts that are not assigned to an account manager." -msgstr "" +msgstr "Contratti non assegnati ad un responsabile del cliente" #. module: account_analytic_analysis #: field:account.analytic.account,hours_quantity:0 diff --git a/addons/crm/crm_lead_view.xml b/addons/crm/crm_lead_view.xml index e56215f3332..f2c923844ec 100644 --- a/addons/crm/crm_lead_view.xml +++ b/addons/crm/crm_lead_view.xml @@ -288,6 +288,7 @@ <field name="arch" type="xml"> <kanban default_group_by="stage_id"> <field name="state" groups="base.group_no_one"/> + <field name="stage_id"/> <field name="color"/> <field name="priority"/> <field name="planned_revenue" sum="Expected Revenues"/> diff --git a/addons/document/report/document_report.py b/addons/document/report/document_report.py index 7b09f131178..92e33c13746 100644 --- a/addons/document/report/document_report.py +++ b/addons/document/report/document_report.py @@ -32,7 +32,7 @@ class report_document_user(osv.osv): 'month':fields.selection([('01','January'), ('02','February'), ('03','March'), ('04','April'), ('05','May'), ('06','June'), ('07','July'), ('08','August'), ('09','September'), ('10','October'), ('11','November'), ('12','December')],'Month',readonly=True), 'user_id':fields.integer('Owner', readonly=True), - 'user':fields.char('User',size=64,readonly=True), + 'user': fields.related('user_id', 'name', type='char', size=64, readonly=True), 'directory': fields.char('Directory',size=64,readonly=True), 'datas_fname': fields.char('File Name',size=64,readonly=True), 'create_date': fields.datetime('Date Created', readonly=True), @@ -50,7 +50,6 @@ class report_document_user(osv.osv): to_char(f.create_date, 'YYYY') as name, to_char(f.create_date, 'MM') as month, f.user_id as user_id, - u.name as user, count(*) as nbr, d.name as directory, f.datas_fname as datas_fname, @@ -60,8 +59,7 @@ class report_document_user(osv.osv): f.write_date as change_date FROM ir_attachment f left join document_directory d on (f.parent_id=d.id and d.name<>'') - inner join res_users u on (f.user_id=u.id) - group by to_char(f.create_date, 'YYYY'), to_char(f.create_date, 'MM'),d.name,f.parent_id,d.type,f.create_date,f.user_id,f.file_size,u.name,d.type,f.write_date,f.datas_fname + group by to_char(f.create_date, 'YYYY'), to_char(f.create_date, 'MM'),d.name,f.parent_id,d.type,f.create_date,f.user_id,f.file_size,d.type,f.write_date,f.datas_fname ) """) diff --git a/addons/hr_recruitment/__openerp__.py b/addons/hr_recruitment/__openerp__.py index 0de2eb5c94e..1a6abbef976 100644 --- a/addons/hr_recruitment/__openerp__.py +++ b/addons/hr_recruitment/__openerp__.py @@ -19,12 +19,13 @@ # along with this program. If not, see <http://www.gnu.org/licenses/>. # ############################################################################## + { 'name': 'Recruitment Process', 'version': '1.0', 'category': 'Human Resources', - "sequence": 24, - "summary": "Recruitment Process, Job Descriptions", + 'sequence': 24, + 'summary': 'Recruitment Process, Job Descriptions', 'description': """ Manages job positions and the recruitment process. ================================================== @@ -46,7 +47,7 @@ system to store and search in your CV base. 'base_calendar', 'fetchmail', ], - 'update_xml': [ + 'data': [ 'wizard/hr_recruitment_employee_hired.xml', 'wizard/hr_recruitment_create_partner_job_view.xml', 'hr_recruitment_view.xml', @@ -57,19 +58,18 @@ system to store and search in your CV base. 'board_hr_recruitment_statistical_view.xml', 'hr_recruitment_installer_view.xml', 'res_config_view.xml', - ], - 'init_xml': [ 'hr_recruitment_data.xml' ], - 'demo_xml': [ + 'demo': [ 'hr_recruitment_demo.yml', ], - 'test':[ - 'test/recruitment_process.yml', - ], + 'js': ['static/src/js/hr_recruitment.js'], + 'test': [ + 'test/recruitment_process.yml', + ], 'installable': True, 'auto_install': False, - 'certificate' : '001073437025460275621', + 'certificate': '001073437025460275621', 'application': True, } diff --git a/addons/hr_recruitment/hr_recruitment.py b/addons/hr_recruitment/hr_recruitment.py index 0ace2574d65..81a7ae6129e 100644 --- a/addons/hr_recruitment/hr_recruitment.py +++ b/addons/hr_recruitment/hr_recruitment.py @@ -198,6 +198,7 @@ class hr_applicant(base_stage, osv.Model): When the case is over, the state is set to \'Done\'.\ If the case needs to be reviewed then the state is \ set to \'Pending\'.'), + 'categ_ids': fields.many2many('hr.applicant_category', string='Categories'), 'company_id': fields.many2one('res.company', 'Company'), 'user_id': fields.many2one('res.users', 'Responsible'), # Applicant Columns @@ -350,7 +351,7 @@ class hr_applicant(base_stage, osv.Model): if isinstance(ids, (str, int, long)): ids = [ids] if update_vals is None: vals = {} - + update_vals.update({ 'description': msg.get('body'), 'email_from': msg.get('from'), @@ -510,7 +511,7 @@ class hr_job(osv.osv): _inherits = {'mail.alias': 'alias_id'} _columns = { 'survey_id': fields.many2one('survey', 'Interview Form', help="Choose an interview form for this job position and you will be able to print/answer this interview from all applicants who apply for this job"), - 'alias_id': fields.many2one('mail.alias', 'Alias', ondelete="cascade", required=True, + 'alias_id': fields.many2one('mail.alias', 'Alias', ondelete="cascade", required=True, help="Email alias for this job position. New emails will automatically " "create new applicants for this job position."), } @@ -521,13 +522,13 @@ class hr_job(osv.osv): def _auto_init(self, cr, context=None): """Installation hook to create aliases for all jobs and avoid constraint errors.""" - - # disable the unique alias_id not null constraint, to avoid spurious warning during + + # disable the unique alias_id not null constraint, to avoid spurious warning during # super.auto_init. We'll reinstall it afterwards. self._columns['alias_id'].required = False super(hr_job,self)._auto_init(cr, context=context) - + registry = RegistryManager.get(cr.dbname) mail_alias = registry.get('mail.alias') hr_jobs = registry.get('hr.job') @@ -555,7 +556,7 @@ class hr_job(osv.osv): mail_alias = self.pool.get('mail.alias') if not vals.get('alias_id'): vals.pop('alias_name', None) # prevent errors during copy() - alias_id = mail_alias.create_unique_alias(cr, uid, + alias_id = mail_alias.create_unique_alias(cr, uid, # Using '+' allows using subaddressing for those who don't # have a catchall domain setup. {'alias_name': 'jobs+'+vals['name']}, @@ -573,7 +574,7 @@ class hr_job(osv.osv): res = super(hr_job, self).unlink(cr, uid, ids, context=context) mail_alias.unlink(cr, uid, alias_ids, context=context) return res - + def action_print_survey(self, cr, uid, ids, context=None): if context is None: context = {} @@ -591,4 +592,12 @@ class hr_job(osv.osv): 'nodestroy':True, } +class applicant_category(osv.osv): + """ Category of applicant """ + _name = "hr.applicant_category" + _description = "Category of applicant" + _columns = { + 'name': fields.char('Name', size=64, required=True, translate=True), + } + # vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/hr_recruitment/hr_recruitment_view.xml b/addons/hr_recruitment/hr_recruitment_view.xml index 0e74473f853..d1866f124af 100644 --- a/addons/hr_recruitment/hr_recruitment_view.xml +++ b/addons/hr_recruitment/hr_recruitment_view.xml @@ -176,6 +176,9 @@ </div> </group> </group> + <group> + <field name="categ_ids" widget="many2many_tags"/> + </group> <separator string="Application Summary"/> <field name="description" placeholder="Feedback of interviews..."/> </sheet> @@ -254,6 +257,7 @@ <field name="model">hr.applicant</field> <field name="arch" type="xml"> <kanban default_group_by="stage_id"> + <field name="stage_id"/> <field name="color"/> <field name="priority"/> <field name="survey"/> @@ -264,6 +268,7 @@ <field name="job_id"/> <field name="title_action"/> <field name="department_id"/> + <field name="categ_ids"/> <templates> <t t-name="kanban-tooltip"> <ul class="oe_kanban_tooltip"> @@ -308,6 +313,13 @@ <img t-att-src="kanban_image('res.users', 'image_small', record.user_id.raw_value)" t-att-title="record.user_id.value" width="24" height="24" class="oe_kanban_avatar"/> </div> + <div class="oe_kanban_footer_left" style="margin-top:5px;"> + <div class="oe_left oe_tags"> + <t t-foreach="record.categ_ids.raw_value" t-as="categ_id"> + <span class="oe_tag" t-att-data-categ_id="categ_id"></span> + </t> + </div> + </div> </div> <div class="oe_clear"></div> </div> diff --git a/addons/hr_recruitment/security/ir.model.access.csv b/addons/hr_recruitment/security/ir.model.access.csv index 8b029c9324a..086e63e542b 100644 --- a/addons/hr_recruitment/security/ir.model.access.csv +++ b/addons/hr_recruitment/security/ir.model.access.csv @@ -8,3 +8,5 @@ access_survey_hr_user,survey.hr.user,survey.model_survey,base.group_hr_user,1,1, access_crm_meeting_hruser,crm.meeting.hruser,base_calendar.model_crm_meeting,base.group_hr_user,1,1,1,1
access_hr_recruitment_source_hr_officer,hr.recruitment.source,model_hr_recruitment_source,base.group_hr_user,1,1,1,1
access_hr_recruitment_source_all,hr.recruitment.source,model_hr_recruitment_source,,1,0,0,0
+access_hr_applicant_category,hr.applicant_category,model_hr_applicant_category,,1,0,0,0
+access_hr_applicant_category_manager,hr.applicant_category,model_hr_applicant_category,base.group_hr_manager,1,1,1,1
diff --git a/addons/hr_recruitment/static/src/js/hr_recruitment.js b/addons/hr_recruitment/static/src/js/hr_recruitment.js new file mode 100644 index 00000000000..5a2d6bd92b4 --- /dev/null +++ b/addons/hr_recruitment/static/src/js/hr_recruitment.js @@ -0,0 +1,35 @@ +openerp.hr_recruitment = function(openerp) { + openerp.web_kanban.KanbanView.include({ + applicant_display_categ_names: function() { + /* + * Set proper names to applicant categories. + * In kanban views, many2many fields only return a list of ids. + * Therefore, we have to fetch the matching data by ourselves. + */ + var self = this; + var categ_ids = []; + + // Collect categories ids + self.$element.find('span[data-categ_id]').each(function() { + categ_ids.push($(this).data('categ_id')); + }); + + // Find their matching names + var dataset = new openerp.web.DataSetSearch(self, 'hr.applicant_category', self.session.context, [['id', 'in', _.uniq(categ_ids)]]); + dataset.read_slice(['id', 'name']).then(function(result) { + _.each(result, function(v, k) { + // Set the proper value in the DOM and display the element + self.$element.find('span[data-categ_id=' + v.id + ']').text(v.name); + }); + }); + }, + on_groups_started: function() { + var self = this; + self._super.apply(self, arguments); + + if (self.dataset.model === 'hr.applicant') { + self.applicant_display_categ_names(); + } + } + }); +}; diff --git a/addons/portal/__openerp__.py b/addons/portal/__openerp__.py index 6669efbcf77..283e007a598 100644 --- a/addons/portal/__openerp__.py +++ b/addons/portal/__openerp__.py @@ -20,10 +20,14 @@ ############################################################################## { - 'name' : "Portal", - 'version' : "1.0", - 'depends' : ["base", "share", "auth_anonymous"], - 'author' : "OpenERP SA", + 'name' : 'Portal', + 'version' : '1.0', + 'depends' : [ + 'base', + 'share', + 'auth_anonymous' + ], + 'author' : 'OpenERP SA', 'category': 'Portal', 'description': """ Customize access to your OpenERP database to external users by creating portals. diff --git a/addons/portal_event/portal_event_view.xml b/addons/portal_event/portal_event_view.xml index 8b1f21bbef0..1e046bc9e7f 100644..100755 --- a/addons/portal_event/portal_event_view.xml +++ b/addons/portal_event/portal_event_view.xml @@ -2,8 +2,22 @@ <openerp> <data> + <!-- + Override the original action to set another help field and/or + another context field, more suited for portal members + --> + <record model="ir.actions.act_window" id="action_event_view"> + <field name="name">Events</field> + <field name="type">ir.actions.act_window</field> + <field name="res_model">event.event</field> + <field name="view_mode">kanban,calendar,tree,form,graph</field> + <field name="context">{"search_default_upcoming":1}</field> + <field name="search_view_id" ref="event.view_event_search"/> + <field name="help">No public events.</field> + </record> + <menuitem name="Events" id="portal_company_events" parent="portal.portal_company" - action="event.action_event_view" sequence="40"/> + action="action_event_view" sequence="40"/> </data> </openerp> diff --git a/addons/portal_sale/portal_sale_view.xml b/addons/portal_sale/portal_sale_view.xml index 2db0a7a4d96..5786fbc52ad 100644 --- a/addons/portal_sale/portal_sale_view.xml +++ b/addons/portal_sale/portal_sale_view.xml @@ -2,16 +2,39 @@ <openerp> <data> + <!-- + Override the original action to set another help field and/or + another context field, more suited for portal members + --> + <record id="action_order_tree5" model="ir.actions.act_window"> + <field name="name">Quotations</field> + <field name="type">ir.actions.act_window</field> + <field name="res_model">sale.order</field> + <field name="view_mode">tree,form,calendar,graph</field> + <field name="context">{"search_default_draft":1}</field> + <field name="search_view_id" ref="sale.view_sales_order_filter"/> + <field name="help">You dont have any quotation.</field> + </record> + + <record id="action_order_form" model="ir.actions.act_window"> + <field name="name">Sales Orders</field> + <field name="type">ir.actions.act_window</field> + <field name="res_model">sale.order</field> + <field name="view_mode">tree,form,calendar,graph</field> + <field name="search_view_id" ref="sale.view_sales_order_filter"/> + <field name="context">{"search_default_sales":1}</field> + <field name="help">You dont have any sale order.</field> + </record> + <record id="action_picking_tree" model="ir.actions.act_window"> <field name="name">Delivery Orders</field> <field name="res_model">stock.picking.out</field> <field name="type">ir.actions.act_window</field> - <field name="view_type">form</field> <field name="view_mode">tree,form</field> <field name="domain">[('type','=','out')]</field> <field name="context">{'default_type': 'out', 'contact_display': 'partner_address'}</field> <field name="search_view_id" ref="stock.view_picking_out_search"/> - <field name="help">This is the list of all delivery orders that have to be prepared, according to your different orders.</field> + <field name="help">You dont have any delivery order.</field> </record> <record id="product_normal_action" model="ir.actions.act_window"> @@ -22,21 +45,42 @@ <field name="view_mode">kanban,tree,form</field> <field name="view_id" ref="product.product_kanban_view"/> <field name="search_view_id" ref="product.product_search_form_view"/> + <field name="help">No public products.</field> + </record> + + <record id="action_invoice_tree1" model="ir.actions.act_window"> + <field name="name">Customer Invoices</field> + <field name="res_model">account.invoice</field> + <field name="view_mode">tree,form,calendar,graph</field> + <field name="domain">[('type','=','out_invoice')]</field> + <field name="context">{'default_type':'out_invoice', 'type':'out_invoice', 'journal_type': 'sale'}</field> + <field name="search_view_id" ref="account.view_account_invoice_filter"/> + <field name="help">You dont have any invoice.</field> + </record> + + <record id="action_vendor_receipt" model="ir.actions.act_window"> + <field name="name">Customer Payment</field> + <field name="res_model">account.voucher</field> + <field name="domain">[('journal_id.type', 'in', ['bank', 'cash']), ('type','=','receipt')]</field> + <field name="context">{'type':'receipt'}</field> + <field name="search_view_id" ref="account_voucher.view_voucher_filter_customer_pay"/> + <field name="target">current</field> + <field name="help">You dont have any payment.</field> </record> <menuitem name="Quotations" id="portal_quotations" parent="portal.portal_orders" - action="sale.action_order_tree5" sequence="10"/> + action="action_order_tree5" sequence="10"/> <menuitem name="Sales Orders" id="portal_sales_orders" parent="portal.portal_orders" - action="sale.action_order_form" sequence="20"/> + action="action_order_form" sequence="20"/> <menuitem name="Delivery Orders" id="portal_delivery" parent="portal.portal_orders" action="action_picking_tree" sequence="30"/> <menuitem name="Products" id="portal_products" parent="portal.portal_orders" action="product_normal_action" sequence="40"/> <menuitem name="Invoice" id="portal_invoices" parent="portal.portal_invoices_payements" - action="account.action_invoice_tree1" sequence="10"/> + action="action_invoice_tree1" sequence="10"/> <menuitem name="Refund/Payments" id="portal_payments" parent="portal.portal_invoices_payements" - action="account_voucher.action_vendor_receipt" sequence="20"/> + action="action_vendor_receipt" sequence="20"/> </data> </openerp> diff --git a/addons/project/__openerp__.py b/addons/project/__openerp__.py index aa523b438c7..a65497c311e 100644 --- a/addons/project/__openerp__.py +++ b/addons/project/__openerp__.py @@ -19,18 +19,33 @@ # ############################################################################## - { - "name": "Project Management", - "version": "1.1", - "author": "OpenERP SA", - "website": "http://www.openerp.com", - "category": "Project Management", - "sequence": 8, - "summary": "Projects, Tasks", - "images": ["images/gantt.png", "images/project_dashboard.jpeg","images/project_task_tree.jpeg","images/project_task.jpeg","images/project.jpeg","images/task_analysis.jpeg"], - "depends": ["base_setup", "base_status", "product", "analytic", "board", "mail", "resource","web_kanban"], - "description": """ + 'name': 'Project Management', + 'version': '1.1', + 'author': 'OpenERP SA', + 'website': 'http://www.openerp.com', + 'category': 'Project Management', + 'sequence': 8, + 'summary': 'Projects, Tasks', + 'images': [ + 'images/gantt.png', + 'images/project_dashboard.jpeg', + 'images/project_task_tree.jpeg', + 'images/project_task.jpeg', + 'images/project.jpeg', + 'images/task_analysis.jpeg' + ], + 'depends': [ + 'base_setup', + 'base_status', + 'product', + 'analytic', + 'board', + 'mail', + 'resource', + 'web_kanban' + ], + 'description': """ Project Management module tracks multi-level projects, tasks, work done on tasks. ================================================================================= @@ -41,22 +56,21 @@ Dashboard for project management that includes: * List of My Open Tasks * Graph of My Remaining Hours by Project """, - "init_xml": [], - "update_xml": [ - "security/project_security.xml", - "wizard/project_task_delegate_view.xml", - "wizard/project_task_reevaluate_view.xml", - "security/ir.model.access.csv", - "project_data.xml", - "project_view.xml", - "process/task_process.xml", - "res_partner_view.xml", - "report/project_report_view.xml", + 'data': [ + 'security/project_security.xml', + 'wizard/project_task_delegate_view.xml', + 'wizard/project_task_reevaluate_view.xml', + 'security/ir.model.access.csv', + 'project_data.xml', + 'project_view.xml', + 'process/task_process.xml', + 'res_partner_view.xml', + 'report/project_report_view.xml', 'report/project_cumulative.xml', - "board_project_view.xml", + 'board_project_view.xml', 'res_config_view.xml', ], - 'demo_xml': [ + 'demo': [ 'project_demo.xml', ], 'test':[ diff --git a/addons/project/project_view.xml b/addons/project/project_view.xml index eb17d446816..6dbcaebd045 100644 --- a/addons/project/project_view.xml +++ b/addons/project/project_view.xml @@ -229,7 +229,7 @@ <field name="alias_domain"/> <templates> <t t-name="kanban-box"> - <div t-attf-class="oe_kanban_color_#{kanban_getcolor(record.color.raw_value)} oe_kanban_card oe_kanban_project oe_kanban_auto_height oe_kanban_global_click"> + <div t-attf-class="oe_kanban_color_#{kanban_getcolor(record.color.raw_value)} oe_kanban_card oe_kanban_project oe_kanban_global_click"> <div class="oe_dropdown_toggle oe_dropdown_kanban"> <span class="oe_e">í</span> <ul class="oe_dropdown_menu"> diff --git a/addons/project/security/ir.model.access.csv b/addons/project/security/ir.model.access.csv index 3f79cfee3de..d9f6cb9d2f6 100644 --- a/addons/project/security/ir.model.access.csv +++ b/addons/project/security/ir.model.access.csv @@ -18,3 +18,5 @@ access_account_analytic_line_project,account.analytic.line project,analytic.mode access_project_task_history,project.task.history project,project.model_project_task_history,project.group_project_user,1,1,1,0
access_project_task_history_cumulative,project.task.history project,project.model_project_task_history_cumulative,project.group_project_manager,1,0,0,0
access_resource_calendar,project.resource_calendar manager,resource.model_resource_calendar,project.group_project_manager,1,0,0,0
+access_project_category,project.project_category,model_project_category,,1,0,0,0
+access_project_category_manager,project.project_category,model_project_category,project.group_project_manager,1,1,1,1
diff --git a/addons/project_issue/project_issue_view.xml b/addons/project_issue/project_issue_view.xml index bb15f8c2f94..b37cf40014e 100644 --- a/addons/project_issue/project_issue_view.xml +++ b/addons/project_issue/project_issue_view.xml @@ -239,6 +239,7 @@ <field name="model">project.issue</field> <field name="arch" type="xml"> <kanban default_group_by="stage_id"> + <field name="stage_id"/> <field name="color"/> <field name="priority"/> <field name="user_email"/> |
