summaryrefslogtreecommitdiff
path: root/addons/hr/static
diff options
context:
space:
mode:
authorVidhin Mehta <vme@tinyerp.com>2013-08-23 10:36:02 +0530
committerVidhin Mehta <vme@tinyerp.com>2013-08-23 10:36:02 +0530
commit75ddd5ccbec73c4a671b6a74efaa3d41dc2ea2db (patch)
tree50ed3620df15e8533760f5d47e754a1d39c1e856 /addons/hr/static
parent42f27a15275effd9c43dfe99e32c395ca6b3fd8a (diff)
parenta7f4b6aaa0359d12046e81183417c24f093cd7c3 (diff)
[MERGE]Trunk.
bzr revid: vme@tinyerp.com-20130823050602-33bqv07e7g8dhv7x
Diffstat (limited to 'addons/hr/static')
-rw-r--r--addons/hr/static/description/crm_game_01.pngbin0 -> 17867 bytes
-rw-r--r--addons/hr/static/description/crm_game_02.pngbin0 -> 12887 bytes
-rw-r--r--addons/hr/static/description/crm_game_03.pngbin0 -> 5800 bytes
-rw-r--r--addons/hr/static/description/hr_appraisal.pngbin0 -> 43303 bytes
-rw-r--r--addons/hr/static/description/hr_employee.pngbin0 -> 48997 bytes
-rw-r--r--addons/hr/static/description/hr_expense.pngbin0 -> 45187 bytes
-rw-r--r--addons/hr/static/description/hr_illu_01.pngbin0 -> 24366 bytes
-rw-r--r--addons/hr/static/description/hr_illu_02.pngbin0 -> 22544 bytes
-rw-r--r--addons/hr/static/description/hr_kanban.pngbin0 -> 113589 bytes
-rw-r--r--addons/hr/static/description/hr_recruitment.pngbin0 -> 92899 bytes
-rw-r--r--addons/hr/static/description/hr_social.pngbin0 -> 86616 bytes
-rw-r--r--addons/hr/static/description/hr_timesheet.pngbin0 -> 61578 bytes
-rw-r--r--addons/hr/static/description/icon.png (renamed from addons/hr/static/src/img/icon.png)bin8676 -> 8676 bytes
-rw-r--r--addons/hr/static/description/index.html209
-rw-r--r--addons/hr/static/src/css/hr.css5
-rw-r--r--addons/hr/static/src/js/suggestions.js78
-rw-r--r--addons/hr/static/src/xml/suggestions.xml36
17 files changed, 328 insertions, 0 deletions
diff --git a/addons/hr/static/description/crm_game_01.png b/addons/hr/static/description/crm_game_01.png
new file mode 100644
index 00000000000..a3cd109c2de
--- /dev/null
+++ b/addons/hr/static/description/crm_game_01.png
Binary files differ
diff --git a/addons/hr/static/description/crm_game_02.png b/addons/hr/static/description/crm_game_02.png
new file mode 100644
index 00000000000..1a747e1ffe8
--- /dev/null
+++ b/addons/hr/static/description/crm_game_02.png
Binary files differ
diff --git a/addons/hr/static/description/crm_game_03.png b/addons/hr/static/description/crm_game_03.png
new file mode 100644
index 00000000000..2fd14886179
--- /dev/null
+++ b/addons/hr/static/description/crm_game_03.png
Binary files differ
diff --git a/addons/hr/static/description/hr_appraisal.png b/addons/hr/static/description/hr_appraisal.png
new file mode 100644
index 00000000000..f0052bfda61
--- /dev/null
+++ b/addons/hr/static/description/hr_appraisal.png
Binary files differ
diff --git a/addons/hr/static/description/hr_employee.png b/addons/hr/static/description/hr_employee.png
new file mode 100644
index 00000000000..eff8730863f
--- /dev/null
+++ b/addons/hr/static/description/hr_employee.png
Binary files differ
diff --git a/addons/hr/static/description/hr_expense.png b/addons/hr/static/description/hr_expense.png
new file mode 100644
index 00000000000..7fbc35711e1
--- /dev/null
+++ b/addons/hr/static/description/hr_expense.png
Binary files differ
diff --git a/addons/hr/static/description/hr_illu_01.png b/addons/hr/static/description/hr_illu_01.png
new file mode 100644
index 00000000000..ad65bb9b407
--- /dev/null
+++ b/addons/hr/static/description/hr_illu_01.png
Binary files differ
diff --git a/addons/hr/static/description/hr_illu_02.png b/addons/hr/static/description/hr_illu_02.png
new file mode 100644
index 00000000000..b5416926793
--- /dev/null
+++ b/addons/hr/static/description/hr_illu_02.png
Binary files differ
diff --git a/addons/hr/static/description/hr_kanban.png b/addons/hr/static/description/hr_kanban.png
new file mode 100644
index 00000000000..c0782d6adca
--- /dev/null
+++ b/addons/hr/static/description/hr_kanban.png
Binary files differ
diff --git a/addons/hr/static/description/hr_recruitment.png b/addons/hr/static/description/hr_recruitment.png
new file mode 100644
index 00000000000..1951b54a6f2
--- /dev/null
+++ b/addons/hr/static/description/hr_recruitment.png
Binary files differ
diff --git a/addons/hr/static/description/hr_social.png b/addons/hr/static/description/hr_social.png
new file mode 100644
index 00000000000..215d4e3ba70
--- /dev/null
+++ b/addons/hr/static/description/hr_social.png
Binary files differ
diff --git a/addons/hr/static/description/hr_timesheet.png b/addons/hr/static/description/hr_timesheet.png
new file mode 100644
index 00000000000..d06c3a924ec
--- /dev/null
+++ b/addons/hr/static/description/hr_timesheet.png
Binary files differ
diff --git a/addons/hr/static/src/img/icon.png b/addons/hr/static/description/icon.png
index 742f3e53e67..742f3e53e67 100644
--- a/addons/hr/static/src/img/icon.png
+++ b/addons/hr/static/description/icon.png
Binary files differ
diff --git a/addons/hr/static/description/index.html b/addons/hr/static/description/index.html
new file mode 100644
index 00000000000..f97cb462fe3
--- /dev/null
+++ b/addons/hr/static/description/index.html
@@ -0,0 +1,209 @@
+<section class="oe_container">
+ <div class="oe_row oe_spaced">
+ <h2 class="oe_slogan">Human Resources</h2>
+ <h3 class="oe_slogan">Manage the most important asset in your company: People</h3>
+ <div class="oe_span6">
+ <div class="oe_demo oe_picture oe_screenshot">
+ <a href="https://www.openerp.com/saas_master/demo?lang=en_US&module=hr">
+ <img src="hr_kanban.png">
+ </a>
+ <div class="oe_demo_footer oe_centeralign">Online Demo</div>
+ </div>
+ </div>
+ <div class="oe_span6">
+ <p class='oe_mt32'>
+Get all your HR operations managed easily: knowledge sharing, recruitments, appraisals, timesheets, contracts, attendances, payroll, etc.
+ </p><p>
+ Each need is provided by a specific app that you activate on demand.
+ </p>
+ <div class="oe_centeralign oe_websiteonly">
+ <a href="http://www.openerp.com/start?app=hr" class="oe_button oe_big oe_tacky">Start your <span class="oe_emph">free</span> trial</a>
+ </div>
+ </div>
+ </div>
+</section>
+
+<section class="oe_container oe_dark">
+ <div class="oe_row">
+ <h2 class="oe_slogan">Manage Your Employees</h2>
+ <div class="oe_span6">
+ <p class='oe_mt32'>
+Oversee all important information in your company address book. Some information are restricted to HR managers, others are public to easily find colleagues.
+ </p><p>
+Record employee contracts and get alerts when they have to be renewed.
+ </p>
+ </div>
+ <div class="oe_span6">
+ <img class="oe_picture oe_screenshot" src="hr_employee.png">
+ </div>
+ </div>
+</section>
+
+<section class="oe_container">
+ <div class="oe_row">
+ <h2 class="oe_slogan">Streamline Your Recruitment Process</h2>
+ <h3 class="oe_slogan">Index resumes, track applicants, search profiles</h3>
+ <div class="oe_span6">
+ <img class="oe_picture oe_screenshot" src="hr_recruitment.png">
+ </div>
+ <div class="oe_span6">
+ <p class='oe_mt32'>
+Post job offers and keep track of each application received. Follow applicants in your recruitment process with the smart kanban view.
+ </p><p>
+Save time by automating some communications with email templates. Resumes are indexed automatically, allowing you to easily find for specific profiles.
+ </p>
+ </div>
+ </div>
+</section>
+
+<section class="oe_container oe_dark">
+ <div class="oe_row">
+ <h2 class="oe_slogan">Enterprise Social Network</h2>
+ <h3 class="oe_slogan">Collaborate across departments, geographies and business applications</h3>
+ <div class="oe_span6">
+ <p class='oe_mt32'>
+ Break down information silos. Share knowledge and best practices
+ amongst all employees. Follow specific people or documents and join
+ groups of interests to share expertise and documents.
+ </p><p>
+ Interact with your collegues in real time with live chat.
+ </p>
+ </div>
+ <div class="oe_span6">
+ <img class="oe_picture oe_screenshot" src="hr_social.png">
+ </div>
+ </div>
+</section>
+
+<section class="oe_container">
+ <div class="oe_row">
+ <h2 class="oe_slogan">Track time and attendances</h2>
+ <h3 class="oe_slogan">Weekly or monthly timesheets with optional attendance tracking</h3>
+ <div class="oe_span6">
+ <img src="hr_timesheet.png" class="oe_picture oe_screenshot">
+ </div>
+ <div class="oe_span6">
+ <p class='oe_mt32'>
+Keep track of the time spent by project, client or task. It's easy to record timesheets or check attendances for each employee. Get your analytic accounting posted automatically based on time spent on your projects.
+ </p>
+ </div>
+ </div>
+</section>
+
+<section class="oe_container oe_dark">
+ <div class="oe_row">
+ <h2 class="oe_slogan">Leaves Management</h2>
+ <h3 class="oe_slogan">Manage holidays, legal leaves and sick days</h3>
+ <div class="oe_span6">
+ <p class='oe_mt32'>
+Keep track of the vacation days accrued by each employee. Employees enter their requests (paid holidays, sick leave, etc), for managers to approve and validate. It's all done in just a few clicks. The agenda of each employee is updated accordingly.
+ </p>
+ </div>
+ <div class="oe_span6">
+ <div class="oe_bg_img oe_centered">
+ <img class="oe_picture" src="hr_illu_01.png">
+ </div>
+ </div>
+ </div>
+</section>
+
+<section class="oe_container">
+ <div class="oe_row">
+ <h2 class="oe_slogan">Keep Track of Employee Expenses</h2>
+ <div class="oe_span6">
+ <img class="oe_picture oe_screenshot" src="hr_expense.png">
+ </div>
+ <div class="oe_span6">
+ <p class='oe_mt32'>
+Get rid of the paper work and follow employee's expenses directly in OpenERP. Don't loose time or money by controlling the full flow: expense validation, reimbursement of employees, posting in the accounting and re-invoicing to customers.
+ </p>
+ </div>
+ </div>
+</section>
+
+<section class="oe_container oe_dark">
+ <div class="oe_row">
+ <h2 class="oe_slogan">Follow Periodic Appraisals</h2>
+ <div class="oe_span6">
+ <p class='oe_mt32'>
+Set-up appraisals plans and/or surveys for your employees and watch their evolution. Define steps for interviews and OpenERP will notify managers or subordinates automatically to prepare appraisals. Keep track of the progress of your staff periodically.
+ </p>
+ </div>
+ <div class="oe_span6">
+ <img class="oe_picture oe_screenshot" src="hr_appraisal.png">
+ </div>
+ </div>
+</section>
+
+<section class="oe_container">
+ <div class="oe_row">
+ <h2 class="oe_slogan">Boost Engagement With Gamification</h2>
+ <h3 class="oe_slogan">Define clear objective and provide real time feedback</h3>
+ <div class="oe_span12">
+ <p>
+Inspire achievement with challenges, goals and rewards. Define clear objectives and provide real time feedback and tangible results. Showcase the top performers to the entire team and publicly recognize a job well done.
+ </p>
+ </div>
+ <div class="oe_span4 oe_centered">
+ <h3>Leaderboards</h3>
+ <div class="oe_row_img oe_centered">
+ <img class="oe_picture" src="crm_game_01.png">
+ </div>
+ <p>
+ Promote leaders and competition amongst sales team with performance ratios.
+ </p>
+ </div>
+ <div class="oe_span4 oe_centered">
+ <h3>Personnal Objectives</h3>
+ <div class="oe_row_img">
+ <img class="oe_picture" src="crm_game_02.png">
+ </div>
+ <p>
+ Assign clear goals to users to align them with the company objectives.
+ </p>
+ </div>
+ <div class="oe_span4 oe_centered">
+ <h3>Team Targets</h3>
+ <div class="oe_row_img oe_centered">
+ <img class="oe_picture" src="crm_game_03.png">
+ </div>
+ <p>
+ Compare revenues with forecasts and budgets in real time.
+ </p>
+ </div>
+ </div>
+</section>
+
+<section class="oe_container oe_dark">
+ <div class="oe_row">
+ <div class="oe_span12">
+ <h2 class="oe_slogan">Many companies already enjoy it</h2>
+ <h3 class="oe_slogan">Hear what they have to say !</h3>
+ </div>
+ <div class="oe_span6">
+ <div class="oe_quote">
+ <q>
+ OpenERP helped us to effectively record our working time and invoice
+ our customers while keeping track of our costs.
+ </q>
+ <cite class="oe_cite oe_clearfix oe_ml64">
+ <div class="oe_author">Wolfgang Taferner</div>
+ <div class="oe_job"><a href="http://tapo-it.at/en/" target="_blank">Tapo</a>, Austria.</div>
+ </cite>
+ </div>
+ </div>
+ <div class="oe_span6">
+ <div class="oe_quote">
+ <q>
+ Thanks to OpenERP, we have unified all our front-office and back-office
+ HR applications for 300.000 users in a cost effective way.
+ </q>
+ <cite class="oe_cite oe_clearfix oe_ml64">
+ <div class="oe_author">The Ministry of Education</div>
+ <div class="oe_job"><a href="http://www.dgrhe.min-edu.pt/_main/" target="_blank">Government of Portugal</a></div>
+ </cite>
+ </div>
+ </div>
+ </div>
+</section>
+
diff --git a/addons/hr/static/src/css/hr.css b/addons/hr/static/src/css/hr.css
index 16657394736..951ec4d02e3 100644
--- a/addons/hr/static/src/css/hr.css
+++ b/addons/hr/static/src/css/hr.css
@@ -68,3 +68,8 @@
margin: 2px 0;
padding: 0;
}
+
+.openerp .oe_employee_vignette .oe_followers {
+ width: auto;
+ float: none;
+}
diff --git a/addons/hr/static/src/js/suggestions.js b/addons/hr/static/src/js/suggestions.js
new file mode 100644
index 00000000000..3bc37e71344
--- /dev/null
+++ b/addons/hr/static/src/js/suggestions.js
@@ -0,0 +1,78 @@
+openerp.hr = function(session) {
+ var _t = session.web._t;
+ var QWeb = session.web.qweb;
+
+ var suggestions = session.suggestions;
+ var removed_suggested_employee = session.suggestions.removed_suggested_employee = [];
+
+ suggestions.Employees = session.web.Widget.extend({
+ events: {
+ 'click .oe_suggestion_remove.oe_suggestion_employee': 'stop_employee_suggestion',
+ 'click .oe_suggestion_remove_item.oe_suggestion_employee': 'remove_employee_suggestion',
+ 'click .oe_suggestion_follow': 'follow_employee',
+ },
+
+ init: function () {
+ this._super(this, arguments);
+ this.hr_employee = new session.web.DataSetSearch(this, 'hr.employee');
+ this.res_users = new session.web.DataSetSearch(this, 'res.users');
+ this.employees = [];
+ },
+
+ start: function () {
+ this._super.apply(this, arguments);
+ return this.fetch_suggested_employee();
+ },
+
+ fetch_suggested_employee: function () {
+ var self = this;
+ var employee = self.hr_employee.call('get_suggested_thread', {'removed_suggested_threads': removed_suggested_employee}).then(function (res) {
+ _(res).each(function (result) {
+ result['image']=self.session.url('/web/binary/image', {model: 'hr.employee', field: 'image_small', id: result.id});
+ });
+ self.employees = res;
+ });
+ return $.when(employee).done(this.proxy('display_suggested_employees'));
+ },
+
+ display_suggested_employees: function () {
+ var suggested_employees = this.$('.oe_sidebar_suggestion.oe_suggestion_employee');
+ if (suggested_employees) {
+ suggested_employees.remove();
+ }
+ if (this.employees.length === 0) {
+ return this.$el.empty();
+ }
+ return this.$el.empty().html(QWeb.render('hr.suggestions.employees', {'widget': this}));
+ },
+
+ follow_employee: function (event) {
+ var self = this;
+ var employee_id = parseInt($(event.currentTarget).attr('id'), 10);
+ return this.hr_employee.call('message_subscribe_users', [[employee_id], [this.session.uid], undefined]).then(function(res) {
+ self.fetch_suggested_employee();
+ });
+ },
+
+ remove_employee_suggestion: function (event) {
+ removed_suggested_employee.push($(event.currentTarget).attr('id'));
+ return this.fetch_suggested_employee();
+ },
+
+ stop_employee_suggestion: function (event) {
+ var self = this;
+ return this.res_users.call('stop_showing_employees_suggestions', [this.session.uid]).then(function(res) {
+ self.$(".oe_sidebar_suggestion.oe_suggestion_employee").hide();
+ });
+ }
+ });
+
+ session.mail.WallSidebar.include({
+ start: function () {
+ this._super.apply(this, arguments);
+ var sug_employees = new suggestions.Employees(this);
+ return sug_employees.appendTo(this.$('.oe_suggestions_employees'));
+ },
+ });
+
+};
diff --git a/addons/hr/static/src/xml/suggestions.xml b/addons/hr/static/src/xml/suggestions.xml
new file mode 100644
index 00000000000..f3095627bae
--- /dev/null
+++ b/addons/hr/static/src/xml/suggestions.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<template>
+
+ <!-- Employees placeholder in sidebar -->
+ <t t-extend="mail.wall.sidebar">
+ <t t-jquery=".oe_mail_wall_sidebar" t-operation="append">
+ <div class="oe_suggestions_employees"></div>
+ </t>
+ </t>
+
+ <!-- Suggested employees -->
+ <div t-name="hr.suggestions.employees" class="oe_sidebar_suggestion oe_suggestion_employee">
+ <div class="oe_suggest_title">
+ <a class="oe_suggestion_remove oe_suggestion_employee oe_e">X</a>
+ <h2>Suggested Employees</h2>
+ </div>
+ <div class="oe_suggest_items">
+ <t t-foreach="widget.employees" t-as="result">
+ <div class="oe_suggested_item">
+ <div class="oe_suggested_item_image">
+ <a t-attf-href="#model=hr.employee&amp;id=#{result.id}">
+ <img t-attf-src="{result.image}" t-attf-alt="{result.name}"/>
+ </a>
+ </div>
+ <div class="oe_suggested_item_content">
+ <a class="oe_suggestion_item_name" t-attf-href="#model=hr.employee&amp;id=#{result.id}"><t t-esc="result.name"/></a>
+ <a class="oe_suggestion_remove_item oe_suggestion_employee oe_e" t-attf-id="{result.id}">X</a>
+ <br/>
+ <button class="oe_suggestion_follow" t-att-id="result.id">Follow</button>
+ </div>
+ </div>
+ </t>
+ </div>
+ </div>
+
+</template>