discourse/app/assets/javascripts/admin/addon/models/user-field.js

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

39 lines
1.0 KiB
JavaScript
Raw Normal View History

import { tracked } from "@glimmer/tracking";
import EmberObject from "@ember/object";
2015-08-08 03:08:27 +08:00
import { i18n } from "discourse/lib/computed";
import RestModel from "discourse/models/rest";
export default class UserField extends RestModel {
static fieldTypes() {
2014-12-13 02:28:20 +08:00
if (!this._fieldTypes) {
this._fieldTypes = [
UserFieldType.create({ id: "text" }),
UserFieldType.create({ id: "confirm" }),
UserFieldType.create({ id: "dropdown", hasOptions: true }),
UserFieldType.create({ id: "multiselect", hasOptions: true }),
2014-12-13 02:28:20 +08:00
];
}
return this._fieldTypes;
}
static fieldTypeById(id) {
2014-12-13 02:28:20 +08:00
return this.fieldTypes().findBy("id", id);
}
@tracked field_type;
@tracked editable;
@tracked show_on_profile;
@tracked show_on_user_card;
@tracked searchable;
@tracked requirement;
get fieldTypeName() {
return UserField.fieldTypes().find((ft) => ft.id === this.field_type).name;
}
}
class UserFieldType extends EmberObject {
@i18n("id", "admin.user_fields.field_types.%@") name;
}