mirror of
https://github.com/flarum/core.git
synced 2025-08-18 14:22:02 +02:00
Merge branch 'master' of https://github.com/flarum/tags
This commit is contained in:
2
extensions/tags/js/dist/admin.js
vendored
2
extensions/tags/js/dist/admin.js
vendored
File diff suppressed because one or more lines are too long
2
extensions/tags/js/dist/admin.js.map
vendored
2
extensions/tags/js/dist/admin.js.map
vendored
File diff suppressed because one or more lines are too long
6
extensions/tags/js/package-lock.json
generated
6
extensions/tags/js/package-lock.json
generated
@@ -2779,9 +2779,9 @@
|
||||
}
|
||||
},
|
||||
"html5sortable": {
|
||||
"version": "0.9.8",
|
||||
"resolved": "https://registry.npmjs.org/html5sortable/-/html5sortable-0.9.8.tgz",
|
||||
"integrity": "sha512-QodBiv8LdTZHot3EMzNHTeKn/nHm66BlvmcFvMFMPVm4mYN5S0uKvDxFnzRltFvrIjvps7OVRrxBJQX8aLnxWg=="
|
||||
"version": "0.9.16",
|
||||
"resolved": "https://registry.npmjs.org/html5sortable/-/html5sortable-0.9.16.tgz",
|
||||
"integrity": "sha512-GjCFl7w+Z6bQNs6lU5fhPqLoC5aRbFbQtL9rgqGR3Fs0GCRCrGjoRusZkhWaQpMr4eN25BlkviYA2nH+hFnDoA=="
|
||||
},
|
||||
"https-browserify": {
|
||||
"version": "1.0.0",
|
||||
|
@@ -3,7 +3,7 @@
|
||||
"name": "@flarum/tags",
|
||||
"dependencies": {
|
||||
"flarum-webpack-config": "0.1.0-beta.10",
|
||||
"html5sortable": "^0.9.8",
|
||||
"html5sortable": "^0.9.16",
|
||||
"webpack": "^4.26.0",
|
||||
"webpack-cli": "^3.1.2"
|
||||
},
|
||||
|
@@ -1,4 +1,4 @@
|
||||
import 'html5sortable';
|
||||
import sortable from 'html5sortable/dist/html5sortable.es.js';
|
||||
|
||||
import Page from 'flarum/components/Page';
|
||||
import Button from 'flarum/components/Button';
|
||||
@@ -80,14 +80,18 @@ export default class TagsPage extends Page {
|
||||
}
|
||||
|
||||
config() {
|
||||
this.$('ol, ul')
|
||||
.sortable({connectWith: 'primary'})
|
||||
.on('sortupdate', (e, ui) => {
|
||||
sortable(this.$('ol, ul'), {
|
||||
acceptFrom: 'ol,ul'
|
||||
}).forEach(this.onSortUpdate.bind(this));
|
||||
}
|
||||
|
||||
onSortUpdate(el) {
|
||||
el.addEventListener('sortupdate', (e) => {
|
||||
// If we've moved a tag from 'primary' to 'secondary', then we'll update
|
||||
// its attributes in our local store so that when we redraw the change
|
||||
// will be made.
|
||||
if (ui.startparent.is('ol') && ui.endparent.is('ul')) {
|
||||
app.store.getById('tags', ui.item.data('id')).pushData({
|
||||
if (e.detail.origin.container instanceof HTMLOListElement && e.detail.destination.container instanceof HTMLUListElement) {
|
||||
app.store.getById('tags', e.detail.item.getAttribute('data-id')).pushData({
|
||||
attributes: {
|
||||
position: null,
|
||||
isChild: false
|
||||
|
@@ -63,11 +63,11 @@ class TagRepository
|
||||
* @param User|null $user
|
||||
* @return int
|
||||
*/
|
||||
public function getIdForSlug($slug, User $user = null)
|
||||
public function getIdForSlug($slug, User $user = null) : ?int
|
||||
{
|
||||
$query = Tag::where('slug', 'like', $slug);
|
||||
$query = Tag::where('slug', $slug);
|
||||
|
||||
return $this->scopeVisibleTo($query, $user)->pluck('id');
|
||||
return $this->scopeVisibleTo($query, $user)->value('id');
|
||||
}
|
||||
|
||||
/**
|
||||
|
Reference in New Issue
Block a user