mirror of
https://github.com/firefly-iii/firefly-iii.git
synced 2025-02-25 18:45:27 -06:00
Fixed the currency dropdown when multiple fields present on single page.
This commit is contained in:
parent
4f38b77ef6
commit
c25c5623d2
@ -1,7 +1,9 @@
|
|||||||
/* globals token, dateRangeConfig, $, */
|
/* globals token, dateRangeConfig, $, */
|
||||||
$(function () {
|
$(function () {
|
||||||
"use strict";
|
"use strict";
|
||||||
$('.currencySelect').click(currencySelect);
|
|
||||||
|
// when you click on a currency, this happens:
|
||||||
|
$('.currency-option').click(currencySelect);
|
||||||
|
|
||||||
var ranges = {};
|
var ranges = {};
|
||||||
// range for the current month:
|
// range for the current month:
|
||||||
@ -62,21 +64,51 @@ $(function () {
|
|||||||
|
|
||||||
function currencySelect(e) {
|
function currencySelect(e) {
|
||||||
"use strict";
|
"use strict";
|
||||||
var target = $(e.target);
|
// clicked on
|
||||||
|
var target = $(e.target); // target is the <A> tag.
|
||||||
|
|
||||||
|
// name of the field in question:
|
||||||
|
var name = target.data('name');
|
||||||
|
|
||||||
|
// id of menu button (used later on):
|
||||||
|
var menuID = 'currency_dropdown_' + name;
|
||||||
|
|
||||||
|
// the hidden input with the actual value of the selected currency:
|
||||||
|
var hiddenInputName = 'amount_currency_id_' + target.data('name');
|
||||||
|
|
||||||
|
// span with the current selection (next to the caret):
|
||||||
|
var spanId = 'currency_select_symbol_' + target.data('name');
|
||||||
|
|
||||||
|
// the selected currency symbol:
|
||||||
var symbol = target.data('symbol');
|
var symbol = target.data('symbol');
|
||||||
var code = target.data('code');
|
|
||||||
|
// id of the selected currency.
|
||||||
var id = target.data('id');
|
var id = target.data('id');
|
||||||
var fieldType = target.data('field');
|
|
||||||
var menu = $('.' + fieldType + 'CurrencyDropdown');
|
|
||||||
|
|
||||||
var symbolHolder = $('#' + fieldType + 'CurrentSymbol');
|
// update the hidden input:
|
||||||
symbolHolder.text(symbol);
|
$('input[name="' + hiddenInputName + '"]').val(id);
|
||||||
$('input[name="' + fieldType + '_currency_id"]').val(id);
|
|
||||||
|
|
||||||
// close dropdown (hack hack)
|
// update the symbol:
|
||||||
menu.click();
|
$('#' + spanId).text(symbol);
|
||||||
|
|
||||||
|
// close the menu (hack hack)
|
||||||
|
$('#' + menuID).click();
|
||||||
|
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
|
//var code = target.data('code');
|
||||||
|
//var fieldType = target.data('field');
|
||||||
|
//var menu = $('.' + fieldType + 'CurrencyDropdown');
|
||||||
|
//
|
||||||
|
//var symbolHolder = $('#' + fieldType + 'CurrentSymbol');
|
||||||
|
//symbolHolder.text(symbol);
|
||||||
|
//$('input[name="' + fieldType + '_currency_id"]').val(id);
|
||||||
|
//
|
||||||
|
// close dropdown (hack hack)
|
||||||
|
//menu.click();
|
||||||
|
|
||||||
|
|
||||||
|
//return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -4,12 +4,18 @@
|
|||||||
<div class="col-sm-8">
|
<div class="col-sm-8">
|
||||||
<div class="input-group">
|
<div class="input-group">
|
||||||
<div class="input-group-btn">
|
<div class="input-group-btn">
|
||||||
<button type="button" class="btn btn-default dropdown-toggle amountCurrencyDropdown" data-toggle="dropdown" aria-expanded="false">
|
<button type="button"
|
||||||
|
class="btn btn-default dropdown-toggle currency-dropdown" data-toggle="dropdown" aria-expanded="false">
|
||||||
<span>{{ defaultCurrency.symbol|raw }}</span> <span class="caret"></span>
|
<span>{{ defaultCurrency.symbol|raw }}</span> <span class="caret"></span>
|
||||||
</button>
|
</button>
|
||||||
<ul class="dropdown-menu" role="menu">
|
<ul class="dropdown-menu currency-dropdown-menu" role="menu">
|
||||||
{% for currency in currencies %}
|
{% for currency in currencies %}
|
||||||
<li><a href="#" class="currencySelect" data-id="{{ currency.id }}" data-field="amount" data-currency="{{ currency.code }}"
|
<li>
|
||||||
|
<a href="#"
|
||||||
|
class="currency-option"
|
||||||
|
data-id="{{ currency.id }}"
|
||||||
|
data-name="{{ name }}"
|
||||||
|
data-currency="{{ currency.code }}"
|
||||||
data-symbol="{{ currency.symbol|raw }}">{{ currency.name }}</a></li>
|
data-symbol="{{ currency.symbol|raw }}">{{ currency.name }}</a></li>
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
</ul>
|
</ul>
|
||||||
@ -21,5 +27,6 @@
|
|||||||
|
|
||||||
{% include 'form/feedback.twig' %}
|
{% include 'form/feedback.twig' %}
|
||||||
</div>
|
</div>
|
||||||
<input type="hidden" name="amount_currency_id" value="{{ defaultCurrency.id }}"/>
|
|
||||||
|
<input type="hidden" name="amount_currency_id_{{ name }}" value="{{ defaultCurrency.id }}"/>
|
||||||
</div>
|
</div>
|
||||||
|
@ -4,21 +4,29 @@
|
|||||||
<div class="col-sm-8">
|
<div class="col-sm-8">
|
||||||
<div class="input-group">
|
<div class="input-group">
|
||||||
<div class="input-group-btn">
|
<div class="input-group-btn">
|
||||||
<button type="button" class="btn btn-default dropdown-toggle balanceCurrencyDropdown" data-toggle="dropdown" aria-expanded="false">
|
<button type="button"
|
||||||
<span>{{ defaultCurrency.symbol|raw }}</span> <span class="caret"></span>
|
class="btn btn-default dropdown-toggle currency-dropdown" id="currency_dropdown_{{ name }}" data-toggle="dropdown" aria-expanded="false">
|
||||||
|
<span id="currency_select_symbol_{{ name }}">{{ defaultCurrency.symbol|raw }}</span> <span class="caret"></span>
|
||||||
</button>
|
</button>
|
||||||
<ul class="dropdown-menu" role="menu">
|
<ul class="dropdown-menu currency-dropdown-menu" role="menu">
|
||||||
{% for currency in currencies %}
|
{% for currency in currencies %}
|
||||||
<li><a href="#" class="currencySelect" data-id="{{ currency.id }}" data-field="balance" data-currency="{{ currency.code }}"
|
<li>
|
||||||
data-symbol="{{ currency.symbol }}">{{ currency.name }}</a></li>
|
<a href="#"
|
||||||
|
class="currency-option"
|
||||||
|
data-id="{{ currency.id }}"
|
||||||
|
data-name="{{ name }}"
|
||||||
|
data-currency="{{ currency.code }}"
|
||||||
|
data-symbol="{{ currency.symbol|raw }}">{{ currency.name }}</a></li>
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
{{ Form.input('number', name, value, options) }}
|
{{ Form.input('number', name, value, options) }}
|
||||||
|
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
{% include 'form/feedback.twig' %}
|
{% include 'form/feedback.twig' %}
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<input type="hidden" name="balance_currency_id" value="{{ defaultCurrency.id }}"/>
|
<input type="hidden" name="amount_currency_id_{{ name }}" value="{{ defaultCurrency.id }}"/>
|
||||||
</div>
|
</div>
|
||||||
|
Loading…
Reference in New Issue
Block a user