0
0
Fork 1
Spiegel von https://github.com/paviliondev/discourse-custom-wizard.git synchronisiert 2024-11-26 02:50:28 +01:00

fixed similar topics validator formatting

Dieser Commit ist enthalten in:
Faizaan Gagan 2021-02-15 13:46:19 +05:30
Ursprung 70cc20a919
Commit afbc4e1f57

Datei anzeigen

@ -2,52 +2,52 @@ import WizardFieldValidator from "../../wizard/components/validator";
import { deepMerge } from "discourse-common/lib/object"; import { deepMerge } from "discourse-common/lib/object";
import { observes } from "discourse-common/utils/decorators"; import { observes } from "discourse-common/utils/decorators";
import { cancel, later } from "@ember/runloop"; import { cancel, later } from "@ember/runloop";
import { A } from '@ember/array'; import { A } from "@ember/array";
import EmberObject from "@ember/object"; import EmberObject from "@ember/object";
export default WizardFieldValidator.extend({ export default WizardFieldValidator.extend({
similarTopics: [], similarTopics: [],
validate() { validate() {},
@observes("field.value")
customValidate() {
const lastKeyUp = new Date();
this._lastKeyUp = lastKeyUp;
// One second from now, check to see if the last key was hit when
// we recorded it. If it was, the user paused typing.
cancel(this._lastKeyTimeout);
this._lastKeyTimeout = later(() => {
if (lastKeyUp !== this._lastKeyUp) {
return;
}
this.updateSimilarTopics();
}, 1000);
},
updateSimilarTopics() {
this.backendValidate({
title: this.get("field.value"),
categories: this.get("validation.categories"),
date_after: this.get("validation.date_after"),
}).then((result) => {
const similarTopics = A(
deepMerge(result["topics"], result["similar_topics"])
);
similarTopics.forEach(function (topic, index) {
similarTopics[index] = EmberObject.create(topic);
});
this.set("similarTopics", similarTopics);
});
},
init() {
this._super(...arguments);
},
actions: {
closeMessage() {
this.set("showMessage", false);
}, },
@observes("field.value") },
customValidate(){ });
const lastKeyUp = new Date();
this._lastKeyUp = lastKeyUp;
// One second from now, check to see if the last key was hit when
// we recorded it. If it was, the user paused typing.
cancel(this._lastKeyTimeout);
this._lastKeyTimeout = later(() => {
if (lastKeyUp !== this._lastKeyUp) {
return;
}
this.updateSimilarTopics();
}, 1000);
},
updateSimilarTopics(){
this.backendValidate({
title: this.get("field.value"),
categories: this.get('validation.categories'),
date_after: this.get('validation.date_after')
}).then((result) => {
const similarTopics = A(deepMerge(result['topics'], result['similar_topics']));
similarTopics.forEach(function(topic, index) {
similarTopics[index] = EmberObject.create(topic);
});
this.set('similarTopics', similarTopics);
});
},
init() {
this._super(...arguments);
},
actions: {
closeMessage(){
this.set('showMessage', false);
}
}
});