From ffa6a3e8652faed0c3dc10ac54c916cc90f651c1 Mon Sep 17 00:00:00 2001 From: ECHibki Date: Sun, 25 Mar 2018 01:29:17 -0400 Subject: [PATCH] CSS styling and loading threads --- board-script.js | 90 ++ board-style.css | 123 ++ class/queue-database-construction.php | 110 +- class/twitter-connection.php | 35 +- error_log | 2530 +++------------------------------ index.php => fetch.php | 0 index.php | 62 +- readme.md | 3 + 8 files changed, 602 insertions(+), 2351 deletions(-) create mode 100644 board-script.js create mode 100644 board-style.css rewrite error_log (99%) copy index.php => fetch.php (100%) rewrite index.php (89%) create mode 100644 readme.md diff --git a/board-script.js b/board-script.js new file mode 100644 index 0000000..c4ed33e --- /dev/null +++ b/board-script.js @@ -0,0 +1,90 @@ +function moveTimer(){ + var time_node = document.getElementById("time"); + var time = Math.floor(Date.now() / 1000); + var seconds = 60 - (time % 900) % 60; + var minutes = 15 - Math.floor((time % 900) / 60); + if(seconds == 60) { + seconds = 0; + minutes++; + } + if(seconds < 10) + time_node.textContent = "" + (minutes + ":0" + seconds); + else + time_node.textContent = "" + (minutes + ":" + seconds); +} + +function setCatalog(){ + document.cookie = "display=catalog" + var threads = document.getElementsByClassName("thread-container-list"); + var item_len = threads.length ; + for (var thread = item_len - 1 ; thread >= 0; thread--){ + + threads[thread].className = "thread-container"; + } + var rows = document.getElementsByClassName("row-container-list"); + var item_len = rows.length ; + for (var row = item_len - 1 ; row >= 0; row--){ + rows[row].className = "row-container"; + } + var contents = document.getElementsByClassName("thread-contents-list"); + var item_len = contents.length ; + for (var content = item_len - 1 ; content >= 0; content--){ + contents[content].className = "thread-contents"; + } + var lists = document.getElementsByClassName("interaction-item-list"); + var item_len = lists.length ; + for (var list = item_len - 1 ; list >= 0; list--){ + lists[list].className = "interaction-item"; + } + var details = document.getElementsByClassName("details-list"); + var item_len = details.length ; + for (var detail = item_len - 1 ; detail >= 0; detail--){ + details[detail].className = "details"; + } + var images = document.getElementsByClassName("thread-image-list"); + var item_len = images.length ; + for (var image = item_len - 1 ; image >= 0; image--){ + images[image].className = "thread-image"; + } + +} +function setList(){ + document.cookie = "display=list" + var threads = document.getElementsByClassName("thread-container"); + var item_len = threads.length ; + for (var thread = item_len - 1 ; thread >= 0 ; thread--){ + threads[thread].className = "thread-container-list"; + } + var rows = document.getElementsByClassName("row-container"); + var item_len = rows.length ; + for (var row = item_len - 1 ; row >= 0; row--){ + rows[row].className = "row-container-list"; + } + var contents = document.getElementsByClassName("thread-contents"); + var item_len = contents.length ; + for (var content = item_len - 1 ; content >= 0; content--){ + contents[content].className = "thread-contents-list"; + } + var lists = document.getElementsByClassName("interaction-item"); + var item_len = lists.length ; + for (var list = item_len - 1 ; list >= 0; list--){ + lists[list].className = "interaction-item-list"; + } + var details = document.getElementsByClassName("details"); + var item_len = details.length ; + for (var detail = item_len - 1 ; detail >= 0; detail--){ + details[detail].className = "details-list"; + } + var images = document.getElementsByClassName("thread-image"); + var item_len = images.length ; + for (var image = item_len - 1 ; image >= 0; image--){ + images[image].className = "thread-image-list"; + } +} + +moveTimer(); +setInterval(moveTimer, 1000); +console.log("#"); +document.getElementById("list-link").addEventListener("click", setList); +document.getElementById("catalog-link").addEventListener("click", setCatalog); + diff --git a/board-style.css b/board-style.css new file mode 100644 index 0000000..d6f9f88 --- /dev/null +++ b/board-style.css @@ -0,0 +1,123 @@ +body{ + +} + +li{ + list-style-type:none; +} + +.page-properties{ + margin:3% 6%; + background-image:url('images/__hibiki_kantai_collection_drawn_by_tsubasa_tsubasa__13a05f362f32e8029c7925607e08f1a6.jpg'); + background-position: -61% 30%; + background-attachment: fixed; + + } + +.row-container{ + position:relative; + float:left; + display:inline; + width:100%; + margin:3% 0%; +} + +.thread-container{ + position:relative; + float:left; + display:inline; + margin:0% 1%; + border: solid black 1px; + padding:1%; + width:20%; + + background-color:white; +} + +#top-settings{ + background: rgba(200,200,200,0.5); + padding: 0% 5% 1% 5%; +} + +#queue-form-container{ + display: inline-block; + padding:1%; + background-color: rgba(155,155,155,0.5); +} + +#input-container{ + display: inline-block; +} + +.details{ + margin:-5% -5% 2% -5%; + border:solid 1px black; + padding:2% 0% 2% 0%; + + background-color:rgb(255,255,200); +} + +.details-list{ + margin:-3.1% -8.8% 2% -8.8%; + border:solid 1px black; + padding:1%; + background-color:rgb(255,255,200); +} + + +.row-container-list{ + width:100%; + margin:3% 0%; +} + +.thread-container-list{ + margin:1% 2%; + padding:1% 3% 1% 3%; + width:35%; + border: 2px solid black; + + background-color:white; +} + +.interaction-item{ + display:inline-block; + margin: 1% 10%; +} + +.interaction-item-list{ + display:inline-block; + margin: 1% 5%; +} + +.thread-contents{ +} +.thread-contents-list{ +display:flex; +} + +.thread-image{ + +} + +.thread-text{ + margin-left:-10% +} + +.thread-text-list{ + +} + +.thread-image-list{ +border-left:solid black 1px; +margin-left:24%; +} + +.media{ + width:100%; + margin:1% 1% -5% -5%; + padding:3% 5% 3% 5%; +} + +#style-settings{} + +#comment-container{} \ No newline at end of file diff --git a/class/queue-database-construction.php b/class/queue-database-construction.php index 56fd967..0d87c46 100644 --- a/class/queue-database-construction.php +++ b/class/queue-database-construction.php @@ -23,8 +23,7 @@ class QueueDatabaseConstruction{ $this->connectToDatabase(); } - function connectToDatabase(){ - + function connectToDatabase(){ try { $this->connection = new PDO ("mysql:dbname=" . $this->sql_data["database"] . ";host=" . $this->sql_data["connection"], $this->sql_data["user"], $this->sql_data["pass"]); @@ -69,6 +68,68 @@ class QueueDatabaseConstruction{ } } + function buildThreadPosts($build_type, $display_type){ + $threads = $this->getThreads(); + $thread_counter = 0; + $row_size = 4; + $list_add = ""; + if($display_type == "list") $list_add = "-list"; + + if($build_type == "embeded"){ + ob_start(); + require_once("class/twitter-connection.php"); + ob_clean(); + + $twitter_connection = new TwitterConnection(); + + foreach($threads as $thread){ + $post_id = $thread[0]; + if($thread_counter % $row_size == 0) echo""; + $thread_counter++; + } + } + else{ + foreach($threads as $thread){ + $post_id = $thread[0]; + if($thread_counter % $row_size == 0) echo""; + $thread_counter++; + } + } + } + //Get the count of all items that are not unverified and not replies function getThreads(){ $statement = $this->connection->prepare("SELECT * FROM `Tweet` @@ -133,24 +194,17 @@ class QueueDatabaseConstruction{ } function buildQueueForm(){ - echo'
+ echo'
+
-



