Merge pull request #7640 from rmehta/energy-point-log-list
fix(energy-point-list): use standard list view
This commit is contained in:
commit
f89448151f
6 changed files with 68 additions and 115 deletions
|
|
@ -230,6 +230,7 @@ def migrate(context, rebuild_website=False):
|
|||
finally:
|
||||
frappe.destroy()
|
||||
|
||||
print("Compiling Python Files...")
|
||||
compileall.compile_dir('../apps', quiet=1, rx=re.compile('.*node_modules.*'))
|
||||
|
||||
@click.command('run-patch')
|
||||
|
|
|
|||
|
|
@ -1,97 +0,0 @@
|
|||
<template>
|
||||
<div>
|
||||
<ul class="log-list">
|
||||
<li class="history-log" v-for="log in history_logs" :key="log.name">
|
||||
<span v-html="frappe.energy_points.format_history_log(log, true)"></span>
|
||||
</li>
|
||||
<li v-if="fetching" class="history-log">
|
||||
{{ __('Fetching') + '...' }}
|
||||
</li>
|
||||
<li v-else-if="has_more_logs" class="history-log">
|
||||
<button
|
||||
class="btn btn-default btn-xs"
|
||||
@click="get_logs()">
|
||||
{{ __('Load more') }}
|
||||
</button>
|
||||
</li>
|
||||
<li v-else-if="!history_logs.length" class="history-log">
|
||||
{{ __('No logs found') }}
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
export default {
|
||||
props: ['user', 'from_date'],
|
||||
data() {
|
||||
return {
|
||||
history_logs: [],
|
||||
fetching: false,
|
||||
has_more_logs: true
|
||||
};
|
||||
},
|
||||
created() {
|
||||
this.get_logs();
|
||||
},
|
||||
methods: {
|
||||
get_logs() {
|
||||
this.fetching = true;
|
||||
const pull_limit = 10;
|
||||
frappe.db
|
||||
.get_list('Energy Point Log', {
|
||||
filters: {
|
||||
user: this.user,
|
||||
type: ['!=', 'Review'],
|
||||
creation: ['>=', this.from_date]
|
||||
},
|
||||
fields: ['*'],
|
||||
limit: pull_limit,
|
||||
limit_start: this.history_logs.length
|
||||
})
|
||||
.then(data => {
|
||||
this.history_logs = this.history_logs.concat(data);
|
||||
this.has_more_logs = data.length === pull_limit;
|
||||
})
|
||||
.finally(() => {
|
||||
this.fetching = false;
|
||||
});
|
||||
}
|
||||
}
|
||||
};
|
||||
</script>
|
||||
<style lang="less">
|
||||
@import 'frappe/public/less/common';
|
||||
.log-list {
|
||||
padding: 15px;
|
||||
padding-left: 0px;
|
||||
position: relative;
|
||||
}
|
||||
.log-list:before {
|
||||
content: ' ';
|
||||
border-left: 1px solid @border-color;
|
||||
position: absolute;
|
||||
top: 0px;
|
||||
bottom: 0px;
|
||||
left: 30px;
|
||||
z-index: 0;
|
||||
}
|
||||
.history-log {
|
||||
.text-muted;
|
||||
.text-medium;
|
||||
list-style: none;
|
||||
padding: 10px;
|
||||
padding-left: 50px;
|
||||
display: flex;
|
||||
position: relative;
|
||||
}
|
||||
.history-log:before {
|
||||
content: ' ';
|
||||
width: 7px;
|
||||
height: 7px;
|
||||
background-color: @border-color;
|
||||
position: absolute;
|
||||
border-radius: 50%;
|
||||
left: 27px;
|
||||
top: 16px;
|
||||
}
|
||||
</style>
|
||||
|
|
@ -2,6 +2,8 @@
|
|||
<div class="profile-sidebar flex flex-column">
|
||||
<div class="user-details">
|
||||
<h3>{{ user.fullname }}</h3>
|
||||
<p><a @click="view_energy_point_list(user)" class="text-muted">
|
||||
{{ __("Energy Points") }}: {{ energy_points }}</a></p>
|
||||
<p>{{ user.bio }}</p>
|
||||
<div class="location" v-if="user.location">
|
||||
<span class="text-muted">
|
||||
|
|
@ -31,9 +33,15 @@ export default {
|
|||
data() {
|
||||
return {
|
||||
user: frappe.user_info(this.user_id),
|
||||
can_edit_profile: frappe.social.is_session_user_page()
|
||||
can_edit_profile: frappe.social.is_session_user_page(),
|
||||
energy_points: 0
|
||||
};
|
||||
},
|
||||
mounted() {
|
||||
frappe.xcall('frappe.social.doctype.energy_point_log.energy_point_log.get_user_energy_and_review_points', {user: this.user_id}).then(r => {
|
||||
this.energy_points = r[this.user_id].energy_points;
|
||||
});
|
||||
},
|
||||
methods: {
|
||||
edit_profile() {
|
||||
const edit_profile_dialog = new frappe.ui.Dialog({
|
||||
|
|
@ -104,6 +112,9 @@ export default {
|
|||
bio: this.user.bio
|
||||
});
|
||||
edit_profile_dialog.show();
|
||||
},
|
||||
view_energy_point_list(user) {
|
||||
frappe.set_route('List', 'Energy Point Log', {user:user.name});
|
||||
}
|
||||
}
|
||||
};
|
||||
|
|
|
|||
|
|
@ -28,12 +28,12 @@
|
|||
>{{ __(title) }}</span>
|
||||
</li>
|
||||
<li v-for="(user, index) in filtered_users" :key="user.name">
|
||||
<div class="user-card" @click="toggle_log(user.name)">
|
||||
<span class="user-details flex">
|
||||
<div class="user-card">
|
||||
<span class="user-details flex" @click="go_to_profile_page(user.name)">
|
||||
<span class="rank-column">{{ index + 1 }}</span>
|
||||
<span v-html="get_avatar(user.name)"></span>
|
||||
<span>
|
||||
<a @click="go_to_profile_page(user.name)">{{ user.fullname }}</a>
|
||||
{{ user.fullname }}
|
||||
<div
|
||||
class="text-muted text-medium"
|
||||
:class="{'italic': !user.bio}"
|
||||
|
|
@ -44,6 +44,7 @@
|
|||
class="text-muted text-nowrap flex-20"
|
||||
v-for="key in ['energy_points', 'review_points', 'given_points']"
|
||||
:key="key"
|
||||
@click="toggle_log(user.name)"
|
||||
>{{ user[key] }}</span>
|
||||
</div>
|
||||
<energy-point-history
|
||||
|
|
@ -59,11 +60,7 @@
|
|||
</div>
|
||||
</template>
|
||||
<script>
|
||||
import EnergyPointHistory from '../components/EnergyPointHistory.vue';
|
||||
export default {
|
||||
components: {
|
||||
EnergyPointHistory
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
users: [],
|
||||
|
|
@ -168,11 +165,7 @@ export default {
|
|||
});
|
||||
},
|
||||
toggle_log(user) {
|
||||
if (this.show_log_for === user) {
|
||||
this.show_log_for = null;
|
||||
} else {
|
||||
this.show_log_for = user;
|
||||
}
|
||||
frappe.set_route('List', 'Energy Point Log', {user:user});
|
||||
}
|
||||
}
|
||||
};
|
||||
|
|
|
|||
29
frappe/social/doctype/energy_point_log/energy_point_list.js
Normal file
29
frappe/social/doctype/energy_point_log/energy_point_list.js
Normal file
|
|
@ -0,0 +1,29 @@
|
|||
frappe.listview_settings['Energy Point Log'] = {
|
||||
hide_name_column: true,
|
||||
add_fields: ['type', 'reference_doctype', 'reference_name'],
|
||||
get_indicator: function (doc) {
|
||||
let colors = {
|
||||
'Appreciation': 'green',
|
||||
'Criticism': 'red',
|
||||
'Auto': 'blue',
|
||||
'Revert': 'orange',
|
||||
'Review': 'grey'
|
||||
};
|
||||
return [__(doc.type), colors[doc.type], "type,=," + doc.type];
|
||||
},
|
||||
|
||||
button: {
|
||||
show: function(doc) {
|
||||
return doc.reference_name;
|
||||
},
|
||||
get_label: function() {
|
||||
return __('View Ref');
|
||||
},
|
||||
get_description: function(doc) {
|
||||
return __('Open {0}', [`${doc.reference_doctype} ${doc.reference_name}`]);
|
||||
},
|
||||
action: function(doc) {
|
||||
frappe.set_route('Form', doc.reference_doctype, doc.reference_name);
|
||||
}
|
||||
}
|
||||
};
|
||||
|
|
@ -6,19 +6,22 @@
|
|||
"field_order": [
|
||||
"user",
|
||||
"type",
|
||||
"points",
|
||||
"rule",
|
||||
"column_break_5",
|
||||
"reference_doctype",
|
||||
"reference_name",
|
||||
"points",
|
||||
"reason",
|
||||
"reverted",
|
||||
"revert_of"
|
||||
"revert_of",
|
||||
"section_break_10",
|
||||
"reason"
|
||||
],
|
||||
"fields": [
|
||||
{
|
||||
"fieldname": "user",
|
||||
"fieldtype": "Link",
|
||||
"in_list_view": 1,
|
||||
"in_standard_filter": 1,
|
||||
"label": "User",
|
||||
"options": "User",
|
||||
"read_only": 1,
|
||||
|
|
@ -28,7 +31,7 @@
|
|||
{
|
||||
"fieldname": "type",
|
||||
"fieldtype": "Select",
|
||||
"in_list_view": 1,
|
||||
"in_standard_filter": 1,
|
||||
"label": "Type",
|
||||
"options": "Auto\nAppreciation\nCriticism\nReview\nRevert",
|
||||
"read_only": 1,
|
||||
|
|
@ -37,6 +40,7 @@
|
|||
{
|
||||
"fieldname": "rule",
|
||||
"fieldtype": "Link",
|
||||
"in_standard_filter": 1,
|
||||
"label": "Rule",
|
||||
"options": "Energy Point Rule",
|
||||
"read_only": 1
|
||||
|
|
@ -45,6 +49,7 @@
|
|||
"fieldname": "reference_doctype",
|
||||
"fieldtype": "Link",
|
||||
"in_list_view": 1,
|
||||
"in_standard_filter": 1,
|
||||
"label": "Reference Doctype",
|
||||
"options": "DocType",
|
||||
"read_only": 1,
|
||||
|
|
@ -67,6 +72,7 @@
|
|||
{
|
||||
"fieldname": "reason",
|
||||
"fieldtype": "Text",
|
||||
"in_list_view": 1,
|
||||
"label": "Reason",
|
||||
"read_only": 1
|
||||
},
|
||||
|
|
@ -84,10 +90,18 @@
|
|||
"label": "Revert Of",
|
||||
"options": "Energy Point Log",
|
||||
"read_only": 1
|
||||
},
|
||||
{
|
||||
"fieldname": "column_break_5",
|
||||
"fieldtype": "Column Break"
|
||||
},
|
||||
{
|
||||
"fieldname": "section_break_10",
|
||||
"fieldtype": "Section Break"
|
||||
}
|
||||
],
|
||||
"in_create": 1,
|
||||
"modified": "2019-05-02 15:28:02.857792",
|
||||
"modified": "2019-06-05 11:18:45.286367",
|
||||
"modified_by": "Administrator",
|
||||
"module": "Social",
|
||||
"name": "Energy Point Log",
|
||||
|
|
@ -95,10 +109,12 @@
|
|||
"permissions": [
|
||||
{
|
||||
"read": 1,
|
||||
"report": 1,
|
||||
"role": "System Manager"
|
||||
},
|
||||
{
|
||||
"read": 1,
|
||||
"report": 1,
|
||||
"role": "All"
|
||||
}
|
||||
],
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue