mirror of
https://github.com/shadoll/slavforest.git
synced 2025-10-26 23:18:40 +00:00
dev
This commit is contained in:
96
js/_actions.js
Normal file
96
js/_actions.js
Normal file
@@ -0,0 +1,96 @@
|
||||
/**
|
||||
*
|
||||
* @author sHa <sha@shadoll.com>
|
||||
* @package sCore
|
||||
* @version 17.5.9 (17.5.16 fixed)
|
||||
*
|
||||
*/
|
||||
;
|
||||
|
||||
/* AutoLoader */
|
||||
jQuery(document).ready(function(){
|
||||
jQuery("[data-autoload='true']").each(function(){
|
||||
load_objects(jQuery("#"+$(this).attr("id")));
|
||||
});
|
||||
});
|
||||
|
||||
/*
|
||||
Виклик:
|
||||
load_objects(jQuery("#container_id"));
|
||||
Параметри data- контейнеру:
|
||||
* - будь-які данні, будуть передані в викликаємий метод класу
|
||||
action - клас та метод що маємо викликати, якщо не задано берем з href
|
||||
method - метод Post або Get
|
||||
callback - функція яку буде викона після виконання запиту
|
||||
target - якщо вказано, то значення змінної html відповіді буде розміщенно всередені тегу
|
||||
якщо target не визначено, а відповідь має змінну html, то її значення буде розміщено в середені контейнеру
|
||||
template - ім'я php шаблону для формування змінної html
|
||||
autoload - true|false - автоматичне виконання запиту при завантаженні сторінки
|
||||
*/
|
||||
|
||||
var load_objects = function(container){
|
||||
if(jQuery(container)!=undefined){
|
||||
|
||||
var action = container.data('action');
|
||||
if (action==undefined)
|
||||
action = container.attr('href');
|
||||
|
||||
var method = container.data('method');
|
||||
if(method==undefined)
|
||||
method = 'GET';
|
||||
|
||||
// Отримуємо необхідну форму,
|
||||
// якщо не знайшли, беремо всі форми
|
||||
var form_data = jQuery("form[data-group='"+container.attr('id')+"']").serializeArray();
|
||||
// if (form_data[0] == undefined)
|
||||
// var form_data = jQuery('form').serializeArray();
|
||||
|
||||
// перетворюємо значення форми на об'ект data
|
||||
var data = new Object();
|
||||
jQuery.each(form_data, function() {
|
||||
if(this.value!='')
|
||||
data[this.name] = this.value;
|
||||
});
|
||||
|
||||
// додаємо до об'єкту data значання data- полів контейнеру
|
||||
jQuery.each(container.data(),function(n, v){
|
||||
if(n!='action' && n!='callback')
|
||||
data[n] = v;
|
||||
});
|
||||
|
||||
// додамо поточний url (хай буде)
|
||||
data["uri_source"] = window.location.href;
|
||||
|
||||
jQuery.ajax({
|
||||
url: action,
|
||||
type: method,
|
||||
data: data
|
||||
}).
|
||||
done(function(data){
|
||||
var response = jQuery.parseJSON(data);
|
||||
|
||||
var target = jQuery(response.target);
|
||||
console.log(target);
|
||||
if(target!=undefined)
|
||||
jQuery(target).html(response.html);
|
||||
else
|
||||
container.html(response.html);
|
||||
|
||||
if(response.callback!==undefined){
|
||||
callback = response.callback;
|
||||
}
|
||||
else if(container.data('callback')!==undefined){
|
||||
callback = container.data('callback');
|
||||
}
|
||||
else{
|
||||
callback = undefined;
|
||||
}
|
||||
if(callback!==undefined && typeof window[callback] == 'function') {
|
||||
window[callback](container,response);
|
||||
}
|
||||
}).
|
||||
fail(function( jqXHR, textStatus ){
|
||||
container.html("Request failed: " + textStatus);
|
||||
});
|
||||
}
|
||||
}
|
||||
20
js/script.js
20
js/script.js
@@ -1,3 +1,19 @@
|
||||
if ('serviceWorker' in navigator) {
|
||||
window.addEventListener('load', function() {
|
||||
navigator.serviceWorker.register('/sw.js', { scope: './' })
|
||||
.then(function(registration) {
|
||||
console.log('ServiceWorker registration successful with scope: ', registration.scope);
|
||||
})
|
||||
.catch(function(whut) {
|
||||
console.error('error... ');
|
||||
console.error(whut);
|
||||
});
|
||||
window.addEventListener('beforeinstallprompt', function(e) {
|
||||
console.log('beforeinstallprompt Event fired');
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
//LOADER/SPINNER
|
||||
$(window).bind("load", function() {
|
||||
|
||||
@@ -257,10 +273,10 @@ $(document).ready(function() {
|
||||
}
|
||||
if (name && emaild && message) {
|
||||
$.ajax({
|
||||
url: 'contact.php',
|
||||
url: 'contactengine.php',
|
||||
data: {
|
||||
name: name,
|
||||
emaild: emaild,
|
||||
email: emaild,
|
||||
subject: subject,
|
||||
message: message
|
||||
},
|
||||
|
||||
Reference in New Issue
Block a user