mirror of
https://github.com/rr-/szurubooru.git
synced 2025-07-17 08:26:24 +00:00
PR fixes
This commit is contained in:
@ -1,7 +1,6 @@
|
||||
<div class='pool-input'>
|
||||
<div class='main-control'>
|
||||
<input type='text' placeholder='type to add…'/>
|
||||
<!-- <button>Add</button> -->
|
||||
</div>
|
||||
|
||||
<ul class='compact-pools'></ul>
|
||||
|
@ -6,12 +6,12 @@
|
||||
</section>
|
||||
|
||||
<section>
|
||||
Aliases:<br/>
|
||||
<ul><!--
|
||||
--><% for (let name of ctx.pool.names.slice(1)) { %><!--
|
||||
--><li><%= ctx.makePoolLink(ctx.pool.id, false, false, ctx.pool, name) %></li><!--
|
||||
--><% } %><!--
|
||||
--></ul>
|
||||
Aliases:<br/>
|
||||
<ul>
|
||||
<% for (let name of ctx.pool.names.slice(1)) { %>
|
||||
<li><%= ctx.makePoolLink(ctx.pool.id, false, false, ctx.pool, name) %></li>
|
||||
<% } %>
|
||||
</ul>
|
||||
</section>
|
||||
</section>
|
||||
|
||||
|
@ -54,8 +54,7 @@ class PoolController {
|
||||
this._view.addEventListener('submit', e => this._evtUpdate(e));
|
||||
this._view.addEventListener('merge', e => this._evtMerge(e));
|
||||
this._view.addEventListener('delete', e => this._evtDelete(e));
|
||||
},
|
||||
error => {
|
||||
}, error => {
|
||||
this._view = new EmptyView();
|
||||
this._view.showError(error.message);
|
||||
});
|
||||
@ -68,9 +67,7 @@ class PoolController {
|
||||
_evtSaved(e, section) {
|
||||
misc.disableExitConfirmation();
|
||||
if (this._name !== e.detail.pool.names[0]) {
|
||||
router.replace(
|
||||
uri.formatClientLink('pool', e.detail.pool.id, section),
|
||||
null, false);
|
||||
router.replace(uri.formatClientLink('pool', e.detail.pool.id, section), null, false);
|
||||
}
|
||||
}
|
||||
|
||||
@ -87,9 +84,9 @@ class PoolController {
|
||||
e.detail.pool.description = e.detail.description;
|
||||
}
|
||||
if (e.detail.posts !== undefined) {
|
||||
e.detail.pool.posts.clear()
|
||||
e.detail.pool.posts.clear();
|
||||
for (let post_id of e.detail.posts) {
|
||||
e.detail.pool.posts.add(Post.fromResponse({ id: parseInt(post_id) }))
|
||||
e.detail.pool.posts.add(Post.fromResponse({ id: parseInt(post_id) }));
|
||||
}
|
||||
}
|
||||
e.detail.pool.save().then(() => {
|
||||
|
@ -16,8 +16,7 @@ class PoolCreateController {
|
||||
return;
|
||||
}
|
||||
|
||||
PoolCategoryList.get()
|
||||
.then(poolCategoriesResponse => {
|
||||
PoolCategoryList.get().then(poolCategoriesResponse => {
|
||||
const categories = {};
|
||||
for (let category of poolCategoriesResponse.results) {
|
||||
categories[category.name] = category.name;
|
||||
|
@ -81,105 +81,105 @@ class PoolInputControl extends events.EventTarget {
|
||||
return Promise.resolve();
|
||||
}
|
||||
|
||||
this.pools.add(pool, false)
|
||||
this.pools.add(pool, false)
|
||||
|
||||
const listItemNode = this._createListItemNode(pool);
|
||||
if (!pool.category) {
|
||||
listItemNode.classList.add('new');
|
||||
}
|
||||
this._poolListNode.prependChild(listItemNode);
|
||||
_fadeOutListItemNodeStatus(listItemNode);
|
||||
const listItemNode = this._createListItemNode(pool);
|
||||
if (!pool.category) {
|
||||
listItemNode.classList.add('new');
|
||||
}
|
||||
this._poolListNode.prependChild(listItemNode);
|
||||
_fadeOutListItemNodeStatus(listItemNode);
|
||||
|
||||
this.dispatchEvent(new CustomEvent('add', {
|
||||
detail: {pool: pool, source: source},
|
||||
}));
|
||||
this.dispatchEvent(new CustomEvent('change'));
|
||||
this.dispatchEvent(new CustomEvent('add', {
|
||||
detail: {pool: pool, source: source},
|
||||
}));
|
||||
this.dispatchEvent(new CustomEvent('change'));
|
||||
|
||||
return Promise.resolve();
|
||||
return Promise.resolve();
|
||||
}
|
||||
|
||||
deletePool(pool) {
|
||||
if (!this.pools.hasPoolId(pool.id)) {
|
||||
return;
|
||||
deletePool(pool) {
|
||||
if (!this.pools.hasPoolId(pool.id)) {
|
||||
return;
|
||||
}
|
||||
this.pools.removeById(pool.id);
|
||||
this._hideAutoComplete();
|
||||
|
||||
this._deleteListItemNode(pool);
|
||||
|
||||
this.dispatchEvent(new CustomEvent('remove', {
|
||||
detail: {pool: pool},
|
||||
}));
|
||||
this.dispatchEvent(new CustomEvent('change'));
|
||||
}
|
||||
this.pools.removeById(pool.id);
|
||||
this._hideAutoComplete();
|
||||
|
||||
this._deleteListItemNode(pool);
|
||||
_createListItemNode(pool) {
|
||||
const className = pool.category ?
|
||||
misc.makeCssName(pool.category, 'pool') :
|
||||
null;
|
||||
|
||||
this.dispatchEvent(new CustomEvent('remove', {
|
||||
detail: {pool: pool},
|
||||
}));
|
||||
this.dispatchEvent(new CustomEvent('change'));
|
||||
}
|
||||
const poolLinkNode = document.createElement('a');
|
||||
if (className) {
|
||||
poolLinkNode.classList.add(className);
|
||||
}
|
||||
poolLinkNode.setAttribute(
|
||||
'href', uri.formatClientLink('pool', pool.names[0]));
|
||||
|
||||
_createListItemNode(pool) {
|
||||
const className = pool.category ?
|
||||
misc.makeCssName(pool.category, 'pool') :
|
||||
null;
|
||||
const poolIconNode = document.createElement('i');
|
||||
poolIconNode.classList.add('fa');
|
||||
poolIconNode.classList.add('fa-pool');
|
||||
poolLinkNode.appendChild(poolIconNode);
|
||||
|
||||
const poolLinkNode = document.createElement('a');
|
||||
if (className) {
|
||||
poolLinkNode.classList.add(className);
|
||||
const searchLinkNode = document.createElement('a');
|
||||
if (className) {
|
||||
searchLinkNode.classList.add(className);
|
||||
}
|
||||
searchLinkNode.setAttribute(
|
||||
'href', uri.formatClientLink(
|
||||
'posts', {query: "pool:" + pool.id}));
|
||||
searchLinkNode.textContent = pool.names[0] + ' ';
|
||||
|
||||
const usagesNode = document.createElement('span');
|
||||
usagesNode.classList.add('pool-usages');
|
||||
usagesNode.setAttribute('data-pseudo-content', pool.postCount);
|
||||
|
||||
const removalLinkNode = document.createElement('a');
|
||||
removalLinkNode.classList.add('remove-pool');
|
||||
removalLinkNode.setAttribute('href', '');
|
||||
removalLinkNode.setAttribute('data-pseudo-content', '×');
|
||||
removalLinkNode.addEventListener('click', e => {
|
||||
e.preventDefault();
|
||||
this.deletePool(pool);
|
||||
});
|
||||
|
||||
const listItemNode = document.createElement('li');
|
||||
listItemNode.appendChild(removalLinkNode);
|
||||
listItemNode.appendChild(poolLinkNode);
|
||||
listItemNode.appendChild(searchLinkNode);
|
||||
listItemNode.appendChild(usagesNode);
|
||||
for (let name of pool.names) {
|
||||
this._poolToListItemNode.set(name, listItemNode);
|
||||
}
|
||||
return listItemNode;
|
||||
}
|
||||
poolLinkNode.setAttribute(
|
||||
'href', uri.formatClientLink('pool', pool.names[0]));
|
||||
|
||||
const poolIconNode = document.createElement('i');
|
||||
poolIconNode.classList.add('fa');
|
||||
poolIconNode.classList.add('fa-pool');
|
||||
poolLinkNode.appendChild(poolIconNode);
|
||||
|
||||
const searchLinkNode = document.createElement('a');
|
||||
if (className) {
|
||||
searchLinkNode.classList.add(className);
|
||||
_deleteListItemNode(pool) {
|
||||
const listItemNode = this._getListItemNode(pool);
|
||||
if (listItemNode) {
|
||||
listItemNode.parentNode.removeChild(listItemNode);
|
||||
}
|
||||
for (let name of pool.names) {
|
||||
this._poolToListItemNode.delete(name);
|
||||
}
|
||||
}
|
||||
searchLinkNode.setAttribute(
|
||||
'href', uri.formatClientLink(
|
||||
'posts', {query: "pool:" + pool.id}));
|
||||
searchLinkNode.textContent = pool.names[0] + ' ';
|
||||
|
||||
const usagesNode = document.createElement('span');
|
||||
usagesNode.classList.add('pool-usages');
|
||||
usagesNode.setAttribute('data-pseudo-content', pool.postCount);
|
||||
|
||||
const removalLinkNode = document.createElement('a');
|
||||
removalLinkNode.classList.add('remove-pool');
|
||||
removalLinkNode.setAttribute('href', '');
|
||||
removalLinkNode.setAttribute('data-pseudo-content', '×');
|
||||
removalLinkNode.addEventListener('click', e => {
|
||||
e.preventDefault();
|
||||
this.deletePool(pool);
|
||||
});
|
||||
|
||||
const listItemNode = document.createElement('li');
|
||||
listItemNode.appendChild(removalLinkNode);
|
||||
listItemNode.appendChild(poolLinkNode);
|
||||
listItemNode.appendChild(searchLinkNode);
|
||||
listItemNode.appendChild(usagesNode);
|
||||
for (let name of pool.names) {
|
||||
this._poolToListItemNode.set(name, listItemNode);
|
||||
_getListItemNode(pool) {
|
||||
return this._poolToListItemNode.get(pool.names[0]);
|
||||
}
|
||||
return listItemNode;
|
||||
}
|
||||
|
||||
_deleteListItemNode(pool) {
|
||||
const listItemNode = this._getListItemNode(pool);
|
||||
if (listItemNode) {
|
||||
listItemNode.parentNode.removeChild(listItemNode);
|
||||
_hideAutoComplete() {
|
||||
this._autoCompleteControl.hide();
|
||||
}
|
||||
for (let name of pool.names) {
|
||||
this._poolToListItemNode.delete(name);
|
||||
}
|
||||
}
|
||||
|
||||
_getListItemNode(pool) {
|
||||
return this._poolToListItemNode.get(pool.names[0]);
|
||||
}
|
||||
|
||||
_hideAutoComplete() {
|
||||
this._autoCompleteControl.hide();
|
||||
}
|
||||
}
|
||||
|
||||
module.exports = PoolInputControl;
|
||||
|
@ -17,7 +17,7 @@ class PoolCategory extends events.EventTarget {
|
||||
|
||||
get name() { return this._name; }
|
||||
get color() { return this._color; }
|
||||
get poolCount() { return this._poolCount; }
|
||||
get poolCount() { return this._poolCount; }
|
||||
get isDefault() { return this._isDefault; }
|
||||
get isTransient() { return !this._origName; }
|
||||
|
||||
|
Reference in New Issue
Block a user