Pridana fotogalerie

This commit is contained in:
Michal Kváček
2018-11-21 11:24:50 +01:00
parent 5d7799f7db
commit 48c0f9bec4
37 changed files with 606 additions and 308 deletions
+12 -118
View File
@@ -1,118 +1,12 @@
// $ (document).ready (initDateTimePickers ());
// $ (document).on ('snippet-reloaded', initDateTimePickers);
//
// $ (document).on ('blur', '.select-date', function () {
// $ (this).datetimepicker ('hide');
// });
// $ (document).on ('blur', '.select-datetime', function () {
// $ (this).datetimepicker ('hide');
// });
//
// var i = 1;
//
// function initDateTimePickers() {
// var $datepicker = $ ('.select-date');
// var $datetimepicker = $ ('.select-datetime');
// var $timepicker = $ ('.select-time');
//
// $datepicker.each (function () {
// var $e = $ (this);
// if (!datePickerInitialized ($e)) {
// setDatepickerId ($e, 'datepicker-auto-id');
// initDatePicker ($e);
// }
// });
//
// $datetimepicker.each (function () {
// var init = $ (this).attr ('data-picker-init');
//
// if (init) {
// return;
// }
//
// var $positionedParent = getPositionedParent ($ (this));
// var id = setDatepickerId ($ (this), 'datetimepicker-auto-id');
//
// $ (this).attr ('data-toggle', 'datetimepicker');
// $ (this).attr ('data-target', '#' + id);
//
// $ (this).datetimepicker ({
// sideBySide: true,
// stepping: 10,
// format: "DD. MM. YYYY HH:mm",
// widgetParent: $positionedParent,
// useCurrent: false,
// locale: window.locale || 'cs'
// });
// $ (this).attr ('data-picker-init', true);
// });
//
// $timepicker.each (function () {
// var init = $ (this).attr ('data-picker-init');
//
// if (init) {
// return;
// }
//
// var id = setDatepickerId ($ (this), 'timepicker-auto-id');
// var $positionedParent = getPositionedParent ($ (this));
//
// $ (this).attr ('data-toggle', 'datetimepicker');
// $ (this).attr ('data-target', '#' + id);
//
// $ (this).datetimepicker ({
// sideBySide: true,
// stepping: 10,
// widgetParent: $positionedParent,
// format: "HH:mm",
// useCurrent: false,
// locale: window.locale || 'cs'
// });
// $ (this).attr ('data-picker-init', true);
// });
// }
//
// function getPositionedParent($e) {
// do {
// $e = $e.parent ();
// } while ($e.css ('position') !== 'relative');
//
// return $e;
// }
//
// function datePickerInitialized($element) {
// var init = $element.attr ('data-picker-init');
//
// return !!init;
// }
//
// function setDatepickerId($element, prefix, postfix) {
// if (typeof postfix === 'undefined') {
// postfix = 1;
// }
//
// var id = $element.attr ('id');
// if (id === "" || typeof id === 'undefined') {
// id = prefix + '-' + postfix++;
// $element.attr ('id', id);
// }
//
// return id;
// }
//
// function initDatePicker($element) {
// var id = $element.attr ('id');
// $element.attr ('data-toggle', 'datetimepicker');
// $element.attr ('data-target', '#' + id);
//
// var $positionedParent = getPositionedParent ($element);
// $element.datetimepicker ({
// format: "DD. MM. YYYY",
// useCurrent: false,
// widgetParent: $positionedParent,
// locale: window.locale || 'cs'
// });
//
// $element.attr ('data-picker-init', true);
// }
//
$ (document).ready (function () {
$ ('.select-time').datetimepicker ({
format: 'LT',
locale: 'cs',
stepping: 10,
});
$ ('.select-date').datetimepicker ({
format: 'D. M. Y',
locale: 'cs',
minDate: new Date ()
});
});
+24 -40
View File
@@ -4,50 +4,34 @@ $ (document).ready (function () {
}
});
// init sortable on reloaded snippet
$ (document).on ('snippet-reloaded', initSortable);
function initSortable() {
if (typeof Sortable === 'undefined') {
$.getScript ('/www/assets/dist/js/Sortable.js', initSortable);
} else {
var $elements = document.getElementsByClassName ("draggable-container");
if ($elements.length === 0) {
return;
var $elements = document.getElementsByClassName ("draggable-container");
if ($elements.length === 0) {
return;
}
for (i in $elements) {
var $el = $elements[i];
if (typeof $el !== 'object') {
continue;
}
for (i in $elements) {
var $el = $elements[i];
Sortable.create ($el, {
animation: 200,
handle: ".sort-handle",
draggable: ".draggable",
onEnd: function (evt) {
var ordered = [];
// get item ids
$ ('.sortable-item').each (function () {
var $e = $ (this);
ordered.push ($e.data ('id'));
});
if (typeof $el !== 'object') {
continue;
}
Sortable.create ($el, {
animation: 200,
handle: ".sort-handle",
draggable: ".draggable",
onEnd: function (evt) {
var ordered = [];
console.log(evt);
// get item ids
$ ('.sortable-item').each (function () {
var $e = $ (this);
ordered.push ($e.data ('id'));
});
// send ordered items
$.nette.ajax ({
url: evt.target.getAttribute('data-url'),
method: "post",
data: {
items: ordered
}
});
}
});
}
});
}
}
+29
View File
@@ -0,0 +1,29 @@
function readURL(input, preview) {
// ignore
if (preview == null) {
alert ('preview is null');
return;
}
// display preview in given element
if (input.files && input.files[0]) {
var reader = new FileReader ();
reader.onload = function (e) {
preview.attr ('src', e.target.result).show ();
};
reader.readAsDataURL (input.files[0]);
}
}
$ (".file-upload").change (function () {
var preview = null;
if ($ (this).data ('preview')) {
preview = $ ($ (this).data ('preview'));
}
readURL (this, preview);
});
+12
View File
@@ -0,0 +1,12 @@
$ (document).ready (function () {
// init WYSIWYG editors
var editorCounter = 0;
$ ('.wysiwyg').each (function () {
var $editor = $ (this);
var id = 'wysiwyg-editor-' + editorCounter++;
$editor.attr ('id', id);
new Jodit ('#' + id);
});
});
+2 -2
View File
@@ -1,5 +1,5 @@
@import "parts";
@import "titleImage";
@import "timeline";
@import "gallery";
+62
View File
@@ -0,0 +1,62 @@
.gallery {
&__container {
display: flex;
flex-wrap: wrap;
a {
color: white;
text-decoration: none;
}
}
&__item {
width: 33%;
filter: saturate(0.5);
position: relative;
img {
width: 100%;
}
&:hover {
filter: saturate(1);
.gallery__overlay {
display: block;
}
}
}
&__overlay {
display: none;
position: absolute;
background: rgba(0, 0, 0, 0.5);
color: white;
top: 0;
bottom: 0;
left: 0;
right: 0;
text-align: center;
padding: 10px;
}
&__buttons {
position: absolute;
top: 0;
left: 0;
right: 0;
background: rgba(0, 0, 0, 0.5);
padding: 5px;
color: white;
&, &__item {
display: none;
}
}
}
.image-preview {
max-width: 100%;
border: solid 1px;
margin: 10px 0;
display: none;
}
+2 -1
View File
@@ -1,11 +1,12 @@
.web-part {
margin-bottom: 3rem;
position: relative;
&__edit {
position: absolute;
top: 10px;
right: 10px;
font-size: 200%;
}
}
+9
View File
@@ -0,0 +1,9 @@
.title-image {
height: 700px;
width: 100%;
background-repeat: no-repeat;
background-size: cover;
background-position: center center;
margin-bottom: 3rem;
}