build 0001

This commit is contained in:
Hell13Cat
2023-03-15 23:12:23 +03:00
parent 52379174ea
commit 485136abdc
44 changed files with 31247 additions and 0 deletions
+7
View File
@@ -0,0 +1,7 @@
{
"preset": "airbnb",
"validateIndentation": 4,
"disallowTrailingComma": true,
"requireTrailingComma": false,
"excludeFiles": ["node_modules/**"]
}
+136
View File
@@ -0,0 +1,136 @@
var utils = {
getAttribute: function(el, label) {
return el[label];
},
setAttribute: function(el, label, value) {
el[label] = value;
},
wrap: function(el, className) {
if (!el) {
return;
}
var wrapper = document.createElement('div');
wrapper.className = className;
el.parentNode.insertBefore(wrapper, el);
el.parentNode.removeChild(el);
wrapper.appendChild(el);
},
addClass: function(el, className) {
if (!el) {
return;
}
if (el.classList) {
el.classList.add(className);
} else {
el.className += ' ' + className;
}
},
removeClass: function(el, className) {
if (!el) {
return;
}
if (el.classList) {
el.classList.remove(className);
} else {
el.className = el.className.replace(new RegExp('(^|\\b)' + className.split(' ').join('|') + '(\\b|$)', 'gi'), ' ');
}
},
hasClass: function(el, className) {
if (el.classList) {
return el.classList.contains(className);
} else {
return new RegExp('(^| )' + className + '( |$)', 'gi').test(el.className);
}
},
// ex Transform
// ex TransitionTimingFunction
setVendor: function(el, property, value) {
if (!el) {
return;
}
el.style[property.charAt(0).toLowerCase() + property.slice(1)] = value;
el.style['webkit' + property] = value;
el.style['moz' + property] = value;
el.style['ms' + property] = value;
el.style['o' + property] = value;
},
trigger: function(el, event, detail = null) {
if (!el) {
return;
}
let customEvent = new CustomEvent(event, {
detail: detail
});
el.dispatchEvent(customEvent);
},
Listener: {
uid: 0
},
on: function(el, events, fn) {
if (!el) {
return;
}
events.split(' ').forEach(event => {
var _id = this.getAttribute(el, 'lg-event-uid') || '';
utils.Listener.uid++;
_id += '&' + utils.Listener.uid;
this.setAttribute(el, 'lg-event-uid', _id);
utils.Listener[event + utils.Listener.uid] = fn;
el.addEventListener(event.split('.')[0], fn, false);
});
},
off: function(el, event) {
if (!el) {
return;
}
var _id = this.getAttribute(el, 'lg-event-uid');
if (_id) {
_id = _id.split('&');
for (var i = 0; i < _id.length; i++) {
if (_id[i]) {
var _event = event + _id[i];
if (_event.substring(0, 1) === '.') {
for (var key in utils.Listener) {
if (utils.Listener.hasOwnProperty(key)) {
if (key.split('.').indexOf(_event.split('.')[1]) > -1) {
el.removeEventListener(key.split('.')[0], utils.Listener[key]);
this.setAttribute(el, 'lg-event-uid', this.getAttribute(el, 'lg-event-uid').replace('&' + _id[i], ''));
delete utils.Listener[key];
}
}
}
} else {
el.removeEventListener(_event.split('.')[0], utils.Listener[_event]);
this.setAttribute(el, 'lg-event-uid', this.getAttribute(el, 'lg-event-uid').replace('&' + _id[i], ''));
delete utils.Listener[_event];
}
}
}
}
},
param: function(obj) {
return Object.keys(obj).map(function(k) {
return encodeURIComponent(k) + '=' + encodeURIComponent(obj[k]);
}).join('&');
}
};
export
default utils;
File diff suppressed because it is too large Load Diff
+93
View File
@@ -0,0 +1,93 @@
function httpGet(theUrl)
{
var xmlHttp = new XMLHttpRequest();
xmlHttp.open( "GET", theUrl, false );
xmlHttp.send( null );
return JSON.parse(xmlHttp.responseText);
}
function onchange(e){
var val = e.target.value;
console.log(val);
val_pars = val.split(" ");
val_end = val_pars[val_pars.length - 1];
url_req = location.origin + "/autoc/" + val_end;
resp_res = httpGet(url_req)["list"];
var tagsac = document.getElementById("tagnameac");
tagsac.innerHTML = '';
resp_res.forEach(function(item, i, resp_res) {
var add_elem = document.createElement("option");
add_elem.value = val.replace(val_end, item+" ");
tagsac.appendChild(add_elem);
});
}
function search(e){
if (e.keyCode === 13) {
var tagsac = document.getElementById("myInput");
var val = tagsac.value;
replacec = 1
while (replacec == 1) {
val = val.replace(" ", "+");
if(val.includes(" ")==false) {
replacec = 0
}
}
type = document.getElementById("selected-r").value;
url_req = location.origin + "/search/" + type + "/" + val;
resp_res = httpGet(url_req)["list"];
console.log(resp_res);
var imgc = document.getElementById("aniimated-thumbnials");
imgc.innerHTML = '';
resp_res.forEach(function(item, i, resp_res) {
var add_elem_a = document.createElement("button");
add_elem_a.setAttribute("onclick", "see_full('"+item["url_full"]+"', '"+item["id"]+"', '"+item["type"]+"')");
add_elem_a.setAttribute("id", item["id"]);
add_elem_a.setAttribute("class", "buttimg");
var add_elem_img = document.createElement("img");
add_elem_img.setAttribute("src", item["url_thumb"]);
add_elem_img.setAttribute("loading", "lazy");
add_elem_img.setAttribute("title", item["tags"]);
add_elem_img.setAttribute("data-src", "/static/gif/loading.gif");
add_elem_a.appendChild(add_elem_img);
imgc.appendChild(add_elem_a);
});
}
}
function see_full(url, id_button, type){
var fulldata = document.getElementById("fullimg");
if (fulldata != null){
fulldata.remove();
}
var add_elem_br = document.createElement("br");
var add_elem_p = document.createElement("p");
add_elem_p.setAttribute("class", "fullimagep");
add_elem_p.setAttribute("id", "fullimg");
var add_elem_a = document.createElement("a");
add_elem_a.setAttribute("href", "#"+id_button);
var add_elem_button = document.createElement("button");
add_elem_button.textContent = 'CLOSE';
add_elem_button.setAttribute("class", "buttonclose");
add_elem_button.setAttribute("onclick", "close_full()");
var add_elem_ai = document.createElement("a");
add_elem_ai.setAttribute("href", url);
add_elem_ai.setAttribute("target", "_blank");
var add_elem_img = document.createElement("img");
add_elem_img.setAttribute("src", url);
add_elem_img.setAttribute("class", "fullimage");
add_elem_ai.append(add_elem_img)
add_elem_p.appendChild(add_elem_button);
add_elem_p.appendChild(add_elem_br);
add_elem_p.appendChild(add_elem_ai);
var targetimg = document.getElementById(id_button);
targetimg.after(add_elem_p)
add_elem_a.click();
}
function close_full(){
var fulldata = document.getElementById("fullimg");
fulldata.remove();
}
function main_my(){
var tagBox = document.getElementById("myInput");
tagBox.addEventListener("input", onchange);
tagBox.addEventListener("keydown", search);
}