mirror of
https://github.com/flarum/core.git
synced 2025-07-17 14:51:19 +02:00
Release 0.1.0-beta.4
This commit is contained in:
10
extensions/flags/CHANGELOG.md
Normal file
10
extensions/flags/CHANGELOG.md
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
# Change Log
|
||||||
|
All notable changes to the Flags extension will be documented in this file.
|
||||||
|
This project adheres to [Semantic Versioning](http://semver.org/).
|
||||||
|
|
||||||
|
## [0.1.0-beta.4] - 2015-11-05
|
||||||
|
### Added
|
||||||
|
- Show a success message after submitting a flag
|
||||||
|
- Expand reason descriptions and add a configurable link to community guidelines
|
||||||
|
|
||||||
|
[0.1.0-beta.4]: https://github.com/flarum/flags/compare/v0.1.0-beta.3...v0.1.0-beta.4
|
59
extensions/flags/js/admin/dist/extension.js
vendored
59
extensions/flags/js/admin/dist/extension.js
vendored
@@ -1,7 +1,56 @@
|
|||||||
System.register('flarum/flags/main', ['flarum/extend', 'flarum/app', 'flarum/components/PermissionGrid'], function (_export) {
|
System.register('flarum/flags/components/FlagsSettingsModal', ['flarum/components/SettingsModal'], function (_export) {
|
||||||
'use strict';
|
'use strict';
|
||||||
|
|
||||||
var extend, app, PermissionGrid;
|
var SettingsModal, FlagsSettingsModal;
|
||||||
|
return {
|
||||||
|
setters: [function (_flarumComponentsSettingsModal) {
|
||||||
|
SettingsModal = _flarumComponentsSettingsModal['default'];
|
||||||
|
}],
|
||||||
|
execute: function () {
|
||||||
|
FlagsSettingsModal = (function (_SettingsModal) {
|
||||||
|
babelHelpers.inherits(FlagsSettingsModal, _SettingsModal);
|
||||||
|
|
||||||
|
function FlagsSettingsModal() {
|
||||||
|
babelHelpers.classCallCheck(this, FlagsSettingsModal);
|
||||||
|
babelHelpers.get(Object.getPrototypeOf(FlagsSettingsModal.prototype), 'constructor', this).apply(this, arguments);
|
||||||
|
}
|
||||||
|
|
||||||
|
babelHelpers.createClass(FlagsSettingsModal, [{
|
||||||
|
key: 'className',
|
||||||
|
value: function className() {
|
||||||
|
return 'FlagsSettingsModal Modal--small';
|
||||||
|
}
|
||||||
|
}, {
|
||||||
|
key: 'title',
|
||||||
|
value: function title() {
|
||||||
|
return app.translator.trans('flarum-flags.admin.settings.title');
|
||||||
|
}
|
||||||
|
}, {
|
||||||
|
key: 'form',
|
||||||
|
value: function form() {
|
||||||
|
return [m(
|
||||||
|
'div',
|
||||||
|
{ className: 'Form-group' },
|
||||||
|
m(
|
||||||
|
'label',
|
||||||
|
null,
|
||||||
|
app.translator.trans('flarum-flags.admin.settings.guidelines_url_label')
|
||||||
|
),
|
||||||
|
m('input', { className: 'FormControl', bidi: this.setting('flarum-flags.guidelines_url') })
|
||||||
|
)];
|
||||||
|
}
|
||||||
|
}]);
|
||||||
|
return FlagsSettingsModal;
|
||||||
|
})(SettingsModal);
|
||||||
|
|
||||||
|
_export('default', FlagsSettingsModal);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
});;
|
||||||
|
System.register('flarum/flags/main', ['flarum/extend', 'flarum/app', 'flarum/components/PermissionGrid', 'flarum/flags/components/FlagsSettingsModal'], function (_export) {
|
||||||
|
'use strict';
|
||||||
|
|
||||||
|
var extend, app, PermissionGrid, FlagsSettingsModal;
|
||||||
return {
|
return {
|
||||||
setters: [function (_flarumExtend) {
|
setters: [function (_flarumExtend) {
|
||||||
extend = _flarumExtend.extend;
|
extend = _flarumExtend.extend;
|
||||||
@@ -9,10 +58,16 @@ System.register('flarum/flags/main', ['flarum/extend', 'flarum/app', 'flarum/com
|
|||||||
app = _flarumApp['default'];
|
app = _flarumApp['default'];
|
||||||
}, function (_flarumComponentsPermissionGrid) {
|
}, function (_flarumComponentsPermissionGrid) {
|
||||||
PermissionGrid = _flarumComponentsPermissionGrid['default'];
|
PermissionGrid = _flarumComponentsPermissionGrid['default'];
|
||||||
|
}, function (_flarumFlagsComponentsFlagsSettingsModal) {
|
||||||
|
FlagsSettingsModal = _flarumFlagsComponentsFlagsSettingsModal['default'];
|
||||||
}],
|
}],
|
||||||
execute: function () {
|
execute: function () {
|
||||||
|
|
||||||
app.initializers.add('flarum-flags', function () {
|
app.initializers.add('flarum-flags', function () {
|
||||||
|
app.extensionSettings['flarum-flags'] = function () {
|
||||||
|
return app.modal.show(new FlagsSettingsModal());
|
||||||
|
};
|
||||||
|
|
||||||
extend(PermissionGrid.prototype, 'moderateItems', function (items) {
|
extend(PermissionGrid.prototype, 'moderateItems', function (items) {
|
||||||
items.add('viewFlags', {
|
items.add('viewFlags', {
|
||||||
icon: 'flag',
|
icon: 'flag',
|
||||||
|
63
extensions/flags/js/forum/dist/extension.js
vendored
63
extensions/flags/js/forum/dist/extension.js
vendored
@@ -359,6 +359,8 @@ System.register('flarum/flags/components/FlagPostModal', ['flarum/components/Mod
|
|||||||
value: function init() {
|
value: function init() {
|
||||||
babelHelpers.get(Object.getPrototypeOf(FlagPostModal.prototype), 'init', this).call(this);
|
babelHelpers.get(Object.getPrototypeOf(FlagPostModal.prototype), 'init', this).call(this);
|
||||||
|
|
||||||
|
this.success = false;
|
||||||
|
|
||||||
this.reason = m.prop('');
|
this.reason = m.prop('');
|
||||||
this.reasonDetail = m.prop('');
|
this.reasonDetail = m.prop('');
|
||||||
}
|
}
|
||||||
@@ -375,20 +377,42 @@ System.register('flarum/flags/components/FlagPostModal', ['flarum/components/Mod
|
|||||||
}, {
|
}, {
|
||||||
key: 'content',
|
key: 'content',
|
||||||
value: function content() {
|
value: function content() {
|
||||||
|
if (this.success) {
|
||||||
return m(
|
return m(
|
||||||
'div',
|
'div',
|
||||||
{ className: 'Modal-body' },
|
{ className: 'Modal-body' },
|
||||||
m(
|
m(
|
||||||
'div',
|
'div',
|
||||||
{ className: 'Form' },
|
{ className: 'Form Form--centered' },
|
||||||
|
m(
|
||||||
|
'p',
|
||||||
|
{ className: 'helpText' },
|
||||||
|
app.translator.trans('flarum-flags.forum.flag_post.confirmation_message')
|
||||||
|
),
|
||||||
m(
|
m(
|
||||||
'div',
|
'div',
|
||||||
{ className: 'Form-group' },
|
{ className: 'Form-group' },
|
||||||
m(
|
m(
|
||||||
'label',
|
Button,
|
||||||
null,
|
{ className: 'Button Button--primary Button--block', onclick: this.hide.bind(this) },
|
||||||
app.translator.trans('flarum-flags.forum.flag_post.reason_heading')
|
app.translator.trans('flarum-flags.forum.flag_post.dismiss_button')
|
||||||
),
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
var guidelinesUrl = app.forum.attribute('guidelinesUrl');
|
||||||
|
|
||||||
|
return m(
|
||||||
|
'div',
|
||||||
|
{ className: 'Modal-body' },
|
||||||
|
m(
|
||||||
|
'div',
|
||||||
|
{ className: 'Form Form--centered' },
|
||||||
|
m(
|
||||||
|
'div',
|
||||||
|
{ className: 'Form-group' },
|
||||||
m(
|
m(
|
||||||
'div',
|
'div',
|
||||||
null,
|
null,
|
||||||
@@ -396,25 +420,46 @@ System.register('flarum/flags/components/FlagPostModal', ['flarum/components/Mod
|
|||||||
'label',
|
'label',
|
||||||
{ className: 'checkbox' },
|
{ className: 'checkbox' },
|
||||||
m('input', { type: 'radio', name: 'reason', checked: this.reason() === 'off_topic', value: 'off_topic', onclick: m.withAttr('value', this.reason) }),
|
m('input', { type: 'radio', name: 'reason', checked: this.reason() === 'off_topic', value: 'off_topic', onclick: m.withAttr('value', this.reason) }),
|
||||||
|
m(
|
||||||
|
'strong',
|
||||||
|
null,
|
||||||
app.translator.trans('flarum-flags.forum.flag_post.reason_off_topic_label')
|
app.translator.trans('flarum-flags.forum.flag_post.reason_off_topic_label')
|
||||||
),
|
),
|
||||||
|
app.translator.trans('flarum-flags.forum.flag_post.reason_off_topic_text')
|
||||||
|
),
|
||||||
m(
|
m(
|
||||||
'label',
|
'label',
|
||||||
{ className: 'checkbox' },
|
{ className: 'checkbox' },
|
||||||
m('input', { type: 'radio', name: 'reason', checked: this.reason() === 'inappropriate', value: 'inappropriate', onclick: m.withAttr('value', this.reason) }),
|
m('input', { type: 'radio', name: 'reason', checked: this.reason() === 'inappropriate', value: 'inappropriate', onclick: m.withAttr('value', this.reason) }),
|
||||||
|
m(
|
||||||
|
'strong',
|
||||||
|
null,
|
||||||
app.translator.trans('flarum-flags.forum.flag_post.reason_inappropriate_label')
|
app.translator.trans('flarum-flags.forum.flag_post.reason_inappropriate_label')
|
||||||
),
|
),
|
||||||
|
app.translator.trans('flarum-flags.forum.flag_post.reason_inappropriate_text', {
|
||||||
|
a: guidelinesUrl ? m('a', { href: guidelinesUrl, target: '_blank' }) : undefined
|
||||||
|
})
|
||||||
|
),
|
||||||
m(
|
m(
|
||||||
'label',
|
'label',
|
||||||
{ className: 'checkbox' },
|
{ className: 'checkbox' },
|
||||||
m('input', { type: 'radio', name: 'reason', checked: this.reason() === 'spam', value: 'spam', onclick: m.withAttr('value', this.reason) }),
|
m('input', { type: 'radio', name: 'reason', checked: this.reason() === 'spam', value: 'spam', onclick: m.withAttr('value', this.reason) }),
|
||||||
|
m(
|
||||||
|
'strong',
|
||||||
|
null,
|
||||||
app.translator.trans('flarum-flags.forum.flag_post.reason_spam_label')
|
app.translator.trans('flarum-flags.forum.flag_post.reason_spam_label')
|
||||||
),
|
),
|
||||||
|
app.translator.trans('flarum-flags.forum.flag_post.reason_spam_text')
|
||||||
|
),
|
||||||
m(
|
m(
|
||||||
'label',
|
'label',
|
||||||
{ className: 'checkbox' },
|
{ className: 'checkbox' },
|
||||||
m('input', { type: 'radio', name: 'reason', checked: this.reason() === 'other', value: 'other', onclick: m.withAttr('value', this.reason) }),
|
m('input', { type: 'radio', name: 'reason', checked: this.reason() === 'other', value: 'other', onclick: m.withAttr('value', this.reason) }),
|
||||||
app.translator.trans('flarum-flags.forum.flag_post.reason_other_label'),
|
m(
|
||||||
|
'strong',
|
||||||
|
null,
|
||||||
|
app.translator.trans('flarum-flags.forum.flag_post.reason_other_label')
|
||||||
|
),
|
||||||
this.reason() === 'other' ? m('textarea', { className: 'FormControl', value: this.reasonDetail(), oninput: m.withAttr('value', this.reasonDetail) }) : ''
|
this.reason() === 'other' ? m('textarea', { className: 'FormControl', value: this.reasonDetail(), oninput: m.withAttr('value', this.reasonDetail) }) : ''
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
@@ -425,7 +470,7 @@ System.register('flarum/flags/components/FlagPostModal', ['flarum/components/Mod
|
|||||||
m(
|
m(
|
||||||
Button,
|
Button,
|
||||||
{
|
{
|
||||||
className: 'Button Button--primary',
|
className: 'Button Button--primary Button--block',
|
||||||
type: 'submit',
|
type: 'submit',
|
||||||
loading: this.loading,
|
loading: this.loading,
|
||||||
disabled: !this.reason() },
|
disabled: !this.reason() },
|
||||||
@@ -452,8 +497,8 @@ System.register('flarum/flags/components/FlagPostModal', ['flarum/components/Mod
|
|||||||
post: this.props.post
|
post: this.props.post
|
||||||
}
|
}
|
||||||
}).then(function () {
|
}).then(function () {
|
||||||
return _this.hide();
|
return _this.success = true;
|
||||||
}, this.loaded.bind(this));
|
})['finally'](this.loaded.bind(this));
|
||||||
}
|
}
|
||||||
}]);
|
}]);
|
||||||
return FlagPostModal;
|
return FlagPostModal;
|
||||||
|
Reference in New Issue
Block a user