Merge pull request 'Merge changes to webrings' (#5) from development into main
All checks were successful
Website Sync / website-sync (push) Successful in 4s
Reviewed-on: #5
BIN
css/global/fonts/molecule31_font.ttf
Normal file
BIN
css/global/fonts/ms_pgothic.ttf
Normal file
@@ -58,22 +58,28 @@ img { image-rendering: pixelated;}
|
|||||||
font-weight: normal;
|
font-weight: normal;
|
||||||
font-style: normal;}
|
font-style: normal;}
|
||||||
|
|
||||||
|
|
||||||
@font-face {
|
@font-face {
|
||||||
font-family: 'basiic';
|
font-family: 'basiic';
|
||||||
src: url('../fonts/basiic.ttf') format('truetype');
|
src: url('../fonts/basiic.ttf') format('truetype');
|
||||||
font-weight: normal;
|
font-weight: normal;
|
||||||
|
font-style: normal;
|
||||||
|
}
|
||||||
|
|
||||||
|
@font-face {
|
||||||
|
font-family: 'molecule31';
|
||||||
|
src: url('../fonts/molecule31_font.ttf') format('truetype');
|
||||||
|
font-weight: normal;
|
||||||
font-style: normal;}
|
font-style: normal;}
|
||||||
|
|
||||||
@font-face {
|
@font-face {
|
||||||
font-family: 'beefont';
|
font-family: 'ms pgothic';
|
||||||
src: url('../fonts/beefont.ttf') format('truetype');
|
src: url('../fonts/ms_pgothic.ttf') format('truetype');
|
||||||
font-weight: normal;
|
font-weight: normal;
|
||||||
font-style: normal;}
|
font-style: normal;}
|
||||||
|
|
||||||
* { text-align: center; }
|
* { text-align: center; }
|
||||||
|
|
||||||
body { font-family: 'special elite', honyaji, basiic, monospace, serif, sans-serif; }
|
body { font-family: 'special elite', monospace, serif, sans-serif; }
|
||||||
|
|
||||||
/* ----------------- Color -------------------- */
|
/* ----------------- Color -------------------- */
|
||||||
|
|
||||||
|
|||||||
@@ -81,14 +81,23 @@
|
|||||||
align-content: center;}
|
align-content: center;}
|
||||||
|
|
||||||
.webrings .auto-scroll {
|
.webrings .auto-scroll {
|
||||||
|
height: 65%;
|
||||||
|
width: fit-content;
|
||||||
flex-direction: row;
|
flex-direction: row;
|
||||||
animation-name: scroll-webring-mobile;}
|
animation-name: scroll-webring-mobile;}
|
||||||
|
|
||||||
.webrings .scroll_one, .webrings .scroll_two {
|
.webrings .scroll_one, .webrings .scroll_two {
|
||||||
|
gap: 2em;
|
||||||
flex-direction: row;}
|
flex-direction: row;}
|
||||||
|
|
||||||
|
.webrings .scroll_one > div , .webrings .scroll_two > div {
|
||||||
|
flex-shrink: 0;
|
||||||
|
height: 100%;
|
||||||
|
width: fit-content;
|
||||||
|
}
|
||||||
|
|
||||||
.webrings .auto-scroll > * > div img {
|
.webrings .auto-scroll > * > div img {
|
||||||
height: 60px;
|
height: 100%;
|
||||||
width: auto;}
|
width: auto;}
|
||||||
|
|
||||||
.scroll_below-clip-box {
|
.scroll_below-clip-box {
|
||||||
@@ -127,6 +136,10 @@
|
|||||||
from {transform: translateX(calc(-50%));}
|
from {transform: translateX(calc(-50%));}
|
||||||
to {transform: translateX(0%);}}
|
to {transform: translateX(0%);}}
|
||||||
|
|
||||||
|
.webrings .auto-scroll {
|
||||||
|
animation-duration: 25s;
|
||||||
|
}
|
||||||
|
|
||||||
/* Vertical scroll text */
|
/* Vertical scroll text */
|
||||||
.verticalscroll .auto-scroll {
|
.verticalscroll .auto-scroll {
|
||||||
animation-name: scroll-vertical;
|
animation-name: scroll-vertical;
|
||||||
|
|||||||
BIN
img/webrings/transfem_cloud_button.png
Normal file
|
After Width: | Height: | Size: 875 B |
BIN
img/webrings/transfem_cloud_left_arrow.png
Normal file
|
After Width: | Height: | Size: 200 B |
BIN
img/webrings/transfem_cloud_right_arrow.png
Normal file
|
After Width: | Height: | Size: 205 B |
BIN
img/webrings/transfem_enby_arrow.png
Normal file
|
After Width: | Height: | Size: 946 B |
BIN
img/webrings/transfem_enby_banner.png
Normal file
|
After Width: | Height: | Size: 4.0 KiB |
BIN
img/webrings/transfem_enby_button.png
Normal file
|
After Width: | Height: | Size: 10 KiB |
BIN
img/webrings/transfem_enby_left_arrow.png
Normal file
|
After Width: | Height: | Size: 906 B |
BIN
img/webrings/transfem_enby_right_arrow.png
Normal file
|
After Width: | Height: | Size: 919 B |
BIN
img/webrings/transfem_trans_arrow.png
Normal file
|
After Width: | Height: | Size: 863 B |
BIN
img/webrings/transfem_trans_banner.png
Normal file
|
After Width: | Height: | Size: 4.3 KiB |
BIN
img/webrings/transfem_trans_button.png
Normal file
|
After Width: | Height: | Size: 4.0 KiB |
BIN
img/webrings/transfem_trans_left_arrow.png
Normal file
|
After Width: | Height: | Size: 636 B |
BIN
img/webrings/transfem_trans_right_arrow.png
Normal file
|
After Width: | Height: | Size: 610 B |
40
includes/common_webrings.inc.php
Normal file
@@ -0,0 +1,40 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
// Gets a file given an array with sources
|
||||||
|
function getFile(array $source){
|
||||||
|
$selected_source = $source["sources"][$source["selected_source"]];
|
||||||
|
|
||||||
|
if ($selected_source["source"] === "local") {
|
||||||
|
$file = file_get_contents(__DIR__ . $selected_source["url"]);
|
||||||
|
} else if ($selected_source["source"] === "internet") {
|
||||||
|
$curl = curl_init($selected_source["url"]);
|
||||||
|
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
|
||||||
|
|
||||||
|
$file = curl_exec($curl);
|
||||||
|
|
||||||
|
if ($file === false) {
|
||||||
|
echo "Error: " . curl_error($curl);
|
||||||
|
exit;
|
||||||
|
}
|
||||||
|
|
||||||
|
curl_close($curl);
|
||||||
|
}
|
||||||
|
return $file;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Returns the given sub-string given a initial search pattern, and a final end pattern.
|
||||||
|
function extractString(string $string,string $start_pattern, string $end_pattern) {
|
||||||
|
$start_pos = strpos($string,$start_pattern,strlen($start_pattern));
|
||||||
|
$end_pos = strpos($string,$end_pattern, $start_pos);
|
||||||
|
|
||||||
|
$extracted_string = substr($string, $start_pos, $end_pos - $start_pos);
|
||||||
|
|
||||||
|
return $extracted_string;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Self-explanatory
|
||||||
|
function scrapeWebsiteSites(array $source,string $start_pattern, string $end_pattern) {
|
||||||
|
$script = getFile($source);
|
||||||
|
$websites = extractString($script,$start_pattern,$end_pattern);
|
||||||
|
return $websites;
|
||||||
|
}
|
||||||
9
includes/transfemwebring.inc.php
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
|
||||||
|
require_once("common_webrings.inc.php");
|
||||||
|
require_once('transfemwebring_contr.inc.php');
|
||||||
|
require_once('transfemwebring_view.inc.php');
|
||||||
|
|
||||||
|
FEMRINGrender();
|
||||||
73
includes/transfemwebring.js
Normal file
@@ -0,0 +1,73 @@
|
|||||||
|
// based again off https://transring.neocities.org/ring.js :)
|
||||||
|
// which is based off https://juneish.neocities.org/resources/webstring/
|
||||||
|
|
||||||
|
{
|
||||||
|
const VALID_WIDGET_TYPES = ["transgender", "nonbinary"]
|
||||||
|
|
||||||
|
let transfemring = {
|
||||||
|
// sitelist (oldest to newest)
|
||||||
|
// strip the protocol off
|
||||||
|
sites: [{"id":1,"description":"You're here!","site_link":"fem.nz","author":"me","in_the_ring":true,"notes":"","created_at":"2025-10-07T08:10:09.659Z","updated_at":"2025-10-07T08:10:09.659Z"},{"id":2,"description":"transfem webdev :p","site_link":"skyler.lol","author":"Skyler!","in_the_ring":false,"notes":"","created_at":"2025-10-07T08:10:35.275Z","updated_at":"2025-10-07T08:10:35.275Z"},{"id":3,"description":"just a personal site for music, musings, and blog posts! ran by a transfem enby :)","site_link":"transferns.neocities.org","author":"Andie/Fern","in_the_ring":true,"notes":"","created_at":"2025-10-07T08:10:57.429Z","updated_at":"2025-12-11T02:14:39.833Z"},{"id":4,"description":"the most evil and repulsive website on planet earth","site_link":"cresentri.com","author":"cresentri","in_the_ring":true,"notes":"","created_at":"2025-10-07T08:11:30.742Z","updated_at":"2025-10-07T08:11:30.883Z"},{"id":5,"description":"i'm messing around with trying to learn how to use html for somewhat interesting things i guess","site_link":"iseel.neocities.org","author":"IseeL","in_the_ring":true,"notes":"","created_at":"2025-10-07T08:12:18.126Z","updated_at":"2025-10-07T08:29:03.148Z"},{"id":6,"description":"Just a place for me to share info about my projects and talk about things i enjoy \u003c3","site_link":"vivslakes.moe","author":"Viv","in_the_ring":true,"notes":"","created_at":"2025-10-07T08:13:05.476Z","updated_at":"2025-10-07T08:13:05.567Z"},{"id":7,"description":"all kinds of things!","site_link":"fionaruthbo.neocities.org","author":"Fiona Ruthbo","in_the_ring":true,"notes":"","created_at":"2025-10-07T08:14:16.412Z","updated_at":"2025-10-07T08:14:16.428Z"},{"id":8,"description":"Poetry, halftones, and Twitchy.","site_link":"klara.nz","author":"me!","in_the_ring":true,"notes":"","created_at":"2025-10-07T08:39:07.132Z","updated_at":"2025-10-07T08:57:26.399Z"},{"id":9,"description":"a little birdie on the internet :)","site_link":"kestrel.pet","author":"Kestrel","in_the_ring":true,"notes":"","created_at":"2025-11-15T06:57:16.625Z","updated_at":"2025-11-15T06:57:26.268Z"},{"id":10,"description":"autistic artist musician webdev dragon(girl?)thing; very gay; rawr","site_link":"ytd.wtf","author":"Yuri the Dragon","in_the_ring":true,"notes":"","created_at":"2025-12-30T09:57:00.232Z","updated_at":"2025-12-30T11:19:58.022Z"},{"id":11,"description":"This website runs on my living room heater","site_link":"izzy.kiwi","author":"Just Izzy","in_the_ring":false,"notes":"","created_at":"2025-12-30T11:19:12.953Z","updated_at":"2026-01-01T02:54:57.059Z"},{"id":12,"description":"a dump for all of my projects and adhd thoughts","site_link":"ikelene.dev","author":"Ikelene","in_the_ring":true,"notes":"","created_at":"2026-01-23T01:52:44.443Z","updated_at":"2026-01-23T01:52:44.463Z"},{"id":13,"description":"contains my mind space, which includes gaming, references, easter eggs, art, programming, etc!","site_link":"theabsoluterealm.com","author":"ezra","in_the_ring":true,"notes":"","created_at":"2026-01-23T01:54:27.672Z","updated_at":"2026-01-23T01:56:27.520Z"},{"id":14,"description":"Just a trans girl that likes radios, computers, creative freedom, art, etc not much more to it!","site_link":"cafepots.neocities.org","author":"Cafe_Pots","in_the_ring":true,"notes":"","created_at":"2026-01-30T08:36:39.133Z","updated_at":"2026-01-30T08:36:51.946Z"},{"id":15,"description":"Extension of my cute, sparkley, sprinkle filled transfem brain! ദ്ദി◝ ⩊ ◜)","site_link":"winzpir.neocities.org","author":"Winzpir/Angel","in_the_ring":true,"notes":"","created_at":"2026-02-20T01:31:47.843Z","updated_at":"2026-02-20T01:31:47.843Z"}],
|
||||||
|
root: "https://fem.nz"
|
||||||
|
}
|
||||||
|
console.log(transfemring)
|
||||||
|
transfemring.index = location.href.startsWith("file://") ? 0 : transfemring.sites.findIndex((entry) => location.href.includes("://" + entry.site_link));
|
||||||
|
let widget = document.currentScript.dataset.widget ?? "transgender";
|
||||||
|
|
||||||
|
function urlWithWidget(path) {
|
||||||
|
return `${transfemring.root}/ring/${widget}/${path}`
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!VALID_WIDGET_TYPES.includes(widget)) {
|
||||||
|
console.log("To web admin: transfem webring widget should have data-widget set to one of the following if configured (attribute will default to 'transgender'):", VALID_WIDGET_TYPES)
|
||||||
|
console.log(`data-widget currently set to: ${widget}`)
|
||||||
|
widget = "transgender"
|
||||||
|
}
|
||||||
|
|
||||||
|
if (transfemring.index === -1) {
|
||||||
|
document.currentScript.outerHTML = `
|
||||||
|
<div>
|
||||||
|
<div class="transfem-ring" style="display: flex; justify-content: center; align-items: center; gap: 3.278%; max-width: 244px; image-rendering: pixelated">
|
||||||
|
<a href="${transfemring.root}" target="_top"><img width="168" height="61" src="${urlWithWidget("banner.png")}"></a>
|
||||||
|
</div>
|
||||||
|
(not yet, but maybe soon!)
|
||||||
|
</div>
|
||||||
|
`;
|
||||||
|
} else {
|
||||||
|
function nextActive() {
|
||||||
|
let currentIndex = transfemring.index + 1
|
||||||
|
while (!location.href.includes(transfemring.sites[currentIndex % transfemring.sites.length].site_link)) {
|
||||||
|
if (transfemring.sites[currentIndex % transfemring.sites.length].in_the_ring) {
|
||||||
|
return transfemring.sites[currentIndex % transfemring.sites.length]
|
||||||
|
}
|
||||||
|
currentIndex++
|
||||||
|
}
|
||||||
|
return transfemring.sites[currentIndex % transfemring.sites.length]
|
||||||
|
}
|
||||||
|
function previousActive() {
|
||||||
|
let currentIndex = transfemring.index - 1
|
||||||
|
while (!location.href.includes(transfemring.sites.at(currentIndex).site_link)) {
|
||||||
|
if (transfemring.sites.at(currentIndex).in_the_ring) {
|
||||||
|
return transfemring.sites.at(currentIndex)
|
||||||
|
}
|
||||||
|
currentIndex--
|
||||||
|
}
|
||||||
|
return transfemring.sites[currentIndex % transfemring.sites.length]
|
||||||
|
}
|
||||||
|
let next = "https://" + nextActive().site_link
|
||||||
|
let prev = "https://" + previousActive().site_link;
|
||||||
|
document.currentScript.outerHTML = `
|
||||||
|
<div class="transfem-ring" style="display: flex; justify-content: center; align-items: center; gap: 3.278%; max-width: 244px; image-rendering: pixelated">
|
||||||
|
<a href="${prev}" target="_top" style="width: 12.295%">
|
||||||
|
<img width="30" height="32" src="${urlWithWidget("arrow.png")}" alt="previous site">
|
||||||
|
</a>
|
||||||
|
<a href="${transfemring.root}" target="_top" style="width: 68.852%">
|
||||||
|
<img width="168" height="61" src="${urlWithWidget("banner.png")}" alt="transfem webring">
|
||||||
|
</a>
|
||||||
|
<a href="${next}" target="_top" style="width: 12.295%">
|
||||||
|
<img width="30" height="32" src="${urlWithWidget("arrow.png")}" alt="next site" style="transform: scaleX(-1);">
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
`;
|
||||||
|
}
|
||||||
|
}
|
||||||
112
includes/transfemwebring_contr.inc.php
Normal file
@@ -0,0 +1,112 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
|
||||||
|
// File sources, images & scripts
|
||||||
|
$TRANSFEMRING_FILES = [
|
||||||
|
"nonbinary" => [
|
||||||
|
"arrow_path" => "../../../img/webrings/transfem_enby_arrow.png",
|
||||||
|
"banner_path" => "../../../img/webrings/transfem_enby_banner.png"
|
||||||
|
],
|
||||||
|
"transgender" => [
|
||||||
|
"arrow_path" => "../../../img/webrings/transfem_trans_arrow.png",
|
||||||
|
"banner_path" => "../../../img/webrings/transfem_trans_banner.png"
|
||||||
|
]
|
||||||
|
];
|
||||||
|
|
||||||
|
$TRANSFEMRING_SCRIPT_SOURCE = [
|
||||||
|
"selected_source" => 1,
|
||||||
|
"sources" =>
|
||||||
|
[["url" => "https://fem.nz/ring/transfemring.js",
|
||||||
|
"source" => "internet"],
|
||||||
|
["url" => "/transfemwebring.js",
|
||||||
|
"source" => "local"]]
|
||||||
|
];
|
||||||
|
|
||||||
|
// Specific variables for script
|
||||||
|
$TRANSFEMRING_ROOT = "https://fem.nz";
|
||||||
|
$TRANSFEMRING_VALID_WIDGET_TYPES = ["transgender", "nonbinary"];
|
||||||
|
|
||||||
|
// Personal identifiers/choices
|
||||||
|
$TRANSFEMRING_WIDGET_TYPE = $TRANSFEMRING_VALID_WIDGET_TYPES[1];
|
||||||
|
$TRANSFEMRING_ID = 8;
|
||||||
|
|
||||||
|
// Functions
|
||||||
|
function primarySplit(string $array) {
|
||||||
|
$i = 0;
|
||||||
|
while (strlen($array) !== 0) {
|
||||||
|
// Strip coma if found
|
||||||
|
if (str_starts_with($array,',')) {
|
||||||
|
$array = substr($array,1);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Get substring position and length
|
||||||
|
$start_pos = 1;
|
||||||
|
$end_pos = strpos($array,"}",1);
|
||||||
|
$item_len = $end_pos - $start_pos;
|
||||||
|
|
||||||
|
// Save website into array, and strip array
|
||||||
|
$return_array[$i] = substr($array,$start_pos,$item_len);
|
||||||
|
$array = substr($array,$item_len+2); // +2 from { and }
|
||||||
|
|
||||||
|
$i++;
|
||||||
|
}
|
||||||
|
return $return_array;
|
||||||
|
}
|
||||||
|
|
||||||
|
function secondarySplit(string $sub_array) {
|
||||||
|
while (strlen($sub_array) !== 0){
|
||||||
|
if (str_starts_with($sub_array,',')) {
|
||||||
|
$sub_array = substr($sub_array,1);
|
||||||
|
}
|
||||||
|
|
||||||
|
$key_start_pos = 1;
|
||||||
|
$key_end_pos = strpos($sub_array,"\"",1);
|
||||||
|
$key_len = $key_end_pos - $key_start_pos;
|
||||||
|
$key = substr($sub_array,$key_start_pos,$key_len);
|
||||||
|
|
||||||
|
$value_start_pos = $key_len + 3; // +3 from " , " and :
|
||||||
|
// Check if key is quoted
|
||||||
|
if (strpos($sub_array,"\"",$value_start_pos) != $value_start_pos) {
|
||||||
|
$keyhasQuotes = FALSE;
|
||||||
|
$value_end_pos = strpos($sub_array,",");
|
||||||
|
} else {
|
||||||
|
$value_start_pos++; // +1 from "
|
||||||
|
$value_end_pos = strpos($sub_array,"\"",$value_start_pos);
|
||||||
|
$keyhasQuotes = TRUE;
|
||||||
|
}
|
||||||
|
$value_len = $value_end_pos - $value_start_pos;
|
||||||
|
$value = substr($sub_array,$value_start_pos,$value_len);
|
||||||
|
|
||||||
|
$return_sub_array[$key] = $value;
|
||||||
|
|
||||||
|
$sub_sub_array_len = $key_len + $value_len + 3; // +3 from " , " and :
|
||||||
|
if ($keyhasQuotes) {
|
||||||
|
$sub_sub_array_len = $sub_sub_array_len + 2; // +2 from " and "
|
||||||
|
}
|
||||||
|
|
||||||
|
$sub_array = substr($sub_array,$sub_sub_array_len);
|
||||||
|
}
|
||||||
|
return $return_sub_array;
|
||||||
|
}
|
||||||
|
|
||||||
|
$transfemring_sites = scrapeWebsiteSites($TRANSFEMRING_SCRIPT_SOURCE,'sites: [',']');
|
||||||
|
$transfemring_sites = primarySplit($transfemring_sites);
|
||||||
|
for ($i = 0; $i < sizeof($transfemring_sites); $i++) {
|
||||||
|
$depured_transfemring_sites[$i] = secondarySplit($transfemring_sites[$i]);
|
||||||
|
}
|
||||||
|
$transfemring_sites = $depured_transfemring_sites;
|
||||||
|
|
||||||
|
for ($i = 1; $i < count($transfemring_sites); $i++){
|
||||||
|
if ($transfemring_sites[$i]['id'] == $TRANSFEMRING_ID) {
|
||||||
|
|
||||||
|
$transfem_prev = 'https://' . $transfemring_sites[($i-1)]["site_link"];
|
||||||
|
$transfem_current = 'https://' . $transfemring_sites[($i)]["site_link"];
|
||||||
|
$transfem_next = 'https://' . $transfemring_sites[($i+1)]["site_link"];
|
||||||
|
$found = TRUE;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!isset($found)) {
|
||||||
|
echo ("ERROR ID NOT FOUND");
|
||||||
|
}
|
||||||
20
includes/transfemwebring_view.inc.php
Normal file
@@ -0,0 +1,20 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
|
||||||
|
function FEMRINGrender(){
|
||||||
|
global $TRANSFEMRING_ROOT, $TRANSFEMRING_FILES, $TRANSFEMRING_WIDGET_TYPE, $transfem_prev, $transfem_next;
|
||||||
|
?>
|
||||||
|
<div class="transfem-ring" style="display: flex; justify-content: center; align-items: center; image-rendering: pixelated;">
|
||||||
|
<a href="<?php echo $transfem_prev ?>" target="_top" style="height: 100%; width: 15.574%;">
|
||||||
|
<img src="<?php echo $TRANSFEMRING_FILES[$TRANSFEMRING_WIDGET_TYPE]["arrow_path"]; ?>" alt="previous site" style="vertical-align: middle; height: 100%;">
|
||||||
|
</a>
|
||||||
|
<a href="<?php echo $TRANSFEMRING_ROOT ?>" target="_top" style="height: 100%; width: 68.852%;">
|
||||||
|
<img src="<?php echo $TRANSFEMRING_FILES[$TRANSFEMRING_WIDGET_TYPE]["banner_path"]; ?>" alt="transfem webring" style="vertical-align: middle; height: 100%;">
|
||||||
|
</a>
|
||||||
|
<a href="<?php echo $transfem_next ?>" target="_top" style="height: 100%; width: 15.574%;">
|
||||||
|
<img src="<?php echo $TRANSFEMRING_FILES[$TRANSFEMRING_WIDGET_TYPE]["arrow_path"]; ?>" alt="next site" style="transform: scaleX(-1); vertical-align: middle; height: 100%;">
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
<?php
|
||||||
|
}
|
||||||
9
includes/transingtheinternet.inc.php
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
|
||||||
|
require_once("common_webrings.inc.php");
|
||||||
|
require_once('transingtheinternet_contr.inc.php');
|
||||||
|
require_once('transingtheinternet_view.inc.php');
|
||||||
|
|
||||||
|
TRANSINGrender();
|
||||||
926
includes/transingtheinternet.js
Normal file
@@ -0,0 +1,926 @@
|
|||||||
|
// webstring by june @ juneish.neocities.org
|
||||||
|
|
||||||
|
{
|
||||||
|
let webring = {
|
||||||
|
// sites in the ring
|
||||||
|
// remove the https://
|
||||||
|
sites: [
|
||||||
|
//"elijahposttrash.neocities.org",
|
||||||
|
"napkinonline.nekoweb.org",
|
||||||
|
"cossechan.nekoweb.org",
|
||||||
|
"rainfrog.nekoweb.org",
|
||||||
|
"lotusmoonstart.neocities.org",
|
||||||
|
"foxlore.neocities.org",
|
||||||
|
"butterfly3000.neocities.org",
|
||||||
|
"zimawtf.neocities.org",
|
||||||
|
"princesschainsaw.neocities.org",
|
||||||
|
"homopile.neocities.org",
|
||||||
|
"ruitherga.neocities.org",
|
||||||
|
"tudorcottage.neocities.org",
|
||||||
|
"jorse.neocities.org",
|
||||||
|
"the-ivesofmarch.neocities.org",
|
||||||
|
"pombogay.neocities.org",
|
||||||
|
"ries.neocities.org",
|
||||||
|
"coffeeplant.neocities.org",
|
||||||
|
"eviltmasccatboypili.neocities.org",
|
||||||
|
"kiwiandoesthings.place",
|
||||||
|
"liquid-sunshine.neocities.org",
|
||||||
|
"winchuckster.neocities.org",
|
||||||
|
"marlena.app",
|
||||||
|
"clare.nekoweb.org",
|
||||||
|
"lexthesilly.neocities.org",
|
||||||
|
"giantmolecular.cloud",
|
||||||
|
"caterpillarangel.neocities.org",
|
||||||
|
"quinnbozon.nekoweb.org",
|
||||||
|
"endy-boi.neocities.org",
|
||||||
|
"thelostsignal.neocities.org",
|
||||||
|
"tesseractcube.neocities.org",
|
||||||
|
"americanachronism.neocities.org",
|
||||||
|
"attissillies.neocities.org",
|
||||||
|
"chirpylaura.neocities.org",
|
||||||
|
"xenon-starz.neocities.org",
|
||||||
|
"yoyle.city",
|
||||||
|
"julians-art.neocities.org",
|
||||||
|
"djsng.neocities.org",
|
||||||
|
"maehat.neocities.org",
|
||||||
|
"plaguecore.neocities.org",
|
||||||
|
"enteragoodnamehere.neocities.org",
|
||||||
|
"brooklynights.nekoweb.org",
|
||||||
|
"5k1n3473r.neocities.org",
|
||||||
|
"loserlost.neocities.org",
|
||||||
|
"knife-in-the-coffee.neocities.org",
|
||||||
|
"wheel-of-fortune.neocities.org",
|
||||||
|
"starboystation.neocities.org",
|
||||||
|
"lemonsprout.neocities.org",
|
||||||
|
"bloodbathspite.neocities.org",
|
||||||
|
"stargazing.nekoweb.org",
|
||||||
|
"b1temark.neocities.org",
|
||||||
|
"vinventolin.neocities.org",
|
||||||
|
"mfdook.neocities.org",
|
||||||
|
"conners1corner.neocities.org",
|
||||||
|
"backtick.nekoweb.org",
|
||||||
|
"odriscoll.neocities.org",
|
||||||
|
"fireye.coffee",
|
||||||
|
"iso-bel.computer",
|
||||||
|
"xpvm.net",
|
||||||
|
"jaennymorton.neocities.org",
|
||||||
|
"flimsknoght.neocities.org",
|
||||||
|
"www.honeyteaaa.art",
|
||||||
|
"androbohij.cc",
|
||||||
|
"nickyturner.neocities.org",
|
||||||
|
"colgator.neocities.org",
|
||||||
|
"vabu.nekoweb.org",
|
||||||
|
"the-disorganized-mind-palace.neocities.org",
|
||||||
|
"clementinesyumehaven.neocities.org",
|
||||||
|
"shittymeat999.neocities.org",
|
||||||
|
"starfield.nekoweb.org",
|
||||||
|
"weban3e1.neocities.org",
|
||||||
|
"kaidoesartzz.nekoweb.org",
|
||||||
|
"natsfixations.neocities.org",
|
||||||
|
"bensect.space",
|
||||||
|
"wackysworld.neocities.org",
|
||||||
|
"webgutter.neocities.org",
|
||||||
|
"iseel.neocities.org",
|
||||||
|
"samsolarsystem.neocities.org",
|
||||||
|
"thestrangeemporium.neocities.org",
|
||||||
|
"chromix.nekoweb.org",
|
||||||
|
"eonsadrift.nekoweb.org",
|
||||||
|
"juliesqueaks.neocities.org",
|
||||||
|
"danzig.nekoweb.org",
|
||||||
|
"barkode.neocities.org",
|
||||||
|
"mustymixtape.neocities.org",
|
||||||
|
"charmiesworld.neocities.org",
|
||||||
|
"kadyjerry.neocities.org",
|
||||||
|
"notes-from-michaels-desk.neocities.org",
|
||||||
|
"sleeping-satan.neocities.org",
|
||||||
|
"integratedvoices.neocities.org",
|
||||||
|
"ephesusmoon.neocities.org",
|
||||||
|
"aglovale.nekoweb.org",
|
||||||
|
"friendshapedplant.neocities.org",
|
||||||
|
"animalgirlssanctuary.neocities.org",
|
||||||
|
"cynderthekitsune.nekoweb.org",
|
||||||
|
"spaceblog.neocities.org",
|
||||||
|
"skyllrk.neocities.org",
|
||||||
|
"femtanyl03.neocities.org",
|
||||||
|
"jennie-archives.neocities.org",
|
||||||
|
"mcdougmuffin.neocities.org",
|
||||||
|
"bunnyboyblog.neocities.org",
|
||||||
|
"wizardhell.neocities.org",
|
||||||
|
"mightbemod.neocities.org",
|
||||||
|
"esiacannotforget.neocities.org",
|
||||||
|
"skyler.lol",
|
||||||
|
"pokeymanatee4.xyz",
|
||||||
|
"hereafterlaughter.neocities.org",
|
||||||
|
"fresh1219.neocities.org",
|
||||||
|
"letsgoleelee.neocities.org",
|
||||||
|
"rue04.neocities.org",
|
||||||
|
"cubething.dev",
|
||||||
|
"mostsilliest.nekoweb.org",
|
||||||
|
"mavisdeluna.art",
|
||||||
|
"somebit.neocities.org",
|
||||||
|
"themarshe.neocities.org",
|
||||||
|
"cryotato.github.io",
|
||||||
|
"girlboybird.hotglue.me",
|
||||||
|
"crowguinisonline.neocities.org",
|
||||||
|
"daisybells.neocities.org",
|
||||||
|
"crypticamanita.neocities.org",
|
||||||
|
"orbitt.sbs",
|
||||||
|
"0ldw3bl0v3r.neocities.org",
|
||||||
|
"socsie.space",
|
||||||
|
"exclave.city",
|
||||||
|
"michoislost.nekoweb.org",
|
||||||
|
"kero.net",
|
||||||
|
"musicalmatchalatte.gay",
|
||||||
|
"somewhere-city.neocities.org",
|
||||||
|
"bellpepperfan.neocities.org",
|
||||||
|
"ancientangel333.neocities.org",
|
||||||
|
"thealleyway.neocities.org",
|
||||||
|
"maycithegal.nekoweb.org",
|
||||||
|
"ikelene.nekoweb.org",
|
||||||
|
"jackpurrin.me",
|
||||||
|
"angelnetcast.com",
|
||||||
|
"ourfriendsplace.neocities.org",
|
||||||
|
"ceefax.nekoweb.org",
|
||||||
|
"mrwrzr.neocities.org",
|
||||||
|
"darxori.neocities.org",
|
||||||
|
"sugarsamu.neocities.org",
|
||||||
|
"leonie.lgbt",
|
||||||
|
"april.nekoweb.org",
|
||||||
|
"computersoda.neocities.org",
|
||||||
|
"neonspiral.neocities.org",
|
||||||
|
"werewiire.neocities.org",
|
||||||
|
"ollie-okay.neocities.org",
|
||||||
|
"csarhere.nekoweb.org",
|
||||||
|
"mezbezls.neocities.org",
|
||||||
|
"playoffs-nem.neocities.org",
|
||||||
|
"peppers-wasteland.neocities.org",
|
||||||
|
"wlodekm.nekoweb.org",
|
||||||
|
"barkingdead.neocities.org",
|
||||||
|
"myepicsite424.neocities.org",
|
||||||
|
"ridvenge.neocities.org",
|
||||||
|
"digitaldoggi.com",
|
||||||
|
"goodgirl.dev",
|
||||||
|
"mossyscorner.neocities.org",
|
||||||
|
"dospuntostr.es",
|
||||||
|
"rakii0zuu.neocities.org",
|
||||||
|
"the-icarus-archive.neocities.org",
|
||||||
|
"kaiswonderland.nekoweb.org",
|
||||||
|
"crowpunk.co",
|
||||||
|
"gl1tz1.monster",
|
||||||
|
"itztheo.neocities.org",
|
||||||
|
"deadvenge.neocities.org",
|
||||||
|
"thoushallkill.neocities.org",
|
||||||
|
"gwurb.neocities.org",
|
||||||
|
"starsforthelivinganddead.neocities.org",
|
||||||
|
"livvy94.neocities.org",
|
||||||
|
"mocha8686.neocities.org",
|
||||||
|
"ancientcrypt.neocities.org",
|
||||||
|
"jaspertheepic.neocities.org",
|
||||||
|
"crazed4sallymanders.neocities.org",
|
||||||
|
"summer-slushpups-hut.neocities.org",
|
||||||
|
"applejuicey.neocities.org",
|
||||||
|
"guzu2squared.neocities.org",
|
||||||
|
"martin-is-a-real-person.neocities.org",
|
||||||
|
"cosm-os.neocities.org",
|
||||||
|
"decomdiatom.neocities.org",
|
||||||
|
"mistakemp4.neocities.org",
|
||||||
|
"pogmom.me",
|
||||||
|
"masterluuc.neocities.org",
|
||||||
|
"cyntheticgal.neocities.org",
|
||||||
|
"moths-clubhouse.neocities.org",
|
||||||
|
"smoothscallywag.neocities.org",
|
||||||
|
"cwd.moe",
|
||||||
|
"korumeow.dev",
|
||||||
|
"cascaria.neocities.org",
|
||||||
|
"roguepebble.neocities.org",
|
||||||
|
"lizzardencounter.neocities.org",
|
||||||
|
"jamie.monster",
|
||||||
|
"natthecat.net",
|
||||||
|
"laprogrammatriceverde.crabdance.com",
|
||||||
|
"nathanntan.neocities.org",
|
||||||
|
"softfuzzycedar.neocities.org",
|
||||||
|
"didelphidae.neocities.org",
|
||||||
|
"darkxwolf17.nekoweb.org",
|
||||||
|
"wateringfruits.neocities.org",
|
||||||
|
"boredhobo.neocities.org",
|
||||||
|
"furbycoven.neocities.org",
|
||||||
|
"darkmomokocore.neocities.org",
|
||||||
|
"lilys-place.nekoweb.org",
|
||||||
|
"calzonie.neocities.org",
|
||||||
|
"jesterknight.neocities.org",
|
||||||
|
"lorekeeping.neocities.org",
|
||||||
|
"yokosplace.xyz",
|
||||||
|
"kris-scapes.neocities.org",
|
||||||
|
"digitalvenus.neocities.org",
|
||||||
|
"mewardgay.neocities.org",
|
||||||
|
"candyteeth.neocities.org",
|
||||||
|
"futch.nekoweb.org",
|
||||||
|
"okaynana.neocities.org",
|
||||||
|
"artielas.neocities.org",
|
||||||
|
"pucha1985.neocities.org",
|
||||||
|
"alienspaceinvader.neocities.org",
|
||||||
|
"smugwolf.neocities.org",
|
||||||
|
"nilistisk.neocities.org",
|
||||||
|
"dyingsignals.love",
|
||||||
|
"bananasplit.nekoweb.org",
|
||||||
|
"twinkpad.neocities.org",
|
||||||
|
"deadon.rip",
|
||||||
|
"icarusdean.neocities.org",
|
||||||
|
"estivalbloom.neocities.org",
|
||||||
|
"nightmarefish.neocities.org",
|
||||||
|
"planthouse.neocities.org",
|
||||||
|
"emo-mruczek.pet",
|
||||||
|
"mechagic.party",
|
||||||
|
"yuros-nest.neocities.org",
|
||||||
|
"carrick-pre.github.io",
|
||||||
|
"orlandoscoffee.neocities.org",
|
||||||
|
"bonesdale.neocities.org",
|
||||||
|
"elu-isa.neocities.org",
|
||||||
|
"cult.ist",
|
||||||
|
"killanova.neocities.org",
|
||||||
|
"usahanaa.neocities.org",
|
||||||
|
"necrodancing.neocities.org",
|
||||||
|
"enderwebs.neocities.org",
|
||||||
|
"p1xieparadis3.neocities.org",
|
||||||
|
"wyrppad.neocities.org",
|
||||||
|
"sluglife.neocities.org",
|
||||||
|
"elixirical.nekoweb.org",
|
||||||
|
"ghostingpen.neocities.org",
|
||||||
|
"cindyblossom.neocities.org",
|
||||||
|
"www.bearadactyl.net",
|
||||||
|
"lerariemann.nekoweb.org",
|
||||||
|
"mayonmnnaise.nekoweb.org",
|
||||||
|
"defoko-mp3.neocities.org",
|
||||||
|
"dipschitt.neocities.org",
|
||||||
|
"wanwanworld.neocities.org",
|
||||||
|
"chrysallis.neocities.org",
|
||||||
|
"plushcowz.neocities.org",
|
||||||
|
"sugarangel.neocities.org",
|
||||||
|
"toonilumi.neocities.org",
|
||||||
|
"tohellwithit.nekoweb.org",
|
||||||
|
"paulsworld.neocities.org",
|
||||||
|
"teddys-grove.neocities.org",
|
||||||
|
"simplyjason.neocities.org",
|
||||||
|
"cadapra.neocities.org",
|
||||||
|
"avaforward.neocities.org",
|
||||||
|
"toribytez.neocities.org",
|
||||||
|
"sudo.pink",
|
||||||
|
"jello01000101.neocities.org",
|
||||||
|
"rollergirlz.nekoweb.org",
|
||||||
|
"voidway.nekoweb.org",
|
||||||
|
"vanillachai42.neocities.org",
|
||||||
|
"snailburger.neocities.org",
|
||||||
|
"angelchime.neocities.org",
|
||||||
|
"verzephobe.neocities.org",
|
||||||
|
"happigreencactus.neocities.org",
|
||||||
|
"kaijukity.moe",
|
||||||
|
"dexterdaybreaker.neocities.org",
|
||||||
|
"celest3.neocities.org",
|
||||||
|
"branchlines.neocities.org",
|
||||||
|
"musubi.nekoweb.org",
|
||||||
|
"cutsfrombrokenglass.neocities.org",
|
||||||
|
"cherryangel.neocities.org",
|
||||||
|
"kid-koda.neocities.org",
|
||||||
|
"basophie.neocities.org",
|
||||||
|
"maddisonstoff.neocities.org",
|
||||||
|
"justpattie.neocities.org",
|
||||||
|
"toothspit.neocities.org",
|
||||||
|
"winteryear.neocities.org",
|
||||||
|
"neurasun.neocities.org",
|
||||||
|
"https://jackpurrin.me/",
|
||||||
|
"victrix.neocities.org",
|
||||||
|
"autostereogrammusic.com",
|
||||||
|
"ananotsocute.neocities.org",
|
||||||
|
"honeyedcharlatan.neocities.org",
|
||||||
|
"fleasonrats.neocities.org",
|
||||||
|
"oozy.neocities.org",
|
||||||
|
"dustbunnybedroom.neocities.org",
|
||||||
|
"siffarooni.neocities.org",
|
||||||
|
"blanche.nekoweb.org",
|
||||||
|
"follyfox.neocities.org",
|
||||||
|
"mothpup.pet",
|
||||||
|
"thicccatz.neocities.org",
|
||||||
|
"lucky-goose.neocities.org",
|
||||||
|
"betty-plays-bass.neocities.org",
|
||||||
|
"karchah.neocities.org",
|
||||||
|
"psyclone.nekoweb.org",
|
||||||
|
"gojidragon.com",
|
||||||
|
"atomicgothic.neocities.org",
|
||||||
|
"morocerasus.neocities.org",
|
||||||
|
"otto-the-coolest.neocities.org",
|
||||||
|
"citadark.neocities.org",
|
||||||
|
"fish.golf",
|
||||||
|
"glyph555.neocities.org",
|
||||||
|
"cmbcoldspot.neocities.org",
|
||||||
|
"feelingmachine.moe",
|
||||||
|
"dollblooms.neocities.org",
|
||||||
|
"max-iwtaco.neocities.org",
|
||||||
|
"roxsquires.gay",
|
||||||
|
"natural-stupidity.neocities.org",
|
||||||
|
"mothinary.neocities.org",
|
||||||
|
"invadergvim.neocities.org",
|
||||||
|
"pastel-skies.nekoweb.org",
|
||||||
|
"zaytnzcity.neocities.org",
|
||||||
|
"aria.coffee",
|
||||||
|
"melody-is.gay",
|
||||||
|
"gatorboi.neocities.org",
|
||||||
|
"disctwo.net",
|
||||||
|
"xduskashesreal.neocities.org",
|
||||||
|
"toasty.place",
|
||||||
|
"loserr-blog.neocities.org",
|
||||||
|
"puka-muriska.neocities.org",
|
||||||
|
"dynazenta.neocities.org",
|
||||||
|
"sea-angel-blu.neocities.org",
|
||||||
|
"form-and-thearchive.neocities.org",
|
||||||
|
"ann-html.neocities.org",
|
||||||
|
"lamebrain.neocities.org",
|
||||||
|
"calicocamcorders.neocities.org",
|
||||||
|
"mammifereaile.nekoweb.org",
|
||||||
|
"deyx.neocities.org",
|
||||||
|
"witchesbrew.nekoweb.org",
|
||||||
|
"possiblyaxolotl.com",
|
||||||
|
"onemoredoughnut.neocities.org",
|
||||||
|
"pudo.neocities.org",
|
||||||
|
"wizardzz.neocities.org",
|
||||||
|
"parkerspixels.neocities.org",
|
||||||
|
"coffeeknife.nekoweb.org",
|
||||||
|
"bearsjunkjournal.neocities.org",
|
||||||
|
"benitengu.neocities.org",
|
||||||
|
"mjdxp.neocities.org",
|
||||||
|
"floraltriptych.nekoweb.org",
|
||||||
|
"upsidedownhourglass.neocities.org",
|
||||||
|
"hello-m00n.github.io/personal_website",
|
||||||
|
"chanteryuutai.neocities.org",
|
||||||
|
"blobii.neocities.org",
|
||||||
|
"sillygirlclub.neocities.org",
|
||||||
|
"heyitsrksmith.com",
|
||||||
|
"skyla.moe",
|
||||||
|
"l0bst3rf4c3.neocities.org",
|
||||||
|
"flowergarden-cafe.neocities.org",
|
||||||
|
"byteemily.nekoweb.org",
|
||||||
|
"chrysalis.nehulus-vagus.com",
|
||||||
|
"ruby-makes-bad-games.neocities.org",
|
||||||
|
"dreamvalley.nekoweb.org",
|
||||||
|
"axelotl3001.neocities.org",
|
||||||
|
"www.callistoashley.dev",
|
||||||
|
"minonii.neocities.org",
|
||||||
|
"elfwyn.neocities.org",
|
||||||
|
"jessieisironicallym3.neocities.org",
|
||||||
|
"quaggos.neocities.org",
|
||||||
|
"centipederot.neocities.org",
|
||||||
|
"blinkie-net.neocities.org",
|
||||||
|
"rainbowgirl.neocities.org",
|
||||||
|
"skelenby.neocities.org",
|
||||||
|
"crowycawcaw.neocities.org",
|
||||||
|
"marcypink.neocities.org",
|
||||||
|
"kickaha.neocities.org",
|
||||||
|
"cyberfangz.site",
|
||||||
|
"deadraccoon.neocities.org",
|
||||||
|
"auroradynia.com",
|
||||||
|
"rubisdubis.nekoweb.org",
|
||||||
|
"moonflyxspace.neocities.org",
|
||||||
|
"luka-the-normal-boy.neocities.org",
|
||||||
|
"cobwebears.neocities.org",
|
||||||
|
"sophiebites.me",
|
||||||
|
"kimn.neocities.org",
|
||||||
|
"jupy.wtf",
|
||||||
|
"nerdforeternity.neocities.org",
|
||||||
|
"liliancipher.neocities.org",
|
||||||
|
"luvrksknskyejourney.org",
|
||||||
|
"starry622.neocities.org",
|
||||||
|
"sapphic-cafe.net",
|
||||||
|
"orcassiea.nekoweb.org",
|
||||||
|
"possumlark.org",
|
||||||
|
"captainicarus.neocities.org",
|
||||||
|
"mossmurder.neocities.org",
|
||||||
|
"dreamsofvinushka.neocities.org",
|
||||||
|
"r1xstixx420.neocities.org",
|
||||||
|
"aevuslabyrinth.neocities.org",
|
||||||
|
"smyrlok.neocities.org",
|
||||||
|
"thejay-ester.neocities.org",
|
||||||
|
"femboy.art",
|
||||||
|
"computerguts.gay",
|
||||||
|
"hench4life.neocities.org",
|
||||||
|
"hexate.neocities.org",
|
||||||
|
"oyasumihologram.nekoweb.org",
|
||||||
|
"voltdrake.neocities.org",
|
||||||
|
"insqueeration.neocities.org",
|
||||||
|
"stylrtechnologies.com",
|
||||||
|
"fruitycircus.com",
|
||||||
|
"nepetaquest.nekoweb.org",
|
||||||
|
"adilene.net",
|
||||||
|
"ivycryptid.nekoweb.org",
|
||||||
|
"bride2be.neocities.org",
|
||||||
|
"e10.neocities.org",
|
||||||
|
"alcatrazisland.neocities.org",
|
||||||
|
"aetherie-99.neocities.org",
|
||||||
|
"eringrimalkin.neocities.org",
|
||||||
|
"mortland.neocities.org",
|
||||||
|
"mintchipdotcom.neocities.org",
|
||||||
|
"cake.moe",
|
||||||
|
"sillyhearts.neocities.org",
|
||||||
|
"bscit.dev",
|
||||||
|
"ultrakill.nekoweb.org",
|
||||||
|
"chimerathing.neocities.org",
|
||||||
|
"catatonia.neocities.org",
|
||||||
|
"b1ttersw33t.neocities.org",
|
||||||
|
"stars-sys.neocities.org",
|
||||||
|
"remnantmaru.neocities.org",
|
||||||
|
"rainmirage.art",
|
||||||
|
"mettatons-fan-corner.neocities.org",
|
||||||
|
"postalbutch.neocities.org",
|
||||||
|
"illomen.neocities.org",
|
||||||
|
"rainparade.nekoweb.org",
|
||||||
|
"bramblingaround.neocities.org",
|
||||||
|
"columbiasthoughts.neocities.org",
|
||||||
|
"sunnishinez.neocities.org",
|
||||||
|
"alyxia.dev",
|
||||||
|
"sugrstrz.com",
|
||||||
|
"acidicalchemist.nekoweb.org",
|
||||||
|
"weatherchannel.neocities.org",
|
||||||
|
"electro-magnets.neocities.org",
|
||||||
|
"leamsiwl.nekoweb.org",
|
||||||
|
"asterhalloween.neocities.org",
|
||||||
|
"analoguecatalogue.neocities.org",
|
||||||
|
"sorrowshowers.neocities.org",
|
||||||
|
"stelfield.neocities.org",
|
||||||
|
"sepharia.neocities.org",
|
||||||
|
"sleepycircus.neocities.org",
|
||||||
|
"aestuarium.me",
|
||||||
|
"asmodeusvulcan.neocities.org",
|
||||||
|
"ender-the-phantom.neocities.org",
|
||||||
|
"multicolor-anarchist.neocities.org",
|
||||||
|
"beaus-silly-folder.nekoweb.org",
|
||||||
|
"ivyswell-tavern.neocities.org",
|
||||||
|
"tilde-os.neocities.org",
|
||||||
|
"din0r4wr.neocities.org",
|
||||||
|
"astracelestine.nekoweb.org",
|
||||||
|
"rockseize.neocities.org",
|
||||||
|
"breaker-one.neocities.org",
|
||||||
|
"oceansandy02.nekoweb.org",
|
||||||
|
"rawrware.neocities.org",
|
||||||
|
"octopen.neocities.org",
|
||||||
|
"lupinus.neocities.org",
|
||||||
|
"terrorbabs.neocities.org",
|
||||||
|
"zenithtrajectory.neocities.org",
|
||||||
|
"usprisoner.neocities.org",
|
||||||
|
"pentumbra.neocities.org",
|
||||||
|
"twitch.cymru",
|
||||||
|
"scenemime.neocities.org",
|
||||||
|
"chromaeleon.neocities.org",
|
||||||
|
"mossypawprints.neocities.org",
|
||||||
|
"columbidaes.neocities.org",
|
||||||
|
"hammerheader.neocities.org",
|
||||||
|
"simpolomeo.neocities.org",
|
||||||
|
"p1n4.neocities.org",
|
||||||
|
"felixtheghost.neocities.org",
|
||||||
|
"bushdoctor.neocities.org",
|
||||||
|
"cresentri.com",
|
||||||
|
"wallgof.neocities.org",
|
||||||
|
"kitnomaly.neocities.org",
|
||||||
|
"sunkissed-feathers.neocities.org",
|
||||||
|
"t-hates-you.neocities.org",
|
||||||
|
"iodatalog.neocities.org",
|
||||||
|
"disasterpiece.neocities.org",
|
||||||
|
"therianava.li",
|
||||||
|
"dragonworld.neocities.org",
|
||||||
|
"cosyivy.xyz",
|
||||||
|
"traversetown.neocities.org",
|
||||||
|
"wriorango.neocities.org",
|
||||||
|
"gh0sted.neocities.org",
|
||||||
|
"dqs114.neocities.org",
|
||||||
|
"serasworld.neocities.org",
|
||||||
|
"starhaven.neocities.org",
|
||||||
|
"nickolox.com",
|
||||||
|
"fawn.nekoweb.org",
|
||||||
|
"liondrakes.neocities.org",
|
||||||
|
"crowsite.neocities.org",
|
||||||
|
"euclids-exception.neocities.org",
|
||||||
|
"wrldrevolving.neocities.org",
|
||||||
|
"strawberryysnow.neocities.org",
|
||||||
|
"thecatingrey.neocities.org",
|
||||||
|
"novaverie.nekoweb.org",
|
||||||
|
"june-is-scared.nekoweb.org",
|
||||||
|
"skyedarkclaw.neocities.org",
|
||||||
|
"toriii.neocities.org",
|
||||||
|
"ephemeralstar.neocities.org",
|
||||||
|
"cybr.gay",
|
||||||
|
"ghostsalt.neocities.org",
|
||||||
|
"thievery.neocities.org",
|
||||||
|
"kasperspace.nekoweb.org",
|
||||||
|
"pastaaa1.neocities.org",
|
||||||
|
"kaymartz.neocities.org",
|
||||||
|
"mothwiingz.neocities.org",
|
||||||
|
"v1v1sect1on.nekoweb.org",
|
||||||
|
"amethystweb.nekoweb.org",
|
||||||
|
"rachelowens.co.uk",
|
||||||
|
"cicadastatic.neocities.org",
|
||||||
|
"pysgodyn3.neocities.org",
|
||||||
|
"ques-nook.neocities.org",
|
||||||
|
"vampfag.top",
|
||||||
|
"candybaroque.neocities.org",
|
||||||
|
"quesadillawizard.neocities.org",
|
||||||
|
"silas-hw.github.io",
|
||||||
|
"firefairy.neocities.org",
|
||||||
|
"noisecorvid.neocities.org",
|
||||||
|
"digitaldaydreams.neocities.org",
|
||||||
|
"cassiecandles.net",
|
||||||
|
"mxbo.neocities.org",
|
||||||
|
"virtually-isolated.neocities.org",
|
||||||
|
"anomalous.monster",
|
||||||
|
"bonbon-ufo.neocities.org",
|
||||||
|
"ibbofazblog.neocities.org",
|
||||||
|
"miniwildpanda.neocities.org",
|
||||||
|
"tvkid.online",
|
||||||
|
"koyanthrope.neocities.org",
|
||||||
|
"livormortis.neocities.org",
|
||||||
|
"zelltronic.neocities.org",
|
||||||
|
"goosetank.neocities.org",
|
||||||
|
"butchboothill.neocities.org",
|
||||||
|
"lopster.neocities.org",
|
||||||
|
"angelwood.xyz",
|
||||||
|
"spycicl.neocities.org",
|
||||||
|
"shuriee.neocities.org",
|
||||||
|
"sticktrix.neocities.org",
|
||||||
|
"mannequin.fun",
|
||||||
|
"blue-miaou.neocities.org",
|
||||||
|
"transferns.neocities.org",
|
||||||
|
"germpills.neocities.org",
|
||||||
|
"atarax.neocities.org",
|
||||||
|
"lifelesscold.neocities.org",
|
||||||
|
"raum.neocities.org",
|
||||||
|
"goleihm.neocities.org",
|
||||||
|
"fuzzybabycrow.neocities.org",
|
||||||
|
"kidwiththechemicalz.neocities.org",
|
||||||
|
"testtubesterone.nekoweb.org",
|
||||||
|
"cayway.neocities.org",
|
||||||
|
"www.fluffpumpkin.net",
|
||||||
|
"westwinddogs.cc",
|
||||||
|
"ikuda.eu",
|
||||||
|
"home.illuc.xyz",
|
||||||
|
"kakotheris.nekoweb.org",
|
||||||
|
"shadowfae.neocities.org",
|
||||||
|
"starlitseas.neocities.org",
|
||||||
|
"wolfdeer.neocities.org",
|
||||||
|
"fromthebog.neocities.org",
|
||||||
|
"bohwoah.neocities.org",
|
||||||
|
"pixelatedpeachjuice.neocities.org",
|
||||||
|
"atomixe.neocities.org",
|
||||||
|
"slushiecafe.neocities.org",
|
||||||
|
"sea-of-colors.neocities.org",
|
||||||
|
"cyrussoleil.neocities.org",
|
||||||
|
"zombi.neocities.org",
|
||||||
|
"confetticake.neocities.org",
|
||||||
|
"falin.moe",
|
||||||
|
"onetimeoccam.com",
|
||||||
|
"anon1mity.neocities.org",
|
||||||
|
"lesrallizes.neocities.org",
|
||||||
|
"robynnesnest.click",
|
||||||
|
"freakygabry.neocities.org",
|
||||||
|
"alphacentauri.neocities.org",
|
||||||
|
"haetae.pages.gay",
|
||||||
|
"mooface.nekoweb.org",
|
||||||
|
"msx.gay",
|
||||||
|
"draggianuniverse.neocities.org",
|
||||||
|
"sepulchredsacrament.neocities.org",
|
||||||
|
"spacemadness.neocities.org",
|
||||||
|
"datoxicwaltz.neocities.org",
|
||||||
|
"canine-anarchy.neocities.org",
|
||||||
|
"cannibalpilled.neocities.org",
|
||||||
|
"bloodthirstymasquerade.neocities.org",
|
||||||
|
"pawpyrus.nekoweb.org",
|
||||||
|
"muffinzhouze.neocities.org",
|
||||||
|
"realismomagico.nekoweb.org",
|
||||||
|
"themightyloser.nekoweb.org",
|
||||||
|
"sealzie.neocities.org",
|
||||||
|
"sillywilly22.neocities.org",
|
||||||
|
"basi.nya.pub",
|
||||||
|
"daisywhisp.neocities.org",
|
||||||
|
"ray0fsunsh1ne.neocities.org",
|
||||||
|
"st4rguy.neocities.org",
|
||||||
|
"subterraneanhomesickalien.neocities.org",
|
||||||
|
"sunny-cities.neocities.org",
|
||||||
|
"suprsaturatd.neocities.org",
|
||||||
|
"lucienzeal.neocities.org",
|
||||||
|
"interstellarsystem.neocities.org",
|
||||||
|
"sociallyhazardous.neocities.org",
|
||||||
|
"lunya.nekoweb.org",
|
||||||
|
"thespaceshanty.neocities.org",
|
||||||
|
"mermora.neocities.org",
|
||||||
|
"leyy.neocities.org",
|
||||||
|
"disuko.neocities.org",
|
||||||
|
"whit.moe",
|
||||||
|
"im-disco-baby.neocities.org",
|
||||||
|
"digital-goddess.nekoweb.org",
|
||||||
|
"raven-files.neocities.org",
|
||||||
|
"bugkisser.neocities.org",
|
||||||
|
"chimeramanticore.neocities.org",
|
||||||
|
"mism4tchedsocks.neocities.org",
|
||||||
|
"jackandthearics.neocities.org",
|
||||||
|
"kepler-16b.neocities.org",
|
||||||
|
"treefungusxx.neocities.org",
|
||||||
|
"prunusavium.neocities.org",
|
||||||
|
"selkiehimbo.neocities.org",
|
||||||
|
"norisowl.neocities.org",
|
||||||
|
"mametzwood.neocities.org",
|
||||||
|
"dupersuperholly.neocities.org",
|
||||||
|
"ashtonsivibing.neocities.org",
|
||||||
|
"turbuggy.neocities.org",
|
||||||
|
"magicaldoll.neocities.org",
|
||||||
|
"boatemhq.neocities.org",
|
||||||
|
"olliveen.neocities.org",
|
||||||
|
"glamourbeast.neocities.org",
|
||||||
|
"digitalcat.neocities.org",
|
||||||
|
"caesthoffe.neocities.org",
|
||||||
|
"deletys.neocities.org",
|
||||||
|
"unsungstorywiki.neocities.org",
|
||||||
|
"granolaria.neocities.org",
|
||||||
|
"wumsley.neocities.org",
|
||||||
|
"madeinv.love",
|
||||||
|
"moonlightmyopia.neocities.org",
|
||||||
|
"gammagoop.neocities.org",
|
||||||
|
"koy.fish",
|
||||||
|
"halcybutton.neocities.org",
|
||||||
|
"betazz.neocities.org",
|
||||||
|
"infinitebearr.neocities.org",
|
||||||
|
"all-seeing-bunny.neocities.org",
|
||||||
|
"halcantdothat.neocities.org",
|
||||||
|
"zoneoffun.neocities.org",
|
||||||
|
"melancholic-entrails.neocities.org",
|
||||||
|
"lilithdev.neocities.org",
|
||||||
|
"wolfsite.neocities.org",
|
||||||
|
"alienyuri.neocities.org",
|
||||||
|
"unit00.neocities.org",
|
||||||
|
"voxel.gay",
|
||||||
|
"catgirlcassie.neocities.org",
|
||||||
|
"atari404.neocities.org",
|
||||||
|
"rosrets.neocities.org",
|
||||||
|
"miastonished.github.io",
|
||||||
|
"lilly.nekoweb.org",
|
||||||
|
"cupcakesthebulldog.neocities.org",
|
||||||
|
"joolianjay.neocities.org",
|
||||||
|
"clowdywings.neocities.org",
|
||||||
|
"muttthecowcat.neocities.org",
|
||||||
|
"xxfizzybloodxx.neocities.org",
|
||||||
|
"slysable.neocities.org",
|
||||||
|
"theevergreengardens.neocities.org",
|
||||||
|
// "achromatic-azurevizor.neocities.org",
|
||||||
|
"syrupnx.space",
|
||||||
|
"revived.neocities.org",
|
||||||
|
"sammylux.neocities.org",
|
||||||
|
"lambbones.neocities.org",
|
||||||
|
"hymnforascarecrow.neocities.org",
|
||||||
|
"fem.nz",
|
||||||
|
"subspaceember.neocities.org",
|
||||||
|
"shattered-glass.neocities.org",
|
||||||
|
"sugarfantasies.neocities.org",
|
||||||
|
"melxncholyman.neocities.org",
|
||||||
|
"pastellerie.neocities.org",
|
||||||
|
"magooka.neocities.org",
|
||||||
|
"celli.neocities.org",
|
||||||
|
"squidcrusher.neocities.org",
|
||||||
|
"sabrin.party",
|
||||||
|
"priro.pro",
|
||||||
|
"1dkreally.neocities.org",
|
||||||
|
"oliscrabwife.neocities.org",
|
||||||
|
"harvest-home.neocities.org",
|
||||||
|
"droptherapy.neocities.org",
|
||||||
|
"spiderlily.neocities.org",
|
||||||
|
"fukounaglr.neocities.org",
|
||||||
|
"coffinthusiast.neocities.org",
|
||||||
|
"riddler.nekoweb.org",
|
||||||
|
"www.cryptie.dev",
|
||||||
|
"thekirbysphere.neocities.org",
|
||||||
|
"leskowitz.neocities.org",
|
||||||
|
"milkyway.moe",
|
||||||
|
"zj.neocities.org",
|
||||||
|
"tehuan.neocities.org",
|
||||||
|
"murderscene.neocities.org",
|
||||||
|
"prophetesque.gay",
|
||||||
|
"kyoofyardale.neocities.org",
|
||||||
|
"bundleofstyx.neocities.org",
|
||||||
|
"lavender-cowboy.neocities.org",
|
||||||
|
"dog-brain.neocities.org",
|
||||||
|
"pixelglade.net.au",
|
||||||
|
"jettsecret.neocities.org",
|
||||||
|
"caitsith.neocities.org",
|
||||||
|
"moonsidedreams.neocities.org",
|
||||||
|
"mspaintdemon.neocities.org",
|
||||||
|
"codecreature.neocities.org",
|
||||||
|
"thesomnus.neocities.org",
|
||||||
|
// "funnyorangecat-dotcom.neocities.org",
|
||||||
|
"girlfailure.neocities.org",
|
||||||
|
"sunmiflowers.com",
|
||||||
|
"trashcannt.neocities.org",
|
||||||
|
"themby.neocities.org",
|
||||||
|
"garudyne.neocities.org",
|
||||||
|
"doumeli.neocities.org",
|
||||||
|
"siph.neocities.org",
|
||||||
|
"bubshub.neocities.org",
|
||||||
|
"quinnnnn.neocities.org",
|
||||||
|
"phoebe.digital",
|
||||||
|
"ciliaris.neocities.org",
|
||||||
|
"gaycomputerdog.neocities.org",
|
||||||
|
"frognet.neocities.org",
|
||||||
|
// "nonkiru.art",
|
||||||
|
"finn-all-uh.org",
|
||||||
|
"florpzgalaxy.neocities.org",
|
||||||
|
"wonderscape.neocities.org",
|
||||||
|
"www.lexiqqq.com",
|
||||||
|
"dulcesilly.neocities.org",
|
||||||
|
"chocolaterevel.neocities.org",
|
||||||
|
"savior-god.neocities.org",
|
||||||
|
"infini.neocities.org",
|
||||||
|
"manyface.neocities.org",
|
||||||
|
"plourples.com",
|
||||||
|
"this.squirrel.rocks",
|
||||||
|
"lucard.neocities.org",
|
||||||
|
"s1nez.nekoweb.org",
|
||||||
|
"monsterboy.neocities.org",
|
||||||
|
// "sizztuna.neocities.org",
|
||||||
|
"aceynk.neocities.org",
|
||||||
|
"mordecaialba.com",
|
||||||
|
"canadiancoded.neocities.org",
|
||||||
|
"morethanyoubelieve.neocities.org",
|
||||||
|
"foggybear42.neocities.org",
|
||||||
|
"117.zone",
|
||||||
|
"scottisite.neocities.org",
|
||||||
|
"minozomi.neocities.org",
|
||||||
|
"digibun.neocities.org",
|
||||||
|
"butch-barks.neocities.org",
|
||||||
|
"nerucom.neocities.org",
|
||||||
|
"smellybead.neocities.org",
|
||||||
|
"preservedfigs.uk",
|
||||||
|
"anchorgutz.neocities.org",
|
||||||
|
"foxthing.neocities.org",
|
||||||
|
"klomfel.neocities.org",
|
||||||
|
"wrender.neocities.org",
|
||||||
|
// "milosinternetdiary.neocities.org",
|
||||||
|
"cherylcherylcheryl.neocities.org",
|
||||||
|
"shenaniganery.neocities.org",
|
||||||
|
"jens-world-of-hyperfixation.neocities.org",
|
||||||
|
"aribluejeans.neocities.org",
|
||||||
|
"www.write-on.org",
|
||||||
|
"asralore.neocities.org",
|
||||||
|
"snowyfin.neocities.org",
|
||||||
|
"tertiaryapocalypse.neocities.org",
|
||||||
|
"killing-machine.neocities.org",
|
||||||
|
"spacemonkeyz.neocities.org",
|
||||||
|
"freaksaint.neocities.org",
|
||||||
|
"ghost-game.neocities.org",
|
||||||
|
"colortraks.net",
|
||||||
|
"screamingegg.neocities.org",
|
||||||
|
"jayspace.neocities.org",
|
||||||
|
"phantomrats.neocities.org",
|
||||||
|
"mercydreams.neocities.org",
|
||||||
|
"sech1p.ovh",
|
||||||
|
"wappydog.neocities.org",
|
||||||
|
"leizy8499.neocities.org",
|
||||||
|
"fearofmusic.neocities.org",
|
||||||
|
"serenegecko.neocities.org",
|
||||||
|
"slasherboy.neocities.org",
|
||||||
|
"bisexualmale04.net",
|
||||||
|
"f3r4l-c4tg1rl.neocities.org",
|
||||||
|
"asteromorph.neocities.org",
|
||||||
|
"realgaudin.uk",
|
||||||
|
// "s1llyguy.neocities.org",
|
||||||
|
"itpuddle.com",
|
||||||
|
// "neotrinity.xyz",
|
||||||
|
// "zonks27.neocities.org",
|
||||||
|
"cadeion.neocities.org",
|
||||||
|
"corvidae.digital",
|
||||||
|
"catboo.neocities.org",
|
||||||
|
"ttaxyy.neocities.org",
|
||||||
|
// "gyrobreaka.neocities.org",
|
||||||
|
"zinesbylennon.neocities.org",
|
||||||
|
"poetofu.neocities.org",
|
||||||
|
"ilovebeingtrans.neocities.org",
|
||||||
|
"spettri.neocities.org",
|
||||||
|
"whirlwind.neocities.org",
|
||||||
|
"stric9l0l.neocities.org",
|
||||||
|
"swiftyshq.neocities.org",
|
||||||
|
"crystal.tilde.institute",
|
||||||
|
"isactuallyabear.neocities.org",
|
||||||
|
"statusq.cc",
|
||||||
|
"astralvrz.github.io",
|
||||||
|
"dogspit.nekoweb.org",
|
||||||
|
"flower-killer.neocities.org",
|
||||||
|
"phrogee.neocities.org",
|
||||||
|
"burialcloth.neocities.org",
|
||||||
|
"maxxywaxxy.neocities.org",
|
||||||
|
"orion-overdrive.neocities.org",
|
||||||
|
"fangzzz.neocities.org",
|
||||||
|
"aryllsappreciations.neocities.org",
|
||||||
|
"twansgendew.net",
|
||||||
|
"jubiland.neocities.org",
|
||||||
|
"cyberdemon.neocities.org",
|
||||||
|
"space-bar.neocities.org",
|
||||||
|
// "bunnieforie.neocities.org",
|
||||||
|
// "hadalzone.neocities.org",
|
||||||
|
"pinkvampyr.leprd.space",
|
||||||
|
"thecorvidking.neocities.org",
|
||||||
|
"confettiguts.gay",
|
||||||
|
"callmecannibal.neocities.org",
|
||||||
|
// "nasunikki.neocities.org",
|
||||||
|
"shinyexe.neocities.org",
|
||||||
|
"smokoswebzone.gay",
|
||||||
|
"kelpeater.neocities.org",
|
||||||
|
"deviltown.neocities.org",
|
||||||
|
"r-temisia.neocities.org",
|
||||||
|
"crashtestdummy.neocities.org",
|
||||||
|
"punkwasp.leprd.space",
|
||||||
|
"nyacat.moe",
|
||||||
|
"theabsoluterealm.com",
|
||||||
|
// "layercake.neocities.org",
|
||||||
|
// "juicemachine.neocities.org",
|
||||||
|
"predictable1993.neocities.org",
|
||||||
|
"item64.neocities.org",
|
||||||
|
"cvnnbl.neocities.org",
|
||||||
|
// "squeezeoats.neocities.org",
|
||||||
|
"icosahedr.online",
|
||||||
|
"theaio.neocities.org",
|
||||||
|
"qso404.neocities.org",
|
||||||
|
"nimravidae.neocities.org",
|
||||||
|
"mizuki.world",
|
||||||
|
// "milestailsprower.neocities.org",
|
||||||
|
"foolsparadise.neocities.org",
|
||||||
|
"redrevelry.neocities.org",
|
||||||
|
"drakonic.zone",
|
||||||
|
"onlywonder.net",
|
||||||
|
// "heck.computer",
|
||||||
|
// "diluculo.neocities.org",
|
||||||
|
"glassyhouse.neocities.org",
|
||||||
|
"purplehello98.neocities.org",
|
||||||
|
"causeistayedaway.neocities.org",
|
||||||
|
// "rockinroller.neocities.org",
|
||||||
|
// "cranknet.com",
|
||||||
|
"p3p.neocities.org",
|
||||||
|
"hunipyon.neocities.org",
|
||||||
|
"beebfreeb.neocities.org",
|
||||||
|
"laikacore.neocities.org",
|
||||||
|
"the-bat-house.neocities.org",
|
||||||
|
// "least-mouse.github.io",
|
||||||
|
"faeriebottled97.neocities.org",
|
||||||
|
"worldsaddress.neocities.org",
|
||||||
|
"thoughts-and-collections.neocities.org",
|
||||||
|
"shiroganes.neocities.org",
|
||||||
|
"out.neocities.org",
|
||||||
|
"mysweetpiano.neocities.org",
|
||||||
|
"mikaorangeart.neocities.org",
|
||||||
|
"galactixstar.neocities.org",
|
||||||
|
"cyberneticdryad.neocities.org",
|
||||||
|
// "bajablasphemy.neocities.org",
|
||||||
|
"blagi.neocities.org",
|
||||||
|
"sanguinariacanadensis.neocities.org",
|
||||||
|
// "mincerafter42.github.io",
|
||||||
|
"transrats.neocities.org",
|
||||||
|
"friday-girl.neocities.org",
|
||||||
|
"flutteristhebest.neocities.org",
|
||||||
|
"sunnyday.neocities.org",
|
||||||
|
"sleepy-sage.neocities.org",
|
||||||
|
"wolf-on-the-web.neocities.org",
|
||||||
|
"alan460.is-hella.gay",
|
||||||
|
"therift.neocities.org",
|
||||||
|
// "keysklubhouse.com",
|
||||||
|
"ballonlea.net",
|
||||||
|
"compulsivecomputer.net",
|
||||||
|
"scourgescloset.neocities.org",
|
||||||
|
"lambchapel.neocities.org",
|
||||||
|
"troy-sucks.neocities.org",
|
||||||
|
"transring.neocities.org",
|
||||||
|
],
|
||||||
|
// widget html
|
||||||
|
// PREV and NEXT are replaced with neighbors' urls
|
||||||
|
widgets: {
|
||||||
|
default: `
|
||||||
|
<div id="transring" style="display: flex; align-items: center; gap: 3.278%; max-width: 244px; image-rendering: pixelated">
|
||||||
|
<a href="PREV" target="_top" style="width: 12.295%"><img width="100%" src="https://transring.neocities.org/widget/trans/left.png" alt="previous site"></a>
|
||||||
|
<a href="https://transring.neocities.org" target="_top" style="width: 68.852%"><img width="100%" src="https://transring.neocities.org/widget/trans/button.png" alt="transing the internet"></a>
|
||||||
|
<a href="NEXT" target="_top" style="width: 12.295%"><img width="100%" src="https://transring.neocities.org/widget/trans/right.png" alt="next site"></a>
|
||||||
|
</div>
|
||||||
|
`,
|
||||||
|
nb: `
|
||||||
|
<div id="transring" style="display: flex; align-items: center; gap: 3.278%; max-width: 244px; image-rendering: pixelated">
|
||||||
|
<a href="PREV" target="_top" style="width: 12.295%"><img width="100%" src="https://transring.neocities.org/widget/nb/left.png" alt="previous site"></a>
|
||||||
|
<a href="https://transring.neocities.org" target="_top" style="width: 68.852%"><img width="100%" src="https://transring.neocities.org/widget/nb/button.png" alt="transing the internet"></a>
|
||||||
|
<a href="NEXT" target="_top" style="width: 12.295%"><img width="100%" src="https://transring.neocities.org/widget/nb/right.png" alt="next site"></a>
|
||||||
|
</div>
|
||||||
|
`,
|
||||||
|
cloud: `<div id="transring" style="display: flex; justify-content: center; align-items: center; gap: 4px; image-rendering: pixelated">
|
||||||
|
<a href="PREV" target="_top"><img src="https://transring.neocities.org/widget/cloud/left.png" alt="previous site"></a>
|
||||||
|
<a href="https://transring.neocities.org" target="_top"><img src="https://transring.neocities.org/widget/cloud/button.png" alt="transing the internet"></a>
|
||||||
|
<a href="NEXT" target="_top"><img src="https://transring.neocities.org/widget/cloud/right.png" alt="next site"></a>
|
||||||
|
</div>`,
|
||||||
|
error: `<div>
|
||||||
|
<a href="https://transring.neocities.org" target="_top"><img src="https://transring.neocities.org/widget/trans/button.png"></a>
|
||||||
|
<div style="font-size: 0.75em; text-align: center">(this site isn't part of the webring... yet!)</div>
|
||||||
|
</div>`,
|
||||||
|
},
|
||||||
|
};
|
||||||
|
// code
|
||||||
|
webring.idx = webring.sites.findIndex(site => location.href.startsWith(site, 8));
|
||||||
|
document.currentScript.outerHTML = webring.idx === -1 ? webring.widgets.error :
|
||||||
|
(webring.widgets[document.currentScript.dataset.widget] ?? webring.widgets.default)
|
||||||
|
.replace("PREV", "https://" + webring.sites.at(webring.idx - 1))
|
||||||
|
.replace("NEXT", "https://" + webring.sites[(webring.idx + 1) % webring.sites.length]);
|
||||||
|
}
|
||||||
108
includes/transingtheinternet_contr.inc.php
Normal file
@@ -0,0 +1,108 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
|
||||||
|
// File sources, images & scripts
|
||||||
|
$TRANSING_FILES = [
|
||||||
|
"enby" => [
|
||||||
|
"left_arrow" => "../../../img/webrings/transfem_enby_left_arrow.png",
|
||||||
|
"button" => "../../../img/webrings/transfem_enby_button.png",
|
||||||
|
"right_arrow" => "../../../img/webrings/transfem_enby_right_arrow.png"
|
||||||
|
],
|
||||||
|
"trans" => [
|
||||||
|
"left_arrow" => "../../../img/webrings/transfem_trans_left_arrow.png",
|
||||||
|
"button" => "../../../img/webrings/transfem_trans_button.png",
|
||||||
|
"right_arrow" => "../../../img/webrings/transfem_trans_right_arrow.png"
|
||||||
|
],
|
||||||
|
"cloud" => [
|
||||||
|
"left_arrow" => "../../../img/webrings/transfem_cloud_left_arrow.png",
|
||||||
|
"button" => "../../../img/webrings/transfem_cloud_button.png",
|
||||||
|
"right_arrow" => "../../../img/webrings/transfem_cloud_right_arrow.png"
|
||||||
|
]
|
||||||
|
];
|
||||||
|
|
||||||
|
$TRANSING_SCRIPT_SOURCE = [
|
||||||
|
"selected_source" => 1,
|
||||||
|
"sources" =>
|
||||||
|
[["url" => "https://transring.neocities.org/ring.js",
|
||||||
|
"source" => "internet"],
|
||||||
|
["url" => "/transingtheinternet.js",
|
||||||
|
"source" => "local"]]
|
||||||
|
];
|
||||||
|
|
||||||
|
// Specific variables for script
|
||||||
|
$TRANSING_ROOT = "https://transring.neocities.org";
|
||||||
|
$TRANSING_VALID_WIDGET_TYPES = ["cloud", "enby", "trans","error"];
|
||||||
|
|
||||||
|
// Personal identifiers/choices
|
||||||
|
$TRANSING_WIDGET_TYPE = $TRANSING_VALID_WIDGET_TYPES[1];
|
||||||
|
$TRANSING_ID = 1;
|
||||||
|
|
||||||
|
// Functions
|
||||||
|
function transingSplit(string $array) {
|
||||||
|
$array = preg_replace('/\s+/', '', $array);
|
||||||
|
$i = 0;
|
||||||
|
while (strlen($array) !== 0) {
|
||||||
|
|
||||||
|
// Strip coma if found
|
||||||
|
if (str_starts_with($array,',')) {
|
||||||
|
$array = substr($array,1);
|
||||||
|
}
|
||||||
|
if (str_starts_with(strrev($array),',')) {
|
||||||
|
$array = substr($array,0,-1);
|
||||||
|
}
|
||||||
|
|
||||||
|
$temp = strpos($array,'/',1);
|
||||||
|
|
||||||
|
if (strpos($array,'/',1) > 1 or strpos($array,'/',1) == FALSE) {
|
||||||
|
$commented=FALSE;
|
||||||
|
} else {
|
||||||
|
$commented=TRUE;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
if (str_starts_with($array,',')) {
|
||||||
|
$array = substr($array,1);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Get substring position and length
|
||||||
|
$commented ? $start_pos=3 : $start_pos=1;
|
||||||
|
$end_pos = strpos($array,"\"",$start_pos);
|
||||||
|
$item_len = $end_pos - $start_pos;
|
||||||
|
|
||||||
|
if (!$commented){
|
||||||
|
$return_array[$i] = substr($array,$start_pos,$item_len);
|
||||||
|
} else {
|
||||||
|
$return_array[$i] = '';
|
||||||
|
}
|
||||||
|
|
||||||
|
// Save website into array, and strip array
|
||||||
|
if (!$commented) {
|
||||||
|
$item_len = $item_len +2; // +2 from " and "
|
||||||
|
} else {
|
||||||
|
$item_len = $item_len +4; // +4 from ", ", / and /
|
||||||
|
}
|
||||||
|
|
||||||
|
$array = substr($array,$item_len);
|
||||||
|
|
||||||
|
$i++;
|
||||||
|
}
|
||||||
|
|
||||||
|
return $return_array;
|
||||||
|
}
|
||||||
|
|
||||||
|
$transing_sites = scrapeWebsiteSites($TRANSING_SCRIPT_SOURCE,'sites :[',']');
|
||||||
|
$transing_sites = transingSplit($transing_sites);
|
||||||
|
|
||||||
|
for ($i = 0; $i < count($transing_sites); $i++){
|
||||||
|
if ($i == $TRANSING_ID) {
|
||||||
|
$transing_prev = 'https://' . $transing_sites[($i-1)];
|
||||||
|
$transing_current = 'https://' . $transing_sites[($i)];
|
||||||
|
$transing_next = 'https://' . $transing_sites[($i+1)];
|
||||||
|
$found = TRUE;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!isset($found)) {
|
||||||
|
echo ("ERROR ID NOT FOUND");
|
||||||
|
}
|
||||||
24
includes/transingtheinternet_view.inc.php
Normal file
@@ -0,0 +1,24 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
|
||||||
|
function TRANSINGrender(){
|
||||||
|
global $TRANSING_ROOT, $TRANSING_FILES, $TRANSING_WIDGET_TYPE, $transing_prev, $transing_next;
|
||||||
|
|
||||||
|
$TRANSING_FILES["selected"] = $TRANSING_FILES[$TRANSING_WIDGET_TYPE];
|
||||||
|
|
||||||
|
if ($TRANSING_WIDGET_TYPE === 'error') {
|
||||||
|
?>
|
||||||
|
<a href="<?php echo($TRANSING_ROOT); ?>" target="_top" style="width: 68.852%"><img src="<?php echo($TRANSING_FILES["selected"]["button"]); ?>" alt="transing the internet"></a>
|
||||||
|
<div style="font-size: 0.75em; text-align: center">(this site isn't part of the webring... yet!)</div>
|
||||||
|
<?php
|
||||||
|
} else {
|
||||||
|
?>
|
||||||
|
<div id="transring" style="display: flex; justify-content: center; align-items: center; image-rendering: pixelated; height:100%;">
|
||||||
|
<a href="<?php echo($transing_prev); ?>" target="_top" style="width: 15.574%; height:100%;"><img src="<?php echo($TRANSING_FILES["selected"]["left_arrow"]); ?>" alt="previous site"></a>
|
||||||
|
<a href="<?php echo($TRANSING_ROOT); ?>" target="_top" style="width: 68.852%; height:100%;"><img src="<?php echo($TRANSING_FILES["selected"]["button"]); ?>" alt="transing the internet"></a>
|
||||||
|
<a href="<?php echo($transing_next); ?>" target="_top" style="width: 15.574%; height:100%;"><img src="<?php echo($TRANSING_FILES["selected"]["right_arrow"]); ?>" alt="next site"></a>
|
||||||
|
</div>
|
||||||
|
<?php
|
||||||
|
}
|
||||||
|
}
|
||||||
9
main.php
@@ -140,14 +140,15 @@
|
|||||||
<div class="clip-box">
|
<div class="clip-box">
|
||||||
<div class="auto-scroll">
|
<div class="auto-scroll">
|
||||||
<!-- Have to replace this logic, maybe by having another way to modify behaviour of marquee -->
|
<!-- Have to replace this logic, maybe by having another way to modify behaviour of marquee -->
|
||||||
<?php for ($i = 0; $i <= 1; $i++) {
|
<?php for ($k = 0; $k <= 1; $k++) {
|
||||||
if ($i === 0) {
|
if ($k === 0) {
|
||||||
?><div class="scroll_one"><?php
|
?><div class="scroll_one"><?php
|
||||||
} else if ($i === 1) {
|
} else if ($k === 1) {
|
||||||
?><div class="scroll_two"><?php
|
?><div class="scroll_two"><?php
|
||||||
}
|
}
|
||||||
?>
|
?>
|
||||||
<?php for ($j = 0; $j <= 2; $j++) {?>
|
<?php for ($l = 0; $l <= 2; $l++) {?>
|
||||||
|
<?php include "includes/transfemwebring.inc.php";?>
|
||||||
<div class="noaiwebring">
|
<div class="noaiwebring">
|
||||||
<a href="https://baccyflap.com/noai" target="_blank" alt="no ai webring" title="no ai webring"><div class="home"></div></a>
|
<a href="https://baccyflap.com/noai" target="_blank" alt="no ai webring" title="no ai webring"><div class="home"></div></a>
|
||||||
<a href="https://baccyflap.com/noai/?prv&s=msv" target="_top" alt="previous" title="previous"><div class="prv"></div></a>
|
<a href="https://baccyflap.com/noai/?prv&s=msv" target="_top" alt="previous" title="previous"><div class="prv"></div></a>
|
||||||
|
|||||||