fixed object load
This commit is contained in:
parent
997dc5466d
commit
af8e44d1ce
209
back_users.sql
Normal file
209
back_users.sql
Normal file
|
@ -0,0 +1,209 @@
|
||||||
|
-- phpMyAdmin SQL Dump
|
||||||
|
-- version 5.2.1
|
||||||
|
-- https://www.phpmyadmin.net/
|
||||||
|
--
|
||||||
|
-- Хост: db
|
||||||
|
-- Время создания: Июл 01 2023 г., 08:40
|
||||||
|
-- Версия сервера: 8.0.33
|
||||||
|
-- Версия PHP: 8.1.19
|
||||||
|
|
||||||
|
SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO";
|
||||||
|
START TRANSACTION;
|
||||||
|
SET time_zone = "+00:00";
|
||||||
|
|
||||||
|
|
||||||
|
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
|
||||||
|
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
|
||||||
|
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
|
||||||
|
/*!40101 SET NAMES utf8mb4 */;
|
||||||
|
|
||||||
|
--
|
||||||
|
-- База данных: `users`
|
||||||
|
--
|
||||||
|
|
||||||
|
CREATE USER 'user'@'%' IDENTIFIED WITH mysql_native_password BY 'user';
|
||||||
|
GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES, RELOAD on *.* TO 'user'@'%' WITH GRANT OPTION;
|
||||||
|
|
||||||
|
|
||||||
|
-- CREATE DATABASE IF NOT EXISTS `users` DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci;
|
||||||
|
-- USE `users`;
|
||||||
|
|
||||||
|
-- --------------------------------------------------------
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Структура таблицы `admins`
|
||||||
|
--
|
||||||
|
|
||||||
|
CREATE TABLE `admins` (
|
||||||
|
`id` int NOT NULL,
|
||||||
|
`login` varchar(2000) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL,
|
||||||
|
`uid` int NOT NULL
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Дамп данных таблицы `admins`
|
||||||
|
--
|
||||||
|
|
||||||
|
INSERT INTO `admins` (`id`, `login`, `uid`) VALUES
|
||||||
|
(18, 'admin', 34);
|
||||||
|
|
||||||
|
-- --------------------------------------------------------
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Структура таблицы `objects`
|
||||||
|
--
|
||||||
|
|
||||||
|
CREATE TABLE `objects` (
|
||||||
|
`id` int NOT NULL,
|
||||||
|
`name` text NOT NULL,
|
||||||
|
`img` text NOT NULL,
|
||||||
|
`height` smallint NOT NULL,
|
||||||
|
`width` smallint NOT NULL,
|
||||||
|
`description` mediumtext NOT NULL,
|
||||||
|
`gid` int NOT NULL DEFAULT '0'
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
|
||||||
|
|
||||||
|
-- --------------------------------------------------------
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Структура таблицы `projects`
|
||||||
|
--
|
||||||
|
|
||||||
|
CREATE TABLE `projects` (
|
||||||
|
`id` int NOT NULL,
|
||||||
|
`name` text CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL,
|
||||||
|
`uid` int NOT NULL,
|
||||||
|
`body` json NOT NULL,
|
||||||
|
`img` mediumtext CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
|
||||||
|
|
||||||
|
-- --------------------------------------------------------
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Структура таблицы `sids`
|
||||||
|
--
|
||||||
|
|
||||||
|
CREATE TABLE `sids` (
|
||||||
|
`id` int NOT NULL,
|
||||||
|
`sid` text NOT NULL,
|
||||||
|
`uid` int NOT NULL
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
|
||||||
|
|
||||||
|
-- --------------------------------------------------------
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Структура таблицы `users`
|
||||||
|
--
|
||||||
|
|
||||||
|
CREATE TABLE `users` (
|
||||||
|
`id` int NOT NULL,
|
||||||
|
`login` varchar(2000) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL,
|
||||||
|
`pass` varchar(1000) NOT NULL,
|
||||||
|
`admin` int DEFAULT '0',
|
||||||
|
`uuid` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Дамп данных таблицы `users`
|
||||||
|
--
|
||||||
|
|
||||||
|
INSERT INTO `users` (`id`, `login`, `pass`, `admin`, `uuid`) VALUES
|
||||||
|
(34, 'admin', 'admin', 1, '7a910a34-8b80-4a60-8445-2400920be5d3%admin%%4a576825-deea-403d-bf0b-46bb98bb80fd#621');
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Индексы сохранённых таблиц
|
||||||
|
--
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Индексы таблицы `admins`
|
||||||
|
--
|
||||||
|
ALTER TABLE `admins`
|
||||||
|
ADD PRIMARY KEY (`id`),
|
||||||
|
ADD UNIQUE KEY `uid` (`uid`) USING BTREE;
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Индексы таблицы `objects`
|
||||||
|
--
|
||||||
|
ALTER TABLE `objects`
|
||||||
|
ADD PRIMARY KEY (`id`);
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Индексы таблицы `projects`
|
||||||
|
--
|
||||||
|
ALTER TABLE `projects`
|
||||||
|
ADD PRIMARY KEY (`id`),
|
||||||
|
ADD KEY `uid` (`uid`);
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Индексы таблицы `sids`
|
||||||
|
--
|
||||||
|
ALTER TABLE `sids`
|
||||||
|
ADD PRIMARY KEY (`id`),
|
||||||
|
ADD KEY `uid` (`uid`);
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Индексы таблицы `users`
|
||||||
|
--
|
||||||
|
ALTER TABLE `users`
|
||||||
|
ADD PRIMARY KEY (`id`);
|
||||||
|
|
||||||
|
--
|
||||||
|
-- AUTO_INCREMENT для сохранённых таблиц
|
||||||
|
--
|
||||||
|
|
||||||
|
--
|
||||||
|
-- AUTO_INCREMENT для таблицы `admins`
|
||||||
|
--
|
||||||
|
ALTER TABLE `admins`
|
||||||
|
MODIFY `id` int NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=19;
|
||||||
|
|
||||||
|
--
|
||||||
|
-- AUTO_INCREMENT для таблицы `objects`
|
||||||
|
--
|
||||||
|
ALTER TABLE `objects`
|
||||||
|
MODIFY `id` int NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=20;
|
||||||
|
|
||||||
|
--
|
||||||
|
-- AUTO_INCREMENT для таблицы `projects`
|
||||||
|
--
|
||||||
|
ALTER TABLE `projects`
|
||||||
|
MODIFY `id` int NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=27;
|
||||||
|
|
||||||
|
--
|
||||||
|
-- AUTO_INCREMENT для таблицы `sids`
|
||||||
|
--
|
||||||
|
ALTER TABLE `sids`
|
||||||
|
MODIFY `id` int NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=72;
|
||||||
|
|
||||||
|
--
|
||||||
|
-- AUTO_INCREMENT для таблицы `users`
|
||||||
|
--
|
||||||
|
ALTER TABLE `users`
|
||||||
|
MODIFY `id` int NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=35;
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Ограничения внешнего ключа сохраненных таблиц
|
||||||
|
--
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Ограничения внешнего ключа таблицы `admins`
|
||||||
|
--
|
||||||
|
ALTER TABLE `admins`
|
||||||
|
ADD CONSTRAINT `admins_ibfk_1` FOREIGN KEY (`uid`) REFERENCES `users` (`id`) ON DELETE RESTRICT ON UPDATE RESTRICT;
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Ограничения внешнего ключа таблицы `projects`
|
||||||
|
--
|
||||||
|
ALTER TABLE `projects`
|
||||||
|
ADD CONSTRAINT `projects_ibfk_1` FOREIGN KEY (`uid`) REFERENCES `users` (`id`) ON DELETE RESTRICT ON UPDATE RESTRICT;
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Ограничения внешнего ключа таблицы `sids`
|
||||||
|
--
|
||||||
|
ALTER TABLE `sids`
|
||||||
|
ADD CONSTRAINT `sids_ibfk_1` FOREIGN KEY (`uid`) REFERENCES `users` (`id`) ON DELETE RESTRICT ON UPDATE RESTRICT;
|
||||||
|
COMMIT;
|
||||||
|
|
||||||
|
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
|
||||||
|
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
|
||||||
|
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
|
7
index.js
7
index.js
|
@ -20,7 +20,7 @@ const app = express();
|
||||||
// const { mainModule } = require('process');
|
// const { mainModule } = require('process');
|
||||||
// const { name } = require('ejs');
|
// const { name } = require('ejs');
|
||||||
|
|
||||||
const maxRequestBodySize = '10mb';
|
const maxRequestBodySize = '50mb';
|
||||||
app.set('view engine', 'ejs');
|
app.set('view engine', 'ejs');
|
||||||
app.use(express.urlencoded({
|
app.use(express.urlencoded({
|
||||||
extended: false,
|
extended: false,
|
||||||
|
@ -296,6 +296,11 @@ app.post("/get_objs", (req,res) => {
|
||||||
if(cook['sid'] != null && cook['uuid'] != null){
|
if(cook['sid'] != null && cook['uuid'] != null){
|
||||||
db.gv("objects","gid",0,(odata)=>{
|
db.gv("objects","gid",0,(odata)=>{
|
||||||
// console.log(odata);
|
// console.log(odata);
|
||||||
|
// Object.keys(odata).forEach(([key,value]) => {
|
||||||
|
// });
|
||||||
|
odata.forEach(element => {
|
||||||
|
delete element["img"]
|
||||||
|
});
|
||||||
res.send({out:"good",body:odata});
|
res.send({out:"good",body:odata});
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
|
@ -25,7 +25,7 @@ function create(clas,x,y,body,id){
|
||||||
goto("/proj/"+proj_name);
|
goto("/proj/"+proj_name);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
else{
|
else if (db_data != null){
|
||||||
obj.src = db_data["img"];
|
obj.src = db_data["img"];
|
||||||
obj.title = `${db_data["name"]} \n ${db_data["description"]}`;
|
obj.title = `${db_data["name"]} \n ${db_data["description"]}`;
|
||||||
}
|
}
|
||||||
|
@ -107,7 +107,7 @@ function save(callback){
|
||||||
html2canvas(document.querySelector("body"),{height: 500, width:(window.innerWidth /1.65),x:(window.innerWidth / 5), y:250}).then(canvas => {
|
html2canvas(document.querySelector("body"),{height: 500, width:(window.innerWidth /1.65),x:(window.innerWidth / 5), y:250}).then(canvas => {
|
||||||
let scr = "";
|
let scr = "";
|
||||||
console.log(canvas.toDataURL().length);
|
console.log(canvas.toDataURL().length);
|
||||||
if (canvas.toDataURL().length < 80000) scr = canvas.toDataURL()
|
if (canvas.toDataURL().length < 100000) scr = canvas.toDataURL()
|
||||||
// console.log(scr);
|
// console.log(scr);
|
||||||
$.post( "/save_proj", {proj:JSON.stringify(objs),name:proj_name,img:scr})
|
$.post( "/save_proj", {proj:JSON.stringify(objs),name:proj_name,img:scr})
|
||||||
.done(function( res ) {
|
.done(function( res ) {
|
||||||
|
|
|
@ -13,7 +13,7 @@
|
||||||
<h1>hello admin</h1>
|
<h1>hello admin</h1>
|
||||||
<div class="nobj">
|
<div class="nobj">
|
||||||
<div class="img_preview">
|
<div class="img_preview">
|
||||||
<label for="img_file">max size 1mb</label><br>
|
<label for="img_file">max size 2mb</label><br>
|
||||||
<input type="file" id="img_file" onchange="previewFile()" accept="image/*" value="" maxlength="1"><br>
|
<input type="file" id="img_file" onchange="previewFile()" accept="image/*" value="" maxlength="1"><br>
|
||||||
<img src="" height="100" alt="Image preview...">
|
<img src="" height="100" alt="Image preview...">
|
||||||
</div>
|
</div>
|
||||||
|
@ -61,8 +61,8 @@
|
||||||
var img = document.querySelector('img').src;
|
var img = document.querySelector('img').src;
|
||||||
name = name.replace(" ","_");
|
name = name.replace(" ","_");
|
||||||
if (img != "http://n0rsrv2:3002/admin"){
|
if (img != "http://n0rsrv2:3002/admin"){
|
||||||
new_obj(name,img,0,0,description,(res)=>{
|
|
||||||
document.getElementById("obj_resp").innerHTML = "creating object";
|
document.getElementById("obj_resp").innerHTML = "creating object";
|
||||||
|
new_obj(name,img,0,0,description,(res)=>{
|
||||||
if(res["out"] == "bad" && res["err"] == "name"){
|
if(res["out"] == "bad" && res["err"] == "name"){
|
||||||
document.getElementById("obj_resp").innerHTML = "object already exist";
|
document.getElementById("obj_resp").innerHTML = "object already exist";
|
||||||
}
|
}
|
||||||
|
|
|
@ -109,7 +109,7 @@
|
||||||
</div>
|
</div>
|
||||||
<section class="main">
|
<section class="main">
|
||||||
<div id="proj_top">
|
<div id="proj_top">
|
||||||
<button id="proj_save_btn" onclick="save((res)=>{document.getElementById('proj_save_btn').innerHTML='saved';setTimeout((res)=>{document.getElementById('proj_save_btn').innerHTML='save'},3000)})">save</button>
|
<button id="proj_save_btn" onclick="document.getElementById('proj_save_btn').innerHTML='saving';save((res)=>{document.getElementById('proj_save_btn').innerHTML='saved';setTimeout((res)=>{document.getElementById('proj_save_btn').innerHTML='save'},3000)})">save</button>
|
||||||
<input id="proj_name"></input>
|
<input id="proj_name"></input>
|
||||||
</div>
|
</div>
|
||||||
</section>
|
</section>
|
||||||
|
@ -182,6 +182,7 @@
|
||||||
czone.classList.add("createzone");
|
czone.classList.add("createzone");
|
||||||
czones.append(czone)
|
czones.append(czone)
|
||||||
});
|
});
|
||||||
|
load_proj();
|
||||||
})
|
})
|
||||||
</script>
|
</script>
|
||||||
<script>
|
<script>
|
||||||
|
@ -189,6 +190,5 @@
|
||||||
// console.log(proj_name);
|
// console.log(proj_name);
|
||||||
document.getElementById("proj_name").value = proj_name;
|
document.getElementById("proj_name").value = proj_name;
|
||||||
// drag_start();
|
// drag_start();
|
||||||
load_proj();
|
|
||||||
</script>
|
</script>
|
||||||
<%- include('./static/end.ejs') %>
|
<%- include('./static/end.ejs') %>
|
|
@ -15,10 +15,15 @@
|
||||||
<form action="" method="get" onsubmit="return false;" id="reg_form">
|
<form action="" method="get" onsubmit="return false;" id="reg_form">
|
||||||
<h1>user registration</h1>
|
<h1>user registration</h1>
|
||||||
<section class="main_sec">
|
<section class="main_sec">
|
||||||
<input type="text" id="login" name="login">
|
<div>
|
||||||
<input type="password" id="pass" name="pass">
|
<input type="text" id="login" name="login" placeholder="login">
|
||||||
<input type="checkbox" name="admin" value='false' id="admin_check">
|
<input type="password" id="pass" name="pass" placeholder="password">
|
||||||
<button onclick='reg();'>reg</button>
|
<button onclick='reg();'>reg</button>
|
||||||
|
</div>
|
||||||
|
<div>
|
||||||
|
<label for="admin_check">admin</label>
|
||||||
|
<input type="checkbox" name="admin" value='false' id="admin_check">
|
||||||
|
</div>
|
||||||
<div id="reg_response"></div>
|
<div id="reg_response"></div>
|
||||||
</section>
|
</section>
|
||||||
<script>
|
<script>
|
||||||
|
|
Loading…
Reference in New Issue
Block a user