+

Input a comment and/or file

@@ -264,16 +318,7 @@ Artist: @ if(is_numeric ($key)) unset($result_arr[0][$key]); else { if($column == 2 && $display_images){ - $img_arr = explode(",", $col); - foreach($img_arr as $img){ - $img = urldecode($img); - $img_ext = pathinfo($img, PATHINFO_EXTENSION); - if(strcmp($img_ext, "png") == 0 || strcmp($img_ext, "jpg") == 0|| strcmp($img_ext, "gif") == 0) - echo "" . $this->createImageNode($img) . ""; - else - echo "" . $this->createVideoNode($img) . ""; - - } + $this->createMediaNodeFromRaw($col); } else{ if($key == "PostNo") echo "$col - $row"; @@ -287,11 +332,26 @@ Artist: @ echo "
"; } + function createMediaNodeFromRaw($img_path_unprocessed){ + $img_arr = explode(",", $img_path_unprocessed); + foreach($img_arr as $img){ + $img = urldecode($img); + $img_ext = pathinfo($img, PATHINFO_EXTENSION); + if(strcmp($img_ext, "png") == 0 || strcmp($img_ext, "jpg") == 0|| strcmp($img_ext, "gif") == 0) + echo "" . $this->createImageNode($img) . ""; + else + echo "" . $this->createVideoNode($img) . ""; + + } + } + function createImageNode($img_path){ - return ""; + //return ""; + return ""; } function createVideoNode($vid_path){ - return "