Merge branch '3.6RC' of https://framagit.org/hubzilla/core into 3.6RC
This commit is contained in:
commit
35200e5f1b
94
CHANGELOG
94
CHANGELOG
@ -1,3 +1,97 @@
|
|||||||
|
Hubzilla 3.6 (????-??-??)
|
||||||
|
- Update jquery.timeago library
|
||||||
|
- Implement Hookable CSP
|
||||||
|
- ActivityStreams: accept header changes to support plume
|
||||||
|
- Streamline inconsistencies in addon naming
|
||||||
|
- SECURITY: hash the session_id in logs
|
||||||
|
- Update justified gallery library
|
||||||
|
- Hide channel in /cloud root if channel is hidden in directory
|
||||||
|
- Add resend option to channel sources tp discard original author.
|
||||||
|
- Provide flag to exclude privacy groups for federation plugin use in collect_recipients()
|
||||||
|
- Upgrading from redmatrix is no longer supported
|
||||||
|
- Deal with htmlentity encoding during authentication workflow
|
||||||
|
- Rework mod group
|
||||||
|
- Make droping posts of removed connections more memory efficient
|
||||||
|
- Refactor getOutainfo() for DAV storage
|
||||||
|
- Optionally report total available space when uploading
|
||||||
|
- SECURITY: provide option to disable the cloud 'root' directory and make the cloud module require a target channel nickname
|
||||||
|
- Add plink and llink to viewsource
|
||||||
|
- Add new 'filter by name' feature
|
||||||
|
- Remove network tabs
|
||||||
|
- New activity filter widget
|
||||||
|
- New activity order widget
|
||||||
|
- Make menus editable by visitors with webpage write permissions
|
||||||
|
- Move forum notifications to notifications
|
||||||
|
- Move manage privacy groups to the panel channel menu
|
||||||
|
- Don't remove items that are starred, filed, or that you replied to when removing a connection
|
||||||
|
- Don't deliver local items more than once
|
||||||
|
- Make navbar search use the module search function in /network and /channel
|
||||||
|
- Paint the locks on private activitypub items red. Their privacy model is "slightly" different from hubzillas
|
||||||
|
- Improve new channel creation workflow
|
||||||
|
- Add hook 'get_system_apps'
|
||||||
|
- Implement reset button for jot
|
||||||
|
- Adjust accept header to make pleroma happy
|
||||||
|
- Provide a general purpose GDPR document
|
||||||
|
- Provide function to fetch photo contents from url
|
||||||
|
- Make get_default_profile_photo() pluggable
|
||||||
|
- Refactor tags/mentions
|
||||||
|
- Refactor autocomplete mechanism
|
||||||
|
- Display pubsites link in info area if invite only
|
||||||
|
- Add cancel button to editor
|
||||||
|
- Implement MessageFilter for pubstream and sourced messages
|
||||||
|
- Add supported protocols to siteinfo
|
||||||
|
- Allow pdf embeds
|
||||||
|
- Allow uninstall of plugins which no longer exists via cmdline tool
|
||||||
|
- Improve the homeinstall script
|
||||||
|
- Provide easy access to the autoperms setting for forum and repository channels
|
||||||
|
- Implement admin delete of files, photos and posts
|
||||||
|
- Allow a different username to be used when importing a channel
|
||||||
|
- Provide warnings about profile photo and cover photo permissions
|
||||||
|
- Set the 'force' flag on attach_mkdir when initiated from a DAV operation
|
||||||
|
|
||||||
|
Bugfixes
|
||||||
|
- Fix double file uploads when dropping files into jot
|
||||||
|
- Fix jot collapsing when drag and drop to open jot
|
||||||
|
- Fix wrong album name when moving photos
|
||||||
|
- Fix wrong timestamp localization before first update in mod mail
|
||||||
|
- Fix post exiration not propagated to other networks (which support it)
|
||||||
|
- Fix sys channels visible in dirsearch
|
||||||
|
- Fix remote_self not working correctly
|
||||||
|
- Fix photos not syncing properly if destination is a postgres site
|
||||||
|
- Fix wrong hubloc_url for activitypub hublocs
|
||||||
|
- Fix z_check_dns() for BSD
|
||||||
|
- Fix not null violation in oauth1
|
||||||
|
- Fix DB issues with oauth2 on postgresql
|
||||||
|
- Fix 'anybody authenticated' not correctly handled in can_comment_on_post()
|
||||||
|
- Fix postgres issue if register mode is set to yes - with approval
|
||||||
|
- Fix tag search not finding articles
|
||||||
|
- Fix issue with mentions when markdown post addon is enabled
|
||||||
|
- Fix duplicate addressbook entries on repeated channel imports
|
||||||
|
|
||||||
|
Addons
|
||||||
|
- Cart: various display improvements
|
||||||
|
- Cart: make cart work with postgresql DB backend
|
||||||
|
- Cart: add new hzservice for service_classes
|
||||||
|
- Cart: add storewide currency settings
|
||||||
|
- Cart: provide channel app 'Shop' for cart addon
|
||||||
|
- Cart: implement order updating
|
||||||
|
- Cart: use CSP hook for paypals checkout.js
|
||||||
|
- Cart: provide a cancel mechanism for orders
|
||||||
|
- Cart: add paypal button
|
||||||
|
- Gallery: new addon to display photo albums with the photoswipe library
|
||||||
|
- Ldapauth: optionally auto create channel
|
||||||
|
- Pubcrawl: new setting to ignore ActivityPub recipients in privacy groups
|
||||||
|
- Diaspora: fix issue with displaying multiple photos
|
||||||
|
- Pubcrawl: provide plink
|
||||||
|
- Pubcrawl: hubloc_url should be baseurl, not actor url
|
||||||
|
- Pubcrawl: deliver restricted posts from hubzilla as direct messages (there is no other way to address only a subset of followers in mastodon)
|
||||||
|
- Pubcrawl: address comments to a restricted mastodon post to /followers
|
||||||
|
|
||||||
|
|
||||||
|
Hubzilla 3.4.2 (2018-07-19)
|
||||||
|
- Compatibility fix for future versions
|
||||||
|
|
||||||
|
|
||||||
Hubzilla 3.4.1 (2018-06-08)
|
Hubzilla 3.4.1 (2018-06-08)
|
||||||
- Say bye, bye to GitHub and move sourcecode repositories to #^https://framagit.org/hubzilla
|
- Say bye, bye to GitHub and move sourcecode repositories to #^https://framagit.org/hubzilla
|
||||||
- When removing a connection, don't remove items that are starred, filed or replied to
|
- When removing a connection, don't remove items that are starred, filed or replied to
|
||||||
|
@ -17,9 +17,9 @@ class CheckJS {
|
|||||||
else
|
else
|
||||||
$this->jsdisabled = 0;
|
$this->jsdisabled = 0;
|
||||||
|
|
||||||
if(! $this->jsdisabled) {
|
$page = bin2hex(\App::$query_string);
|
||||||
$page = bin2hex(\App::$query_string);
|
|
||||||
|
|
||||||
|
if(! $this->jsdisabled) {
|
||||||
if($test) {
|
if($test) {
|
||||||
$this->jsdisabled = 1;
|
$this->jsdisabled = 1;
|
||||||
if(array_key_exists('jsdisabled',$_COOKIE))
|
if(array_key_exists('jsdisabled',$_COOKIE))
|
||||||
|
2
boot.php
2
boot.php
@ -878,6 +878,8 @@ class App {
|
|||||||
// removing trailing / - maybe a nginx problem
|
// removing trailing / - maybe a nginx problem
|
||||||
if (substr(self::$query_string, 0, 1) == "/")
|
if (substr(self::$query_string, 0, 1) == "/")
|
||||||
self::$query_string = substr(self::$query_string, 1);
|
self::$query_string = substr(self::$query_string, 1);
|
||||||
|
// change the first & to ?
|
||||||
|
self::$query_string = preg_replace('/&/','?',self::$query_string,1);
|
||||||
}
|
}
|
||||||
|
|
||||||
if(x($_GET,'q'))
|
if(x($_GET,'q'))
|
||||||
|
@ -1,11 +1,11 @@
|
|||||||
<?php
|
<?php
|
||||||
|
|
||||||
if(! class_exists('App')) {
|
if(! class_exists('App')) {
|
||||||
class TmpA {
|
class App {
|
||||||
public $strings = Array();
|
static public $rtl;
|
||||||
}
|
static public $strings = Array();
|
||||||
$a = new TmpA();
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($argc!=2) {
|
if ($argc!=2) {
|
||||||
print "Usage: ".$argv[0]." <hstrings.php>\n\n";
|
print "Usage: ".$argv[0]." <hstrings.php>\n\n";
|
||||||
@ -32,17 +32,17 @@
|
|||||||
|
|
||||||
if ($k!="" && substr($l,0,7)=="msgstr "){
|
if ($k!="" && substr($l,0,7)=="msgstr "){
|
||||||
$ink = False;
|
$ink = False;
|
||||||
$v = '""';
|
$v = '';
|
||||||
//echo "DBG: k:'$k'\n";
|
//echo "DBG: k:'$k'\n";
|
||||||
if (isset(App::$strings[$k])) {
|
if (isset(App::$strings[$k])) {
|
||||||
$v= '"'.App::$strings[$k].'"';
|
$v= App::$strings[$k];
|
||||||
//echo "DBG\n";
|
//echo "DBG\n";
|
||||||
//var_dump($k, $v, App::$strings[$k], $v);
|
//var_dump($k, $v, App::$strings[$k], $v);
|
||||||
//echo "/DBG\n";
|
//echo "/DBG\n";
|
||||||
|
|
||||||
}
|
}
|
||||||
//echo "DBG: v:'$v'\n";
|
//echo "DBG: v:'$v'\n";
|
||||||
$l = "msgstr ".$v."\n";
|
$l = "msgstr \"".str_replace('"','\"',$v)."\"\n";
|
||||||
}
|
}
|
||||||
|
|
||||||
if (substr($l,0,6)=="msgid_" || substr($l,0,7)=="msgstr[" )$ink = False;;
|
if (substr($l,0,6)=="msgid_" || substr($l,0,7)=="msgstr[" )$ink = False;;
|
||||||
|
20550
view/ru/hmessages.po
20550
view/ru/hmessages.po
File diff suppressed because it is too large
Load Diff
4932
view/ru/hstrings.php
4932
view/ru/hstrings.php
File diff suppressed because it is too large
Load Diff
14
view/ru/hubzilla_update_fail_eml.tpl
Normal file
14
view/ru/hubzilla_update_fail_eml.tpl
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
|
||||||
|
Привет,
|
||||||
|
Я веб-сервер {{$sitename}};
|
||||||
|
|
||||||
|
Разработчики Hubzilla только что выпустили обновление {{$update}}
|
||||||
|
но когда я попыталась/ся установить его, что-то пошло не так.
|
||||||
|
Это должно быть исправлено в ближайшее время и требует вмешательства человека.
|
||||||
|
Пожалуйста, обратитесь к разработчикам Hubzilla, если вы не можете понять, как
|
||||||
|
исправьте это по своему усмотрению. Моя база данных может быть недействительной.
|
||||||
|
|
||||||
|
Сообщение ошибки является следующим '{{$}}'.
|
||||||
|
|
||||||
|
Приносим извинения за неудобства,
|
||||||
|
Ваш веб-сервер {{$siteurl}}
|
@ -1,32 +1,35 @@
|
|||||||
|
|
||||||
Dear {{$username}},
|
Уважаемый {{$username}},
|
||||||
A request was recently received at {{$sitename}} to reset your account
|
Недавно {{$sitename}} был получен запрос на сброс пароля вашей
|
||||||
password. In order to confirm this request, please select the verification link
|
учётной записи. Для подтверждения этого запроса, пожалуйста перейдите по ссылке
|
||||||
below or paste it into your web browser address bar.
|
проверки ниже или вставьте его в адресную строку вашего браузера.
|
||||||
|
|
||||||
If you did NOT request this change, please DO NOT follow the link
|
Если вы НЕ запрашивали это измнение, пожалуйста НЕ используйте предоставленную
|
||||||
provided and ignore and/or delete this email.
|
ссылку и игнорируйте и / или удалите это письмо.
|
||||||
|
|
||||||
Your password will not be changed unless we can verify that you
|
Ваш пароль не будет изменён до тех пор, пока мы не сможем убедиться что именно
|
||||||
issued this request.
|
вами создан запрос.
|
||||||
|
|
||||||
Follow this link to verify your identity:
|
Проследуйте по ссылке для подтверждения вашей личности:
|
||||||
|
|
||||||
{{$reset_link}}
|
{{$reset_link}}
|
||||||
|
|
||||||
You will then receive a follow-up message containing the new password.
|
После этого вы получите email содержащий новый пароль.
|
||||||
|
|
||||||
You may change that password from your account settings page after logging in.
|
Вы можете изменить этот пароль в вашей учётной записи после входа.
|
||||||
|
|
||||||
The login details are as follows:
|
Подробности логина:
|
||||||
|
|
||||||
Site Location: {{$siteurl}}
|
Расположение сайта: {{$siteurl}}
|
||||||
Login Name: {{$email}}
|
Имя для входа: {{$email}}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Sincerely,
|
С уважением,
|
||||||
{{$sitename}} Administrator
|
администрация {{$sitename}}
|
||||||
|
|
||||||
|
--
|
||||||
|
Условия использования сервиса:
|
||||||
|
{{$siteurl}}/help/TermsOfService
|
||||||
|
|
@ -1,20 +1,24 @@
|
|||||||
|
|
||||||
Dear {{$username}},
|
Дорогой {{$username}},
|
||||||
Your password has been changed as requested. Please retain this
|
Ваш пароль был изменен, как вы и просили. Пожалуйста, сохраните эту
|
||||||
information for your records (or change your password immediately to
|
информацию в ваших записях (или смените свой пароль на такой
|
||||||
something that you will remember).
|
который вы точно не забудете).
|
||||||
|
|
||||||
|
|
||||||
Your login details are as follows:
|
Детали учетной записи:
|
||||||
|
|
||||||
Site Location: {{$siteurl}}
|
Адрес сайта: {{$siteurl}}
|
||||||
Login Name: {{$email}}
|
Имя Пользователя: {{$email}}
|
||||||
Password: {{$new_password}}
|
Пароль: {{$new_password}}
|
||||||
|
|
||||||
You may change that password from your account settings page after logging in.
|
Вы можете сменить этот пароль в настройках учетной записи после того, как войдете в систему.
|
||||||
|
|
||||||
|
|
||||||
Sincerely,
|
С уважением,
|
||||||
{{$sitename}} Administrator
|
администрация {{$sitename}}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
--
|
||||||
|
Условия предоставления услуг:
|
||||||
|
{{$siteurl}}/help/TermsOfService
|
||||||
|
@ -1,19 +1,17 @@
|
|||||||
|
|
||||||
An account has been created at {{$sitename}} for this email address.
|
Учётная запись была создана на {{$sitename}} для этого адреса электронной почты.
|
||||||
The login details are as follows:
|
Детали учётной записи:
|
||||||
|
|
||||||
Site Location: {{$siteurl}}
|
Адрес сайта: {{$siteurl}}
|
||||||
Login: {{$email}}
|
Имя для входа: {{$email}}
|
||||||
Password: (the password which was provided during registration)
|
Пароль: (указанный вами при регистрации)
|
||||||
|
|
||||||
If this account was created without your knowledge and is not desired, you may
|
Если эта учётная запись была создана без вашего ведома или нежелательна, вы
|
||||||
visit this site and reset the password. This will allow you to remove the
|
можете посетить сайт и сбросить пароль. Это позволит вам удалить учётную запись
|
||||||
account from the links on the Settings page, and we
|
по ссылке на странице "Настройки".
|
||||||
apologise for any inconvenience.
|
Приносим извинения за любые неудобства.
|
||||||
|
|
||||||
Thank you and welcome to {{$sitename}}.
|
Спасибо и добро пожаловать на {{$sitename}}!
|
||||||
|
|
||||||
Sincerely,
|
С уважением,
|
||||||
{{$sitename}} Administrator
|
администрация {{$sitename}}
|
||||||
|
|
||||||
|
|
||||||
|
@ -1,25 +1,24 @@
|
|||||||
|
|
||||||
A new user registration request was received at {{$sitename}} which requires
|
Был получен запрос на регистрацию нового пользователя на {{$sitename}}
|
||||||
your approval.
|
что требует вашего подтверждения.
|
||||||
|
|
||||||
|
|
||||||
The login details are as follows:
|
Детали учётной записи:
|
||||||
|
|
||||||
Site Location: {{$siteurl}}
|
Адрес сайта: {{$siteurl}}
|
||||||
Login Name: {{$email}}
|
Имя для входа: {{$email}}
|
||||||
IP Address: {{$details}}
|
IP-адрес: {{$details}}
|
||||||
|
|
||||||
To approve this request please visit the following link:
|
Для подтверждения этого запроса пожалуйса перейдите по ссылке:
|
||||||
|
|
||||||
|
|
||||||
{{$siteurl}}/regmod/allow/{{$hash}}
|
{{$siteurl}}/regmod/allow/{{$hash}}
|
||||||
|
|
||||||
|
|
||||||
To deny the request and remove the account, please visit:
|
Для отказа и удаления учётной записи перейдите по ссылке:
|
||||||
|
|
||||||
|
|
||||||
{{$siteurl}}/regmod/deny/{{$hash}}
|
{{$siteurl}}/regmod/deny/{{$hash}}
|
||||||
|
|
||||||
|
|
||||||
Thank you.
|
Спасибо.
|
||||||
|
|
||||||
|
@ -1,13 +1,14 @@
|
|||||||
Hey,
|
|
||||||
I'm the web server at {{$sitename}};
|
Привет,
|
||||||
|
Я веб-сервер {{$sitename}};
|
||||||
The Hubzilla developers released update {{$update}} recently,
|
|
||||||
but when I tried to install it, something went terribly wrong.
|
Разработчики Hubzilla только что выпустили обновление {{$update}}
|
||||||
This needs to be fixed soon and it requires human intervention.
|
но когда я попыталась/ся установить его, что-то пошло не так.
|
||||||
Please contact a Red developer if you can not figure out how to
|
Это должно быть исправлено в ближайшее время и требует вмешательства человека.
|
||||||
fix it on your own. My database might be invalid.
|
Пожалуйста, обратитесь к разработчикам Hubzilla, если вы не можете понять, как
|
||||||
|
исправьте это по своему усмотрению. Моя база данных может быть недействительной.
|
||||||
The error message is '{{$error}}'.
|
|
||||||
|
Сообщение ошибки является следующим '{{$}}.
|
||||||
Apologies for the inconvenience,
|
|
||||||
your web server at {{$siteurl}}
|
Приносим извинения за неудобства,
|
||||||
|
Ваш веб-сервер {{$siteurl}}
|
||||||
|
@ -97,6 +97,7 @@ var activeCommentText = '';
|
|||||||
$('#invisible-comment-upload').fileupload({
|
$('#invisible-comment-upload').fileupload({
|
||||||
url: 'wall_attach/{{$nickname}}',
|
url: 'wall_attach/{{$nickname}}',
|
||||||
dataType: 'json',
|
dataType: 'json',
|
||||||
|
dropZone: $(),
|
||||||
maxChunkSize: 4 * 1024 * 1024,
|
maxChunkSize: 4 * 1024 * 1024,
|
||||||
add: function(e,data) {
|
add: function(e,data) {
|
||||||
|
|
||||||
@ -482,10 +483,13 @@ var activeCommentText = '';
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// file drag hover
|
// file drag hover
|
||||||
function DragDropUploadFileHover(e) {
|
function DragDropUploadFileHover(e) {
|
||||||
e.target.className = (e.type == "dragover" ? "hover" : "");
|
if(e.type == 'dragover')
|
||||||
}
|
$(e.target).addClass('hover');
|
||||||
|
else
|
||||||
|
$(e.target).removeClass('hover');
|
||||||
|
}
|
||||||
|
|
||||||
// file selection
|
// file selection
|
||||||
function DragDropUploadFileSelectHandler(e) {
|
function DragDropUploadFileSelectHandler(e) {
|
||||||
@ -494,7 +498,7 @@ var activeCommentText = '';
|
|||||||
DragDropUploadFileHover(e);
|
DragDropUploadFileHover(e);
|
||||||
// open editor if it isn't yet initialised
|
// open editor if it isn't yet initialised
|
||||||
if (!editor) {
|
if (!editor) {
|
||||||
initEditor();
|
enableOnUser();
|
||||||
}
|
}
|
||||||
linkdrop(e);
|
linkdrop(e);
|
||||||
|
|
||||||
@ -586,7 +590,7 @@ $( document ).on( "click", ".wall-item-delete-link,.page-delete-link,.layout-del
|
|||||||
openEditor = true;
|
openEditor = true;
|
||||||
}
|
}
|
||||||
if(openEditor) {
|
if(openEditor) {
|
||||||
initEditor();
|
enableOnUser();
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
postSaveChanges('clean');
|
postSaveChanges('clean');
|
||||||
|
Reference in New Issue
Block a user