0
0
Fork 1
Spiegel von https://github.com/paviliondev/discourse-custom-wizard.git synchronisiert 2024-11-15 14:22:53 +01:00
Dieser Commit ist enthalten in:
Faizaan Gagan 2021-04-26 06:46:23 +05:30
Ursprung 3d4c24d362
Commit 3e950036d0
2 geänderte Dateien mit 11 neuen und 4 gelöschten Zeilen

Datei anzeigen

@ -161,7 +161,7 @@ const CustomWizard = EmberObject.extend({
input.pairs = []; input.pairs = [];
inpt.pairs.forEach((pr) => { inpt.pairs.forEach((pr) => {
if (present(pr.key) && present(pr.value)) { if ((present(pr.key) && present(pr.value)) || pr.key_type == "wizardUser") {
let pairParams = { let pairParams = {
index: pr.index, index: pr.index,
key: pr.key, key: pr.key,

Datei anzeigen

@ -106,7 +106,12 @@ class CustomWizard::Mapper
pairs.all? do |pair| pairs.all? do |pair|
connector = pair['connector'] connector = pair['connector']
operator = map_operator(connector) operator = map_operator(connector)
if pair['key_type'] == 'wizard_user'
key = @user.username
else
key = map_field(pair['key'], pair['key_type']) key = map_field(pair['key'], pair['key_type'])
end
value = cast_value(map_field(pair['value'], pair['value_type']), key, connector) value = cast_value(map_field(pair['value'], pair['value_type']), key, connector)
begin begin
validation_result(key, value, operator) validation_result(key, value, operator)
@ -119,6 +124,8 @@ class CustomWizard::Mapper
def cast_value(value, key, connector) def cast_value(value, key, connector)
if connector == 'regex' if connector == 'regex'
Regexp.new(value) Regexp.new(value)
elsif connector == 'in'
value.to_a
else else
if key.is_a?(String) if key.is_a?(String)
value.to_s value.to_s
@ -140,7 +147,7 @@ class CustomWizard::Mapper
result = key.public_send(operator, ActiveRecord::Type::Boolean.new.cast(value)) result = key.public_send(operator, ActiveRecord::Type::Boolean.new.cast(value))
end end
elsif operator === 'in' elsif operator === 'in'
result = value.includes?(key) result = value.include?(key)
elsif [key, value, operator].all? { |i| !i.nil? } elsif [key, value, operator].all? { |i| !i.nil? }
result = key.public_send(operator, value) result = key.public_send(operator, value)
else else
@ -216,7 +223,7 @@ class CustomWizard::Mapper
end end
end end
def map_current_user(value) def map_wizard_user(value)
@user.username @user.username
end end