diff --git a/README.md b/README.md index 4b9684e9b..a2520a39e 100644 --- a/README.md +++ b/README.md @@ -17,7 +17,7 @@ there is a stable release**. The following setup instructions are intended for testing and development. ## Requirements - - PHP >= 7.1.3 (7.2+ recommended for stable version) + - PHP >= 7.1.3 < 7.3 (7.2.x recommended for stable version) - MySQL >= 5.7, Postgres (MariaDB and sqlite are not supported yet) - Redis - Composer diff --git a/app/Http/Controllers/PublicApiController.php b/app/Http/Controllers/PublicApiController.php index 86bbe0407..51fe32eee 100644 --- a/app/Http/Controllers/PublicApiController.php +++ b/app/Http/Controllers/PublicApiController.php @@ -300,7 +300,7 @@ class PublicApiController extends Controller ->whereNotIn('profile_id', $filtered) ->whereNull('in_reply_to_id') ->whereNull('reblog_of_id') - ->whereVisibility('public') + ->whereIn('visibility',['public', 'unlisted', 'private']) ->withCount(['comments', 'likes']) ->orderBy('created_at', 'desc') ->limit($limit) @@ -311,7 +311,7 @@ class PublicApiController extends Controller ->whereNotIn('profile_id', $filtered) ->whereNull('in_reply_to_id') ->whereNull('reblog_of_id') - ->whereVisibility('public') + ->whereIn('visibility',['public', 'unlisted', 'private']) ->withCount(['comments', 'likes']) ->orderBy('created_at', 'desc') ->simplePaginate($limit); diff --git a/config/pixelfed.php b/config/pixelfed.php index e954c6b64..419e38e02 100644 --- a/config/pixelfed.php +++ b/config/pixelfed.php @@ -23,7 +23,7 @@ return [ | This value is the version of your PixelFed instance. | */ - 'version' => '0.7.4', + 'version' => '0.7.5', /* |-------------------------------------------------------------------------- diff --git a/contrib/docker/Dockerfile.apache b/contrib/docker/Dockerfile.apache index 7f4b8742d..1bd5961e0 100644 --- a/contrib/docker/Dockerfile.apache +++ b/contrib/docker/Dockerfile.apache @@ -1,4 +1,4 @@ -FROM php:7-apache +FROM php:7.2-apache ARG COMPOSER_VERSION="1.6.5" ARG COMPOSER_CHECKSUM="67bebe9df9866a795078bb2cf21798d8b0214f2e0b2fd81f2e907a8ef0be3434" diff --git a/contrib/docker/Dockerfile.fpm b/contrib/docker/Dockerfile.fpm index 6c7822ea0..93676b10e 100644 --- a/contrib/docker/Dockerfile.fpm +++ b/contrib/docker/Dockerfile.fpm @@ -1,4 +1,4 @@ -FROM php:7-fpm +FROM php:7.2-fpm ARG COMPOSER_VERSION="1.6.5" ARG COMPOSER_CHECKSUM="67bebe9df9866a795078bb2cf21798d8b0214f2e0b2fd81f2e907a8ef0be3434" diff --git a/resources/assets/js/components.js b/resources/assets/js/components.js index 50aa36bda..8d23cbf5a 100644 --- a/resources/assets/js/components.js +++ b/resources/assets/js/components.js @@ -25,6 +25,13 @@ pixelfed.readmore = () => { }); }; +try { + document.createEvent("TouchEvent"); + $('body').addClass('touch'); +} catch (e) { + return false; +} + window.InfiniteScroll = require('infinite-scroll'); window.filesize = require('filesize'); window.Plyr = require('plyr'); @@ -55,7 +62,7 @@ require('./components/statusform'); // }); // } -// Initalize Notification Helper +// Initialize Notification Helper window.pixelfed.n = {}; Vue.component( @@ -137,10 +144,10 @@ window.pixelfed.copyToClipboard = (str) => { const el = document.createElement('textarea'); el.value = str; el.setAttribute('readonly', ''); - el.style.position = 'absolute'; + el.style.position = 'absolute'; el.style.left = '-9999px'; document.body.appendChild(el); - const selected = + const selected = document.getSelection().rangeCount > 0 ? document.getSelection().getRangeAt(0) : false; @@ -162,4 +169,4 @@ $(document).ready(function() { const warningTitleCSS = 'color:red; font-size:60px; font-weight: bold; -webkit-text-stroke: 1px black;'; const warningDescCSS = 'font-size: 18px;'; console.log('%cStop!', warningTitleCSS); -console.log("%cThis is a browser feature intended for developers. If someone told you to copy and paste something here to enable a Pixelfed feature or \"hack\" someone's account, it is a scam and will give them access to your Pixelfed account.", warningDescCSS); \ No newline at end of file +console.log("%cThis is a browser feature intended for developers. If someone told you to copy and paste something here to enable a Pixelfed feature or \"hack\" someone's account, it is a scam and will give them access to your Pixelfed account.", warningDescCSS); diff --git a/resources/assets/js/components/DiscoverComponent.vue b/resources/assets/js/components/DiscoverComponent.vue index 974234b45..7cec33b60 100644 --- a/resources/assets/js/components/DiscoverComponent.vue +++ b/resources/assets/js/components/DiscoverComponent.vue @@ -70,7 +70,7 @@ export default { }).catch(err => { swal( 'Whoops! Something went wrong...', - 'An error occured, please try again later.', + 'An error occurred, please try again later.', 'error' ); }); diff --git a/resources/assets/js/components/PostComments.vue b/resources/assets/js/components/PostComments.vue index cc57ad699..6122f0b21 100644 --- a/resources/assets/js/components/PostComments.vue +++ b/resources/assets/js/components/PostComments.vue @@ -104,7 +104,7 @@ export default { $('.postCommentsLoader .lds-ring') .attr('style','width:100%') .addClass('pt-4 font-weight-bold text-muted') - .text('An error occured, cannot fetch comments. Please try again later.'); + .text('An error occurred, cannot fetch comments. Please try again later.'); } else { switch(error.response.status) { case 401: @@ -118,7 +118,7 @@ export default { $('.postCommentsLoader .lds-ring') .attr('style','width:100%') .addClass('pt-4 font-weight-bold text-muted') - .text('An error occured, cannot fetch comments. Please try again later.'); + .text('An error occurred, cannot fetch comments. Please try again later.'); break; } } diff --git a/resources/assets/js/components/PostComponent.vue b/resources/assets/js/components/PostComponent.vue index c3b9f6258..fcad803ef 100644 --- a/resources/assets/js/components/PostComponent.vue +++ b/resources/assets/js/components/PostComponent.vue @@ -56,11 +56,11 @@
-
+
- +
@@ -156,6 +156,7 @@ +
@@ -164,10 +165,10 @@
-
@@ -195,10 +196,10 @@
-
@@ -281,7 +282,7 @@ export default { $('head title').text(title); } }, - + methods: { authCheck() { let authed = $('body').hasClass('loggedIn'); @@ -339,7 +340,7 @@ export default { $('.postPresenterContainer').removeClass('d-none'); }).catch(error => { if(!error.response) { - $('.postPresenterLoader .lds-ring').attr('style','width:100%').addClass('pt-4 font-weight-bold text-muted').text('An error occured, cannot fetch media. Please try again later.'); + $('.postPresenterLoader .lds-ring').attr('style','width:100%').addClass('pt-4 font-weight-bold text-muted').text('An error occurred, cannot fetch media. Please try again later.'); } else { switch(error.response.status) { case 401: @@ -350,7 +351,7 @@ export default { break; default: - $('.postPresenterLoader .lds-ring').attr('style','width:100%').addClass('pt-4 font-weight-bold text-muted').text('An error occured, cannot fetch media. Please try again later.'); + $('.postPresenterLoader .lds-ring').attr('style','width:100%').addClass('pt-4 font-weight-bold text-muted').text('An error occurred, cannot fetch media. Please try again later.'); break; } } @@ -510,4 +511,4 @@ export default { } } } - \ No newline at end of file + diff --git a/resources/assets/js/components/notifications.js b/resources/assets/js/components/notifications.js index 3ca2d8451..687c70e54 100644 --- a/resources/assets/js/components/notifications.js +++ b/resources/assets/js/components/notifications.js @@ -96,7 +96,7 @@ $(document).ready(function() { }).catch(err => { swal( 'Something went wrong!', - 'An error occured, please try again later.', + 'An error occurred, please try again later.', 'error' ); }); diff --git a/resources/assets/sass/custom.scss b/resources/assets/sass/custom.scss index ea2e55bd8..45068728b 100644 --- a/resources/assets/sass/custom.scss +++ b/resources/assets/sass/custom.scss @@ -267,6 +267,26 @@ body, button, input, textarea { .card { box-shadow: 0 2px 6px 0 hsla(0, 0%, 0%, 0.2); border: none; + + .comment-submit { + display: none; + position: absolute; + bottom: 12px; + right: 20px; + width: 60px; + text-align: center; + border-radius: 0 3px 3px 0; + } +} + +.touch .card { + input[name="comment"] { + padding-right: 70px; + } + + .comment-submit { + display: block; + } } .box-shadow { @@ -319,7 +339,7 @@ details summary::-webkit-details-marker { box-shadow: 0 2px 4px 0 rgba(0,0,0,0.08); border-radius: 5px; padding: .5em 1em .5em .5em; -} +} .input-elevated::placeholder { color: #838D99; @@ -417,7 +437,7 @@ details summary::-webkit-details-marker { background: rgba(0,0,0,0.04); } -.timeline-sidenav.nav-pills .nav-link.active, +.timeline-sidenav.nav-pills .nav-link.active, .timeline-sidenav.nav-pills .show > .nav-link { color: #08d; background: transparent; @@ -434,4 +454,4 @@ details summary::-webkit-details-marker { .notification-tooltip .arrow::before { border-bottom-color:#dc3545 !important; -} \ No newline at end of file +} diff --git a/resources/lang/vendor/backup/cs/notifications.php b/resources/lang/vendor/backup/cs/notifications.php new file mode 100644 index 000000000..947eb436e --- /dev/null +++ b/resources/lang/vendor/backup/cs/notifications.php @@ -0,0 +1,35 @@ + 'Zpráva výjimky: :message', + 'exception_trace' => 'Stopa výjimky: :trace', + 'exception_message_title' => 'Zpráva výjimky', + 'exception_trace_title' => 'Stopa výjimky', + + 'backup_failed_subject' => 'Záloha :application_name neuspěla', + 'backup_failed_body' => 'Důležité: Při záloze :application_name se vyskytla chyba', + + 'backup_successful_subject' => 'Úspěšná nová záloha :application_name', + 'backup_successful_subject_title' => 'Úspěšná nová záloha!', + 'backup_successful_body' => 'Dobrá zpráva, na disku jménem :disk_name byla úspěšně vytvořena nová záloha :application_name.', + + 'cleanup_failed_subject' => 'Vyčištění záloh :application_name neuspělo.', + 'cleanup_failed_body' => 'Při vyčištění záloh :application_name se vyskytla chyba', + + 'cleanup_successful_subject' => 'Vyčištění záloh :application_name úspěšné', + 'cleanup_successful_subject_title' => 'Vyčištění záloh bylo úspěšné!', + 'cleanup_successful_body' => 'Vyčištění záloh :application_name na disku jménem :disk_name bylo úspěšné.', + + 'healthy_backup_found_subject' => 'Zálohy pro :application_name na disku :disk_name jsou zdravé', + 'healthy_backup_found_subject_title' => 'Zálohy pro :application_name jsou zdravé', + 'healthy_backup_found_body' => 'Zálohy pro :application_name jsou považovány za zdravé. Dobrá práce!', + + 'unhealthy_backup_found_subject' => 'Důležité: Zálohy pro :application_name jsou nezdravé', + 'unhealthy_backup_found_subject_title' => 'Důležité: Zálohy pro :application_name jsou nezdravé. :problem', + 'unhealthy_backup_found_body' => 'Zálohy pro :application_name na disku :disk_name Jsou nezdravé.', + 'unhealthy_backup_found_not_reachable' => 'Nelze se dostat k cíli zálohy. :error', + 'unhealthy_backup_found_empty' => 'Tato aplikace nemá vůbec žádné zálohy.', + 'unhealthy_backup_found_old' => 'Poslední záloha vytvořená dne :date je považována za příliš starou.', + 'unhealthy_backup_found_unknown' => 'Omlouváme se, nemůžeme určit přesný důvod.', + 'unhealthy_backup_found_full' => 'Zálohy zabírají příliš mnoho místa na disku. Aktuální využití disku je :disk_usage, což je vyšší než povolený limit :disk_limit.', +]; diff --git a/resources/views/settings/remove/permanent.blade.php b/resources/views/settings/remove/permanent.blade.php index b95aa2894..a805ce668 100644 --- a/resources/views/settings/remove/permanent.blade.php +++ b/resources/views/settings/remove/permanent.blade.php @@ -16,7 +16,7 @@

When you press the button below, your photos, comments, likes, friendships and all other data will be removed permanently and will not be recoverable. If you decide to create another Pixelfed account in the future, you cannot sign up with the same username again on this instance.

- Warning: Some remote servers may contain your public data (statuses, avatars, ect) and will not be deleted until federation support is launched. + Warning: Some remote servers may contain your public data (statuses, avatars, etc) and will not be deleted until federation support is launched.

diff --git a/resources/views/site/help/getting-started.blade.php b/resources/views/site/help/getting-started.blade.php index 10adae72f..a764433f1 100644 --- a/resources/views/site/help/getting-started.blade.php +++ b/resources/views/site/help/getting-started.blade.php @@ -64,7 +64,7 @@

diff --git a/resources/views/status/compose.blade.php b/resources/views/status/compose.blade.php index 8b5251a2f..691a97a3e 100644 --- a/resources/views/status/compose.blade.php +++ b/resources/views/status/compose.blade.php @@ -354,7 +354,7 @@ $(document).on('change', '.file-input', function(e) { el.remove(); } }).catch(function(e) { - swal('Oops, something went wrong!', 'An unexpected error occured.', 'error'); + swal('Oops, something went wrong!', 'An unexpected error occurred.', 'error'); }); io.value = null; }); @@ -478,7 +478,7 @@ $(document).on('click', '#create', function(e) { let data = res.data; window.location.href = data; }).catch(err => { - swal('Oops, something went wrong!', 'An unexpected error occured.', 'error'); + swal('Oops, something went wrong!', 'An unexpected error occurred.', 'error'); }); }) diff --git a/resources/views/status/edit.blade.php b/resources/views/status/edit.blade.php index ffb23cb37..d69843552 100644 --- a/resources/views/status/edit.blade.php +++ b/resources/views/status/edit.blade.php @@ -83,7 +83,7 @@ }).then((res) => { swal('Success!', 'You have successfully updated your post', 'success'); }).catch((err) => { - swal('Something went wrong', 'An error occured, please try again later', 'error'); + swal('Something went wrong', 'An error occurred, please try again later', 'error'); }); });