From d05497959867ceccf62221afa886307fee32074e Mon Sep 17 00:00:00 2001 From: nipos Date: Sun, 15 Apr 2018 19:21:52 +0200 Subject: [PATCH] Some bug fixes and added a config file for nginx --- README.md | 3 +- assets/js/halcyon/halcyonUI.js | 3 ++ assets/js/mastodon.js/mastodon.js | 14 +++++++- nginx.conf | 58 +++++++++++++++++++++++++++++++ user.php | 4 +-- user_favorite.php | 4 +-- user_followers.php | 4 +-- user_following.php | 4 +-- user_include_replies.php | 4 +-- user_only_media.php | 4 +-- version.txt | 2 +- 11 files changed, 89 insertions(+), 15 deletions(-) create mode 100644 nginx.conf diff --git a/README.md b/README.md index 3d63c51..727e821 100644 --- a/README.md +++ b/README.md @@ -9,6 +9,7 @@ A Mastodon web client that looks like Twitter Follow or Mastodon account and never miss an important update: [@halcyon@social.csswg.org](https://social.csswg.org/@halcyon) ## Blog +- Release of Version 1.1.1 - Fixed error 404 when viewing profile of own instance,numbers below profile on the left do now change during session,added nginx config - [Release of Version 1.1.0 and upcoming features](http://nikisoft.myblog.de/nikisoft/art/11389499/Halcyon-What-we-did-and-what-we-will-do) - Release of Version 1.0.3 - "Who to follow" doesn't show people you already follow anymore and design of preferences and search bar is now much better - Release of Version 1.0.2 - Fixed a Firefox-only bug and some wrong links, added version info and an annoying cookie notice (sorry, but that's EU law) @@ -17,7 +18,7 @@ Follow or Mastodon account and never miss an important update: [@halcyon@social. ## Instances These instances are publicly accessible and usable by everyone, no matter which Mastodon instance you use. -- https://halcyon.toromino.de - 1.1.0 +- https://halcyon.toromino.de - 1.1.1 - https://social.dev-wiki.de - 1.1.0 - https://itter.photog.social - 1.1.0 - https://halcyon.cybre.space - Outdated diff --git a/assets/js/halcyon/halcyonUI.js b/assets/js/halcyon/halcyonUI.js index 137418d..1c91cbe 100644 --- a/assets/js/halcyon/halcyonUI.js +++ b/assets/js/halcyon/halcyonUI.js @@ -1579,6 +1579,9 @@ $('#header .header_nav_list .notification_badge').removeClass('invisible'); $('#header .header_nav_list .notification_badge').text( current_count ); } api.stream("user", function(userstream) { +if(userstream.event == "notification" && userstream.payload.type == "follow") { +$(".js_current_followers_count").html(++localStorage.current_followers_count); +} if (userstream.event === "update" & location.pathname !== "/" ) { $('#header .header_nav_list .home_badge').removeClass('invisible'); } else if (userstream.event === "notification" & location.pathname !== "/notifications") { diff --git a/assets/js/mastodon.js/mastodon.js b/assets/js/mastodon.js/mastodon.js index e609d8e..35087ee 100644 --- a/assets/js/mastodon.js/mastodon.js +++ b/assets/js/mastodon.js/mastodon.js @@ -136,6 +136,15 @@ type: "POST", data: postData, headers: {"Authorization": "Bearer " + config.api_user_token}, success: function(data, textStatus) { +if(endpoint == "statuses") { +$(".js_current_toots_count").html(++localStorage.current_statuses_count); +} +else if(endpoint.indexOf("/follow") != -1) { +$(".js_current_following_count").html(++localStorage.current_following_count); +} +else if(endpoint.indexOf("/unfollow") != -1) { +$(".js_current_following_count").html(--localStorage.current_following_count); +} console.log("Successful POST API request to " +apiBase+endpoint); callback(data,textStatus) }, @@ -181,6 +190,9 @@ url: apiBase + endpoint, type: "DELETE", headers: {"Authorization": "Bearer " + config.api_user_token}, success: function(data, textStatus) { +if(endpoint.indexOf("statuses") != -1) { +$(".js_current_toots_count").html(--localStorage.current_statuses_count); +} console.log("Successful DELETE API request to " +apiBase+endpoint); callback(data,textStatus) }, @@ -204,4 +216,4 @@ onData(event); es.onmessage = listener; } }; -}; \ No newline at end of file +}; diff --git a/nginx.conf b/nginx.conf new file mode 100644 index 0000000..e7ecc16 --- /dev/null +++ b/nginx.conf @@ -0,0 +1,58 @@ +server { +listen 80; +server_name YOUR_DOMAIN; +location / { return 301 https://$host$request_uri; } +} +server { +listen 443 ssl; +server_name YOUR_DOMAIN; +ssl_protocols TLSv1.2; +ssl_ciphers HIGH:!MEDIUM:!LOW:!aNULL:!NULL:!SHA; +ssl_prefer_server_ciphers on; +ssl_session_cache shared:SSL:10m; +ssl_certificate /etc/CHANGE_THIS/fullchain.pem; +ssl_certificate_key /etc/CHANGE_THIS/privkey.pem; +keepalive_timeout 70; +sendfile on; +client_max_body_size 0; +root /srv/http; +index index.php; +location ~* (?:DESIGN|(?:gpl|README|LICENSE)[^.]*|LEGALNOTICE)(?:\.txt)*$ { +return 302 /; +} +location ~* \.(?:bat|git|ini|sh|svn[^.]*|txt|tpl|xml)$ { +return 404; +} +rewrite ^/home/?$ / permanent; +rewrite ^/login/?$ /login/login.php last; +rewrite ^/auth/?$ /login/auth.php last; +rewrite ^/logout/?$ /login/logout.php last; +rewrite ^/terms/?$ /login/terms.php last; +rewrite ^/local/?$ /local.php last; +rewrite ^/federated/?$ /federated.php last; +rewrite ^/notifications/?$ /notifications.php last; +rewrite ^/search/?$ /search_hash_tag.php last; +rewrite ^/search/users/?$ /search_user.php last; +rewrite ^/@(.+)@(.+).([a-z]+)/?$ /user.php?user=@$1@$2.$3 last; +rewrite ^/@(.+)@(.+).([a-z]+)/status/(.+?)?$ /user.php?user=@$1@$2.$3&status=$4 last; +rewrite ^/@(.+)@(.+).([a-z]+)/media/?$ /user_only_media.php?user=@$1@$2.$3 last; +rewrite ^/@(.+)@(.+).([a-z]+)/with_replies/?$ /user_include_replies.php?user=@$1@$2.$3 last; +rewrite ^/@(.+)@(.+).([a-z]+)/followers/?$ /user_followers.php?user=@$1@$2.$3 last; +rewrite ^/@(.+)@(.+).([a-z]+)/following/?$ /user_following.php?user=@$1@$2.$3 last; +rewrite ^/@(.+)@(.+).([a-z]+)/favourites/?$ /user_favorite.php?user=@$1@$2.$3 last; +rewrite ^/avatars/original/missing.png$ /assets/images/missing.png last; +rewrite ^/headers/original/missing.png$ /assets/images/missing_header.png last; +rewrite ^/404/?$ /404.php last; +location ~ [^/]\.php(/|$) { +fastcgi_split_path_info ^(.+?\.php)(/.*)$; +if (!-f $document_root$fastcgi_script_name) { +return 404; +} +fastcgi_buffers 8 256k; +fastcgi_buffer_size 128k; +fastcgi_intercept_errors on; +include fastcgi_params; +fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; +fastcgi_pass unix:/var/run/php/php7.0-fpm.sock; +} +} diff --git a/user.php b/user.php index 57b623b..2599054 100644 --- a/user.php +++ b/user.php @@ -91,7 +91,7 @@ const query = ' - \ No newline at end of file + diff --git a/user_favorite.php b/user_favorite.php index bc6180a..fb956dd 100644 --- a/user_favorite.php +++ b/user_favorite.php @@ -77,7 +77,7 @@ const query = ' - \ No newline at end of file + diff --git a/user_followers.php b/user_followers.php index 2c1c1e9..afe5a6d 100644 --- a/user_followers.php +++ b/user_followers.php @@ -59,7 +59,7 @@ const query = ' - \ No newline at end of file + diff --git a/user_following.php b/user_following.php index 8257aed..eb44ccc 100644 --- a/user_following.php +++ b/user_following.php @@ -59,7 +59,7 @@ const query = ' - \ No newline at end of file + diff --git a/user_include_replies.php b/user_include_replies.php index 02ce1ef..ea129c8 100644 --- a/user_include_replies.php +++ b/user_include_replies.php @@ -90,7 +90,7 @@ const query = ' - \ No newline at end of file + diff --git a/user_only_media.php b/user_only_media.php index cd8911a..4fb2c08 100644 --- a/user_only_media.php +++ b/user_only_media.php @@ -90,7 +90,7 @@ const query = ' - \ No newline at end of file + diff --git a/version.txt b/version.txt index 9084fa2..524cb55 100644 --- a/version.txt +++ b/version.txt @@ -1 +1 @@ -1.1.0 +1.1.1