Working on save functionality

merge-requests/60/head
Mike Koch 7 years ago
parent 0418ff76ad
commit a139c7d351

@ -83,17 +83,20 @@ require_once(HESK_PATH . 'inc/show_admin_nav.inc.php');
<div class="modal-header" style="cursor: move">
<button type="button" class="close cancel-callback" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
<h4 class="modal-title" id="myModalLabel">
<?php echo 'Edit Custom Nav Element'; ?>
<?php echo 'Edit Custom Nav Element[!]'; ?>
</h4>
</div>
<form id="create-form" class="form-horizontal" data-toggle="validator">
<form id="manage-nav-element" class="form-horizontal" data-toggle="validator">
<input type="hidden" name="id">
<div class="modal-body">
<div class="row">
<div class="col-md-12">
<div class="form-group">
<label for="place" class="col-md-4 col-sm-12 control-label">Place[!]</label>
<div class="col-md-8 col-sm-12">
<select name="place" id="place" class="form-control">
<select name="place" id="place" class="form-control"
data-error="<?php echo htmlspecialchars($hesklang['this_field_is_required']); ?>"
required>
<option value="1">Homepage - Block</option>
<option value="2">Customer Navbar</option>
<option value="3">Staff Navbar</option>
@ -111,9 +114,11 @@ require_once(HESK_PATH . 'inc/show_admin_nav.inc.php');
<?php echo $language; ?>
</label>
<div class="col-md-8 col-sm-12">
<input type="text" name="text[]" class="form-control"
<input type="text" name="text" class="form-control"
data-text-language="<?php echo $language; ?>"
id="text[<?php echo $language; ?>" placeholder="<?php echo $language; ?>">
id="text[<?php echo $language; ?>" placeholder="<?php echo $language; ?>"
data-error="<?php echo htmlspecialchars($hesklang['this_field_is_required']); ?>"
required>
</div>
</div>
<?php endforeach; ?>
@ -125,9 +130,11 @@ require_once(HESK_PATH . 'inc/show_admin_nav.inc.php');
<?php echo $language; ?>
</label>
<div class="col-md-8 col-sm-12">
<input type="text" name="subtext[]" class="form-control"
<input type="text" name="subtext" class="form-control"
data-subtext-language="<?php echo $language; ?>"
id="subtext[<?php echo $language; ?>" placeholder="<?php echo $language; ?>">
id="subtext[<?php echo $language; ?>" placeholder="<?php echo $language; ?>"
data-error="<?php echo htmlspecialchars($hesklang['this_field_is_required']); ?>"
required>
</div>
</div>
<?php endforeach; ?>
@ -138,7 +145,9 @@ require_once(HESK_PATH . 'inc/show_admin_nav.inc.php');
<div class="form-group">
<label for="image-type" class="col-md-4 col-sm-12 control-label">Image Type[!]</label>
<div class="col-md-8 col-sm-12">
<select name="image-type" id="image-type" class="form-control">
<select name="image-type" id="image-type" class="form-control"
data-error="<?php echo htmlspecialchars($hesklang['this_field_is_required']); ?>"
required>
<option value="image-url">Image URL</option>
<option value="font-icon">Font Icon</option>
</select>
@ -151,9 +160,15 @@ require_once(HESK_PATH . 'inc/show_admin_nav.inc.php');
</div>
</div>
<div class="form-group" id="font-icon-group">
<p style="display:none" id="no-icon"><?php echo $hesklang['sm_no_icon']; ?></p>
<p style="display:none" id="search-icon"><?php echo $hesklang['sm_search_icon']; ?></p>
<p style="display:none"
id="footer-icon"><?php echo $hesklang['sm_iconpicker_footer_label']; ?></p>
<label for="font-icon" class="col-md-4 col-sm-12 control-label">Font Icon [!]</label>
<div class="col-md-8 col-sm-12">
<div class="btn btn-default iconpicker-container" data-toggle="iconpicker">
<div class="btn btn-default iconpicker-container" data-toggle="nav-iconpicker">
</div>
</div>
</div>
@ -162,11 +177,11 @@ require_once(HESK_PATH . 'inc/show_admin_nav.inc.php');
</div>
<div class="modal-footer">
<div class="btn-group">
<button type="button" class="btn btn-default cancel-callback" data-dismiss="modal">
<button type="button" class="btn btn-default cancel-button" data-dismiss="modal">
<i class="fa fa-times-circle"></i>
<span><?php echo $hesklang['cancel']; ?></span>
</button>
<button type="button" class="btn btn-success callback-btn">
<button type="submit" class="btn btn-success save-button">
<i class="fa fa-check-circle"></i>
<span><?php echo $hesklang['save']; ?></span>
</button>

@ -4,6 +4,16 @@ $(document).ready(function() {
loadTable();
bindEditModal();
$('[data-toggle="nav-iconpicker"]').iconpicker({
iconset: ['fontawesome', 'octicon'],
selectedClass: "btn-warning",
labelNoIcon: $('#no-icon').text(),
searchText: $('#search-icon').text(),
labelFooter: $('#footer-icon').text(),
resetButton: false,
icon: 'fa fa-adn'
});
$('select[name="place"]').change(function() {
var $subtextField = $('#subtext');
if (parseInt($(this).val()) === 1) {
@ -24,7 +34,47 @@ $(document).ready(function() {
$imageUrl.hide();
$fontIcon.show();
}
})
});
$('form#manage-nav-element').submit(function(e) {
e.preventDefault();
var $modal = $('#nav-element-modal');
var place = parseInt($modal.find('select[name="place"]').val());
var $textLanguages = $modal.find('[data-text-language]');
var text = {};
$.each($textLanguages, function() {
text[$(this).data('text-language')] = $(this).val();
});
var subtext = {};
if (place === 1) {
var $subtextLanguages = $modal.find('[data-subtext-language]');
$.each($subtextLanguages, function() {
subtext[$(this).data('subtext-language')] = $(this).val();
});
}
var imageUrl = null;
var fontIcon = null;
if ($modal.find('select[name="image-type"]').val() === 'image-url') {
imageUrl = $modal.find('input[name="image-url"]').val();
} else {
fontIcon = $modal.find('.iconpicker').find('input[type="hidden"]').val();
}
var data = {
place: place,
text: text,
subtext: subtext,
imageUrl: imageUrl,
fontIcon: fontIcon
};
console.log(data);
});
});
function loadTable() {
@ -92,7 +142,8 @@ function bindEditModal() {
var element = elements[$(this).parent().parent().find('[data-property="id"]').text()];
var $modal = $('#nav-element-modal');
$modal.find('select[name="place"]').val(element.place).text();
$modal.find('select[name="place"]').val(element.place);
$modal.find('input[name="id"]').val(element.id);
var $textLanguages = $modal.find('[data-text-language]');
$.each($textLanguages, function() {
var language = $(this).data('text-language');

Loading…
Cancel
Save