$ git clone https://thingshare.ion.nu/thingshare.git
commit 8b3fabf11f55e34c37f1a0927c7e27502a95c182
Author: Alicia <...>
Date: Sun Jan 31 00:48:50 2021 +0100
Responsive design.
diff --git a/Licenses b/Licenses
index 830c5d5..1bad98b 100644
--- a/Licenses
+++ b/Licenses
@@ -6,3 +6,4 @@ mdjs: under the terms of the Apache license (https://github.com/hangxingliu/mdjs
icons/default.svg: "Editor, software, text icon" from the Macaron icon set by Goescat Wei, under the terms of the Creative Commons Attribution 3.0 Unported (https://www.iconfinder.com/icons/3246744/editor_software_text_icon)
icons/bell.svg/png: "Alarm, alert, attention, bell, notification, notifications, ring icon" by DIVYA A under the terms of the Creative Commons Attribution 3.0 Unported (https://www.iconfinder.com/icons/4964018/alarm_alert_attention_bell_notification_notifications_ring_icon)
icons/scad.png: GNU GPLv2 (https://github.com/openscad/openscad/blob/master/icons/SCAD.png)
+icons/menu.svg/png: "Menu, lines, hamburger icon" from the Wirecons Free Vector Icons set by Timothy Miller under the terms of the Creative Commons Attribution-Share Alike 3.0 Unported (https://www.iconfinder.com/icons/134216/menu_lines_hamburger_icon)
diff --git a/docs/RPCs b/docs/RPCs
index c5fc97f..adeac25 100644
--- a/docs/RPCs
+++ b/docs/RPCs
@@ -150,3 +150,5 @@ Signed request format:
"message": <Message>,
"link": <...>
}
+Return format:
+{"status":"OK"} or {"error":<Error message>}
diff --git a/foot.php b/foot.php
index 9f6a5a2..5b7e17c 100644
--- a/foot.php
+++ b/foot.php
@@ -5,7 +5,7 @@
Thingshare is a federated system for sharing data for home manufacturing. For more information see <a href="https://thingshare.ion.nu/">thingshare.ion.nu</a>
</div><div class="c2 top">
<h4>Contact</h4>
- E-mail address: <a href="mailto:<?=EMAIL?>"><?=EMAIL?></a>
+ E-mail address: <a href="mailto:<?=EMAIL?>"><?=str_replace('@','@<wbr/>',EMAIL)?></a>
</div>
<div class="footnote">
Content displayed on Thingshare is property of respective creator, not of Thingshare or its operators
diff --git a/head.php b/head.php
index 23e63cb..bf80bc6 100644
--- a/head.php
+++ b/head.php
@@ -104,6 +104,7 @@ if($path[1]=='tag')
<html lang="en">
<head>
<title><?=NODENAME?></title>
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="stylesheet" href="<?=BASEURL?>/style.css" type="text/css" />
<link rel="stylesheet" href="<?=BASEURL?>/x3dom.css" type="text/css" />
<script src="<?=BASEURL?>/x3dom.debug.js"></script>
@@ -114,6 +115,7 @@ if($path[1]=='tag')
<div id="logo" title="Yes this needs a logo or something. Got any art skills?"></div>
<!-- TODO: Responsive design -->
<nav>
+ <img src="<?=BASEURL?>/icons/menu.svg" width="32" height="32" onerror="this.src='<?=BASEURL?>/icons/menu.png';" id="menuicon" />
<div id="menu">
<a href="<?=BASEURL?>/browse/new">Latest designs</a>
<?=$menu?>
@@ -136,7 +138,7 @@ if($path[1]=='tag')
</div>
<div id="search">
<form method="get" action="<?=BASEURL?>/search">
- <input type="text" name="q" value="<?=$search?>" />
+ <input type="text" name="q" value="<?=$search?>" placeholder="Search" />
<button><img src="<?=BASEURL?>/icons/find.svg" onerror="this.src='<?=BASEURL?>/icons/find.png';" /></button>
</form>
</div>
diff --git a/icons/menu.png b/icons/menu.png
new file mode 100644
index 0000000..5bc9e87
Binary files /dev/null and b/icons/menu.png differ
diff --git a/icons/menu.svg b/icons/menu.svg
new file mode 100644
index 0000000..233bf21
--- /dev/null
+++ b/icons/menu.svg
@@ -0,0 +1 @@
+<?xml version="1.0" ?><!DOCTYPE svg PUBLIC '-//W3C//DTD SVG 1.1//EN' 'http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd'><svg height="32px" id="Layer_1" style="enable-background:new 0 0 32 32;" version="1.1" viewBox="0 0 32 32" width="32px" xml:space="preserve" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><path d="M4,10h24c1.104,0,2-0.896,2-2s-0.896-2-2-2H4C2.896,6,2,6.896,2,8S2.896,10,4,10z M28,14H4c-1.104,0-2,0.896-2,2 s0.896,2,2,2h24c1.104,0,2-0.896,2-2S29.104,14,28,14z M28,22H4c-1.104,0-2,0.896-2,2s0.896,2,2,2h24c1.104,0,2-0.896,2-2 S29.104,22,28,22z"/></svg>
\ No newline at end of file
diff --git a/index.php b/index.php
index e6e1c4f..c9778da 100644
--- a/index.php
+++ b/index.php
@@ -85,5 +85,4 @@ switch($path[1])
break;
}
include_once('foot.php');
-// TODO: Default/front page
?>
diff --git a/search.php b/search.php
index 829223c..1561f21 100644
--- a/search.php
+++ b/search.php
@@ -2,7 +2,7 @@
/*
This file is part of Thingshare, a federated system for sharing data for home manufacturing (e.g. 3D models to 3D print)
https://thingshare.ion.nu/
- Copyright (C) 2020 Alicia <...>
+ Copyright (C) 2020-2021 Alicia <...>
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU Affero General Public License as published by
@@ -101,6 +101,7 @@ foreach($results as $thing)
</form>
<p>
<h4><?=_('Advanced search options')?></h4>
+ <?=_('To search for something by tag:')?> <span class="code">tag:searchterm</span><br />
<?=_('To search for something specifically in the name:')?> <span class="code">name:searchterm</span><br />
<?=_('To search for something specifically in the description:')?> <span class="code">description:searchterm</span><br />
<?=_('To negate a searchterm, skipping everything that matches:')?> <span class="code">-searchterm</span><br />
diff --git a/style.css b/style.css
index f316e7e..a53e596 100644
--- a/style.css
+++ b/style.css
@@ -25,11 +25,13 @@ body {
background-color:#00ff00;
}
#user {
- float:right;
+ display:block;
+ margin-left:10px;
}
#search {
- float:right;
padding-top:0px;
+ display:block;
+ margin-left:10px;
}
#search input {
vertical-align:top;
@@ -47,9 +49,11 @@ body {
}
#menu>a {
margin-left:10px;
+ display:block;
}
#user>a {
margin-right:10px;
+ display:block;
}
#loginform {
/* This doesn't work as intended, but it seems to work ok for now */
@@ -59,7 +63,7 @@ body {
color:#f00000;
}
#content {
- width:80%;
+ width:98%;
margin-left:auto;
margin-right:auto;
margin-top:10px;
@@ -94,10 +98,16 @@ nav {
background: -o-linear-gradient(#e0e0e0, #c0c0c0);
background: -moz-linear-gradient(#e0e0e0, #c0c0c0);
background: linear-gradient(#e0e0e0, #c0c0c0);
+ position:sticky;
+ top:0px;
+ z-index:10;
+ overflow:hidden;
+ height:32px;
}
-nav>div {
- padding: 10px;
- display:inline-block;
+nav:hover {
+ height:auto;
+ padding-bottom:10px;
+ font-size:30px;
}
nav>div>a {
color:#000000;
@@ -125,8 +135,6 @@ span.blacklist {
background-color:#ff0000;
}
div.sidebar {
- float:left;
- width:240px;
margin:5px;
border:solid 1px #ffffff;
}
@@ -199,3 +207,41 @@ div.notification {
div.notification-unseen {
font-weight:bold;
}
+img#menuicon {
+ display:block;
+ margin-left:auto;
+ margin-right:auto;
+}
+@media only screen and (min-width: 750px) {
+ #content {
+ width:80%;
+ }
+ nav {
+ position:static;
+ overflow:visible;
+ height:auto;
+ }
+ nav:hover {
+ padding-bottom:0px;
+ font-size:16px;
+ }
+ nav>div {
+ padding: 10px;
+ display:inline-block;
+ }
+ #user { float:right; }
+ #search { float:right; }
+ img#menuicon {
+ display:none;
+ }
+ #menu>a {
+ display:inline;
+ }
+ #user>a {
+ display:inline;
+ }
+ div.sidebar {
+ float:left;
+ width:240px;
+ }
+}