Merge branch 'master' of git.gnu.io:h2p/Qvitter

This commit is contained in:
Hannes Mannerheim 2016-10-31 01:07:06 +01:00
commit d7ab9cd72e
52 changed files with 2008 additions and 729 deletions

View File

@ -150,6 +150,12 @@ class QvitterPlugin extends Plugin {
return true; return true;
} }
public function onBeforePluginCheckSchema()
{
QvitterNotification::beforeSchemaUpdate();
return true;
}
// route/reroute urls // route/reroute urls
public function onRouterInitialized($m) public function onRouterInitialized($m)
{ {
@ -516,6 +522,9 @@ class QvitterPlugin extends Plugin {
function onNoticeSimpleStatusArray($notice, &$twitter_status, $scoped) function onNoticeSimpleStatusArray($notice, &$twitter_status, $scoped)
{ {
// strip tags from source, we can't trust html here, because of gs bug
$twitter_status['source'] = htmlspecialchars(strip_tags($twitter_status['source']));
// groups // groups
$notice_groups = $notice->getGroups(); $notice_groups = $notice->getGroups();
$group_addressees = false; $group_addressees = false;
@ -1055,16 +1064,19 @@ class QvitterPlugin extends Plugin {
$notif->delete(); $notif->delete();
// outputs an activity notice that this notice was deleted
$profile = $notice->getProfile();
// don't delete if this is a user is being deleted // don't delete if this is a user is being deleted
// because that creates an infinite loop of deleting and creating notices... // because that creates an infinite loop of deleting and creating notices...
$user_is_deleted = false; $user_is_deleted = false;
try {
// outputs an activity notice that this notice was deleted
$profile = $notice->getProfile();
$user = User::getKV('id',$profile->id); $user = User::getKV('id',$profile->id);
if($user instanceof User && $user->hasRole(Profile_role::DELETED)) { if($user instanceof User && $user->hasRole(Profile_role::DELETED)) {
$user_is_deleted = true; $user_is_deleted = true;
} }
} catch (NoProfileException $e) {
$user_is_deleted = true;
}
if(!$user_is_deleted && class_exists('StatusNet') && !array_key_exists('ActivityModeration', StatusNet::getActivePlugins())) { if(!$user_is_deleted && class_exists('StatusNet') && !array_key_exists('ActivityModeration', StatusNet::getActivePlugins())) {
$rendered = sprintf(_m('<a href="%1$s">%2$s</a> deleted notice <a href="%3$s">{{%4$s}}</a>.'), $rendered = sprintf(_m('<a href="%1$s">%2$s</a> deleted notice <a href="%3$s">{{%4$s}}</a>.'),

View File

@ -50,6 +50,7 @@ $config['site']['qvitter']['sprite'] = Plugin::staticPath('Qvitter', '').'img/sp
$config['site']['qvitter']['enablewelcometext'] = true; $config['site']['qvitter']['enablewelcometext'] = true;
// $config['site']['qvitter']['customwelcometext']['sv'] = '<h1>Välkommen till Quitter.se en federerad<sup>1</sup> mikrobloggsallmänning!</h1><p>Etc etc...</p>'; // $config['site']['qvitter']['customwelcometext']['sv'] = '<h1>Välkommen till Quitter.se en federerad<sup>1</sup> mikrobloggsallmänning!</h1><p>Etc etc...</p>';
// $config['site']['qvitter']['customwelcometext']['en'] = '<h1>Welcome to Quitter.se a federated microblog common!</h1><p>Etc etc...</p>'; // $config['site']['qvitter']['customwelcometext']['en'] = '<h1>Welcome to Quitter.se a federated microblog common!</h1><p>Etc etc...</p>';
// $config['site']['qvitter']['customtermsofuse'] = 'Our custom terms of use';
$config['site']['qvitter']['blocked_ips'] = array(); $config['site']['qvitter']['blocked_ips'] = array();
// Recommended GNU social settings // Recommended GNU social settings

View File

@ -248,6 +248,16 @@ class QvitterAction extends ApiAction
// //
} }
// single notice feeds
try {
$single_notice_json = common_local_url('ApiStatusesShow', array( 'id' => $notice->getID(),'format' => 'json'));
$single_notice_atom = common_local_url('ApiStatusesShow', array( 'id' => $notice->getID(),'format' => 'atom'));
print '<link title="Single notice (JSON)" href="'.$single_notice_json.'" type="application/stream+json" rel="alternate">'."\n";
print '<link title="Single notice (Atom)" href="'.$single_notice_atom.'" type="application/atom+xml" rel="alternate">'."\n";
} catch (Exception $e) {
//
}
// twitter cards // twitter cards
print '<meta name="twitter:card" content="summary" />'."\n"; print '<meta name="twitter:card" content="summary" />'."\n";
print '<meta name="twitter:title" content="'.htmlspecialchars($profile->fullname).' (@'.$profile->nickname.')" />'."\n"; print '<meta name="twitter:title" content="'.htmlspecialchars($profile->fullname).' (@'.$profile->nickname.')" />'."\n";
@ -374,6 +384,21 @@ class QvitterAction extends ApiAction
print 'window.qvitterProfilePrefs = false;'; print 'window.qvitterProfilePrefs = false;';
} }
} }
// keyboard shortcuts can be disabled
$disable_keyboard_shortcuts = false;
if($logged_in_user) {
try {
$disable_keyboard_shortcuts = Profile_prefs::getData($logged_in_user->getProfile(), 'qvitter', 'disable_keyboard_shortcuts');
if($disable_keyboard_shortcuts == '1' || $disable_keyboard_shortcuts == 1) {
$disable_keyboard_shortcuts = true;
}
} catch (Exception $e) {
//
}
}
print 'window.disableKeyboardShortcuts = '.var_export($disable_keyboard_shortcuts, true).';';
?> ?>
// available language files and their last update time // available language files and their last update time
@ -397,10 +422,11 @@ class QvitterAction extends ApiAction
} }
// also make an array with all language names, to use for generating menu // also make an array with all language names, to use for generating menu
$languagecodesandnames[$lancode]['english_name'] = Locale::getDisplayLanguage($lancode, 'en'); $languagecodesandnames[$lancode]['english_name'] = Locale::getDisplayName($lancode, 'en');
$languagecodesandnames[$lancode]['name'] = Locale::getDisplayLanguage($lancode, $lancode); $languagecodesandnames[$lancode]['name'] = Locale::getDisplayName($lancode, $lancode);
if(Locale::getDisplayRegion($lancode, $lancode)) { $languagecodesandnames[$lancode]['tooltip'] = $languagecodesandnames[$lancode]['name'].' '.$languagecodesandnames[$lancode]['english_name'];
$languagecodesandnames[$lancode]['name'] .= ' ('.Locale::getDisplayRegion($lancode, $lancode).')'.$rtl_or_ltr_special_char; if($languagecodesandnames[$lancode]['name'] == $languagecodesandnames[$lancode]['english_name']) {
$languagecodesandnames[$lancode]['tooltip'] = $languagecodesandnames[$lancode]['english_name'];
} }
// ahorita meme only on quitter.es // ahorita meme only on quitter.es
@ -484,8 +510,16 @@ class QvitterAction extends ApiAction
<li class="fullwidth dropdown-divider"></li> <li class="fullwidth dropdown-divider"></li>
<li class="fullwidth"><a id="faq-link"></a></li> <li class="fullwidth"><a id="faq-link"></a></li>
<li class="fullwidth"><a id="tou-link"></a></li> <li class="fullwidth"><a id="tou-link"></a></li>
<li class="fullwidth"><a id="shortcuts-link"></a></li> <?php
<?php if (common_config('invite', 'enabled') && !common_config('site', 'closed')) { ?>
if($disable_keyboard_shortcuts === true) {
print '<li class="fullwidth"><a id="shortcuts-link" class="disabled" href="'.$instanceurl.'settings/qvitter"></a></li>';
}
else {
print '<li class="fullwidth"><a id="shortcuts-link"></a></li>';
}
if (common_config('invite', 'enabled') && !common_config('site', 'closed')) { ?>
<li class="fullwidth"><a id="invite-link" href="<?php print $instanceurl; ?>main/invite"></a></li> <li class="fullwidth"><a id="invite-link" href="<?php print $instanceurl; ?>main/invite"></a></li>
<?php } ?> <?php } ?>
<li class="fullwidth"><a id="classic-link"></a></li> <li class="fullwidth"><a id="classic-link"></a></li>
@ -496,7 +530,7 @@ class QvitterAction extends ApiAction
// languages // languages
foreach($languagecodesandnames as $lancode=>$lan) { foreach($languagecodesandnames as $lancode=>$lan) {
print '<li class="language"><a class="language-link" title="'.$lan['english_name'].'" data-lang-code="'.$lancode.'">'.$lan['name'].'</a></li>'; print '<li class="language"><a class="language-link" data-tooltip="'.$lan['tooltip'].'" data-lang-code="'.$lancode.'">'.$lan['name'].'</a></li>';
} }
?> ?>
@ -530,7 +564,7 @@ class QvitterAction extends ApiAction
// languages // languages
foreach($languagecodesandnames as $lancode=>$lan) { foreach($languagecodesandnames as $lancode=>$lan) {
print '<li><a class="language-link" title="'.$lan['english_name'].'" data-lang-code="'.$lancode.'">'.$lan['name'].'</a></li>'; print '<li><a class="language-link" data-tooltip="'.$lan['english_name'].'" data-lang-code="'.$lancode.'">'.$lan['name'].'</a></li>';
} }
?> ?>
@ -592,8 +626,12 @@ class QvitterAction extends ApiAction
<button id="signup-btn-step1" class="signup-btn" type="submit"></button> <button id="signup-btn-step1" class="signup-btn" type="submit"></button>
</div> </div>
<div id="other-servers-link"></div><?php } <div id="other-servers-link"></div><?php }
?><div id="qvitter-notice-logged-out"><?php print common_config('site', 'qvitternoticeloggedout'); ?></div> ?><div id="qvitter-notice-logged-out"><?php print common_config('site', 'qvitternoticeloggedout'); ?></div><?php
</div><?php
// event for other plugins to add html to the logged in sidebar
Event::handle('QvitterEndShowSidebarLoggedOut', array($this));
?></div><?php
} }
// box containing the logged in users queet count and compose form // box containing the logged in users queet count and compose form
@ -645,8 +683,12 @@ class QvitterAction extends ApiAction
<div class="menu-container" id="bookmark-container"></div> <div class="menu-container" id="bookmark-container"></div>
<div class="menu-container" id="history-container"></div> <div class="menu-container" id="history-container"></div>
<div id="clear-history"></div> <div id="clear-history"></div>
<div id="qvitter-notice"><?php print common_config('site', 'qvitternotice'); ?></div> <div id="qvitter-notice"><?php print common_config('site', 'qvitternotice'); ?></div><?php
</div><?php
// event for other plugins to add html to the logged in sidebar
Event::handle('QvitterEndShowSidebarLoggedIn', array($this));
?></div><?php
} ?> } ?>
<div id="feed"> <div id="feed">
@ -733,7 +775,8 @@ class QvitterAction extends ApiAction
ul.stats a strong, ul.stats a strong,
.queet-box-extras button, .queet-box-extras button,
#openid-login:hover:after, #openid-login:hover:after,
.post-to-group { .post-to-group,
.stream-item-header .addressees .reply-to .h-card.not-mentioned-inline {
color:/*COLORSTART*/<?php print QvitterPlugin::settings("defaultlinkcolor"); ?>/*COLOREND*/; color:/*COLORSTART*/<?php print QvitterPlugin::settings("defaultlinkcolor"); ?>/*COLOREND*/;
} }
#unseen-notifications, #unseen-notifications,

View File

@ -93,7 +93,13 @@ class QvitterSettingsAction extends SettingsAction
$hide_replies_prefs = false; $hide_replies_prefs = false;
} }
$form = new QvitterPrefsForm($this, $disable_enable_prefs, $hide_replies_prefs); try {
$disable_keyboard_shortcuts = Profile_prefs::getData($user->getProfile(), 'qvitter', 'disable_keyboard_shortcuts');
} catch (NoResultException $e) {
$disable_keyboard_shortcuts = false;
}
$form = new QvitterPrefsForm($this, $disable_enable_prefs, $hide_replies_prefs, $disable_keyboard_shortcuts);
$form->show(); $form->show();
} }
@ -119,6 +125,8 @@ class QvitterSettingsAction extends SettingsAction
Profile_prefs::setData($user->getProfile(), 'qvitter', 'hide_replies', $this->boolean('hide_replies')); Profile_prefs::setData($user->getProfile(), 'qvitter', 'hide_replies', $this->boolean('hide_replies'));
Profile_prefs::setData($user->getProfile(), 'qvitter', 'disable_keyboard_shortcuts', $this->boolean('disable_keyboard_shortcuts'));
// TRANS: Confirmation shown when user profile settings are saved. // TRANS: Confirmation shown when user profile settings are saved.
$this->showForm(_('Settings saved.'), true); $this->showForm(_('Settings saved.'), true);
@ -130,12 +138,14 @@ class QvitterPrefsForm extends Form
{ {
var $disable_enable_prefs; var $disable_enable_prefs;
var $hide_replies_prefs; var $hide_replies_prefs;
var $disable_keyboard_shortcuts;
function __construct($out, $disable_enable_prefs, $hide_replies_prefs) function __construct($out, $disable_enable_prefs, $hide_replies_prefs, $disable_keyboard_shortcuts)
{ {
parent::__construct($out); parent::__construct($out);
$this->disable_enable_prefs = $disable_enable_prefs; $this->disable_enable_prefs = $disable_enable_prefs;
$this->hide_replies_prefs = $hide_replies_prefs; $this->hide_replies_prefs = $hide_replies_prefs;
$this->disable_keyboard_shortcuts = $disable_keyboard_shortcuts;
} }
/** /**
@ -177,6 +187,16 @@ class QvitterPrefsForm extends Form
$this->elementEnd('li'); $this->elementEnd('li');
$this->elementEnd('ul'); $this->elementEnd('ul');
$this->elementEnd('fieldset'); $this->elementEnd('fieldset');
$this->elementStart('fieldset');
$this->elementStart('ul', 'form_data');
$this->elementStart('li');
$this->checkbox('disable_keyboard_shortcuts',
_('Disable keyboard shortcuts'),
(!empty($this->disable_keyboard_shortcuts)));
$this->elementEnd('li');
$this->elementEnd('ul');
$this->elementEnd('fieldset');
} }
/** /**

View File

@ -19,8 +19,8 @@ class QvitterNotification extends Managed_DataObject
return array( return array(
'fields' => array( 'fields' => array(
'id' => array('type' => 'serial', 'not null' => true), 'id' => array('type' => 'serial', 'not null' => true),
'to_profile_id' => array('type' => 'int', 'description' => 'the profile being notified'), 'to_profile_id' => array('type' => 'int', 'not null'=>true, 'description' => 'the profile being notified'),
'from_profile_id' => array('type' => 'int', 'description' => 'the profile that is notifying'), 'from_profile_id' => array('type' => 'int', 'not null'=>true, 'description' => 'the profile that is notifying'),
'ntype' => array('type' => 'varchar', 'length' => 7, 'description' => 'reply, like, mention or follow'), 'ntype' => array('type' => 'varchar', 'length' => 7, 'description' => 'reply, like, mention or follow'),
'notice_id' => array('type' => 'int', 'description' => 'id for the reply or mention or notice being faved'), 'notice_id' => array('type' => 'int', 'description' => 'id for the reply or mention or notice being faved'),
'is_seen' => array('type' => 'int', 'size' => 'tiny', 'default' => 0, 'description' => 'if the notification has been seen'), 'is_seen' => array('type' => 'int', 'size' => 'tiny', 'default' => 0, 'description' => 'if the notification has been seen'),
@ -30,7 +30,8 @@ class QvitterNotification extends Managed_DataObject
'foreign keys' => array( 'foreign keys' => array(
'qvitternotification_to_profile_id_fkey' => array('profile', array('to_profile_id' => 'id')), 'qvitternotification_to_profile_id_fkey' => array('profile', array('to_profile_id' => 'id')),
'qvitternotification_from_profile_id_fkey' => array('profile', array('from_profile_id' => 'id')), 'qvitternotification_from_profile_id_fkey' => array('profile', array('from_profile_id' => 'id')),
'qvitternotification_notice_id_fkey' => array('notice', array('notice_id' => 'id')), // removing this because there can be rows without related notice_id
//'qvitternotification_notice_id_fkey' => array('notice', array('notice_id' => 'id')),
), ),
'indexes' => array( 'indexes' => array(
'qvitternotification_created_idx' => array('created'), 'qvitternotification_created_idx' => array('created'),
@ -54,5 +55,52 @@ class QvitterNotification extends Managed_DataObject
return $result; return $result;
} }
static public function beforeSchemaUpdate()
{
$table = strtolower(get_called_class());
$schema = Schema::get();
try {
$schemadef = $schema->getTableDef($table);
} catch (SchemaTableMissingException $e) {
printfnq("\nTable '$table' not created yet, so nothing to do with it before Schema Update... DONE.");
return;
}
printfnq("\nEnsuring no NULL values for foreign keys in QvitterNotification...");
// Because constraints to profile and notice table assume not null, we must
// remove any values in these columns that are NULL (or 0), because they
// are invalid anyway.
$qn = new QvitterNotification();
foreach (['to_profile_id', 'from_profile_id'] as $field) {
$qn->whereAdd(sprintf('%s is NULL', $field), 'OR');
$qn->whereAdd(sprintf('%s = 0', $field), 'OR');
}
if ($qn->find()) {
printfnq(" removing {$qn->N} rows...");
while ($qn->fetch()) {
$qn->delete();
}
}
printfnq("DONE.\n");
printfnq("Ensuring no dead profile or notice IDs are stored in QvitterNotification...");
// We could probably build a single statement for this but I just want it done...
// or maybe be smart and take it directly from our defined 'foreign keys'... but oh well!
$constraints = ['to_profile_id' => 'profile:id',
'from_profile_id' => 'profile:id'];
foreach ($constraints as $field=>$foreign) {
$qn = new QvitterNotification();
$qn->selectAdd();
$qn->selectAdd('qvitternotification.id'); // to avoid confusion with profile.id, also we only need the primary key
$qn->joinAdd([$field, $foreign], 'LEFT');
$qn->whereAdd(str_replace(':', '.', $foreign).' IS NULL');
if ($qn->find()) {
printfnq("\n{$field}: {$qn->N} rows...");
while ($qn->fetch()) {
$qn->delete();
}
}
}
printfnq("DONE.\n");
}
} }

View File

@ -40,7 +40,7 @@
font-style: normal; font-style: normal;
} }
* { body {
font-family:"Helvetica Neue",Arial,sans-serif; font-family:"Helvetica Neue",Arial,sans-serif;
} }
@ -505,11 +505,13 @@ body.rtl .dropdown-menu li:not(.dropdown-caret) {
font-size: 12px; font-size: 12px;
font-weight: normal; font-weight: normal;
line-height: 18px; line-height: 18px;
padding: 3px 15px 3px 22px; overflow: hidden;
padding: 3px 0 3px 22px;
position: relative; position: relative;
text-decoration: none;
text-overflow: ellipsis;
text-shadow: none; text-shadow: none;
white-space: nowrap; white-space: nowrap;
text-decoration: none;
} }
body.rtl .dropdown-menu li:not(.dropdown-caret) a { body.rtl .dropdown-menu li:not(.dropdown-caret) a {
padding: 3px 22px 3px 15px; padding: 3px 22px 3px 15px;
@ -2007,9 +2009,9 @@ background-repeat: no-repeat;
.stream-item .account-group span.sandboxed-flag { .stream-item .account-group span.sandboxed-flag {
background-color: #00ccff; background-color: #00ccff;
} }
body.has-right-to-silence .stream-item.silenced .account-group span.silenced-flag, body.has-right-to-silence .stream-item.silenced > .queet .account-group span.silenced-flag,
body.has-right-to-sandbox .stream-item.sandboxed .account-group span.sandboxed-flag { body.has-right-to-sandbox .stream-item.sandboxed > .queet .account-group span.sandboxed-flag {
display:inline-block;; display:inline-block;
} }
.profile-card .profile-header-inner span.silenced-flag, .profile-card .profile-header-inner span.silenced-flag,
.profile-card .profile-header-inner span.sandboxed-flag { .profile-card .profile-header-inner span.sandboxed-flag {
@ -2223,7 +2225,8 @@ body.rtl .queet.rtl .expanded-content {
position:relative; position:relative;
} }
.quoted-notice, .quoted-notice,
.oembed-item { .oembed-item,
.xfolkentry {
width:100%; width:100%;
border: 1px solid #eee; border: 1px solid #eee;
border-radius: 4px; border-radius: 4px;
@ -2236,17 +2239,25 @@ body.rtl .queet.rtl .expanded-content {
color:#292f33 !important; color:#292f33 !important;
overflow: hidden; overflow: hidden;
} }
.oembed-item { .oembed-item,
.xfolkentry {
padding:0; padding:0;
} }
.quoted-notice:hover, .quoted-notice:hover,
.oembed-item:hover { .oembed-item:hover,
.xfolkentry:hover {
text-decoration: none !important; text-decoration: none !important;
} }
.stream-item:hover:not(.expanded) .quoted-notice , .stream-item:hover:not(.expanded) .quoted-notice ,
.stream-item:hover:not(.expanded) .oembed-item { .stream-item:hover:not(.expanded) .oembed-item,
.stream-item:hover:not(.expanded) .xfolkentry {
border: 1px solid #ddd; border: 1px solid #ddd;
} }
.stream-item:hover:not(.expanded) .xfolkentry .taggedlink::before {
background-color:#ddd;
color:#bbb;
}
.quoted-notice-attachments { .quoted-notice-attachments {
width:100%; width:100%;
@ -2261,7 +2272,8 @@ body.rtl .queet.rtl .expanded-content {
} }
.quoted-notice-img-container, .quoted-notice-img-container,
.oembed-img-container { .oembed-img-container,
.xfolkentry .taggedlink::before {
height: 102px; height: 102px;
width: 102px; width: 102px;
display: inline-block; display: inline-block;
@ -2271,6 +2283,20 @@ body.rtl .queet.rtl .expanded-content {
background-repeat:no-repeat; background-repeat:no-repeat;
background-position: center; background-position: center;
} }
.xfolkentry .taggedlink::before {
background-color: #eee;
color: #ccc;
content: '\f097';
float: left;
font-family: "fontAwesome";
font-size: 40px;
height: 70px;
line-height: 70px;
margin-top: 0;
text-align: center;
vertical-align: top;
width: 70px;
}
.oembed-img-container { .oembed-img-container {
height: 125px; height: 125px;
width: 125px; width: 125px;
@ -2342,13 +2368,28 @@ body.rtl .queet.rtl .expanded-content {
line-height: 18.3px; line-height: 18.3px;
margin-top:4.5px; margin-top:4.5px;
} }
.oembed-item-footer { .oembed-item-footer,
.xfolkentry .meta .tag {
overflow: hidden; overflow: hidden;
text-overflow: ellipsis; text-overflow: ellipsis;
white-space: nowrap; white-space: nowrap;
color:#999; color:#999;
padding-bottom: 9px; padding-bottom: 9px;
} }
.xfolkentry .taggedlink {
line-height:25px;
font-weight: bold;
overflow: hidden;
white-space: nowrap;
}
.xfolkentry .meta,
.xfolkentry .description {
display:block;
margin:-2px 10px 3px 8px;
}
.xfolkentry .meta .tag::before {
content:"#";
}
.oembed-item-provider-url { .oembed-item-provider-url {
font-style:italic; font-style:italic;
} }
@ -2401,7 +2442,8 @@ body.rtl .queet.rtl .expanded-content {
background-size:100% auto; background-size:100% auto;
} }
.queet .queet-thumbs.thumb-num-1 .thumb-container.youtube { .queet .queet-thumbs.thumb-num-1 .thumb-container.host-youtube-com,
.queet .queet-thumbs.thumb-num-1 .thumb-container.host-vimeo-com {
height:250px; height:250px;
} }
@ -2802,6 +2844,9 @@ body.rtl .view-more-container-bottom { direction:rtl; }
font-family:FontAwesome; font-family:FontAwesome;
font-style:normal; font-style:normal;
} }
.stream-item-header .addressees .reply-to .h-card.not-mentioned-inline {
font-weight:bold;
}
.stream-item-header .created-at { .stream-item-header .created-at {
color: #BBBBBB; color: #BBBBBB;
font-size: 13px; font-size: 13px;
@ -4078,6 +4123,7 @@ div.nav-session {
-moz-background-size: cover; -moz-background-size: cover;
-o-background-size: cover; -o-background-size: cover;
background-size: cover; background-size: cover;
background-position: center;
} }
.hover-card .profile-header-inner { .hover-card .profile-header-inner {
height: 200px; height: 200px;
@ -5011,11 +5057,13 @@ body.rtl .modal-footer button {
margin: 0 auto; margin: 0 auto;
min-height: 0; min-height: 0;
} }
#queet-thumb-popup .modal-body .thumb-container.youtube iframe { #queet-thumb-popup .modal-body .thumb-container.host-youtube-com iframe,
#queet-thumb-popup .modal-body .thumb-container.host-vimeo-com iframe {
position:absolute; position:absolute;
z-index:2; z-index:2;
} }
#queet-thumb-popup .modal-body .thumb-container.youtube { #queet-thumb-popup .modal-body .thumb-container.host-youtube-com,
#queet-thumb-popup .modal-body .thumb-container.host-vimeo-com {
background-image:none !important; background-image:none !important;
z-index:1; z-index:1;
} }
@ -5295,6 +5343,10 @@ content:"\f068";
/* Keyboard shortcuts /* Keyboard shortcuts
-----------*/ -----------*/
#shortcuts-link.disabled {
color:#eee;
}
#popup-shortcuts #shortcuts-container { #popup-shortcuts #shortcuts-container {
padding:0 20px 20px 20px; padding:0 20px 20px 20px;
font-size:13px; font-size:13px;

16
doc/de/shortcuts.html Normal file
View File

@ -0,0 +1,16 @@
<h3>Aktionen</h3>
<p><span class="shortcut">n</span><span class="description">Neuer Queet</span></p>
<p><span class="shortcut">f</span><span class="description">Als Favorit markieren</span></p>
<p><span class="shortcut">r</span><span class="description">Antworten</span></p>
<p><span class="shortcut">t</span><span class="description">Requeet</span></p>
<p><span class="shortcut">Enter</span><span class="description">Queet erweitern</span></p>
<p><span class="shortcut">Ctrl</span><span class="shortcut">Enter</span>oder <span class="shortcut">Cmd ⌘</span><span class="shortcut">Enter</span><span class="description">Queet posten</span></p>
<p><span class="shortcut">Esc</span><span class="description">Alle erweiterten Queets zuklappen</span></p>
<h3>Navigation</h3>
<p><span class="shortcut">?</span><span class="description">Dieses Menu</span></p>
<p><span class="shortcut">j</span><span class="description">Nächster Queet</span></p>
<p><span class="shortcut">k</span><span class="description">Vorheriger Queet</span></p>
<h3>Disable</h3>
<p>Keyboard shortcuts can be turned off on <a href="{instance-url-with-protocol}settings/qvitter">the Qvitter settings page</a>.</p>

View File

@ -11,7 +11,7 @@ Struktur. Es ist hier deshalb möglich, Nutzer vor Belästigungen und Unterdrüc
Dieses geschieht aber ohne jegliche Zensur.</p> Dieses geschieht aber ohne jegliche Zensur.</p>
<p>Auf {instance-name} werden Nutzer die andere Nutzer belästigen gelöscht. Wir gehen ebenfalls <p>Auf {instance-name} werden Nutzer die andere Nutzer belästigen gelöscht. Wir gehen ebenfalls
konsequent gegen Rassismus, Sexismus, Behindertenfeindlichkeit, Homo- und Transphobie vor. konsequent gegen Rassismus, Sexismus, Behindertenfeindlichkeit, Antisemitismus, Homo- und Transphobie vor.
Derartige Äußerungen würden diese Webseite unsicher für andere Nutzer machen und deren Derartige Äußerungen würden diese Webseite unsicher für andere Nutzer machen und deren
Meinungsfreiheit einschränken.</p> Meinungsfreiheit einschränken.</p>

View File

@ -11,3 +11,6 @@
<p><span class="shortcut">?</span><span class="description">This menu</span></p> <p><span class="shortcut">?</span><span class="description">This menu</span></p>
<p><span class="shortcut">j</span><span class="description">Next Queet</span></p> <p><span class="shortcut">j</span><span class="description">Next Queet</span></p>
<p><span class="shortcut">k</span><span class="description">Previous Queet</span></p> <p><span class="shortcut">k</span><span class="description">Previous Queet</span></p>
<h3>Disable</h3>
<p>Keyboard shortcuts can be turned off on <a href="{instance-url-with-protocol}settings/qvitter">the Qvitter settings page</a>.</p>

View File

@ -9,7 +9,7 @@ of flat power structure. We are enabled to protect eachother from harassment and
but without centralized censorship.</p> but without centralized censorship.</p>
<p>On this instance, users who harass others will be removed. We also take a strong stance <p>On this instance, users who harass others will be removed. We also take a strong stance
against e.g. racism, sexism, ableism, homo- and transphobia. Such expressions make the against e.g. racism, sexism, ableism, antisemitism, homo- and transphobia. Such expressions make the
site unsafe for other users, and in practice limit their freedom of speech.</p> site unsafe for other users, and in practice limit their freedom of speech.</p>
<p>The Public Timeline is considered an especially sensitive place. It is what new users see, <p>The Public Timeline is considered an especially sensitive place. It is what new users see,

30
doc/es/terms.html Normal file
View File

@ -0,0 +1,30 @@
<p>{instance-name} no es un servicio y tú no eres un cliente aquí. Somos una pequeña parte de un
cambio social mayor, creando una gran comunidad descentralizada. Esto significa que no tenemos que
ser neutrales sobre el contenido de este nodo de GNU Social. Si no te gusta el camino que el nodo
está llevando, eres libre de cambiarte a otro nodo o crear el tuyo propio. Podrás continuar siguiendo
y siendo seguido (o bloqueado) por usuarios de este nodo.</p>
<p>Frente al modelo vertical de jerarquía de las redes comerciales, éste crea una estructura de poder
horizontal. Podemos proteger a los demás de acoso y opresión, pero sin centralizar la censura.</p>
<p>En este nodo, los usuarios que acosen a otros serán eliminados. Tendremos también una postura
estricta contra el racismo, el sexismo, la discriminación contra personas discapacitadas, la homofobia
y la transfobia. Tales comportamientos hacen el sitio inseguro para otros usuarios y, en la práctica,
limita su libertad de expresión.</p>
<p>La Línea Temporal Pública es considerada un lugar especialmente sensible. Es lo que los nuevos
usuarios ven, y todos los usuarios registrados van a ver los mensajes publicados ahí. Los moderadores
pueden excluir a usuarios de aparecer en la línea temporal pública en cualquier momento, sin previo
aviso, temporal o permanentemente. Considera publicar en la línea temporal como un privilegio, no como
un derecho. Si eres excluido de la línea temporal pública, todavía dispones de otras opciones en el
sitio como cualquier otro usuario.</p>
<p>Publicidad y entidades comerciales no son permitidas en este nodo. No tenemos ningún ánimo de lucro
y nuestros gastos son pagados por donaciones de personas. <a href="mailto:{instance-email}">Podemos
ayudarte</a> a montar tu propio nodo de GNU Social si tu intención no es comercial.</p>
<p>Todos los contenidos de este sitio están bajo licencia <a href="{instance-license-url}">{instance-license-title}</a></p>
<p>Cada usuario es responsable del contenido que sube. Si tienes dudas sobre algo publicado en este
nodo, contacta primero con el usuario en cuestión. Como último recurso puedes escribir un correo
electrónico a los <a href="mailto:{instance-email}">administradores</a>.</p>

View File

@ -11,3 +11,6 @@
<p><span class="shortcut">?</span><span class="description">Ica menuo</span></p> <p><span class="shortcut">?</span><span class="description">Ica menuo</span></p>
<p><span class="shortcut">j</span><span class="description">Sequanta mesajo</span></p> <p><span class="shortcut">j</span><span class="description">Sequanta mesajo</span></p>
<p><span class="shortcut">k</span><span class="description">Preiranta mesajo</span></p> <p><span class="shortcut">k</span><span class="description">Preiranta mesajo</span></p>
<h3>Disable</h3>
<p>Keyboard shortcuts can be turned off on <a href="{instance-url-with-protocol}settings/qvitter">the Qvitter settings page</a>.</p>

View File

@ -11,3 +11,6 @@
<p><span class="shortcut">?</span><span class="description">Denne menyen</span></p> <p><span class="shortcut">?</span><span class="description">Denne menyen</span></p>
<p><span class="shortcut">j</span><span class="description">Neste melding</span></p> <p><span class="shortcut">j</span><span class="description">Neste melding</span></p>
<p><span class="shortcut">k</span><span class="description">Forrige melding</span></p> <p><span class="shortcut">k</span><span class="description">Forrige melding</span></p>
<h3>Disable</h3>
<p>Keyboard shortcuts can be turned off on <a href="{instance-url-with-protocol}settings/qvitter">the Qvitter settings page</a>.</p>

View File

@ -11,3 +11,6 @@
<p><span class="shortcut">?</span><span class="description">Denna meny</span></p> <p><span class="shortcut">?</span><span class="description">Denna meny</span></p>
<p><span class="shortcut">j</span><span class="description">Nästa qvitter</span></p> <p><span class="shortcut">j</span><span class="description">Nästa qvitter</span></p>
<p><span class="shortcut">k</span><span class="description">Föregående qvitter</span></p> <p><span class="shortcut">k</span><span class="description">Föregående qvitter</span></p>
<h3>Stäng av</h3>
<p>Kortkommandon kan avaktiveras på <a href="{instance-url-with-protocol}settings/qvitter">Qvitters inställningssida</a>.</p>

View File

@ -184,7 +184,9 @@ function getFromAPI(stream, actionOnSuccess) {
actionOnSuccess(data, userArray, request, url); actionOnSuccess(data, userArray, request, url);
}, },
error: function(data) { error: function(data, textStatus, errorThrown) {
data.textStatus = textStatus;
data.errorThrown = errorThrown;
actionOnSuccess(false, false, data, url); actionOnSuccess(false, false, data, url);
remove_spinner(); remove_spinner();
} }

View File

@ -808,7 +808,7 @@ function setNewCurrentStream(streamObject,setLocation,fallbackId,actionOnSuccess
// discard and remove any cached data that is not in this (new) format // discard and remove any cached data that is not in this (new) format
if(typeof haveOldStreamState.card == 'undefined' if(typeof haveOldStreamState.card == 'undefined'
|| typeof haveOldStreamState.feed == 'undefined') { || typeof haveOldStreamState.feed == 'undefined') {
localStorageObjectCache_STORE('streamState',window.currentStreamObject.path, false); localStorageObjectCache_STORE('streamState',window.currentStreamObject.path, false);
haveOldStreamState = false; haveOldStreamState = false;
} }
@ -958,7 +958,7 @@ function setNewCurrentStream(streamObject,setLocation,fallbackId,actionOnSuccess
} }
else if(error.status == 404) { else if(error.status == 404) {
if(streamObject.name == 'profile' if(streamObject.name == 'profile'
|| streamObject.name == 'friends timeline' || streamObject.name == 'friends timeline'
|| streamObject.name == 'mentions' || streamObject.name == 'mentions'
|| streamObject.name == 'favorites' || streamObject.name == 'favorites'
|| streamObject.name == 'subscribers' || streamObject.name == 'subscribers'
@ -967,13 +967,13 @@ function setNewCurrentStream(streamObject,setLocation,fallbackId,actionOnSuccess
showErrorMessage(window.sL.ERRORcouldNotFindUserWithNickname.replace('{nickname}',replaceHtmlSpecialChars(streamObject.nickname))); showErrorMessage(window.sL.ERRORcouldNotFindUserWithNickname.replace('{nickname}',replaceHtmlSpecialChars(streamObject.nickname)));
} }
else if(streamObject.name == 'group notice stream' else if(streamObject.name == 'group notice stream'
|| streamObject.name == 'group member list' || streamObject.name == 'group member list'
|| streamObject.name == 'group admin list') { || streamObject.name == 'group admin list') {
showErrorMessage(window.sL.ERRORcouldNotFindGroupWithNickname.replace('{nickname}',replaceHtmlSpecialChars(streamObject.nickname))); showErrorMessage(window.sL.ERRORcouldNotFindGroupWithNickname.replace('{nickname}',replaceHtmlSpecialChars(streamObject.nickname)));
} }
else if(streamObject.name == 'list notice stream' else if(streamObject.name == 'list notice stream'
|| streamObject.name == 'list members' || streamObject.name == 'list members'
|| streamObject.name == 'list subscribers') { || streamObject.name == 'list subscribers') {
showErrorMessage(window.sL.ERRORcouldNotFindList); showErrorMessage(window.sL.ERRORcouldNotFindList);
} }
else { else {
@ -999,7 +999,6 @@ function setNewCurrentStream(streamObject,setLocation,fallbackId,actionOnSuccess
showErrorMessage(window.sL.ERRORsomethingWentWrong + '<br><br>\ showErrorMessage(window.sL.ERRORsomethingWentWrong + '<br><br>\
url: ' + url + '<br><br>\ url: ' + url + '<br><br>\
jQuery ajax() error:<pre><code>' + replaceHtmlSpecialChars(JSON.stringify(error, null, ' ')) + '</code></pre>\ jQuery ajax() error:<pre><code>' + replaceHtmlSpecialChars(JSON.stringify(error, null, ' ')) + '</code></pre>\
streamObject:<pre><code>' + replaceHtmlSpecialChars(JSON.stringify(streamObject, null, ' ')) + '</code></pre>\
'); ');
} }
@ -1298,14 +1297,24 @@ function expand_queet(q,doScrolling) {
} }
// if there's only one thumb and it's a youtube video, show it inline // if there's only one thumb and it's a youtube video, show it inline
if(q.children('.queet').find('.queet-thumbs.thumb-num-1').children('.thumb-container.play-button.youtube').length == 1) { if(q.children('.queet').find('.queet-thumbs.thumb-num-1').children('.thumb-container.play-button.host-youtube-com').length == 1) {
var youtubeURL = q.children('.queet').find('.queet-thumbs.thumb-num-1').children('.thumb-container.play-button.youtube').children('.attachment-thumb').attr('data-full-image-url'); var youtubeURL = q.children('.queet').find('.queet-thumbs.thumb-num-1').children('.thumb-container.play-button.host-youtube-com').children('.attachment-thumb').attr('data-full-image-url');
if(q.children('.queet').find('.expanded-content').children('.media').children('iframe[src="' + youTubeEmbedLinkFromURL(youtubeURL) + '"]').length < 1) { // not if already showed if(q.children('.queet').find('.expanded-content').children('.media').children('iframe[src="' + youTubeEmbedLinkFromURL(youtubeURL) + '"]').length < 1) { // not if already showed
q.children('.queet').find('.queet-thumbs').addClass('hide-thumbs'); q.children('.queet').find('.queet-thumbs').addClass('hide-thumbs');
// show video // show video
q.children('.queet').find('.expanded-content').prepend('<div class="media"><iframe width="510" height="315" src="' + youTubeEmbedLinkFromURL(youtubeURL) + '" frameborder="0" allowfullscreen></iframe></div>'); q.children('.queet').find('.expanded-content').prepend('<div class="media"><iframe width="510" height="315" src="' + youTubeEmbedLinkFromURL(youtubeURL) + '" frameborder="0" allowfullscreen></iframe></div>');
} }
} }
// if there's only one thumb and it's a vimeo video, show it inline
else if(q.children('.queet').find('.queet-thumbs.thumb-num-1').children('.thumb-container.play-button.host-vimeo-com').length == 1) {
var vimeoURL = q.children('.queet').find('.queet-thumbs.thumb-num-1').children('.thumb-container.play-button.host-vimeo-com').children('.attachment-thumb').attr('data-full-image-url');
var embedURL = vimeoEmbedLinkFromURL(vimeoURL);
if(q.children('.queet').find('.expanded-content').children('.media').children('iframe[src="' + embedURL + '"]').length < 1) { // not if already showed
q.children('.queet').find('.queet-thumbs').addClass('hide-thumbs');
// show video
q.children('.queet').find('.expanded-content').prepend('<iframe src="' + embedURL + '" width="510" height="315" frameborder="0" webkitallowfullscreen mozallowfullscreen allowfullscreen></iframe>');
}
}
// show certain attachments in expanded content // show certain attachments in expanded content
if(q.children('.queet').children('script.attachment-json').length > 0 if(q.children('.queet').children('script.attachment-json').length > 0
@ -1485,7 +1494,7 @@ function replyFormHtml(streamItem,qid) {
var repliesText = ''; var repliesText = '';
if(Object.keys(screenNamesToAdd).length < 1 if(Object.keys(screenNamesToAdd).length < 1
&& q.find('strong.name').attr('data-user-id') == window.loggedIn.id) { && q.find('strong.name').attr('data-user-id') == window.loggedIn.id) {
if(streamItem.attr('data-in-reply-to-status-id') == 'null' || streamItem.attr('data-in-reply-to-status-id') == 'false' || streamItem.attr('data-in-reply-to-status-id') == 'undefined' || streamItem.attr('data-in-reply-to-status-id') == '') { if(streamItem.attr('data-in-reply-to-status-id') == 'null' || streamItem.attr('data-in-reply-to-status-id') == 'false' || streamItem.attr('data-in-reply-to-status-id') == 'undefined' || streamItem.attr('data-in-reply-to-status-id') == '') {
var startText = window.sL.startRant + ' '; var startText = window.sL.startRant + ' ';
} }
else { else {
@ -2213,8 +2222,16 @@ function buildQueetHtml(obj, idInStream, extraClasses, requeeted_by, isConversat
var replyToProfileurl = obj.attentions[0].profileurl; var replyToProfileurl = obj.attentions[0].profileurl;
var replyToScreenName = obj.attentions[0].screen_name; var replyToScreenName = obj.attentions[0].screen_name;
} }
if(typeof replyToProfileurl != 'undefined' && typeof replyToScreenName != 'undefined') { if(typeof replyToProfileurl != 'undefined' && typeof replyToScreenName != 'undefined') {
reply_to_html = '<span class="reply-to"><a class="h-card mention" href="' + replyToProfileurl + '">@' + replyToScreenName + '</a></span> ';
// if the reply-to nickname doesn't exist in the notice, we add a class to the reply-to nickname in the header, to make the reply more visible
var mentionedInline = '';
if(obj.statusnet_html.indexOf('>' + replyToScreenName + '<') === -1) {
var mentionedInline = 'not-mentioned-inline';
}
reply_to_html = '<span class="reply-to"><a class="h-card mention ' + mentionedInline + '" href="' + replyToProfileurl + '">@' + replyToScreenName + '</a></span> ';
} }
// in-groups html // in-groups html
@ -2261,6 +2278,11 @@ function buildQueetHtml(obj, idInStream, extraClasses, requeeted_by, isConversat
$(this).contents().unwrap(); $(this).contents().unwrap();
}); });
// bookmarks created by the bookmark plugin get's a tooltip
statusnetHTML.find('.xfolkentry').each(function(){
$(this).attr('data-tooltip',window.sL.thisIsABookmark);
});
// find a place in the queet-text for the quoted notices // find a place in the queet-text for the quoted notices
statusnetHTML = placeQuotedNoticesInQueetText(attachmentBuild.quotedNotices, statusnetHTML); statusnetHTML = placeQuotedNoticesInQueetText(attachmentBuild.quotedNotices, statusnetHTML);
statusnetHTML = statusnetHTML.html(); statusnetHTML = statusnetHTML.html();
@ -2478,6 +2500,7 @@ function buildAttachmentHTML(attachments){
&& this.oembed !== false && this.oembed !== false
&& this.oembed.title !== null && this.oembed.title !== null
&& this.oembed.provider != 'YouTube' && this.oembed.provider != 'YouTube'
&& this.oembed.provider != 'Vimeo'
&& this.oembed.type != 'photo') { && this.oembed.type != 'photo') {
var oembedImage = ''; var oembedImage = '';
@ -2560,15 +2583,10 @@ function buildAttachmentHTML(attachments){
// play button for videos and animated gifs // play button for videos and animated gifs
var playButtonClass = ''; var playButtonClass = '';
if((this.url.indexOf('://www.youtube.com') > -1 || this.url.indexOf('://youtu.be') > -1) if(typeof this.animated != 'undefined' && this.animated === true
|| (typeof this.animated != 'undefined' && this.animated === true)) { || (this.url.indexOf('://www.youtube.com') > -1 || this.url.indexOf('://youtu.be') > -1)
var playButtonClass = ' play-button'; || this.url.indexOf('://vimeo.com') > -1) {
} playButtonClass = ' play-button';
// youtube class
var youTubeClass = '';
if(this.url.indexOf('://www.youtube.com') > -1 || this.url.indexOf('://youtu.be') > -1) {
youTubeClass = ' youtube';
} }
// gif-class // gif-class
@ -2600,7 +2618,7 @@ function buildAttachmentHTML(attachments){
var urlToHide = window.siteInstanceURL + 'attachment/' + this.id; var urlToHide = window.siteInstanceURL + 'attachment/' + this.id;
attachmentHTML += '<a data-local-attachment-url="' + urlToHide + '" style="background-image:url(\'' + img_url + '\')" class="thumb-container' + noCoverClass + playButtonClass + youTubeClass + animatedGifClass + '" href="' + this.url + '"><img class="attachment-thumb" data-mime-type="' + this.mimetype + '" src="' + img_url + '"/ data-width="' + this.width + '" data-height="' + this.height + '" data-full-image-url="' + this.url + '" data-thumb-url="' + img_url + '"></a>'; attachmentHTML += '<a data-local-attachment-url="' + urlToHide + '" style="background-image:url(\'' + img_url + '\')" class="thumb-container' + noCoverClass + playButtonClass + animatedGifClass + ' ' + CSSclassNameByHostFromURL(this.url) + '" href="' + this.url + '"><img class="attachment-thumb" data-mime-type="' + this.mimetype + '" src="' + img_url + '"/ data-width="' + this.width + '" data-height="' + this.height + '" data-full-image-url="' + this.url + '" data-thumb-url="' + img_url + '"></a>';
urlsToHide.push(urlToHide); // hide this attachment url from the queet text urlsToHide.push(urlToHide); // hide this attachment url from the queet text
attachmentNum++; attachmentNum++;
} }

36
js/lib/bowser.min.js vendored
View File

@ -1,6 +1,32 @@
/*! /*
* Bowser - a browser detector
* https://github.com/ded/bowser @licstart The following is the entire license notice for the
* MIT License | (c) Dustin Diaz 2015 JavaScript code in this page.
*/
Copyright (c) Dustin Diaz 2015 MIT License https://github.com/ded/bowser
Permission is hereby granted, free of charge, to any person obtaining
a copy of this software and associated documentation files (the
"Software"), to deal in the Software without restriction, including
without limitation the rights to use, copy, modify, merge, publish,
distribute, sublicense, and/or sell copies of the Software, and to
permit persons to whom the Software is furnished to do so, subject to
the following conditions:
The above copyright notice and this permission notice shall be included
in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
@licend The above is the entire license notice
for the JavaScript code in this page.
*/
!function(e,t){typeof module!="undefined"&&module.exports?module.exports=t():typeof define=="function"&&define.amd?define(t):this[e]=t()}("bowser",function(){function t(t){function n(e){var n=t.match(e);return n&&n.length>1&&n[1]||""}function r(e){var n=t.match(e);return n&&n.length>1&&n[2]||""}var i=n(/(ipod|iphone|ipad)/i).toLowerCase(),s=/like android/i.test(t),o=!s&&/android/i.test(t),u=/CrOS/.test(t),a=n(/edge\/(\d+(\.\d+)?)/i),f=n(/version\/(\d+(\.\d+)?)/i),l=/tablet/i.test(t),c=!l&&/[^-]mobi/i.test(t),h;/opera|opr/i.test(t)?h={name:"Opera",opera:e,version:f||n(/(?:opera|opr)[\s\/](\d+(\.\d+)?)/i)}:/yabrowser/i.test(t)?h={name:"Yandex Browser",yandexbrowser:e,version:f||n(/(?:yabrowser)[\s\/](\d+(\.\d+)?)/i)}:/windows phone/i.test(t)?(h={name:"Windows Phone",windowsphone:e},a?(h.msedge=e,h.version=a):(h.msie=e,h.version=n(/iemobile\/(\d+(\.\d+)?)/i))):/msie|trident/i.test(t)?h={name:"Internet Explorer",msie:e,version:n(/(?:msie |rv:)(\d+(\.\d+)?)/i)}:u?h={name:"Chrome",chromeBook:e,chrome:e,version:n(/(?:chrome|crios|crmo)\/(\d+(\.\d+)?)/i)}:/chrome.+? edge/i.test(t)?h={name:"Microsoft Edge",msedge:e,version:a}:/chrome|crios|crmo/i.test(t)?h={name:"Chrome",chrome:e,version:n(/(?:chrome|crios|crmo)\/(\d+(\.\d+)?)/i)}:i?(h={name:i=="iphone"?"iPhone":i=="ipad"?"iPad":"iPod"},f&&(h.version=f)):/sailfish/i.test(t)?h={name:"Sailfish",sailfish:e,version:n(/sailfish\s?browser\/(\d+(\.\d+)?)/i)}:/seamonkey\//i.test(t)?h={name:"SeaMonkey",seamonkey:e,version:n(/seamonkey\/(\d+(\.\d+)?)/i)}:/firefox|iceweasel/i.test(t)?(h={name:"Firefox",firefox:e,version:n(/(?:firefox|iceweasel)[ \/](\d+(\.\d+)?)/i)},/\((mobile|tablet);[^\)]*rv:[\d\.]+\)/i.test(t)&&(h.firefoxos=e)):/silk/i.test(t)?h={name:"Amazon Silk",silk:e,version:n(/silk\/(\d+(\.\d+)?)/i)}:o?h={name:"Android",version:f}:/phantom/i.test(t)?h={name:"PhantomJS",phantom:e,version:n(/phantomjs\/(\d+(\.\d+)?)/i)}:/blackberry|\bbb\d+/i.test(t)||/rim\stablet/i.test(t)?h={name:"BlackBerry",blackberry:e,version:f||n(/blackberry[\d]+\/(\d+(\.\d+)?)/i)}:/(web|hpw)os/i.test(t)?(h={name:"WebOS",webos:e,version:f||n(/w(?:eb)?osbrowser\/(\d+(\.\d+)?)/i)},/touchpad\//i.test(t)&&(h.touchpad=e)):/bada/i.test(t)?h={name:"Bada",bada:e,version:n(/dolfin\/(\d+(\.\d+)?)/i)}:/tizen/i.test(t)?h={name:"Tizen",tizen:e,version:n(/(?:tizen\s?)?browser\/(\d+(\.\d+)?)/i)||f}:/safari/i.test(t)?h={name:"Safari",safari:e,version:f}:h={name:n(/^(.*)\/(.*) /),version:r(/^(.*)\/(.*) /)},!h.msedge&&/(apple)?webkit/i.test(t)?(h.name=h.name||"Webkit",h.webkit=e,!h.version&&f&&(h.version=f)):!h.opera&&/gecko\//i.test(t)&&(h.name=h.name||"Gecko",h.gecko=e,h.version=h.version||n(/gecko\/(\d+(\.\d+)?)/i)),!h.msedge&&(o||h.silk)?h.android=e:i&&(h[i]=e,h.ios=e);var p="";h.windowsphone?p=n(/windows phone (?:os)?\s?(\d+(\.\d+)*)/i):i?(p=n(/os (\d+([_\s]\d+)*) like mac os x/i),p=p.replace(/[_\s]/g,".")):o?p=n(/android[ \/-](\d+(\.\d+)*)/i):h.webos?p=n(/(?:web|hpw)os\/(\d+(\.\d+)*)/i):h.blackberry?p=n(/rim\stablet\sos\s(\d+(\.\d+)*)/i):h.bada?p=n(/bada\/(\d+(\.\d+)*)/i):h.tizen&&(p=n(/tizen[\/\s](\d+(\.\d+)*)/i)),p&&(h.osversion=p);var d=p.split(".")[0];if(l||i=="ipad"||o&&(d==3||d==4&&!c)||h.silk)h.tablet=e;else if(c||i=="iphone"||i=="ipod"||o||h.blackberry||h.webos||h.bada)h.mobile=e;return h.msedge||h.msie&&h.version>=10||h.yandexbrowser&&h.version>=15||h.chrome&&h.version>=20||h.firefox&&h.version>=20||h.safari&&h.version>=6||h.opera&&h.version>=10||h.ios&&h.osversion&&h.osversion.split(".")[0]>=6||h.blackberry&&h.version>=10.1?h.a=e:h.msie&&h.version<10||h.chrome&&h.version<20||h.firefox&&h.version<20||h.safari&&h.version<6||h.opera&&h.version<10||h.ios&&h.osversion&&h.osversion.split(".")[0]<6?h.c=e:h.x=e,h}var e=!0,n=t(typeof navigator!="undefined"?navigator.userAgent:"");return n.test=function(e){for(var t=0;t<e.length;++t){var r=e[t];if(typeof r=="string"&&r in n)return!0}return!1},n._detect=t,n}) !function(e,t){typeof module!="undefined"&&module.exports?module.exports=t():typeof define=="function"&&define.amd?define(t):this[e]=t()}("bowser",function(){function t(t){function n(e){var n=t.match(e);return n&&n.length>1&&n[1]||""}function r(e){var n=t.match(e);return n&&n.length>1&&n[2]||""}var i=n(/(ipod|iphone|ipad)/i).toLowerCase(),s=/like android/i.test(t),o=!s&&/android/i.test(t),u=/CrOS/.test(t),a=n(/edge\/(\d+(\.\d+)?)/i),f=n(/version\/(\d+(\.\d+)?)/i),l=/tablet/i.test(t),c=!l&&/[^-]mobi/i.test(t),h;/opera|opr/i.test(t)?h={name:"Opera",opera:e,version:f||n(/(?:opera|opr)[\s\/](\d+(\.\d+)?)/i)}:/yabrowser/i.test(t)?h={name:"Yandex Browser",yandexbrowser:e,version:f||n(/(?:yabrowser)[\s\/](\d+(\.\d+)?)/i)}:/windows phone/i.test(t)?(h={name:"Windows Phone",windowsphone:e},a?(h.msedge=e,h.version=a):(h.msie=e,h.version=n(/iemobile\/(\d+(\.\d+)?)/i))):/msie|trident/i.test(t)?h={name:"Internet Explorer",msie:e,version:n(/(?:msie |rv:)(\d+(\.\d+)?)/i)}:u?h={name:"Chrome",chromeBook:e,chrome:e,version:n(/(?:chrome|crios|crmo)\/(\d+(\.\d+)?)/i)}:/chrome.+? edge/i.test(t)?h={name:"Microsoft Edge",msedge:e,version:a}:/chrome|crios|crmo/i.test(t)?h={name:"Chrome",chrome:e,version:n(/(?:chrome|crios|crmo)\/(\d+(\.\d+)?)/i)}:i?(h={name:i=="iphone"?"iPhone":i=="ipad"?"iPad":"iPod"},f&&(h.version=f)):/sailfish/i.test(t)?h={name:"Sailfish",sailfish:e,version:n(/sailfish\s?browser\/(\d+(\.\d+)?)/i)}:/seamonkey\//i.test(t)?h={name:"SeaMonkey",seamonkey:e,version:n(/seamonkey\/(\d+(\.\d+)?)/i)}:/firefox|iceweasel/i.test(t)?(h={name:"Firefox",firefox:e,version:n(/(?:firefox|iceweasel)[ \/](\d+(\.\d+)?)/i)},/\((mobile|tablet);[^\)]*rv:[\d\.]+\)/i.test(t)&&(h.firefoxos=e)):/silk/i.test(t)?h={name:"Amazon Silk",silk:e,version:n(/silk\/(\d+(\.\d+)?)/i)}:o?h={name:"Android",version:f}:/phantom/i.test(t)?h={name:"PhantomJS",phantom:e,version:n(/phantomjs\/(\d+(\.\d+)?)/i)}:/blackberry|\bbb\d+/i.test(t)||/rim\stablet/i.test(t)?h={name:"BlackBerry",blackberry:e,version:f||n(/blackberry[\d]+\/(\d+(\.\d+)?)/i)}:/(web|hpw)os/i.test(t)?(h={name:"WebOS",webos:e,version:f||n(/w(?:eb)?osbrowser\/(\d+(\.\d+)?)/i)},/touchpad\//i.test(t)&&(h.touchpad=e)):/bada/i.test(t)?h={name:"Bada",bada:e,version:n(/dolfin\/(\d+(\.\d+)?)/i)}:/tizen/i.test(t)?h={name:"Tizen",tizen:e,version:n(/(?:tizen\s?)?browser\/(\d+(\.\d+)?)/i)||f}:/safari/i.test(t)?h={name:"Safari",safari:e,version:f}:h={name:n(/^(.*)\/(.*) /),version:r(/^(.*)\/(.*) /)},!h.msedge&&/(apple)?webkit/i.test(t)?(h.name=h.name||"Webkit",h.webkit=e,!h.version&&f&&(h.version=f)):!h.opera&&/gecko\//i.test(t)&&(h.name=h.name||"Gecko",h.gecko=e,h.version=h.version||n(/gecko\/(\d+(\.\d+)?)/i)),!h.msedge&&(o||h.silk)?h.android=e:i&&(h[i]=e,h.ios=e);var p="";h.windowsphone?p=n(/windows phone (?:os)?\s?(\d+(\.\d+)*)/i):i?(p=n(/os (\d+([_\s]\d+)*) like mac os x/i),p=p.replace(/[_\s]/g,".")):o?p=n(/android[ \/-](\d+(\.\d+)*)/i):h.webos?p=n(/(?:web|hpw)os\/(\d+(\.\d+)*)/i):h.blackberry?p=n(/rim\stablet\sos\s(\d+(\.\d+)*)/i):h.bada?p=n(/bada\/(\d+(\.\d+)*)/i):h.tizen&&(p=n(/tizen[\/\s](\d+(\.\d+)*)/i)),p&&(h.osversion=p);var d=p.split(".")[0];if(l||i=="ipad"||o&&(d==3||d==4&&!c)||h.silk)h.tablet=e;else if(c||i=="iphone"||i=="ipod"||o||h.blackberry||h.webos||h.bada)h.mobile=e;return h.msedge||h.msie&&h.version>=10||h.yandexbrowser&&h.version>=15||h.chrome&&h.version>=20||h.firefox&&h.version>=20||h.safari&&h.version>=6||h.opera&&h.version>=10||h.ios&&h.osversion&&h.osversion.split(".")[0]>=6||h.blackberry&&h.version>=10.1?h.a=e:h.msie&&h.version<10||h.chrome&&h.version<20||h.firefox&&h.version<20||h.safari&&h.version<6||h.opera&&h.version<10||h.ios&&h.osversion&&h.osversion.split(".")[0]<6?h.c=e:h.x=e,h}var e=!0,n=t(typeof navigator!="undefined"?navigator.userAgent:"");return n.test=function(e){for(var t=0;t<e.length;++t){var r=e[t];if(typeof r=="string"&&r in n)return!0}return!1},n._detect=t,n})

View File

@ -1,11 +1,27 @@
// Copyright (c) 2013 Pieroxy <pieroxy@pieroxy.net> /*
// This work is free. You can redistribute it and/or modify it
// under the terms of the WTFPL, Version 2 @licstart The following is the entire license notice for the
// For more information see LICENSE.txt or http://www.wtfpl.net/ JavaScript code in this page.
//
// For more information, the home page: DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE
// http://pieroxy.net/blog/pages/lz-string/testing.html Version 2, December 2004
//
Copyright (c) 2013 Pieroxy <pieroxy@pieroxy.net> http://pieroxy.net/blog/pages/lz-string/testing.html
Everyone is permitted to copy and distribute verbatim or modified
copies of this license document, and changing it is allowed as long
as the name is changed.
WHAT THE FUCK YOU WANT TO PUBLIC LICENSE
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
0. You just DO WHAT THE FUCK YOU WANT TO.
@licend The above is the entire license notice
for the JavaScript code in this page.
*/
// LZ-based compression algorithm, version 1.4.4 // LZ-based compression algorithm, version 1.4.4
var LZString = (function() { var LZString = (function() {
@ -493,9 +509,3 @@ var LZString = {
}; };
return LZString; return LZString;
})(); })();
if (typeof define === 'function' && define.amd) {
define(function () { return LZString; });
} else if( typeof module !== 'undefined' && module != null ) {
module.exports = LZString
}

View File

@ -1,7 +1,32 @@
/*! /*
* XRegExp-All 3.0.0-pre
* <http://xregexp.com/> @licstart The following is the entire license notice for the
* Steven Levithan (c) 2012-2015 MIT License JavaScript code in this page.
Steven Levithan (c) 2012-2015 MIT License http://xregexp.com/
Permission is hereby granted, free of charge, to any person obtaining
a copy of this software and associated documentation files (the
"Software"), to deal in the Software without restriction, including
without limitation the rights to use, copy, modify, merge, publish,
distribute, sublicense, and/or sell copies of the Software, and to
permit persons to whom the Software is furnished to do so, subject to
the following conditions:
The above copyright notice and this permission notice shall be included
in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
@licend The above is the entire license notice
for the JavaScript code in this page.
*/ */
// Module systems magic dance. Don't use strict mode for this function, so it can assign to global. // Module systems magic dance. Don't use strict mode for this function, so it can assign to global.
@ -4227,4 +4252,3 @@ var XRegExp = (function(undefined) {
return XRegExp; return XRegExp;
})); }));

View File

@ -38,6 +38,37 @@
· · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · */ · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · */
/* ·
·
· Trigger click on <input type="file"> elements
·
· @param inputFile: jQuery element to trigger click on
·
· · · · · · · · · */
function triggerClickOnInputFile(inputFile) {
if(typeof bowser != 'undefined') {
var bowserIntVersion = parseInt(bowser.version,10);
if(typeof bowser.chrome != 'undefined' && bowser.chrome === true && bowserIntVersion < 53
|| typeof bowser.opera != 'undefined' && bowser.opera === true && bowserIntVersion < 39
|| typeof bowser.safari != 'undefined' && bowser.safari === true && bowserIntVersion < 9) {
var evt = document.createEvent("HTMLEvents");
evt.initEvent("click", true, true);
inputFile[0].dispatchEvent(evt);
console.log('triggering click on on input file element with the old trigger hack for older browsers...');
}
else {
inputFile.trigger('click');
console.log('regular click triggered on input file element');
}
}
else {
inputFile.trigger('click');
console.log('no bowser object found: regular click triggered on input file element');
}
console.log(bowser);
}
/* · /* ·
· ·
@ -461,7 +492,7 @@ function userIsBlocked(userId) {
· · · · · · · · · */ · · · · · · · · · */
function markAllNoticesFromBlockedUsersAsBlockedInJQueryObject(obj) { function markAllNoticesFromBlockedUsersAsBlockedInJQueryObject(obj) {
$.each(window.allBlocking,function(){ $.each(window.allBlocking,function(){
obj.find('.stream-item[data-user-id="' + this + '"]').addClass('profile-blocked-by-me'); obj.find('.stream-item[data-user-id="' + this + '"]').addClass('profile-blocked-by-me');
obj.find('.stream-item[data-user-id="' + this + '"]').children('.queet').attr('data-tooltip',window.sL.thisIsANoticeFromABlockedUser); obj.find('.stream-item[data-user-id="' + this + '"]').children('.queet').attr('data-tooltip',window.sL.thisIsANoticeFromABlockedUser);
@ -475,7 +506,7 @@ function markAllNoticesFromBlockedUsersAsBlockedInJQueryObject(obj) {
· ·
· · · · · · · · · */ · · · · · · · · · */
function markAllNoticesFromMutedUsersAsMutedInJQueryObject(obj) { function markAllNoticesFromMutedUsersAsMutedInJQueryObject(obj) {
$.each(obj.find('.stream-item'),function(){ $.each(obj.find('.stream-item'),function(){
if(isUserMuted($(this).attr('data-user-id'))) { if(isUserMuted($(this).attr('data-user-id'))) {
@ -496,7 +527,7 @@ function markAllNoticesFromMutedUsersAsMutedInJQueryObject(obj) {
· ·
· · · · · · · · · */ · · · · · · · · · */
function markAllProfileCardsFromMutedUsersAsMutedInDOM() { function markAllProfileCardsFromMutedUsersAsMutedInDOM() {
$.each($('body').find('.profile-header-inner'),function(){ $.each($('body').find('.profile-header-inner'),function(){
if(isUserMuted($(this).attr('data-user-id'))) { if(isUserMuted($(this).attr('data-user-id'))) {
@ -938,7 +969,7 @@ function userArrayCacheStore(data) {
window.convertStatusnetProfileUrlToUserArrayCacheKey[dataToStore.external.statusnet_profile_url] = key; window.convertStatusnetProfileUrlToUserArrayCacheKey[dataToStore.external.statusnet_profile_url] = key;
} }
// store the time when this record was modified // store the time when this record was modified
if(dataToStore.local || dataToStore.external) { if(dataToStore.local || dataToStore.external) {
window.userArrayCache[key].modified = Date.now(); window.userArrayCache[key].modified = Date.now();
} }
} }
@ -1733,7 +1764,7 @@ function validateRegisterForm(o) {
return allFieldsValid; return allFieldsValid;
} }
function validEmail(email) { function validEmail(email) {
if(/^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/.test(email)) { if(/^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/.test(email)) {
return true; return true;
} }
@ -2634,24 +2665,99 @@ function shortenUrlsInBox(shortenButton) {
} }
/* ·
·
· Youtube ID from Youtube URL
·
· · · · · · · · · · · · · */
function youTubeIDFromYouTubeURL(url) {
return url.replace('https://youtube.com/watch?v=','').replace('http://youtube.com/watch?v=','').replace('http://www.youtube.com/watch?v=','').replace('https://www.youtube.com/watch?v=','').replace('http://youtu.be/','').replace('https://youtu.be/','').substr(0,11);
}
/* · /* ·
· ·
· Youtube embed link from youtube url · Youtube embed link from youtube url
· ·
· · · · · · · · · · · · · */ · · · · · · · · · · · · · */
function youTubeEmbedLinkFromURL(url) { function youTubeEmbedLinkFromURL(url, autoplay) {
var youtubeId = url.replace('http://www.youtube.com/watch?v=','').replace('https://www.youtube.com/watch?v=','').replace('http://youtu.be/','').replace('https://youtu.be/','').substr(0,11);
// get start time hash // get start time hash
var l = document.createElement("a"); var l = document.createElement("a");
l.href = url; l.href = url;
var addStart = '';
if(l.hash.substring(0,3) == '#t=') { if(l.hash.substring(0,3) == '#t=') {
return '//www.youtube.com/embed/' + youtubeId + '?start=' + l.hash.substring(3); addStart = '&start=' + l.hash.substring(3);
} }
else {
return '//www.youtube.com/embed/' + youtubeId; var addAutoplay = '';
if(typeof autoplay != 'undefined' && autoplay === true) {
addAutoplay = '&autoplay=1';
} }
return '//www.youtube.com/embed/' + youTubeIDFromYouTubeURL(url) + '?enablejsapi=1&version=3&playerapiid=ytplayer' + addStart + addAutoplay;
}
/* ·
·
· Vimeo ID from Vimeo URL
·
· · · · · · · · · · · · · */
function vimeoIDFromVimeoURL(url) {
id = url.replace('http://vimeo.com/','').replace('https://vimeo.com/','');
if(id.indexOf('#') > -1) {
id = id.substring(0,id.indexOf('#'));
}
return id;
}
/* ·
·
· Vimeo embed link from vimeo url
·
· · · · · · · · · · · · · */
function vimeoEmbedLinkFromURL(url, autoplay) {
// get start time hash
var l = document.createElement("a");
l.href = url;
var addStart = '';
if(l.hash.substring(0,3) == '#t=') {
addStart = l.hash;
}
var addAutoplay = '&autoplay=0';
if(typeof autoplay != 'undefined' && autoplay === true) {
addAutoplay = '&autoplay=1';
}
return 'https://player.vimeo.com/video/' + vimeoIDFromVimeoURL(url) + '?api=1' + addAutoplay + addStart;
}
/* ·
·
· CSS class name from URL
·
· · · · · · · · · · · · · */
function CSSclassNameByHostFromURL(url) {
var host = getHost(url);
if(host.indexOf('www.') === 0) {
host = host.substring(4);
}
host = host.toLowerCase().replace(/\./g, "-");
host = host.replace(/[^a-zA-Z0-9-]+/g, "_");
if(host == 'youtu-be') {
host = 'youtube-com';
}
return 'host-' + host;
} }

View File

@ -222,8 +222,8 @@ window.userArrayLastRetrieved = new Object();
$('body').on('mouseover',function (e) { $('body').on('mouseover',function (e) {
// no hovercards on these elements // no hovercards on these elements
if($(e.target).is('#user-queets') || $(e.target).closest('a').is('#user-queets') if($(e.target).is('#user-queets') || $(e.target).closest('a').is('#user-queets')
|| $(e.target).is('.tweet-stats') || $(e.target).closest('a').is('.tweet-stats')) { || $(e.target).is('.tweet-stats') || $(e.target).closest('a').is('.tweet-stats')) {
return true; return true;
} }
@ -321,7 +321,7 @@ $('body').on('mouseover',function (e) {
// if the user array has not been retrieved from the server for the last 60 seconds, // if the user array has not been retrieved from the server for the last 60 seconds,
// we query it for the lastest data // we query it for the lastest data
if((typeof window.userArrayLastRetrieved[hrefAttr] == 'undefined') || (timeNow - window.userArrayLastRetrieved[hrefAttr]) > 60000) { if((typeof window.userArrayLastRetrieved[hrefAttr] == 'undefined') || (timeNow - window.userArrayLastRetrieved[hrefAttr]) > 60000) {
window.userArrayLastRetrieved[hrefAttr] = timeNow; window.userArrayLastRetrieved[hrefAttr] = timeNow;
// local users // local users
@ -380,7 +380,7 @@ function getUserArrayData(maybeProfileUrl,maybeNickname,timeNow,targetElement,ca
setTimeout(function(){ setTimeout(function(){
if(targetElement.is(":hover")) { if(targetElement.is(":hover")) {
// don't try this if we already tried it less than a minute ago // don't try this if we already tried it less than a minute ago
if((typeof window.userArrayLastRetrieved[maybeProfileUrl] == 'undefined') || (timeNow - window.userArrayLastRetrieved[maybeProfileUrl]) > 60000) { if((typeof window.userArrayLastRetrieved[maybeProfileUrl] == 'undefined') || (timeNow - window.userArrayLastRetrieved[maybeProfileUrl]) > 60000) {
window.userArrayLastRetrieved[maybeProfileUrl] = timeNow; window.userArrayLastRetrieved[maybeProfileUrl] = timeNow;
getFromAPI('qvitter/external_user_show.json?profileurl=' + encodeURIComponent(maybeProfileUrl),function(data){ getFromAPI('qvitter/external_user_show.json?profileurl=' + encodeURIComponent(maybeProfileUrl),function(data){
if(data && data.external !== null) { if(data && data.external !== null) {
@ -406,11 +406,11 @@ function getUserArrayData(maybeProfileUrl,maybeNickname,timeNow,targetElement,ca
else if(streamObject && (streamObject.name == 'profile' || streamObject.name == 'profile by id')) { else if(streamObject && (streamObject.name == 'profile' || streamObject.name == 'profile by id')) {
var nicknameOrId = streamObject.nickname; var nicknameOrId = streamObject.nickname;
if(!nicknameOrId) { if(!nicknameOrId) {
nicknameOrId = streamObject.id; nicknameOrId = streamObject.id;
} }
// don't query too often for the same user // don't query too often for the same user
if(typeof window.userArrayLastRetrieved[maybeProfileUrl] == 'undefined' || (timeNow - window.userArrayLastRetrieved[maybeProfileUrl]) > 60000) { if(typeof window.userArrayLastRetrieved[maybeProfileUrl] == 'undefined' || (timeNow - window.userArrayLastRetrieved[maybeProfileUrl]) > 60000) {
window.userArrayLastRetrieved[maybeProfileUrl] = timeNow; window.userArrayLastRetrieved[maybeProfileUrl] = timeNow;
// query server and cache user data (done automatically in getFromAPI) // query server and cache user data (done automatically in getFromAPI)
getFromAPI('users/show.json?id=' + nicknameOrId, function(data){ getFromAPI('users/show.json?id=' + nicknameOrId, function(data){
@ -627,8 +627,9 @@ if(!window.registrationsClosed) {
}); });
// validate on keyup // validate on keyup / paste / blur
$('#popup-register input').on('keyup',function(){ $('#popup-register input').on('keyup paste blur',function(){
setTimeout(function () { // defer validation as after paste the content is not immediately available
if(validateRegisterForm($('#popup-register')) if(validateRegisterForm($('#popup-register'))
&& !$('#signup-user-nickname-step2').hasClass('nickname-taken') && !$('#signup-user-nickname-step2').hasClass('nickname-taken')
&& !$('#signup-user-email-step2').hasClass('email-in-use')) { && !$('#signup-user-email-step2').hasClass('email-in-use')) {
@ -637,6 +638,7 @@ if(!window.registrationsClosed) {
else { else {
$('#signup-btn-step2').addClass('disabled'); $('#signup-btn-step2').addClass('disabled');
} }
}, 0);
}); });
$('#popup-register input').trigger('keyup'); $('#popup-register input').trigger('keyup');
@ -1400,7 +1402,7 @@ $('body').on('click',function(e){
/* · /* ·
· ·
· When clicking a function row in a stream menu  invoke the function · When clicking a function row in a stream menu invoke the function
· ·
· · · · · · · · · · · · · */ · · · · · · · · · · · · · */
@ -1847,7 +1849,7 @@ $('body').on('click','a', function(e) {
setNewCurrentStream(pathToStreamRouter(window.following[streamObject.id].username),true,streamObject.id); setNewCurrentStream(pathToStreamRouter(window.following[streamObject.id].username),true,streamObject.id);
} }
// if the text() of the clicked element looks like a user nickname, use that (but send id to setNewCurrentStream() in case this is bad data) // if the text() of the clicked element looks like a user nickname, use that (but send id to setNewCurrentStream() in case this is bad data)
else if(/^@[a-zA-Z0-9]+$/.test($(e.target).text()) || /^[a-zA-Z0-9]+$/.test($(e.target).text())) { else if(/^@[a-zA-Z0-9]+$/.test($(e.target).text()) || /^[a-zA-Z0-9]+$/.test($(e.target).text())) {
var nickname = $(e.target).text(); var nickname = $(e.target).text();
if(nickname.indexOf('@') == 0) { if(nickname.indexOf('@') == 0) {
nickname = nickname.substring(1); // remove any starting @ nickname = nickname.substring(1); // remove any starting @
@ -1873,7 +1875,7 @@ $('body').on('click','a', function(e) {
setNewCurrentStream(pathToStreamRouter('group/' + window.groupMemberships[streamObject.id].username),true,streamObject.id); setNewCurrentStream(pathToStreamRouter('group/' + window.groupMemberships[streamObject.id].username),true,streamObject.id);
} }
// if the text() of the clicked element looks like a group nickname, use that (but send id to setNewCurrentStream() in case this is bad data) // if the text() of the clicked element looks like a group nickname, use that (but send id to setNewCurrentStream() in case this is bad data)
else if(/^![a-zA-Z0-9]+$/.test($(e.target).text()) || /^[a-zA-Z0-9]+$/.test($(e.target).text())) { else if(/^![a-zA-Z0-9]+$/.test($(e.target).text()) || /^[a-zA-Z0-9]+$/.test($(e.target).text())) {
var nickname = $(e.target).text(); var nickname = $(e.target).text();
if(nickname.indexOf('!') == 0) { if(nickname.indexOf('!') == 0) {
nickname = nickname.substring(1); // remove any starting ! nickname = nickname.substring(1); // remove any starting !
@ -2049,7 +2051,7 @@ function checkForNewQueets() {
$('body').addClass('loading-newer'); $('body').addClass('loading-newer');
// only if logged in and only for notice or notification streams // only if logged in and only for notice or notification streams
if(window.loggedIn && (window.currentStreamObject.type == 'notices' || window.currentStreamObject.type == 'notifications')) { if(window.loggedIn && (window.currentStreamObject.type == 'notices' || window.currentStreamObject.type == 'notifications')) {
var lastId = $('#feed-body').children('.stream-item').not('.temp-post').not('.posted-from-form').attr('data-quitter-id-in-stream'); var lastId = $('#feed-body').children('.stream-item').not('.temp-post').not('.posted-from-form').attr('data-quitter-id-in-stream');
var addThisStream = window.currentStreamObject.stream; var addThisStream = window.currentStreamObject.stream;
var timeNow = new Date().getTime(); var timeNow = new Date().getTime();
@ -2179,23 +2181,18 @@ $('body').on('click','.stream-item .queet img.attachment-thumb',function (event)
$thumbToDisplay = $queetThumbsClone.find('img.attachment-thumb[src="' + thisAttachmentThumbSrc + '"]'); $thumbToDisplay = $queetThumbsClone.find('img.attachment-thumb[src="' + thisAttachmentThumbSrc + '"]');
$thumbToDisplay.parent().addClass('display-this-thumb'); $thumbToDisplay.parent().addClass('display-this-thumb');
// "play" all animated gifs and add youtube iframes to all youtube videos // "play" all animated gifs and add youtube iframes to all youtube and vimeo videos
$.each($queetThumbsClone.find('img.attachment-thumb'),function(){ $.each($queetThumbsClone.find('img.attachment-thumb'),function(){
if($(this).attr('data-mime-type') == 'image/gif' if($(this).attr('data-mime-type') == 'image/gif'
&& $(this).parent().hasClass('play-button')) { && $(this).parent().hasClass('play-button')) {
$(this).attr('src',$(this).attr('data-full-image-url')); $(this).attr('src',$(this).attr('data-full-image-url'));
$(this).parent('.thumb-container').css('background-image','url(\'' + $(this).attr('data-full-image-url') + '\')'); $(this).parent('.thumb-container').css('background-image','url(\'' + $(this).attr('data-full-image-url') + '\')');
} }
else if($(this).parent().hasClass('youtube')){ else if($(this).parent().hasClass('host-youtube-com')){
$(this).parent().prepend('<iframe width="510" height="315" src="' + youTubeEmbedLinkFromURL($(this).attr('data-full-image-url'), $(this).parent().hasClass('display-this-thumb')) + '" frameborder="0" allowscriptaccess="always" allowfullscreen></iframe>');
// autoplay a clicked video
var autoplayFlag = '';
if($(this).parent().hasClass('display-this-thumb')) {
autoplayFlag = '&autoplay=1';
} }
else if($(this).parent().hasClass('host-vimeo-com')){
var youtubeId = $(this).attr('data-full-image-url').replace('http://www.youtube.com/watch?v=','').replace('https://www.youtube.com/watch?v=','').replace('http://youtu.be/','').replace('https://youtu.be/','').substr(0,11); $(this).parent().prepend('<iframe src="' + vimeoEmbedLinkFromURL($(this).attr('data-full-image-url'), $(this).parent().hasClass('display-this-thumb')) + '" width="510" height="315" frameborder="0" webkitallowfullscreen mozallowfullscreen allowfullscreen></iframe>');
$(this).parent().prepend('<iframe width="510" height="315" src="//www.youtube.com/embed/' + youtubeId + '?enablejsapi=1&version=3&playerapiid=ytplayer' + autoplayFlag + '" frameborder="0" allowscriptaccess="always" allowfullscreen></iframe>');
} }
}); });
@ -2208,7 +2205,7 @@ $('body').on('click','.stream-item .queet img.attachment-thumb',function (event)
if(parentStreamItem.hasClass('expanded')) { if(parentStreamItem.hasClass('expanded')) {
var calculatedDimensions = calculatePopUpAndImageDimensions($thumbToDisplay.attr('src')); var calculatedDimensions = calculatePopUpAndImageDimensions($thumbToDisplay);
var $thisImgInQueetThumbsClone = $queetThumbsClone.find('img[src="' + $thumbToDisplay.attr('src') + '"]'); var $thisImgInQueetThumbsClone = $queetThumbsClone.find('img[src="' + $thumbToDisplay.attr('src') + '"]');
// set dimensions // set dimensions
@ -2220,12 +2217,22 @@ $('body').on('click','.stream-item .queet img.attachment-thumb',function (event)
// open popup // open popup
popUpAction('queet-thumb-popup', '', '' + $queetThumbsClone.outerHTML() + '', parentStreamItemHTMLWithoutFooter, calculatedDimensions.popUpWidth); popUpAction('queet-thumb-popup', '', '' + $queetThumbsClone.outerHTML() + '', parentStreamItemHTMLWithoutFooter, calculatedDimensions.popUpWidth);
disableOrEnableNavigationButtonsInImagePopup($('#queet-thumb-popup')); disableOrEnableNavigationButtonsInImagePopup($('#queet-thumb-popup'));
// for some reason vimeo autoplays when we have a #t=x start time, so stop any vimeo videos running in the background (delay so it has time to load)
setTimeout(function(){
$.each($('#queet-thumb-popup').find('.thumb-container.host-vimeo-com:not(.display-this-thumb)').children('iframe'),function(){
console.log($(this).attr('src'));
this.contentWindow.postMessage('{"method": "pause"}', '*');
});
},1000);
} }
} }
}); });
// popups can be max 900px wide, and should not be higher than the window, so we need to do some calculating // popups can be max 900px wide, and should not be higher than the window, so we need to do some calculating
function calculatePopUpAndImageDimensions(img_src) { function calculatePopUpAndImageDimensions(img) {
var img_src = img.attr('src');
// trick to get width and height, we can't go with what gnusocial tells us, because // trick to get width and height, we can't go with what gnusocial tells us, because
// gnusocial doesn't (always?) report width and height after proper orientation // gnusocial doesn't (always?) report width and height after proper orientation
@ -2285,7 +2292,14 @@ function calculatePopUpAndImageDimensions(img_src) {
var popUpWidth = 900; var popUpWidth = 900;
} }
} }
return {popUpWidth: popUpWidth, displayImgWidth: displayImgWidth};
// vimeo can't be too small, or the design freaks out
if(img.parent('.thumb-container').hasClass('host-vimeo-com') && displayImgWidth < 540) {
displayImgWidth = 540;
displayImgHeight = 305;
}
return {popUpWidth: popUpWidth, displayImgWidth: displayImgWidth, displayImgHeight: displayImgHeight };
} }
// switch to next image when clicking the image in the popup // switch to next image when clicking the image in the popup
@ -2296,15 +2310,23 @@ $('body').on('click','#queet-thumb-popup .attachment-thumb',function (event) {
if(nextImage.length>0) { if(nextImage.length>0) {
// start and stop youtube videos, if any // start and stop youtube videos, if any
$.each($(this).parent('.youtube').children('iframe'),function(){ $.each($(this).parent('.host-youtube-com').children('iframe'),function(){
this.contentWindow.postMessage('{"event":"command","func":"' + 'stopVideo' + '","args":""}', '*'); this.contentWindow.postMessage('{"event":"command","func":"' + 'stopVideo' + '","args":""}', '*');
}); });
$.each(nextImage.parent('.youtube').children('iframe'),function(){ $.each(nextImage.parent('.host-youtube-com').children('iframe'),function(){
this.contentWindow.postMessage('{"event":"command","func":"' + 'playVideo' + '","args":""}', '*'); this.contentWindow.postMessage('{"event":"command","func":"' + 'playVideo' + '","args":""}', '*');
}); });
// start stop vimeo
$.each($(this).parent('.host-vimeo-com').children('iframe'),function(){
this.contentWindow.postMessage('{"method": "pause"}', '*');
});
$.each(nextImage.parent('.host-vimeo-com').children('iframe'),function(){
this.contentWindow.postMessage('{"method": "play"}', '*');
});
// set dimensions of next image and the popup // set dimensions of next image and the popup
var calculatedDimensions = calculatePopUpAndImageDimensions(nextImage.attr('src')); var calculatedDimensions = calculatePopUpAndImageDimensions(nextImage);
nextImage.width(calculatedDimensions.displayImgWidth); nextImage.width(calculatedDimensions.displayImgWidth);
nextImage.parent('.thumb-container').width(calculatedDimensions.displayImgWidth); nextImage.parent('.thumb-container').width(calculatedDimensions.displayImgWidth);
nextImage.parent('.thumb-container').children('iframe').attr('width',calculatedDimensions.displayImgWidth); nextImage.parent('.thumb-container').children('iframe').attr('width',calculatedDimensions.displayImgWidth);
@ -2329,15 +2351,23 @@ $('body').on('click','#queet-thumb-popup .prev-thumb',function (event) {
if(prevImage.length>0) { if(prevImage.length>0) {
// start and stop youtube videos, if any // start and stop youtube videos, if any
$.each($(this).parent().find('.display-this-thumb.youtube').children('iframe'),function(){ $.each($(this).parent().find('.display-this-thumb.host-youtube-com').children('iframe'),function(){
this.contentWindow.postMessage('{"event":"command","func":"' + 'stopVideo' + '","args":""}', '*'); this.contentWindow.postMessage('{"event":"command","func":"' + 'stopVideo' + '","args":""}', '*');
}); });
$.each(prevImage.parent('.youtube').children('iframe'),function(){ $.each(prevImage.parent('.host-youtube-com').children('iframe'),function(){
this.contentWindow.postMessage('{"event":"command","func":"' + 'playVideo' + '","args":""}', '*'); this.contentWindow.postMessage('{"event":"command","func":"' + 'playVideo' + '","args":""}', '*');
}); });
// start stop vimeo
$.each($(this).parent().find('.display-this-thumb.host-vimeo-com').children('iframe'),function(){
this.contentWindow.postMessage('{"method": "pause"}', '*');
});
$.each(prevImage.parent('.host-vimeo-com').children('iframe'),function(){
this.contentWindow.postMessage('{"method": "play"}', '*');
});
// set dimensions of next image and the popup // set dimensions of next image and the popup
var calculatedDimensions = calculatePopUpAndImageDimensions(prevImage.attr('src')); var calculatedDimensions = calculatePopUpAndImageDimensions(prevImage);
prevImage.width(calculatedDimensions.displayImgWidth); prevImage.width(calculatedDimensions.displayImgWidth);
prevImage.parent('.thumb-container').width(calculatedDimensions.displayImgWidth); prevImage.parent('.thumb-container').width(calculatedDimensions.displayImgWidth);
prevImage.parent('.thumb-container').children('iframe').attr('width',calculatedDimensions.displayImgWidth); prevImage.parent('.thumb-container').children('iframe').attr('width',calculatedDimensions.displayImgWidth);
@ -3445,6 +3475,12 @@ $('body').on('keyup', 'div.queet-box-syntax', function(e) {
// menu // menu
$('#shortcuts-link').click(function(){ $('#shortcuts-link').click(function(){
// not if disabled
if($(this).hasClass('disabled')) {
return true;
}
popUpAction('popup-shortcuts', window.sL.keyboardShortcuts,'<div id="shortcuts-container"></div>',false); popUpAction('popup-shortcuts', window.sL.keyboardShortcuts,'<div id="shortcuts-container"></div>',false);
getDoc('shortcuts',function(html){ getDoc('shortcuts',function(html){
$('#shortcuts-container').html(html); $('#shortcuts-container').html(html);
@ -3454,6 +3490,12 @@ $('#shortcuts-link').click(function(){
// send queet on ctrl+enter or ⌘+enter (mac) // send queet on ctrl+enter or ⌘+enter (mac)
$('body').on('keydown','.queet-box-syntax',function (e) { $('body').on('keydown','.queet-box-syntax',function (e) {
// do nothing if shortcuts are disabled
if(window.disableKeyboardShortcuts === true) {
return true;
}
if((e.ctrlKey && e.which == 13) if((e.ctrlKey && e.which == 13)
|| (e.metaKey && e.which == 13)) { || (e.metaKey && e.which == 13)) {
e.preventDefault(); e.preventDefault();
@ -3465,13 +3507,18 @@ $('body').on('keydown','.queet-box-syntax',function (e) {
$('body').keyup(function (e) { $('body').keyup(function (e) {
// do nothing if shortcuts are disabled
if(window.disableKeyboardShortcuts === true) {
return true;
}
// only if queetbox is blurred, and we're not typing in any input, and we're logged in // only if queetbox is blurred, and we're not typing in any input, and we're logged in
if($('.queet-box-syntax[contenteditable="true"]').length == 0 if($('.queet-box-syntax[contenteditable="true"]').length == 0
&& $(":focus").length == 0 && $(":focus").length == 0
&& window.loggedIn !== false) { && window.loggedIn !== false) {
// shortcuts documentation on '?' // shortcuts documentation on '?'
if(e.shiftKey && (e.which == 171 || e.which == 191)) { if(e.shiftKey && (e.which == 171 || e.which == 191)) {
$('#shortcuts-link').click(); $('#shortcuts-link').click();
} }
@ -3942,16 +3989,8 @@ $('body').on('click','.upload-cover-photo, .upload-avatar, .upload-background-im
coverPhotoAndAvatarSelectAndCrop(e, coverOrAvatar); coverPhotoAndAvatarSelectAndCrop(e, coverOrAvatar);
})}); })});
// trigger click for firefox // trigger click
if(navigator.userAgent.toLowerCase().indexOf('firefox') > -1) { triggerClickOnInputFile($('#' + inputId));
$('#' + inputId).trigger('click');
}
// other browsers
else {
var evt = document.createEvent("HTMLEvents");
evt.initEvent("click", true, true);
$('#' + inputId)[0].dispatchEvent(evt);
}
}); });
@ -4080,16 +4119,9 @@ $('body').on('click','.upload-image',function () {
}) })
}); });
// trigger click for firefox // trigger click
if(navigator.userAgent.toLowerCase().indexOf('firefox') > -1) { triggerClickOnInputFile($('#upload-image-input'));
$('#upload-image-input').trigger('click');
}
// other browsers
else {
var evt = document.createEvent("HTMLEvents");
evt.initEvent("click", true, true);
$('#upload-image-input')[0].dispatchEvent(evt);
}
}); });
function uploadAttachment(e, thisUploadButton) { function uploadAttachment(e, thisUploadButton) {

View File

@ -182,7 +182,7 @@ function pathToStreamRouter(path) {
} }
// the whole known network // the whole known network
if(path.length == 0 || path == 'main/all') { if(path.length == 0 || path == 'main/all') {
streamObject.path = 'main/all'; streamObject.path = 'main/all';
streamObject.name = 'public and external timeline'; streamObject.name = 'public and external timeline';
streamObject.streamHeader = window.sL.publicAndExtTimeline; streamObject.streamHeader = window.sL.publicAndExtTimeline;

View File

@ -196,5 +196,6 @@
"userMuted":"Muted accounts", "userMuted":"Muted accounts",
"mutedStreamDescription":"You've hidden these accounts from your timeline. You will still recieve notifications from these accounts, unless you select &quot;Hide notifications from muted users&quot; from the cog wheel menu on the notifications page.", "mutedStreamDescription":"You've hidden these accounts from your timeline. You will still recieve notifications from these accounts, unless you select &quot;Hide notifications from muted users&quot; from the cog wheel menu on the notifications page.",
"profileAndSettings":"Profile and settings", "profileAndSettings":"Profile and settings",
"profileSettings":"Profile settings" "profileSettings":"Profile settings",
"thisIsABookmark":"This is a bookmark created in the Classic interface"
} }

View File

@ -196,5 +196,6 @@
"userMuted":"Muted accounts", "userMuted":"Muted accounts",
"mutedStreamDescription":"You've hidden these accounts from your timeline. You will still recieve notifications from these accounts, unless you select &quot;Hide notifications from muted users&quot; from the cog wheel menu on the notifications page.", "mutedStreamDescription":"You've hidden these accounts from your timeline. You will still recieve notifications from these accounts, unless you select &quot;Hide notifications from muted users&quot; from the cog wheel menu on the notifications page.",
"profileAndSettings":"Profile and settings", "profileAndSettings":"Profile and settings",
"profileSettings":"Profile settings" "profileSettings":"Profile settings",
"thisIsABookmark":"This is a bookmark created in the Classic interface"
} }

View File

@ -138,42 +138,42 @@
"ERRORcouldNotFindGroupWithNickname":"No s'ha pogut trobar el grup amb el nom \"{nickname}\" en aquest servidor", "ERRORcouldNotFindGroupWithNickname":"No s'ha pogut trobar el grup amb el nom \"{nickname}\" en aquest servidor",
"ERRORcouldNotFindPage":"No s'ha pogut trobar aquesta pàgina", "ERRORcouldNotFindPage":"No s'ha pogut trobar aquesta pàgina",
"ERRORnoticeRemoved": "Aquest avís s'ha eliminat.", "ERRORnoticeRemoved": "Aquest avís s'ha eliminat.",
"ERRORnoContactWithServer": "Can not establish a connection to the server. The server could be overloaded, or there might be a problem with your internet connecton. Please try again later!", "ERRORnoContactWithServer": "No es pot establir una connexió amb el servidor. El servidor pot estar sobrecarregat, o pot haver un problema amb la teva connexió a Internet. Siusplau, intenta-ho més tard!",
"ERRORattachmentUploadFailed": "The upload failed. The format might be unsupported or the size too large.", "ERRORattachmentUploadFailed": "No s'ha pogut pujar. El format pot estar no suportat o la mida és massa gran.",
"hideRepliesToPeopleIDoNotFollow":"Hide replies to people I don't follow", "hideRepliesToPeopleIDoNotFollow":"Amaga les respostes a les persones que no segueixo",
"markAllNotificationsAsSeen":"Mark all notifications as seen", "markAllNotificationsAsSeen":"Marca totes les notificacions com vistes",
"notifyRepliesAndMentions":"Mentions and replies", "notifyRepliesAndMentions":"Mencions i respostes",
"notifyFavs":"Favorites", "notifyFavs":"Favorits",
"notifyRepeats":"Requeets", "notifyRepeats":"Peticions",
"notifyFollows":"New followers", "notifyFollows":"Nous seguidors",
"timelineOptions":"Timeline options", "timelineOptions":"Opcions del 'Timeline'",
"ERRORfailedSavingYourSetting":"Failed saving your setting", "ERRORfailedSavingYourSetting":"Error al guardar la teva configuració.",
"ERRORfailedMarkingAllNotificationsAsRead":"Failed marking all notifications as seen.", "ERRORfailedMarkingAllNotificationsAsRead":"Error al marcar totes les notificacions com vistes.",
"newNotification": "{new-notice-count} new notification", "newNotification": "{new-notice-count} nova notificació",
"newNotifications": "{new-notice-count} new notifications", "newNotifications": "{new-notice-count} noves notificacions",
"thisIsANoticeFromABlockedUser":"Warning: This is a notice from a user you have blocked. Click to show it.", "thisIsANoticeFromABlockedUser":"Atenció: Això és una notificació d'un usuari que has bloquejat. Clic per mostrar-lo.",
"nicknamesListWithListName":"{nickname}s list: {list-name}", "nicknamesListWithListName":"Llista d'en/na {nickname}: {list-name}",
"myListWithListName":"My list: {list-name}", "myListWithListName":"La meva llista: {list-name}",
"listMembers":"Members", "listMembers":"Membres",
"listSubscribers":"Subscribers", "listSubscribers":"Subscriptors",
"ERRORcouldNotFindList":"There is no such list.", "ERRORcouldNotFindList":"There is no such list.",
"emailAlreadyInUse":"Already in use", "emailAlreadyInUse":"Already in use",
"addEditLanguageLink":"Help translate {site-title} to another language", "addEditLanguageLink":"Ajuda a traduir {site-title} a un altre idioma",
"onlyPartlyTranslated":"{site-title} is only partly translated to <em>{language-name}</em> ({percent}%). You can help complete the translation at <a href=\"https://git.gnu.io/h2p/Qvitter/tree/master/locale\">Qvitter's repository homepage</a>", "onlyPartlyTranslated":"{site-title} està només traduït parcialment a <em>{language-name}</em> ({percent}%). Tu pots ajudar a completar la traducció a <a href=\"https://git.gnu.io/h2p/Qvitter/tree/master/locale\">Qvitter's repository homepage</a>",
"startRant":"Start a rant", "startRant":"Start a rant",
"continueRant":"Continue the rant", "continueRant":"Continue the rant",
"hideEmbeddedInTimeline":"Hide embedded content in this timeline", "hideEmbeddedInTimeline":"Hide embedded content in this timeline",
"hideQuotesInTimeline":"Hide quotes in this timeline", "hideQuotesInTimeline":"Hide quotes in this timeline",
"userBlocks":"Accounts you're blocking", "userBlocks":"Accounts you're blocking",
"buttonBlocked":"Blocked", "buttonBlocked":"Bloquejat",
"buttonUnblock":"Unblock", "buttonUnblock":"Desbloqueja",
"failedBlockingUser":"Failed to block the user.", "failedBlockingUser":"Failed to block the user.",
"failedUnblockingUser":"Failed to unblock the user.", "failedUnblockingUser":"Failed to unblock the user.",
"unblockUser": "Unblock {username}", "unblockUser": "Desbloqueja {username}",
"tooltipBlocksYou":"You are blocked from following {username}.", "tooltipBlocksYou":"Estàs bloquejat de seguir {username}.",
"silenced":"Silenced", "silenced":"Silenciat",
"silencedPlural":"Silenced profiles", "silencedPlural":"Perfils silenciats",
"silencedUsersOnThisInstance":"Silenced profiles on {site-title}", "silencedUsersOnThisInstance":"Perfils silenciats a {site-title}",
"sandboxed":"Sandboxed", "sandboxed":"Sandboxed",
"sandboxedPlural":"Sandboxed profiles", "sandboxedPlural":"Sandboxed profiles",
"sandboxedUsersOnThisInstance":"Sandboxed profiles on {site-title}", "sandboxedUsersOnThisInstance":"Sandboxed profiles on {site-title}",
@ -196,5 +196,6 @@
"userMuted":"Muted accounts", "userMuted":"Muted accounts",
"mutedStreamDescription":"You've hidden these accounts from your timeline. You will still recieve notifications from these accounts, unless you select &quot;Hide notifications from muted users&quot; from the cog wheel menu on the notifications page.", "mutedStreamDescription":"You've hidden these accounts from your timeline. You will still recieve notifications from these accounts, unless you select &quot;Hide notifications from muted users&quot; from the cog wheel menu on the notifications page.",
"profileAndSettings":"Profile and settings", "profileAndSettings":"Profile and settings",
"profileSettings":"Profile settings" "profileSettings":"Profile settings",
"thisIsABookmark":"This is a bookmark created in the Classic interface"
} }

View File

@ -196,5 +196,6 @@
"userMuted":"Ausgeblendete Nutzer", "userMuted":"Ausgeblendete Nutzer",
"mutedStreamDescription":"Du hast diese Nutzer in Deiner Timeline ausgeblendet. Benachrichtigungen von diesen Nutzern werden werden weiterhin angezeigt. Um sie ebenfalls zu verbergen, wähle im Zahnradmenu der Benachrichtigungsseite die Option &quot;Benachrichtigungen von ausgeblendeten Benutzern verbergen&quot;.", "mutedStreamDescription":"Du hast diese Nutzer in Deiner Timeline ausgeblendet. Benachrichtigungen von diesen Nutzern werden werden weiterhin angezeigt. Um sie ebenfalls zu verbergen, wähle im Zahnradmenu der Benachrichtigungsseite die Option &quot;Benachrichtigungen von ausgeblendeten Benutzern verbergen&quot;.",
"profileAndSettings":"Profil und Einstellungen", "profileAndSettings":"Profil und Einstellungen",
"profileSettings":"Profileinstellungen" "profileSettings":"Profileinstellungen",
"thisIsABookmark":"This is a bookmark created in the Classic interface"
} }

View File

@ -194,7 +194,8 @@
"userMutes":"Accounts you're muting", "userMutes":"Accounts you're muting",
"userBlocked":"Blocked accounts", "userBlocked":"Blocked accounts",
"userMuted":"Muted accounts", "userMuted":"Muted accounts",
"mutedStreamDescription":"You've hidden these accounts from your timeline. You will still recieve notifications from these accounts, unless you select &quot;Hide notifications from muted users&quot; from the cog wheel menu on the notifications page.", "mutedStreamDescription":"You've hidden these accounts from your timeline. You will still receive notifications from these accounts, unless you select &quot;Hide notifications from muted users&quot; from the cog wheel menu on the notifications page.",
"profileAndSettings":"Profile and settings", "profileAndSettings":"Profile and settings",
"profileSettings":"Profile settings" "profileSettings":"Profile settings",
"thisIsABookmark":"This is a bookmark created in the Classic interface"
} }

View File

@ -171,7 +171,7 @@
"failedUnblockingUser":"Falló el desbloqueo del usuario .", "failedUnblockingUser":"Falló el desbloqueo del usuario .",
"unblockUser": "Desbloquear a {username}", "unblockUser": "Desbloquear a {username}",
"tooltipBlocksYou":"{username} te ha bloqueado.", "tooltipBlocksYou":"{username} te ha bloqueado.",
"silenced":"Silenciado", "silenced":"Prohibido",
"silencedPlural":"Perfiles silenciados", "silencedPlural":"Perfiles silenciados",
"silencedUsersOnThisInstance":"Perfiles silenciados en {site-title}", "silencedUsersOnThisInstance":"Perfiles silenciados en {site-title}",
"sandboxed":"Aislado", "sandboxed":"Aislado",
@ -195,5 +195,6 @@
"userMuted":"Cuentas silenciadas", "userMuted":"Cuentas silenciadas",
"mutedStreamDescription":"Has ocultado estas cuentas de tu línea temporal. Seguirás recibiendo notificaciones de dichas cuentas a menos que selecciones &quot;Ocultar notificaciones de usuarios silencioados&quot; desde el menú con forma de rueda dentada en la página de notificaciones.", "mutedStreamDescription":"Has ocultado estas cuentas de tu línea temporal. Seguirás recibiendo notificaciones de dichas cuentas a menos que selecciones &quot;Ocultar notificaciones de usuarios silencioados&quot; desde el menú con forma de rueda dentada en la página de notificaciones.",
"profileAndSettings":"Perfil y ajustes", "profileAndSettings":"Perfil y ajustes",
"profileSettings":"Ajustes del perfil" "profileSettings":"Ajustes del perfil",
"thisIsABookmark":"This is a bookmark created in the Classic interface"
} }

201
locale/es_419.json Normal file
View File

@ -0,0 +1,201 @@
{
"directionality":"ltr",
"languageName": "Español (Latinoamérica)",
"loginUsername": "Nombre de usuario o correo electrónico",
"loginPassword": "Contraseña",
"loginSignIn": "Iniciar sesión",
"loginRememberMe": "Recordar mis datos",
"loginForgotPassword": "¿Olvidaste tu contraseña?",
"notices": "Queets",
"followers": "Seguidores",
"following": "Siguiendo",
"groups": "Grupos",
"compose": "Crear un nuevo Queet...",
"queetVerb": "Quittear",
"queetsNounPlural": "Queets",
"logout": "Cerrar sesión",
"languageSelected": "Idioma:",
"viewMyProfilePage": "Ver mi perfil",
"expand": "Abrir",
"collapse": "Reducir",
"details": "Detalles",
"expandFullConversation": "Ver toda la plática",
"replyVerb": "Responder",
"requeetVerb": "Requittear",
"favoriteVerb": "Favorito",
"requeetedVerb": "Requitteado",
"favoritedVerb": "Marcado como favorito",
"replyTo": "Responder a",
"requeetedBy": "Requitteado por {requeeted-by}",
"favoriteNoun": "Favorito",
"favoritesNoun": "Favoritos",
"requeetNoun": "Requeet",
"requeetsNoun": "Requeets",
"newQueet": "{new-notice-count} nuevo Queet",
"newQueets": "{new-notice-count} nuevos Queets",
"longmonthsJanuary": "enero",
"longmonthsFebruary": "febrero",
"longmonthsMars": "marzo",
"longmonthsApril": "abril",
"longmonthsMay": "mayo",
"longmonthsJune": "junio",
"longmonthsJuly": "julio",
"longmonthsAugust": "agosto",
"longmonthsSeptember": "septiembre",
"longmonthsOctober": "octubre",
"longmonthsNovember": "noviembre",
"longmonthsDecember": "diciembre",
"shortmonthsJanuary": "ene",
"shortmonthsFebruary": "feb",
"shortmonthsMars": "mar",
"shortmonthsApril": "abr",
"shortmonthsMay": "may",
"shortmonthsJune": "jun",
"shortmonthsJuly": "jul",
"shortmonthsAugust": "ago",
"shortmonthsSeptember": "sept",
"shortmonthsOctober": "oct",
"shortmonthsNovember": "nov",
"shortmonthsDecember": "dic",
"time12am": "{time} AM",
"time12pm": "{time} PM",
"longDateFormat": "{time24} - {day} {month} {year}",
"shortDateFormatSeconds": "{seconds}s",
"shortDateFormatMinutes": "{minutes}min",
"shortDateFormatHours": "{hours}h",
"shortDateFormatDate": "{day} {month}",
"shortDateFormatDateAndY": "{day} {month} {year}",
"now": "ahora",
"posting": "enviando",
"viewMoreInConvBefore": "← Ver más en la conversación",
"viewMoreInConvAfter": "Ver más en la conversación →",
"mentions": "Menciones",
"timeline": "Línea temporal",
"publicTimeline": "Línea temporal pública",
"publicAndExtTimeline": "Toda la red conocida",
"searchVerb": "Buscar",
"deleteVerb": "Eliminar",
"cancelVerb": "Cancelar",
"deleteConfirmation": "¿Estás seguro de que quieres eliminar este queet?",
"userExternalFollow": "Seguir",
"userExternalFollowHelp": "ID de tu cuenta (p.e. user@rainbowdash.net).",
"userFollow": "Seguir",
"userFollowing": "Siguiendo",
"userUnfollow": "Dejar de seguir",
"joinGroup": "Unirse al grupo",
"joinExternalGroup": "Unirse al grupo",
"isMemberOfGroup": "Miembro",
"leaveGroup": "Abandonar grupo",
"memberCount": "Miembros",
"adminCount": "Administradores",
"settings": "Configuración",
"saveChanges": "Guardar cambios",
"linkColor": "Color del enlace",
"backgroundColor": "Color de fondo",
"newToQuitter": "¿Eres nuevo en {site-title}?",
"signUp": "Regístrate",
"signUpFullName": "Nombre completo",
"signUpEmail": "Correo electrónico",
"signUpButtonText": "Regístrate en {site-title}",
"welcomeHeading": "Bienvenido a {site-title}",
"welcomeText": "Somos una <span id=\"federated-tooltip\"><div id=\"what-is-federation\">« Federación » significa que no debes tener una cuenta de {site-title} para seguir su usuarios, estar seguido por o comunicar con ellos. ¡Puedes registrar con cualquier servidor StatusNet o <a href=\"http://www.gnu.org/software/social/\">GNU social</a>, o cualquier servicio utilizando el protocolo <a href=\"http://www.w3.org/community/ostatus/wiki/Main_Page\">OStatus</a>! También no debes registrarse en cualquier servicio para participar - simplemente instala el software GNU social en tu propio servidor. (:</div>federación</span> de microblogueros que, como tú, estan motivados por ética y solidaridad y quieren abandonar los servicios capitalistas centralizados.",
"registerNickname": "Nombre de usuario",
"registerHomepage": "Sitio web",
"registerBio": "Biografía",
"registerLocation": "Ubicación",
"registerRepeatPassword": "Verificar contraseña",
"moreSettings": "Más opciones",
"otherServers": "De manera alternativa, puedes crear una cuenta en otro servidor de la red GNU social. <a href=\"http://federation.skilledtests.com/select_your_server.html\">Comparativa</a>",
"editMyProfile": "Editar perfil",
"notifications": "Notificaciones",
"xFavedYourQueet": "marcó tu Queet como favorito",
"xRepeatedYourQueet": "te ha requitteado ",
"xStartedFollowingYou": "te ha seguido",
"followsYou": "te sigue",
"FAQ": "Preguntas Frecuentosas",
"inviteAFriend": "¡Invita a tus cuates!",
"goToExternalProfile": "Ir al perfil completo",
"cropAndSave": "Recortar y guardar",
"showTerms": "Leer los términos de uso",
"ellipsisMore": "Más",
"blockUser": "Bloquear {username}",
"goToOriginalNotice": "Ir a la noticia original",
"goToTheUsersRemoteProfile": "Ir al perfil remoto del usuario",
"clickToDrag":"Click para arrastrar",
"keyboardShortcuts":"Atajos de teclado",
"classicInterface":"Clasico {site-title}",
"accessibilityToggleLink":"Para una mejor accesibilidad, haz click en este link para cambiar a la interfaz clásica",
"tooltipBookmarkStream":"Añade esta conversación a tus marcadores",
"tooltipTopMenu":"Menú y configuraciones",
"tooltipAttachImage":"Adjunta una imagen",
"tooltipShortenUrls":"Corta todas las URLs en este Queet",
"tooltipReloadStream":"Refresca esta conversación",
"tooltipRemoveBookmark":"Borra este marcador",
"clearHistory":"Limpiar historial de navegación",
"ERRORsomethingWentWrong":"Algo salió mal.",
"ERRORmustBeLoggedIn":"Debes estar logueado para ver esta conversación.",
"ERRORcouldNotFindUserWithNickname":"No se pudo encontrar el usuario con este nickname \"{nickname}\" en el servidor",
"ERRORcouldNotFindGroupWithNickname":"No se pudo encontrar el grupo con este nickname \"{nickname}\" en el servidor",
"ERRORcouldNotFindPage":"No se pudo encontrar la página",
"ERRORnoticeRemoved": "Esta notica fue borrada",
"ERRORnoContactWithServer": "No se pudo establecer conexión con el servidor. El servidor puede estar sobre cargado, o puede haber un problema con tu conexión a internet. Por favor intenta mas tarde",
"ERRORattachmentUploadFailed": "La carga falló. El formato puede no ser soportado o el tamaño es muy grande.",
"hideRepliesToPeopleIDoNotFollow":"Ocultar respuestas de las personas que no sigo",
"markAllNotificationsAsSeen":"Marcar todas las notificaciones como vistas",
"notifyRepliesAndMentions":"Menciones y respuestas",
"notifyFavs":"Favoritos",
"notifyRepeats":"Requeets",
"notifyFollows":"Nuevos seguidores",
"timelineOptions":"Opciones de la línea de tiempo",
"ERRORfailedSavingYourSetting":"Falló al guardar tus preferencias",
"ERRORfailedMarkingAllNotificationsAsRead":"Falló al marcar todas tus notificaciones como vistas.",
"newNotification": "{new-notice-count} nueva notificación",
"newNotifications": "{new-notice-count} nuevas notificaciones",
"thisIsANoticeFromABlockedUser":"Advertencia: Esta noticia es de un usuario que bloqueaste. Click para verla.",
"nicknamesListWithListName":"{nickname}s lista: {list-name}",
"myListWithListName":"Mi lista: {list-name}",
"listMembers":"Miembros",
"listSubscribers":"Suscriptores",
"ERRORcouldNotFindList":"No hay una lista.",
"emailAlreadyInUse":"En uso",
"addEditLanguageLink":"Ayuda a traducir {site-title} a otro idioma",
"onlyPartlyTranslated":"{site-title} está parcialmente traducido a <em>{language-name}</em> ({percent}%). Tu puedes ayudar a completar la traducción en <a href=\"https://git.gnu.io/h2p/Qvitter/tree/master/locale\">Qvitter's repository homepage</a>",
"startRant":"Iniciar una queja",
"continueRant":"Continuar la queja",
"hideEmbeddedInTimeline":"Ocultar contenido embebido en esta línea de tiempo",
"hideQuotesInTimeline":"Ocultar citas en esta línea de tiempo",
"userBlocks":"Cuentas que haz bloqueado",
"buttonBlocked":"Bloqueado",
"buttonUnblock":"Desbloqueado",
"failedBlockingUser":"Falló al bloquear al usuario.",
"failedUnblockingUser":"Falló al desbloquear al usuario.",
"unblockUser": "Desbloquear {username}",
"tooltipBlocksYou":"No puede serguir a {username}.",
"silenced":"Silenciado",
"silencedPlural":"Perfiles silenciados",
"silencedUsersOnThisInstance":"Perfiles silenciados en {site-title}",
"sandboxed":"Sandboxed",
"sandboxedPlural":"Sandboxed profiles",
"sandboxedUsersOnThisInstance":"Sandboxed profiles on {site-title}",
"silencedStreamDescription":"Usuarios silenciados no pueden loguearse o postear ocurrencias y las ocurrencias que ya han posteado se han ocultado. Para usuarios locales es como un borrado que puede ser revertido, para los usuarios remotos es como un bloqueo del sitio.",
"sandboxedStreamDescription":"Quips from sandboxed users are excluded from the Public Timeline and The Whole Known Network. Quips posted while being in the sandbox will not be included in the public timelines if the user is unsandboxed.",
"onlyShowNotificationsFromUsersIFollow":"Solo mostrar notificaciones de los usuarios que sigo",
"userOptions":"Mas acciones del usuario",
"silenceThisUser":"Silencio {nickname}",
"sandboxThisUser":"Sandbox {nickname}",
"unSilenceThisUser":"Sin silencio {nickname}",
"unSandboxThisUser":"Unsandbox {nickname}",
"ERRORfailedSandboxingUser":"Failed sandboxing/unsandboxing the user",
"ERRORfailedSilencingUser":"Falló al silenciar/no silenciar al usuario",
"muteUser":"Mudo",
"unmuteUser":"No mudo",
"hideNotificationsFromMutedUsers":"Ocultar notificaciones de los usuarios mudos",
"thisIsANoticeFromAMutedUser":"Haz puesto en mudo al autor de esta ocurrencia. Click aquí para mostrarlo de todos modos.",
"userMutes":"Cuentas que haz puesto en mudo",
"userBlocked":"Cuentas bloqueadas",
"userMuted":"Cuentas mudas",
"mutedStreamDescription":"Haz ocultado esas cuentas de tu línea temporal. Igualmente recibirás notificaciones de esas cuentas, a menos que selecciones &quot;Hide notifications from muted users&quot; desde el menú de la rueda dentada en la página de notificaciones.",
"profileAndSettings":"Perfiles y configuraciones",
"profileSettings":"Perfil y configuración",
"thisIsABookmark":"This is a bookmark created in the Classic interface"
}

View File

@ -19,7 +19,7 @@
"expand": "Abrir", "expand": "Abrir",
"collapse": "Reducir", "collapse": "Reducir",
"details": "Detalles", "details": "Detalles",
"expandFullConversation": "Ver toda la plática", "expandFullConversation": "Ver la conversación entera",
"replyVerb": "Responder", "replyVerb": "Responder",
"requeetVerb": "Requittear", "requeetVerb": "Requittear",
"favoriteVerb": "Favorito", "favoriteVerb": "Favorito",
@ -93,12 +93,12 @@
"linkColor": "Color del enlace", "linkColor": "Color del enlace",
"backgroundColor": "Color de fondo", "backgroundColor": "Color de fondo",
"newToQuitter": "¿Eres nuevo en {site-title}?", "newToQuitter": "¿Eres nuevo en {site-title}?",
"signUp": "¡Regístrate wey!", "signUp": "Regístrate",
"signUpFullName": "Nombre completo", "signUpFullName": "Nombre completo",
"signUpEmail": "Correo electrónico", "signUpEmail": "Correo electrónico",
"signUpButtonText": "¡Regístrate en {site-title} wey!", "signUpButtonText": "Regístrate en {site-title}",
"welcomeHeading": "Bienvenido a {site-title}", "welcomeHeading": "Bienvenido a {site-title}",
"welcomeText": "Somos una <span id=\"federated-tooltip\"><div id=\"what-is-federation\">« Federación » significa que no debes tener una cuenta de {site-title} para seguir su usuarios, estar seguido por o comunicar con ellos. ¡Puedes registrar con cualquier servidor StatusNet o <a href=\"http://www.gnu.org/software/social/\">GNU social</a>, o cualquier servicio utilizando el protocolo <a href=\"http://www.w3.org/community/ostatus/wiki/Main_Page\">OStatus</a>! También no debes registrarse en cualquier servicio para participar - simplemente instala el software GNU social en tu propio servidor. (:</div>federación</span> de microblogueros que, como tú, estan motivados por ética y solidaridad y quieren abandonar los servicios capitalistas centralizados.", "welcomeText": "Somos una <span id=\"federated-tooltip\"><div id=\"what-is-federation\">«Federación» significa que no necesitas tener una cuenta de {site-title} para seguir a sus usuarios, estar seguido por o communicarte con ellos. ¡Puedes registrarte con cualquier servidor StatusNet o <a href=\"http://www.gnu.org/software/social/\">GNU social</a>, o cualquier servicio utilizando el protocolo <a href=\"http://www.w3.org/community/ostatus/wiki/Main_Page\">OStatus</a>! Tampoco es preciso registrarse en algún servicio para participar, simplemente instala el software GNU social en tu propio servidor. (:</div>federación</span> de microblogueros que, como tú, están motivados por ética y solidaridad, y quieren abandonar los servicios capitalistas centralizados.",
"registerNickname": "Nombre de usuario", "registerNickname": "Nombre de usuario",
"registerHomepage": "Sitio web", "registerHomepage": "Sitio web",
"registerBio": "Biografía", "registerBio": "Biografía",
@ -112,89 +112,90 @@
"xRepeatedYourQueet": "te ha requitteado ", "xRepeatedYourQueet": "te ha requitteado ",
"xStartedFollowingYou": "te ha seguido", "xStartedFollowingYou": "te ha seguido",
"followsYou": "te sigue", "followsYou": "te sigue",
"FAQ": "Preguntas Frecuentosas", "FAQ": "Preguntas Frecuentes",
"inviteAFriend": "¡Invita a tus cuates!", "inviteAFriend": "¡Invita a tus amistades!",
"goToExternalProfile": "Ir al perfil completo", "goToExternalProfile": "Ir al perfil completo",
"cropAndSave": "Recortar y guardar", "cropAndSave": "Recortar y guardar",
"showTerms": "Leer los términos de uso", "showTerms": "Leer los términos de uso",
"ellipsisMore": "Más", "ellipsisMore": "Más",
"blockUser": "Bloquear {username}", "blockUser": "Bloquear a {username}",
"goToOriginalNotice": "Go to original notice", "goToOriginalNotice": "Ir al queet original",
"goToTheUsersRemoteProfile": "Go to the user's remote profile", "goToTheUsersRemoteProfile": "Ir al perfil del usuario",
"clickToDrag":"Click to drag", "clickToDrag":"Clic para arrastrar",
"keyboardShortcuts":"Keyboard shortcuts", "keyboardShortcuts":"Atajos del teclado",
"classicInterface":"Classic {site-title}", "classicInterface":"Estilo clásico de {site-title}",
"accessibilityToggleLink":"For better accessibility, click this link to switch to the classic interface", "accessibilityToggleLink":"Para una mejor accesibilidad, clica en este enlace para cambiar a la vista clásica",
"tooltipBookmarkStream":"Add this stream to your bookmarks", "tooltipBookmarkStream":"Añadir este stream a tus favoritos",
"tooltipTopMenu":"Menu and settings", "tooltipTopMenu":"Menú y configuración",
"tooltipAttachImage":"Attach an image", "tooltipAttachImage":"Añade una imagen",
"tooltipShortenUrls":"Shorten all URLs in the Queet", "tooltipShortenUrls":"Acortar todas las URL del Queet",
"tooltipReloadStream":"Refresh this stream", "tooltipReloadStream":"Actualiza el stream",
"tooltipRemoveBookmark":"Remove this bookmark", "tooltipRemoveBookmark":"Eliminar el marcador",
"clearHistory":"Clear browsing history", "clearHistory":"Limpiar el historial de navegación",
"ERRORsomethingWentWrong":"Something went wrong.", "ERRORsomethingWentWrong":"Algo ha ido mal.",
"ERRORmustBeLoggedIn":"You must be logged in to view this stream.", "ERRORmustBeLoggedIn":"Debes iniciar sesión para ver el stream.",
"ERRORcouldNotFindUserWithNickname":"Could not find a user with nickname \"{nickname}\" on this server", "ERRORcouldNotFindUserWithNickname":"No se ha encontrado el usuario con el apodo \"{nickname}\" en este servidor",
"ERRORcouldNotFindGroupWithNickname":"Could not find a group with nickname \"{nickname}\" on this server", "ERRORcouldNotFindGroupWithNickname":"No se ha encontrado el grupo con el nombre \"{nickname}\" en este servidor",
"ERRORcouldNotFindPage":"Could not find that page.", "ERRORcouldNotFindPage":"No se pudo encontrar la página.",
"ERRORnoticeRemoved": "This notice has been removed.", "ERRORnoticeRemoved": "Este aviso se ha eliminado.",
"ERRORnoContactWithServer": "Can not establish a connection to the server. The server could be overloaded, or there might be a problem with your internet connecton. Please try again later!", "ERRORnoContactWithServer": "No se puede establecer una conexión con el servidor. Puede que el servidor esté sobrecargado, o que haya algún problema con tu conexión a Internet. ¡Por favor, inténtalo más tarde!",
"ERRORattachmentUploadFailed": "The upload failed. The format might be unsupported or the size too large.", "ERRORattachmentUploadFailed": "La subida ha fallado. El formato puede no estar soportado o tener un tamaño demasiado grande.",
"hideRepliesToPeopleIDoNotFollow":"Hide replies to people I don't follow", "hideRepliesToPeopleIDoNotFollow":"Ocultar respuestas de gente a la que no sigo",
"markAllNotificationsAsSeen":"Mark all notifications as seen", "markAllNotificationsAsSeen":"Marcar todas las notificaciones como vistas",
"notifyRepliesAndMentions":"Mentions and replies", "notifyRepliesAndMentions":"Menciones y respuestas",
"notifyFavs":"Favorites", "notifyFavs":"Favoritos",
"notifyRepeats":"Requeets", "notifyRepeats":"Requeets",
"notifyFollows":"New followers", "notifyFollows":"Nuevos seguidores",
"timelineOptions":"Timeline options", "timelineOptions":"Opciones de línea temporal",
"ERRORfailedSavingYourSetting":"Failed saving your setting", "ERRORfailedSavingYourSetting":"Error al guardar la configuración",
"ERRORfailedMarkingAllNotificationsAsRead":"Failed marking all notifications as seen.", "ERRORfailedMarkingAllNotificationsAsRead":"Error al marcar todas las notificaciones como vistas.",
"newNotification": "{new-notice-count} new notification", "newNotification": "{new-notice-count} nueva notificación",
"newNotifications": "{new-notice-count} new notifications", "newNotifications": "{new-notice-count} nuevas notificaciones",
"thisIsANoticeFromABlockedUser":"Warning: This is a notice from a user you have blocked. Click to show it.", "thisIsANoticeFromABlockedUser":"Atención: Ésta es una nota de un usuario que bloqueaste. Pulsa para mostrarla.",
"nicknamesListWithListName":"{nickname}s list: {list-name}", "nicknamesListWithListName":"Lista de {nickname}: {list-name}",
"myListWithListName":"My list: {list-name}", "myListWithListName":"Mi lista: {list-name}",
"listMembers":"Members", "listMembers":"Miembros",
"listSubscribers":"Subscribers", "listSubscribers":"Suscriptores",
"ERRORcouldNotFindList":"There is no such list.", "ERRORcouldNotFindList":"La lista no existe.",
"emailAlreadyInUse":"Already in use", "emailAlreadyInUse":"Ya en uso",
"addEditLanguageLink":"Help translate {site-title} to another language", "addEditLanguageLink":"Ayuda a traducir {site-title} a otro idioma.",
"onlyPartlyTranslated":"{site-title} is only partly translated to <em>{language-name}</em> ({percent}%). You can help complete the translation at <a href=\"https://git.gnu.io/h2p/Qvitter/tree/master/locale\">Qvitter's repository homepage</a>", "onlyPartlyTranslated":"{site-title} sólo está parcialmente traducido al <em>{language-name}</em> ({percent}%). Puedes ayudar a completar la traducción en <a href=\"https://git.gnu.io/h2p/Qvitter/tree/master/locale\">Página del repositorio de Qvitter</a>",
"startRant":"Start a rant", "startRant":"Iniciar una conversación",
"continueRant":"Continue the rant", "continueRant":"Continuar la conversación",
"hideEmbeddedInTimeline":"Hide embedded content in this timeline", "hideEmbeddedInTimeline":"Ocultar contenido incrustado en esta línea temporal",
"hideQuotesInTimeline":"Hide quotes in this timeline", "hideQuotesInTimeline":"Ocultar citas en esta línea temporal",
"userBlocks":"Accounts you're blocking", "userBlocks":"Usuarios a quienes has bloqueado",
"buttonBlocked":"Blocked", "buttonBlocked":"Bloqueado",
"buttonUnblock":"Unblock", "buttonUnblock":"Desbloquear",
"failedBlockingUser":"Failed to block the user.", "failedBlockingUser":"Falló el bloqueo al usuario.",
"failedUnblockingUser":"Failed to unblock the user.", "failedUnblockingUser":"Falló el desbloqueo del usuario .",
"unblockUser": "Unblock {username}", "unblockUser": "Desbloquear a {username}",
"tooltipBlocksYou":"You are blocked from following {username}.", "tooltipBlocksYou":"{username} te ha bloqueado.",
"silenced":"Silenced", "silenced":"Silenciado",
"silencedPlural":"Silenced profiles", "silencedPlural":"Perfiles silenciados",
"silencedUsersOnThisInstance":"Silenced profiles on {site-title}", "silencedUsersOnThisInstance":"Perfiles silenciados en {site-title}",
"sandboxed":"Sandboxed", "sandboxed":"Aislado",
"sandboxedPlural":"Sandboxed profiles", "sandboxedPlural":"Perfiles aislados",
"sandboxedUsersOnThisInstance":"Sandboxed profiles on {site-title}", "sandboxedUsersOnThisInstance":"Perfiles aislados en {site-title}",
"silencedStreamDescription":"Silenced users can't login or post quips and the quips they've already posted are hidden. For local users it's like a delete that can be reversed, for remote users it's like a site wide block.", "silencedStreamDescription":"Los usuarios silenciados no pueden acceder o pulicar quips y los quips que ya hayan publicados están ocultos. Para usuarios locales es como una eliminación que puede revertirse; para usuarios remotos es como un bloqueo global.",
"sandboxedStreamDescription":"Quips from sandboxed users are excluded from the Public Timeline and The Whole Known Network. Apart from that, they can use the site like any other user.", "sandboxedStreamDescription":"Los quips de usuarios aislados están excluidos de la línea temporal pública y de toda la red conocida. Los quips publicados durante el aislamiento no se incluirán en las líneas temporales públicas aunque se desaísle al usuario.",
"onlyShowNotificationsFromUsersIFollow":"Only show notifications from users I follow", "onlyShowNotificationsFromUsersIFollow":"Sólo mostrar notificaciones de usuarios a quienes sigo",
"userOptions":"More user actions", "userOptions":"Más opciones de usuario",
"silenceThisUser":"Silence {nickname}", "silenceThisUser":"Silenciar a {nickname}",
"sandboxThisUser":"Sandbox {nickname}", "sandboxThisUser":"Aislar a {nickname}",
"unSilenceThisUser":"Unsilence {nickname}", "unSilenceThisUser":"Desilenciar a {nickname}",
"unSandboxThisUser":"Unsandbox {nickname}", "unSandboxThisUser":"Desaislar a {nickname}",
"ERRORfailedSandboxingUser":"Failed sandboxing/unsandboxing the user", "ERRORfailedSandboxingUser":"Falló el aislamiento/desaislamiento del usuario",
"ERRORfailedSilencingUser":"Failed silencing/unsilencing the user", "ERRORfailedSilencingUser":"Falló el silenciamiento/desilenciamiento del usuario",
"muteUser":"Mute", "muteUser":"Silenciar",
"unmuteUser":"Unmute", "unmuteUser":"Desilenciar",
"hideNotificationsFromMutedUsers":"Hide notifications from muted users", "hideNotificationsFromMutedUsers":"Ocultar notificaciones de usuarios silenciados",
"thisIsANoticeFromAMutedUser":"You have muted the author of this quip. Click here to show it anyway.", "thisIsANoticeFromAMutedUser":"Has silenciado al autor de este quid. Haz clic para mostrarlo igualmente.",
"userMutes":"Accounts you're muting", "userMutes":"Usuarios a quienes has silenciado",
"userBlocked":"Blocked accounts", "userBlocked":"Cuentas bloqueadas",
"userMuted":"Muted accounts", "userMuted":"Cuentas silenciadas",
"mutedStreamDescription":"You've hidden these accounts from your timeline. You will still recieve notifications from these accounts, unless you select &quot;Hide notifications from muted users&quot; from the cog wheel menu on the notifications page.", "mutedStreamDescription":"Has ocultado estas cuentas de tu línea temporal. Seguirás recibiendo notificaciones de dichas cuentas a menos que selecciones &quot;Ocultar notificaciones de usuarios silencioados&quot; desde el menú con forma de rueda dentada en la página de notificaciones.",
"profileAndSettings":"Profile and settings", "profileAndSettings":"Perfil y ajustes",
"profileSettings":"Profile settings" "profileSettings":"Ajustes del perfil",
"thisIsABookmark":"This is a bookmark created in the Classic interface"
} }

View File

@ -196,5 +196,6 @@
"userMuted":"Muted accounts", "userMuted":"Muted accounts",
"mutedStreamDescription":"You've hidden these accounts from your timeline. You will still recieve notifications from these accounts, unless you select &quot;Hide notifications from muted users&quot; from the cog wheel menu on the notifications page.", "mutedStreamDescription":"You've hidden these accounts from your timeline. You will still recieve notifications from these accounts, unless you select &quot;Hide notifications from muted users&quot; from the cog wheel menu on the notifications page.",
"profileAndSettings":"Profile and settings", "profileAndSettings":"Profile and settings",
"profileSettings":"Profile settings" "profileSettings":"Profile settings",
"thisIsABookmark":"This is a bookmark created in the Classic interface"
} }

View File

@ -196,5 +196,6 @@
"userMuted":"Muted accounts", "userMuted":"Muted accounts",
"mutedStreamDescription":"You've hidden these accounts from your timeline. You will still recieve notifications from these accounts, unless you select &quot;Hide notifications from muted users&quot; from the cog wheel menu on the notifications page.", "mutedStreamDescription":"You've hidden these accounts from your timeline. You will still recieve notifications from these accounts, unless you select &quot;Hide notifications from muted users&quot; from the cog wheel menu on the notifications page.",
"profileAndSettings":"Profile and settings", "profileAndSettings":"Profile and settings",
"profileSettings":"Profile settings" "profileSettings":"Profile settings",
"thisIsABookmark":"This is a bookmark created in the Classic interface"
} }

View File

@ -197,5 +197,6 @@
"userMuted":"Muted accounts", "userMuted":"Muted accounts",
"mutedStreamDescription":"You've hidden these accounts from your timeline. You will still recieve notifications from these accounts, unless you select &quot;Hide notifications from muted users&quot; from the cog wheel menu on the notifications page.", "mutedStreamDescription":"You've hidden these accounts from your timeline. You will still recieve notifications from these accounts, unless you select &quot;Hide notifications from muted users&quot; from the cog wheel menu on the notifications page.",
"profileAndSettings":"Profile and settings", "profileAndSettings":"Profile and settings",
"profileSettings":"Profile settings" "profileSettings":"Profile settings",
"thisIsABookmark":"This is a bookmark created in the Classic interface"
} }

View File

@ -196,5 +196,6 @@
"userMuted":"Muted accounts", "userMuted":"Muted accounts",
"mutedStreamDescription":"You've hidden these accounts from your timeline. You will still recieve notifications from these accounts, unless you select &quot;Hide notifications from muted users&quot; from the cog wheel menu on the notifications page.", "mutedStreamDescription":"You've hidden these accounts from your timeline. You will still recieve notifications from these accounts, unless you select &quot;Hide notifications from muted users&quot; from the cog wheel menu on the notifications page.",
"profileAndSettings":"Profile and settings", "profileAndSettings":"Profile and settings",
"profileSettings":"Profile settings" "profileSettings":"Profile settings",
"thisIsABookmark":"This is a bookmark created in the Classic interface"
} }

View File

@ -21,7 +21,7 @@
"details": "Detalles", "details": "Detalles",
"expandFullConversation": "Ver a conversa enteira", "expandFullConversation": "Ver a conversa enteira",
"replyVerb": "Responder", "replyVerb": "Responder",
"requeetVerb": "Rechouchíar", "requeetVerb": "Rechouchiar",
"favoriteVerb": "Favorito", "favoriteVerb": "Favorito",
"requeetedVerb": "Rechouchiado", "requeetedVerb": "Rechouchiado",
"favoritedVerb": "Marcado como favorito", "favoritedVerb": "Marcado como favorito",
@ -73,10 +73,10 @@
"timeline": "Liña temporal", "timeline": "Liña temporal",
"publicTimeline": "Liña temporal pública", "publicTimeline": "Liña temporal pública",
"publicAndExtTimeline": "Toda a rede coñecida", "publicAndExtTimeline": "Toda a rede coñecida",
"searchVerb": "Buscar", "searchVerb": "Pesquisar",
"deleteVerb": "Eliminar", "deleteVerb": "Eliminar",
"cancelVerb": "Cancelar", "cancelVerb": "Cancelar",
"deleteConfirmation": "Estás seguro de querer eliminar este chío?", "deleteConfirmation": "Seguro que queres eliminar este chío?",
"userExternalFollow": "Seguir", "userExternalFollow": "Seguir",
"userExternalFollowHelp": "ID da tua conta (p.ex. usuario@dominio.net).", "userExternalFollowHelp": "ID da tua conta (p.ex. usuario@dominio.net).",
"userFollow": "Seguir", "userFollow": "Seguir",
@ -87,19 +87,19 @@
"isMemberOfGroup": "Membro", "isMemberOfGroup": "Membro",
"leaveGroup": "Abandonar grupo", "leaveGroup": "Abandonar grupo",
"memberCount": "Membros", "memberCount": "Membros",
"adminCount": "Administradores", "adminCount": "Administradoras",
"settings": "Configuración", "settings": "Configuración",
"saveChanges": "Gardar os cambios", "saveChanges": "Gardar os cambios",
"linkColor": "Cor da ligazón", "linkColor": "Cor da ligazón",
"backgroundColor": "Cor do fondo", "backgroundColor": "Cor do fondo",
"newToQuitter": "Es novo en {site-title}?", "newToQuitter": "Es nova en {site-title}?",
"signUp": "Rexistrarse", "signUp": "Rexistrarse",
"signUpFullName": "Nome completo", "signUpFullName": "Nome completo",
"signUpEmail": "Enderezo electrónico", "signUpEmail": "Enderezo electrónico",
"signUpButtonText": "Rexístrate en {site-title}", "signUpButtonText": "Rexístrate en {site-title}",
"welcomeHeading": "Benvido/a a {site-title}.", "welcomeHeading": "Benvida/o a {site-title}.",
"welcomeText": "Somos unha <span id=\"federated-tooltip\"><div id=\"what-is-federation\">«Federación», isto significa que non é necesario ter unha conta en {site-title} para poder seguir, ser seguido por ou interactuar cos usuarios de {site-title}. Podes rexistrarte en calquera servidor StatusNet ou GNU social, ou servizo baseado no protocolo <a href=\"http://www.w3.org/community/ostatus/wiki/Main_Page\">OStatus</a>! Tampouco tes porque rexistrarse en calquera servizo para participar, simplemente instala o software GNU social no teu propio servidor. :) </div>federación</span> de microblogueros que, coma ti, están motivados pola ética e a solidariedade e queren abandonar os servizos centralizados capitalistas.", "welcomeText": "Somos unha <span id=\"federated-tooltip\"><div id=\"what-is-federation\">«Federación», isto significa que non é necesario ter unha conta en {site-title} para poder seguir, ser seguida por ou interactuar coas usuarias de {site-title}. Podes rexistrarte en calquera servidor StatusNet ou GNU social, ou servizo baseado no protocolo <a href=\"http://www.w3.org/community/ostatus/wiki/Main_Page\">OStatus</a>! Tampouco tes por que te rexistrar en calquera servizo para participar, simplemente instala o software GNU social no teu propio servidor. :) </div>federación</span> de microblogueiras que, coma ti, están motivadas pola ética e a solidariedade e queren abandonar os servizos centralizados capitalistas.",
"registerNickname": "Nome do usuario", "registerNickname": "Nome da usuaria",
"registerHomepage": "Sitio web", "registerHomepage": "Sitio web",
"registerBio": "Biografía", "registerBio": "Biografía",
"registerLocation": "Localización", "registerLocation": "Localización",
@ -109,92 +109,93 @@
"editMyProfile": "Editar o perfil", "editMyProfile": "Editar o perfil",
"notifications": "Notificacións", "notifications": "Notificacións",
"xFavedYourQueet": "marcou o teu chío como favorito", "xFavedYourQueet": "marcou o teu chío como favorito",
"xRepeatedYourQueet": "rechouchíoute", "xRepeatedYourQueet": "rechouchioute",
"xStartedFollowingYou": "seguiute", "xStartedFollowingYou": "seguiute",
"followsYou": "séguete", "followsYou": "séguete",
"FAQ": "Preguntas frecuentes", "FAQ": "Preguntas frecuentes",
"inviteAFriend": "Convida aos teus amigos!", "inviteAFriend": "Convida aos teus amigos!",
"goToExternalProfile": "Ir ao perfil completo", "goToExternalProfile": "Ir ao perfil completo",
"cropAndSave": "Recortar e gardar", "cropAndSave": "Recortar e gardar",
"showTerms": "Ler os nosos términos de uso", "showTerms": "Ler os nosos termos de uso",
"ellipsisMore": "Máis", "ellipsisMore": "Máis",
"blockUser": "Bloquear a {username}", "blockUser": "Bloquear a {username}",
"goToOriginalNotice": "Go to original notice", "goToOriginalNotice": "Ir ao aviso orixinal",
"goToTheUsersRemoteProfile": "Go to the user's remote profile", "goToTheUsersRemoteProfile": "Ir ao perfil da usuaria",
"clickToDrag":"Click to drag", "clickToDrag":"Premer para arrastrar",
"keyboardShortcuts":"Keyboard shortcuts", "keyboardShortcuts":"Atallos de teclado",
"classicInterface":"Classic {site-title}", "classicInterface":"Vista Clásica {site-title}",
"accessibilityToggleLink":"For better accessibility, click this link to switch to the classic interface", "accessibilityToggleLink":"Para unha mellor accesibilidade, preme nesta ligazón para mudares á vista clásica",
"tooltipBookmarkStream":"Add this stream to your bookmarks", "tooltipBookmarkStream":"Engade este fío aos teus marcadores",
"tooltipTopMenu":"Menu and settings", "tooltipTopMenu":"Menú e axustes",
"tooltipAttachImage":"Attach an image", "tooltipAttachImage":"Achegar unha imaxe",
"tooltipShortenUrls":"Shorten all URLs in the Queet", "tooltipShortenUrls":"Acurtar tódalas URLs do chío",
"tooltipReloadStream":"Refresh this stream", "tooltipReloadStream":"Actualizar este fío",
"tooltipRemoveBookmark":"Remove this bookmark", "tooltipRemoveBookmark":"Eliminar este marcador",
"clearHistory":"Clear browsing history", "clearHistory":"Limpar o historial de navegación",
"ERRORsomethingWentWrong":"Something went wrong.", "ERRORsomethingWentWrong":"Algo foi mal.",
"ERRORmustBeLoggedIn":"You must be logged in to view this stream.", "ERRORmustBeLoggedIn":"Debes acceder á túa conta para ver este fío.",
"ERRORcouldNotFindUserWithNickname":"Could not find a user with nickname \"{nickname}\" on this server", "ERRORcouldNotFindUserWithNickname":"Non se puido atopa-la usuaria co alcume \"{nickname}\" neste servidor",
"ERRORcouldNotFindGroupWithNickname":"Could not find a group with nickname \"{nickname}\" on this server", "ERRORcouldNotFindGroupWithNickname":"Non se puido atopa-lo grupo co alcume \"{nickname}\" neste servidor",
"ERRORcouldNotFindPage":"Could not find that page.", "ERRORcouldNotFindPage":"Non se puido atopar esta páxina.",
"ERRORnoticeRemoved": "This notice has been removed.", "ERRORnoticeRemoved": "Este aviso foi eliminado.",
"ERRORnoContactWithServer": "Can not establish a connection to the server. The server could be overloaded, or there might be a problem with your internet connecton. Please try again later!", "ERRORnoContactWithServer": "Non se pode establecer conexión co servidor. O servidor pode estar saturado ou pode que haxa un problema coa túa conexión a internet. Por favor, téntao de novo máis tarde!",
"ERRORattachmentUploadFailed": "The upload failed. The format might be unsupported or the size too large.", "ERRORattachmentUploadFailed": "Fallou a subida. Poida que non se admita o formato ou que o tamaño sexa demasiado grande.",
"hideRepliesToPeopleIDoNotFollow":"Hide replies to people I don't follow", "hideRepliesToPeopleIDoNotFollow":"Ocultar respostas a xente que non sigo",
"markAllNotificationsAsSeen":"Mark all notifications as seen", "markAllNotificationsAsSeen":"Marcar tódalas notificacións como vistas",
"notifyRepliesAndMentions":"Mentions and replies", "notifyRepliesAndMentions":"Mencións e respostas",
"notifyFavs":"Favorites", "notifyFavs":"Favoritos",
"notifyRepeats":"Requeets", "notifyRepeats":"Rechouchíos",
"notifyFollows":"New followers", "notifyFollows":"Novas seguidoras",
"timelineOptions":"Timeline options", "timelineOptions":"Opcións da Liña de Tempo",
"ERRORfailedSavingYourSetting":"Failed saving your setting", "ERRORfailedSavingYourSetting":"Erro ao garda-los teus axustes",
"ERRORfailedMarkingAllNotificationsAsRead":"Failed marking all notifications as seen.", "ERRORfailedMarkingAllNotificationsAsRead":"Erro ao marcar tódalas notificacións como vistas.",
"newNotification": "{new-notice-count} new notification", "newNotification": "{new-notice-count} nova notificación",
"newNotifications": "{new-notice-count} new notifications", "newNotifications": "{new-notice-count} novas notificacións",
"thisIsANoticeFromABlockedUser":"Warning: This is a notice from a user you have blocked. Click to show it.", "thisIsANoticeFromABlockedUser":"Atención: Este é un aviso dunha usuaria que tes bloqueada. Preme para mostralo.",
"nicknamesListWithListName":"{nickname}s list: {list-name}", "nicknamesListWithListName":"Listaxe de {nickname}: {list-name}",
"myListWithListName":"My list: {list-name}", "myListWithListName":"A miña listaxe: {list-name}",
"listMembers":"Members", "listMembers":"Integrantes",
"listSubscribers":"Subscribers", "listSubscribers":"Subscritoras",
"ERRORcouldNotFindList":"There is no such list.", "ERRORcouldNotFindList":"Non existe esa listaxe.",
"emailAlreadyInUse":"Already in use", "emailAlreadyInUse":"Xa en uso",
"addEditLanguageLink":"Help translate {site-title} to another language", "addEditLanguageLink":"Axuda a traducir {site-title} a outro idioma",
"onlyPartlyTranslated":"{site-title} is only partly translated to <em>{language-name}</em> ({percent}%). You can help complete the translation at <a href=\"https://git.gnu.io/h2p/Qvitter/tree/master/locale\">Qvitter's repository homepage</a>", "onlyPartlyTranslated":"{site-title} soamente está parcialmente traducida ao <em>{language-name}</em> ({percent}%). Podes axudar a completa-la tradución en <a href=\"https://git.gnu.io/h2p/Qvitter/tree/master/locale\">Qvitter's repository homepage</a>",
"startRant":"Start a rant", "startRant":"Pon unha queixa",
"continueRant":"Continue the rant", "continueRant":"Continúa coa queixa",
"hideEmbeddedInTimeline":"Ocultar contido incrustado nesta liña temporal", "hideEmbeddedInTimeline":"Ocultar contido incrustado nesta liña temporal",
"hideQuotesInTimeline":"Ocultar citas nesta liña temporal", "hideQuotesInTimeline":"Ocultar citas nesta liña temporal",
"userBlocks":"Accounts you're blocking", "userBlocks":"Contas que tes bloqueadas",
"buttonBlocked":"Blocked", "buttonBlocked":"Bloqueada",
"buttonUnblock":"Unblock", "buttonUnblock":"Desbloquear",
"failedBlockingUser":"Failed to block the user.", "failedBlockingUser":"Erro ao bloquear a usuaria.",
"failedUnblockingUser":"Failed to unblock the user.", "failedUnblockingUser":"Erro ao desbloquea-la usuaria.",
"unblockUser": "Unblock {username}", "unblockUser": "Desbloquar a {username}",
"tooltipBlocksYou":"You are blocked from following {username}.", "tooltipBlocksYou":"{username} tente bloqueada.",
"silenced":"Silenced", "silenced":"Calada",
"silencedPlural":"Silenced profiles", "silencedPlural":"Perfís calados",
"silencedUsersOnThisInstance":"Silenced profiles on {site-title}", "silencedUsersOnThisInstance":"Perfís calados de {site-title}",
"sandboxed":"Sandboxed", "sandboxed":"En corentena",
"sandboxedPlural":"Sandboxed profiles", "sandboxedPlural":"Perfís en corentena",
"sandboxedUsersOnThisInstance":"Sandboxed profiles on {site-title}", "sandboxedUsersOnThisInstance":"Perfís en corentena de {site-title}",
"silencedStreamDescription":"Silenced users can't login or post quips and the quips they've already posted are hidden. For local users it's like a delete that can be reversed, for remote users it's like a site wide block.", "silencedStreamDescription":"As usuarias caladas non poden iniciar sesión ou enviar chíos e os chíos que xa teñan enviado, agóchanse. Para usuarias locais é coma unha eliminación que pode ser revertida, para usuarias remotas é coma se se bloquease todo un sitio.",
"sandboxedStreamDescription":"Quips from sandboxed users are excluded from the Public Timeline and The Whole Known Network. Apart from that, they can use the site like any other user.", "sandboxedStreamDescription":"Os chíos das usuarias en corentena exclúense da Liña de Tempo Pública e de Toda a Rede Coñecida. Á parte diso, poden usar o sitio coma calquera outra usuaria.",
"onlyShowNotificationsFromUsersIFollow":"Only show notifications from users I follow", "onlyShowNotificationsFromUsersIFollow":"Amosar soamente notificacións das usuarias que sigo",
"userOptions":"More user actions", "userOptions":"Máis accións da usuaria",
"silenceThisUser":"Silence {nickname}", "silenceThisUser":"Calar a {nickname}",
"sandboxThisUser":"Sandbox {nickname}", "sandboxThisUser":"Poñer en corentena a {nickname}",
"unSilenceThisUser":"Unsilence {nickname}", "unSilenceThisUser":"Darlle voz a {nickname}",
"unSandboxThisUser":"Unsandbox {nickname}", "unSandboxThisUser":"Quitar da corentena a {nickname}",
"ERRORfailedSandboxingUser":"Failed sandboxing/unsandboxing the user", "ERRORfailedSandboxingUser":"Erro ao poñer/quitar da corentena a usuaria",
"ERRORfailedSilencingUser":"Failed silencing/unsilencing the user", "ERRORfailedSilencingUser":"Erro ao calar/darlle voz á usuaria",
"muteUser":"Mute", "muteUser":"Acalar",
"unmuteUser":"Unmute", "unmuteUser":"Devolverlle a fala",
"hideNotificationsFromMutedUsers":"Hide notifications from muted users", "hideNotificationsFromMutedUsers":"Agochar notificacións de usuarias acaladas",
"thisIsANoticeFromAMutedUser":"You have muted the author of this quip. Click here to show it anyway.", "thisIsANoticeFromAMutedUser":"Acalaches a autora deste chío. Preme aquí para amosalo de tódolos xeitos.",
"userMutes":"Accounts you're muting", "userMutes":"Contas que estás acalando",
"userBlocked":"Blocked accounts", "userBlocked":"Contas bloqueadas",
"userMuted":"Muted accounts", "userMuted":"Contas acaladas",
"mutedStreamDescription":"You've hidden these accounts from your timeline. You will still recieve notifications from these accounts, unless you select &quot;Hide notifications from muted users&quot; from the cog wheel menu on the notifications page.", "mutedStreamDescription":"Ocultaches estas contas da túa liña de tempo. Continuarás a recibir notificacións destas contas, a non ser que selecciones &quot;Agochar notificacións de usuarias acaladas&quot; na roda dentada do menú da páxina de notificacións.",
"profileAndSettings":"Profile and settings", "profileAndSettings":"Perfil e axustes",
"profileSettings":"Profile settings" "profileSettings":"Axustes do perfil",
"thisIsABookmark":"This is a bookmark created in the Classic interface"
} }

View File

@ -71,7 +71,7 @@
"viewMoreInConvAfter": "צפה בעוד בתוך דיון →", "viewMoreInConvAfter": "צפה בעוד בתוך דיון →",
"mentions": "איזכורים", "mentions": "איזכורים",
"timeline": "ציר זמן", "timeline": "ציר זמן",
"publicTimeline": "ציר זמן פומבי", "publicTimeline": "ציר זמן ציבורי",
"publicAndExtTimeline": "כל הרשת הידועה", "publicAndExtTimeline": "כל הרשת הידועה",
"searchVerb": "חיפוש", "searchVerb": "חיפוש",
"deleteVerb": "מחק", "deleteVerb": "מחק",
@ -96,9 +96,9 @@
"signUp": "הרשמה", "signUp": "הרשמה",
"signUpFullName": "שם מלא", "signUpFullName": "שם מלא",
"signUpEmail": "דוא״ל", "signUpEmail": "דוא״ל",
"signUpButtonText": "הירשם אצל {site-title}", "signUpButtonText": "הירשם באתר {site-title}",
"welcomeHeading": "ברוכים הבאים אל {site-title}.", "welcomeHeading": "ברוכים הבאים לאתר {site-title}.",
"welcomeText": "אנחנו <span id=\"federated-tooltip\"><div id=\"what-is-federation\">\"פדרציה\" משמעה כי אין לכם אף צורך בחשבון {site-title} כדי שתעמוד לרשותכם האפשרות לעקוב, להיות נתונים למעקב אחרים או להיכנס לאינטראקציה עם משתמשי {site-title}. באפשרותך להירשם בכל שרת חברתי של StatusNet או GNU social או כל שירות אשר מבוסס על פרוטוקול <a href=\"http://www.w3.org/community/ostatus/wiki/Main_Page\">Ostatus</a>! אין אפילו צורך להצטרף לשירות נסו להתקין את התוכנה החביבה <a href=\"http://www.gnu.org/software/social/\">GNU social</a> על השרת האישי שלכם! :)</div>פדרציה</span> של מיקרובלוגרים אשר איכפת להם מאתיקה וסולידריות ושברצונם להשתחרר מהשירותים הקפיטליסטים הממורכזים.", "welcomeText": "אנחנו <span id=\"federated-tooltip\"><div id=\"what-is-federation\">\"פדרציה\" משמעה כי אין לכם כל צורך בחשבון {site-title} כדי שתעמוד לרשותכם האפשרות לעקוב, להיות נתונים למעקב אחרים או להיכנס לאינטראקציה עם משתמשי {site-title}. באפשרותך להירשם בכל שרת חברתי של StatusNet או GNU social או כל שירות אשר מבוסס על פרוטוקול <a href=\"http://www.w3.org/community/ostatus/wiki/Main_Page\">Ostatus</a>! אין אפילו צורך להצטרף לשירות נסו להתקין את התוכנה החביבה <a href=\"http://www.gnu.org/software/social/\">GNU social</a> על השרת האישי שלכם! :)</div>פדרציה</span> של מיקרובלוגרים אשר איכפת להם מאתיקה וסולידריות ושברצונם להשתחרר מהשירותים הקפיטליסטים הממורכזים.",
"registerNickname": "שם כינוי", "registerNickname": "שם כינוי",
"registerHomepage": "עמוד בית", "registerHomepage": "עמוד בית",
"registerBio": "ביו", "registerBio": "ביו",
@ -158,43 +158,44 @@
"listSubscribers":"מנויים", "listSubscribers":"מנויים",
"ERRORcouldNotFindList":"אין רשימה כזו.", "ERRORcouldNotFindList":"אין רשימה כזו.",
"emailAlreadyInUse":"כבר בשימוש", "emailAlreadyInUse":"כבר בשימוש",
"addEditLanguageLink":"Help translate {site-title} to another language", "addEditLanguageLink":"עזרו לתרגם את {site-title} לשפה אחרת",
"onlyPartlyTranslated":"{site-title} is only partly translated to <em>{language-name}</em> ({percent}%). You can help complete the translation at <a href=\"https://git.gnu.io/h2p/Qvitter/tree/master/locale\">Qvitter's repository homepage</a>", "onlyPartlyTranslated":"{site-title} הינו מתורגם באופן חלקי בשפה <em>{language-name}</em> ({percent}%). באפשרותך להשלים את התרגום בתוך <a href=\"https://git.gnu.io/h2p/Qvitter/tree/master/locale\">מאגר הבית של Qvitter</a>",
"startRant":"Start a rant", "startRant":"התחל התלהמות",
"continueRant":"Continue the rant", "continueRant":"המשך את ההתלהמות",
"hideEmbeddedInTimeline":"Hide embedded content in this timeline", "hideEmbeddedInTimeline":"הסתר תוכן משובץ בציר זמן זה",
"hideQuotesInTimeline":"Hide quotes in this timeline", "hideQuotesInTimeline":"הסתר ציטוטים משובץ בציר זמן זה",
"userBlocks":"Accounts you're blocking", "userBlocks":"חשבונות שחסמת",
"buttonBlocked":"Blocked", "buttonBlocked":"חסום",
"buttonUnblock":"Unblock", "buttonUnblock":"בטל חסימה",
"failedBlockingUser":"Failed to block the user.", "failedBlockingUser":"נכשל לחסום את המשתמש.",
"failedUnblockingUser":"Failed to unblock the user.", "failedUnblockingUser":"נכשל לבטל את חסימת המשתמש.",
"unblockUser": "Unblock {username}", "unblockUser": "בטל את החסימה של {username}",
"tooltipBlocksYou":"You are blocked from following {username}.", "tooltipBlocksYou":"הינך מנוע/ה מלעקוב אחר {username}.",
"silenced":"Silenced", "silenced":"מושתקים",
"silencedPlural":"Silenced profiles", "silencedPlural":"פרופילים מושתקים",
"silencedUsersOnThisInstance":"Silenced profiles on {site-title}", "silencedUsersOnThisInstance":"פרופילים מושתקים באתר {site-title}",
"sandboxed":"Sandboxed", "sandboxed":"ארגז חול",
"sandboxedPlural":"Sandboxed profiles", "sandboxedPlural":"פרופילים בארגז חול",
"sandboxedUsersOnThisInstance":"Sandboxed profiles on {site-title}", "sandboxedUsersOnThisInstance":"פרופילים תחומים בארגז חול באתר {site-title}",
"silencedStreamDescription":"Silenced users can't login or post quips and the quips they've already posted are hidden. For local users it's like a delete that can be reversed, for remote users it's like a site wide block.", "silencedStreamDescription":"משתמשים מושתקים לא יכולים להתחבר או לפרסם הודעות, וההודעות שהם כבר פרסמו הינן מוסתרות. עבור משתמים מקומיים זה כמו מחיקה אשר ניתנת להפיכה, עבור משתמשים מרוחקים זה כמו חסימה מקיפה של אתר.",
"sandboxedStreamDescription":"Quips from sandboxed users are excluded from the Public Timeline and The Whole Known Network. Apart from that, they can use the site like any other user.", "sandboxedStreamDescription":"הודעות מאת משתמשים שהושמו בתוך ארגז חול הינן מוצאות מתוך ציר הזמן הציבורי ומכלל הרשת הידועה. חוץ מזה, הם יכולים להשתמש באתר כמו כל משתמש אחר.",
"onlyShowNotificationsFromUsersIFollow":"Only show notifications from users I follow", "onlyShowNotificationsFromUsersIFollow":"הצג התרעות רק ממשתמשים אחריהם אני עוקב",
"userOptions":"More user actions", "userOptions":"עוד פעולות משתמש",
"silenceThisUser":"Silence {nickname}", "silenceThisUser":"השתק את {nickname}",
"sandboxThisUser":"Sandbox {nickname}", "sandboxThisUser":"השם בארגז חול את {nickname}",
"unSilenceThisUser":"Unsilence {nickname}", "unSilenceThisUser":"בטל את השתקת {nickname}",
"unSandboxThisUser":"Unsandbox {nickname}", "unSandboxThisUser":"הוצא מתוך ארגז חול את {nickname}",
"ERRORfailedSandboxingUser":"Failed sandboxing/unsandboxing the user", "ERRORfailedSandboxingUser":"Failed sandboxing/unsandboxing the user",
"ERRORfailedSilencingUser":"Failed silencing/unsilencing the user", "ERRORfailedSilencingUser":"Failed silencing/unsilencing the user",
"muteUser":"Mute", "muteUser":"השתק",
"unmuteUser":"Unmute", "unmuteUser":"בטל השתקה",
"hideNotificationsFromMutedUsers":"Hide notifications from muted users", "hideNotificationsFromMutedUsers":"הסתר התרעות ממשתמשים מוסתרים",
"thisIsANoticeFromAMutedUser":"You have muted the author of this quip. Click here to show it anyway.", "thisIsANoticeFromAMutedUser":"השתקת את המחבר של הודעה זו. לחץ כאן כדי להציגה בכל אופן.",
"userMutes":"Accounts you're muting", "userMutes":"חשבונות שהשתקת",
"userBlocked":"Blocked accounts", "userBlocked":"חשבונות חסומים",
"userMuted":"Muted accounts", "userMuted":"חשבונות מושתקים",
"mutedStreamDescription":"You've hidden these accounts from your timeline. You will still recieve notifications from these accounts, unless you select &quot;Hide notifications from muted users&quot; from the cog wheel menu on the notifications page.", "mutedStreamDescription":"הסתרת את חשבונות אלה מתוך ציר הזמן שלך. You will still recieve notifications from these accounts, unless you select &quot;הסתר התרעות ממשתמשים מוסתרים&quot; from the cog wheel menu on the notifications page.",
"profileAndSettings":"Profile and settings", "profileAndSettings":"פרופיל והגדרות",
"profileSettings":"Profile settings" "profileSettings":"הגדרות פרופיל",
"thisIsABookmark":"זוהי סימנייה שנוצרה בתוך הממשק הקלאסי"
} }

198
locale/hy.json Normal file
View File

@ -0,0 +1,198 @@
{
"directionality":"ltr",
"languageName": "Հայերեն",
"loginUsername": "Մուտքանուն կամ Էլ.փոստ",
"loginPassword": "Գաղտնաբառ",
"loginSignIn": "Մուտք",
"loginRememberMe": "Հիշել ինձ",
"loginForgotPassword": "Մոռացելեք գաղտնաբա՞ռը",
"notices": "Մտքեր",
"followers": "Հետևողներ",
"following": "Հետևում է",
"groups": "Խմբեր",
"compose": "Նոր միտք ..",
"queetVerb": "Գրել",
"queetsNounPlural": "Մտքեր",
"logout": "Դուրս գալ",
"languageSelected": "Լեզու:",
"viewMyProfilePage": "Ցույց տալ իմ էջը",
"expand": "Ընդարձակել",
"collapse": "Ծածկել",
"details": "Մանրամասն",
"expandFullConversation": "Ծածկել զրույցը",
"replyVerb": "Պատասխանել",
"requeetVerb": "դեպի իմ էջ տանել",
"favoriteVerb": "Ընտրյալներ",
"requeetedVerb": "Պատասխանեց",
"favoritedVerb": "Դեպի Ընտրյալներ",
"replyTo": "Պատասխան",
"requeetedBy": "{requeeted-by} պատասխանեց",
"favoriteNoun": "Ընտրյալը",
"favoritesNoun": "Ընտրյալները",
"requeetNoun": "Միտք",
"requeetsNoun": "Մտքեր",
"newQueet": "{new-notice-count} Նոր միտք",
"newQueets": "{new-notice-count} Նոր մտքեր",
"longmonthsJanuary": "Հունվար",
"longmonthsFebruary": "Փետրվար",
"longmonthsMars": "Մարտ",
"longmonthsApril": "Ապրիլ",
"longmonthsMay": "Մայիս",
"longmonthsJune": "Հունիս",
"longmonthsJuly": "Հուլիս",
"longmonthsAugust": "Օգոստոս",
"longmonthsSeptember": "Սեպտեմբեր",
"longmonthsOctober": "Հոկտեմբեր",
"longmonthsNovember": "Նոյենբեր",
"longmonthsDecember": "Դեկտեմբեր",
"shortmonthsJanuary": "Հունվար",
"shortmonthsFebruary": "Փետրվար",
"shortmonthsMars": "Մարտ",
"shortmonthsApril": "Ապրիլ",
"shortmonthsMay": "Մայիս",
"shortmonthsJune": "ՀՀունիս",
"shortmonthsJuly": "Հուլիս",
"shortmonthsAugust": "Օգոստոս",
"shortmonthsSeptember": "Սեպտեմբեր",
"shortmonthsOctober": "Հոկտեմբեր",
"shortmonthsNovember": "Նոյեմբեր",
"shortmonthsDecember": "Դեկտեմբեր",
"time12am": "{time} AM",
"time12pm": "{time} PM",
"longDateFormat": "{time12} - {day} {month} {year}",
"shortDateFormatSeconds": "{seconds} վրկ",
"shortDateFormatMinutes": "{minutes} րոպե",
"shortDateFormatHours": "{hours} ժամ",
"shortDateFormatDate": "{day} {month}.",
"shortDateFormatDateAndY": "{day} {month}. {year}",
"now": "Քիչ առաջ",
"posting": "Գրել",
"viewMoreInConvBefore": "← Դիտել ավելին զրույցի մեջ",
"viewMoreInConvAfter": "Դիտել ավելին զրույցի մեջ →",
"mentions": "Հիշեցում",
"timeline": "Մտքահոս",
"publicTimeline": "Հանրային մտքեր",
"publicAndExtTimeline": "Ամբողջ ցանցը",
"searchVerb": "Փնտրել",
"deleteVerb": "Ջնջել",
"cancelVerb": "Չեղարկել",
"deleteConfirmation": "Դուք վստա՞հ եք,որ ուզում եք ջնջել այս միտքը",
"userExternalFollow": "Կարդալ հեռակա",
"userExternalFollowHelp": "Ձեր ID հաշիվը (օրինակ՝ user@rainbowdash.net).",
"userFollow": "Կարդալ",
"userFollowing": "Կարդում եմ",
"userUnfollow": "Չեղարկել",
"joinGroup": "Անդամագրվել",
"joinExternalGroup": "Անդամագրվել հեռակա",
"isMemberOfGroup": "մասնակից",
"leaveGroup": "Հեռանալ",
"memberCount": "Մասնակիցներ",
"adminCount": "Ադմիններ",
"settings": "Կարգավորումներ",
"saveChanges": "Պահպանել փոփոխությունները",
"linkColor": "Հղումի գույնը",
"backgroundColor": "Ֆոնի գույնը",
"newToQuitter": "Նո՞ր եք {site-title} ։)",
"signUp": "Գրանցում",
"signUpFullName": "Անուն Ազգանուն",
"signUpEmail": "Էլ. փոստ",
"signUpButtonText": "Գրանցվել {site-title}",
"welcomeHeading": "Բարի Գալուստ {site-title} ։) ",
"welcomeText": " <span id=\"federated-tooltip\"><div id=\"what-is-federation\">\"Ֆեդերացիա\" և սա նշանակում է, որ Ձեզ հարկավոր չէ {site-title} հաշիվ, որպեսզի հնարավորություն ունենաք ընթերցելու, ընթերցված լինելու կամ համագործակցելու {site-title} օգտատերերի հետ. Դուք կարող եք գրանցվել ցանկացած StatusNet կամ GNU social սերվեր կամ ցանկացած ծառայությունում, հիմնված հետևյալ պրոտոկոլի վրա <a href=\"http://www.w3.org/community/ostatus/wiki/Main_Page\">Ostatus</a>! Դուք նույնիսկ հարկադրված չեք մանալու ծառայությանը փորձեք տեղադրել հետևյալ ԾԱ֊ն Ձեր սրվերում <a href=\"http://www.gnu.org/software/social/\">GNU social</a> :)</div>Ֆեդերացիա</span> ", "registerNickname": "կեղծանուն",
"registerHomepage": "Կայք էջ",
"registerBio": "Իմ մասին",
"registerLocation": "Գտնվելու վայր",
"registerRepeatPassword": "Կրկնեք Գաղտնաբառը",
"moreSettings": "Ավելի շատ կարգավորումներ",
"otherServers": "Որպես այլընտրանք դուք կարող եք գրանցվել GNU social֊ի սերվերներից մեկ այլ ցանցում։ <a href=\"http://federation.skilledtests.com/select_your_server.html\">Համեմատում</a>",
"editMyProfile": "Խմբագրել Էջը",
"notifications": "Ծանուցումներ",
"xFavedYourQueet": "Ձեր մտքերը ավելացվելեն ընտրանի",
"xRepeatedYourQueet": "պատասխանել են",
"xStartedFollowingYou": "այժմ կարդում են Ձեզ",
"followsYou": "Ձեզ են ընթերցում",
"FAQ": "Հաճախ տրվող հարցեր",
"inviteAFriend": "Առաջարկեք Ընկերներին ։Ճ ",
"goToExternalProfile": "Անցնել ամբողջական Էջ",
"cropAndSave": "Կտրել և պահպանել",
"showTerms": "Կարդացեք օգտագործման պայմանները",
"ellipsisMore": "Ավելին",
"blockUser": "Արգելափակել {username}",
"goToOriginalNotice": "Անցնել սկզբնական մտքին",
"goToTheUsersRemoteProfile": "Անցնել օգտագործողի հեռակա էջին",
"clickToDrag":"Սեխմեք տեղափոխելու համար",
"keyboardShortcuts":"Արագ ստեղնաշար",
"classicInterface":"Դասական տեսք {site-title}",
"accessibilityToggleLink":"Էլավելի շատ հարմարավետության համար սեղմեք այս հղմանը, որպեսզի միանաք դասական ինտերֆեյսին",
"tooltipBookmarkStream":"Ավելացնել այս Մտքահոսը էջանիշ",
"tooltipTopMenu":"Մենյու և կարգավորումենր",
"tooltipAttachImage":"Կցել նկար",
"tooltipShortenUrls":"Կրճատել բոլոր URL֊ները մտքերում",
"tooltipReloadStream":"Թարմացնել Մտքահոսսքը",
"tooltipRemoveBookmark":"Ջնջել պիտակը",
"clearHistory":"Հեռացնել այցելությունների պատմությունը",
"ERRORsomethwingWentWrong":"Ինչ որ բան գնաց սխալ :(",
"ERRORmustBeLoggedIn":"Դիտելու համար Դուք պետք է մուտք գործեք համակարգ",
"ERRORcouldNotFindUserWithNickname":"Չհաջողվեց գտնել օգտատերին այս անունով \"{nickname}\" այս սերվերում",
"ERRORcouldNotFindGroupWithNickname":"Չհաջողվեց գտնել խումբ այս անունով \"{nickname}\" այս սերվերում",
"ERRORcouldNotFindPage":"Չհաջողվեց գտնել էջը",
"ERRORnoticeRemoved": "Այս միտքը հեռացվել է։",
"ERRORnoContactWithServer": "Չի ստացվում կապ հաստատել սերվերի հետ։ Սերվերը ծանրաբեռնված է կամ խնդիր կա Ինտերնետ հասանելիության հետ։ Խնդրում ենք փորձել ավելի ուշ։",
"ERRORattachmentUploadFailed": "Բեռնում չհաջողվեց։ Սխալ ձևաչափ կամ շատ մեծ չափ է։",
"hideRepliesToPeopleIDoNotFollow":"Թաքցնել պատասխանները այն մարդկանց համար, որոնց ես չեմ կարդում",
"markAllNotificationsAsSeen":"նշել ծանուցումը որպես կարդացված",
"notifyRepliesAndMentions":"Հիշեցում ու պատասխաներ",
"notifyFavs":"Ընտրյալներ",
"notifyRepeats":"Մտքեր",
"notifyFollows":"Նոր կարդացողներ",
"timelineOptions":"Մտքահոսի կարգավորումներ",
"ERRORfailedSavingYourSetting":"Չհաջովեց պահպանեց Ձեր կարգավորումները։",
"ERRORfailedMarkingAllNotificationsAsRead":"Չհաջողվեց նշել ծանուցումները որպես կարդացվածներ։",
"newNotification": "{new-notice-count} նոր ծանուցում",
"newNotifications": "{new-notice-count} նոր ծանուցումներ",
"thisIsANoticeFromABlockedUser":"Ուշադրություն. Այս ծանուցումը այն օգտատիրոջից է, ում դուք արգելափակել եք։ Սեղմեք նրան տեսնելու համար։",
"nicknamesListWithListName":"Ցանկ {nickname}'a: {list-name}",
"myListWithListName":"Իմ ցանկը. {list-name}",
"listMembers":"Մասնակիցներ",
"listSubscribers":"Բաժանորդներ",
"ERRORcouldNotFindList":"Չկա այդպիսի ցուցակ",
"emailAlreadyInUse":"Արդեն Օգտագործվում է",
"addEditLanguageLink":"Օգնեք թարկմանել {site-title} Ուրիշ լեզուներով:",
"onlyPartlyTranslated":"{site-title} միայն մասնակիորեն է թարգմանված <em>{language-name}</em> ({percent}%)։ Դուք կարող եք օգնել ավարտելու թարգմանությունը։ <a href=\"https://git.gnu.io/h2p/Qvitter/tree/master/locale\">ռեպոզիտորի գլխավոր էջում Qvitter</a>",
"startRant":"մեկնաբանել",
"continueRant":"Շարունակել մեկնաբանել",
"userBlocks":"Հաշիվներ,որոնք դուք ագելափակել եք",
"buttonBlocked":"Արգելափակված է",
"buttonUnblock":"Հանել արգելքը",
"failedBlockingUser":"Սխալօգտատիրոջը արգելափակելիս։",
"failedUnblockingUser":"Սխալ օգտատիրոջ արգելքը հանելիս։",
"unblockUser": "Հանել արգելափակումը {username}",
"tooltipBlocksYou":"Դուք արգելափակված եք հետևյալ օգտատիրոջ կողմից {username}.",
"silenced":"Փակվածներ",
"silencedPlural":"Փակված էջեր",
"silencedUsersOnThisInstance":"Էջեր փակված {site-title}",
"sandboxed":" \"արկղում\"",
"sandboxedPlural":"Էջեր \"արկղում\"",
"sandboxedUsersOnThisInstance":"Էջեր \"արկղում\" {site-title}",
"silencedStreamDescription":"Փակված օգտատերերը չեն կարող մտքեր արտահայտել, իսկ արդեն արտահայտված մտքերը փակված են։ Լոկալ օգտատերերի համար այն նման է ջնջելուն, որը կարելի է չեղարկել, իսկ հեռակա օգտատերերի համար արգելվում է ողջ կայքը։",
"sandboxedStreamDescription":"Օգտատերերի մտքերը \"արկղում\" բացառվում են մտքահոսքից և ամբողջ հայտնի ցանցից. Մնացած դեպքերում նման օգտատերերը կորող են կայքից օգտվել այնպես, ինչպես մնացածը։",
"onlyShowNotificationsFromUsersIFollow":"Ցույց տալ միայն ինձ ընթերցող օգտատերերի ծանուցումները։",
"userOptions":"Օգտագործման եղանակներ",
"silenceThisUser":"Լուռ {nickname}",
"sandboxThisUser":"Տեղադրել {nickname} \"արկղում\"",
"unSilenceThisUser":"Արգելքից հանել {nickname}",
"unSandboxThisUser":"Ջնջել {nickname} \"արկղից\"",
"ERRORfailedSandboxingUser":"Սխալ օգտատիրոջը \"արկղ\" ուղարկելիս կամ դրանից հանելիս։",
"ERRORfailedSilencingUser":"Սխալ օգտատիրոջ վրա արգելք դնել/հանել֊իս։",
"muteUser":"Արհամարհել",
"unmuteUser":"Դադարեցնել արհամարհել",
"hideNotificationsFromMutedUsers":"Թաքցնել արհամարհված օգտատերերի ծանուցումները։",
"thisIsANoticeFromAMutedUser":"Դուք արհամարհում եք մտքի հեղինակին։ Սեղմեք այտեղ՝ միտքը տեսնելու համար։",
"userMutes":"Ձեր կողմից արհամարհված օգտատերերը։",
"userBlocked":"Ձեր կողմից արգելափակված օգտատերերը։",
"userMuted":"Արհամարհվող օգտատերերը։",
"mutedStreamDescription":"Դուք թացրել եք այս օգտատերերին Ձեր հոսքից։ Դուք կշարունակեք ստանալ այս օգտատերերից ծանուցումներ, եթե չընտրեք &quot;Թաքցնել արհամարհվող օգտատերերի ծանուցումները &quot; Ծանուցումների էջի մենյուի կարգավորումներում",
"profileAndSettings":"Էջ և կարգավորումներ",
"profileSettings":"Էջի կարգավորումներ",
"thisIsABookmark":"This is a bookmark created in the Classic interface"
}

View File

@ -196,5 +196,6 @@
"userMuted":"Muted accounts", "userMuted":"Muted accounts",
"mutedStreamDescription":"You've hidden these accounts from your timeline. You will still recieve notifications from these accounts, unless you select &quot;Hide notifications from muted users&quot; from the cog wheel menu on the notifications page.", "mutedStreamDescription":"You've hidden these accounts from your timeline. You will still recieve notifications from these accounts, unless you select &quot;Hide notifications from muted users&quot; from the cog wheel menu on the notifications page.",
"profileAndSettings":"Profile and settings", "profileAndSettings":"Profile and settings",
"profileSettings":"Profile settings" "profileSettings":"Profile settings",
"thisIsABookmark":"This is a bookmark created in the Classic interface"
} }

View File

@ -20,15 +20,15 @@
"collapse": "Riduci", "collapse": "Riduci",
"details": "Dettagli", "details": "Dettagli",
"expandFullConversation": "Espandi completamente la conversazione", "expandFullConversation": "Espandi completamente la conversazione",
"replyVerb": "Rispondere", "replyVerb": "Rispondi",
"requeetVerb": "Requittare", "requeetVerb": "Requittare",
"favoriteVerb": "Favorire", "favoriteVerb": "Preferiti",
"requeetedVerb": "Requittato", "requeetedVerb": "Requittato",
"favoritedVerb": "Favorito", "favoritedVerb": "Preferiti",
"replyTo": "Rispondere a", "replyTo": "Rispondi a",
"requeetedBy": "Requittato per {requeeted-by}", "requeetedBy": "Requittato da {requeeted-by}",
"favoriteNoun": "Favorito", "favoriteNoun": "Preferiti",
"favoritesNoun": "Favoriti", "favoritesNoun": "Preferiti",
"requeetNoun": "Requeet", "requeetNoun": "Requeet",
"requeetsNoun": "Requeet", "requeetsNoun": "Requeet",
"newQueet": "{new-notice-count} nuovo Queet", "newQueet": "{new-notice-count} nuovo Queet",
@ -70,22 +70,22 @@
"viewMoreInConvBefore": "← Conversazioni precedenti", "viewMoreInConvBefore": "← Conversazioni precedenti",
"viewMoreInConvAfter": "Conversazioni successive →", "viewMoreInConvAfter": "Conversazioni successive →",
"mentions": "Menzioni", "mentions": "Menzioni",
"timeline": "Timeline", "timeline": "Bacheca",
"publicTimeline": "Timeline publica", "publicTimeline": "Bacheca pubblica",
"publicAndExtTimeline": "Timeline della federazione", "publicAndExtTimeline": "Bacheca della federazione",
"searchVerb": "Cercare", "searchVerb": "Cerca",
"deleteVerb": "Eliminare", "deleteVerb": "Elimina",
"cancelVerb": "Annullare", "cancelVerb": "Annulla",
"deleteConfirmation": "Sei sicuro di volere cancellare questo queet?", "deleteConfirmation": "Sei sicuro di volere cancellare questo queet?",
"userExternalFollow": "Seguire Remoto", "userExternalFollow": "Segui utente esterno",
"userExternalFollowHelp": "L'ID del tuo account (ad esempio user@rainbowdash.net)", "userExternalFollowHelp": "L'ID del tuo account (ad esempio user@rainbowdash.net)",
"userFollow": "Seguire", "userFollow": "Segui",
"userFollowing": "Seguendo", "userFollowing": "Segui",
"userUnfollow": "Smettere di seguire", "userUnfollow": "Smetti di seguire",
"joinGroup": "Unisciti", "joinGroup": "Unisciti",
"joinExternalGroup": "Unisciti", "joinExternalGroup": "Unisciti",
"isMemberOfGroup": "Membro del gruppo", "isMemberOfGroup": "Membro del gruppo",
"leaveGroup": "Lasciare il gruppo", "leaveGroup": "Lascia il gruppo",
"memberCount": "Membri", "memberCount": "Membri",
"adminCount": "Amministratori", "adminCount": "Amministratori",
"settings": "Opzioni", "settings": "Opzioni",
@ -116,85 +116,86 @@
"inviteAFriend": "Invita i tuoi amici!", "inviteAFriend": "Invita i tuoi amici!",
"goToExternalProfile": "Vai al profilo completo", "goToExternalProfile": "Vai al profilo completo",
"cropAndSave": "ritaglia e salva", "cropAndSave": "ritaglia e salva",
"showTerms": "Read our Terms of Use", "showTerms": "Leggi Termini e Condizioni",
"ellipsisMore": "More", "ellipsisMore": "More",
"blockUser": "Block {username}", "blockUser": "Blocca {username}",
"goToOriginalNotice": "Go to original notice", "goToOriginalNotice": "Vedi Queet originale",
"goToTheUsersRemoteProfile": "Go to the user's remote profile", "goToTheUsersRemoteProfile": "Vai al profilo remoto dell'utente",
"clickToDrag":"Click to drag", "clickToDrag":"Click to drag",
"keyboardShortcuts":"Keyboard shortcuts", "keyboardShortcuts":"Scorciatoie da tastiera",
"classicInterface":"Classic {site-title}", "classicInterface":"Classic {site-title}",
"accessibilityToggleLink":"For better accessibility, click this link to switch to the classic interface", "accessibilityToggleLink":"Passare all'interfaccia classica (Accessibilità)",
"tooltipBookmarkStream":"Add this stream to your bookmarks", "tooltipBookmarkStream":"Aggiungi ai preferiti",
"tooltipTopMenu":"Menu and settings", "tooltipTopMenu":"Menu and settings",
"tooltipAttachImage":"Attach an image", "tooltipAttachImage":"Carica un'immagine",
"tooltipShortenUrls":"Shorten all URLs in the Queet", "tooltipShortenUrls":"Shorten all URLs in the Queet",
"tooltipReloadStream":"Refresh this stream", "tooltipReloadStream":"Aggiorna",
"tooltipRemoveBookmark":"Remove this bookmark", "tooltipRemoveBookmark":"Rimuovi questo segnalibro",
"clearHistory":"Clear browsing history", "clearHistory":"Clear browsing history",
"ERRORsomethingWentWrong":"Something went wrong.", "ERRORsomethingWentWrong":"Ops! qualcosa è andato storto.",
"ERRORmustBeLoggedIn":"You must be logged in to view this stream.", "ERRORmustBeLoggedIn":"Devi prima accedere per poter visualizzare questo contenuto.",
"ERRORcouldNotFindUserWithNickname":"Could not find a user with nickname \"{nickname}\" on this server", "ERRORcouldNotFindUserWithNickname":"Non riesco a trovare utenti con nickname \"{nickname}\" su questo server",
"ERRORcouldNotFindGroupWithNickname":"Could not find a group with nickname \"{nickname}\" on this server", "ERRORcouldNotFindGroupWithNickname":"Non riesco a trovare gruppi con nickname \"{nickname}\" su questo server",
"ERRORcouldNotFindPage":"Could not find that page.", "ERRORcouldNotFindPage":"Pagina non trovata",
"ERRORnoticeRemoved": "This notice has been removed.", "ERRORnoticeRemoved": "Questo contenuto è stato rimosso.",
"ERRORnoContactWithServer": "Can not establish a connection to the server. The server could be overloaded, or there might be a problem with your internet connecton. Please try again later!", "ERRORnoContactWithServer": "Non riesco a stabilire una connessione col server. Il server potrebbe essere sovraccarico, o potrebbero esserci problemi con la tua connessione internet, perfavore riprova più tardi !",
"ERRORattachmentUploadFailed": "The upload failed. The format might be unsupported or the size too large.", "ERRORattachmentUploadFailed": "Upload fallito, il formato potrebbe non essere supportato o il file troppo grosso.",
"hideRepliesToPeopleIDoNotFollow":"Hide replies to people I don't follow", "hideRepliesToPeopleIDoNotFollow":"Nascondi risposte dagli utenti che non seguo",
"markAllNotificationsAsSeen":"Mark all notifications as seen", "markAllNotificationsAsSeen":"Segna tutte le notifiche come già lette",
"notifyRepliesAndMentions":"Mentions and replies", "notifyRepliesAndMentions":"Menzioni e risposte",
"notifyFavs":"Favorites", "notifyFavs":"Preferiti",
"notifyRepeats":"Requeets", "notifyRepeats":"Requeets",
"notifyFollows":"New followers", "notifyFollows":"Nuovi followers",
"timelineOptions":"Timeline options", "timelineOptions":"Opzioni bacheca",
"ERRORfailedSavingYourSetting":"Failed saving your setting", "ERRORfailedSavingYourSetting":"Errore durante il salvataggio delle impostazioni",
"ERRORfailedMarkingAllNotificationsAsRead":"Failed marking all notifications as seen.", "ERRORfailedMarkingAllNotificationsAsRead":"Errore durante il tentativo di contrassegnare tutte le notifiche come già lette.",
"newNotification": "{new-notice-count} new notification", "newNotification": "{new-notice-count} nuova notifica",
"newNotifications": "{new-notice-count} new notifications", "newNotifications": "{new-notice-count} nuove noifiche",
"thisIsANoticeFromABlockedUser":"Warning: This is a notice from a user you have blocked. Click to show it.", "thisIsANoticeFromABlockedUser":"Attenzione: Questa è una notifica proveniente da un account che hai bloccato. Clicca per mostare.",
"nicknamesListWithListName":"{nickname}s list: {list-name}", "nicknamesListWithListName":"{nickname}s list: {list-name}",
"myListWithListName":"My list: {list-name}", "myListWithListName":"My list: {list-name}",
"listMembers":"Members", "listMembers":"Membri",
"listSubscribers":"Subscribers", "listSubscribers":"Iscritti",
"ERRORcouldNotFindList":"There is no such list.", "ERRORcouldNotFindList":"There is no such list.",
"emailAlreadyInUse":"Already in use", "emailAlreadyInUse":"Già in uso",
"addEditLanguageLink":"Help translate {site-title} to another language", "addEditLanguageLink":"Aiuta a tradurre {site-title} in un'altra lingua",
"onlyPartlyTranslated":"{site-title} is only partly translated to <em>{language-name}</em> ({percent}%). You can help complete the translation at <a href=\"https://git.gnu.io/h2p/Qvitter/tree/master/locale\">Qvitter's repository homepage</a>", "onlyPartlyTranslated":"{site-title} è solo parzialmente tradotto in <em>{language-name}</em> ({percent}%). Puoi completare la traduzione sul <a href=\"https://git.gnu.io/h2p/Qvitter/tree/master/locale\">repository di Qvitter</a>",
"startRant":"Start a rant", "startRant":"Start a rant",
"continueRant":"Continue the rant", "continueRant":"Continue the rant",
"hideEmbeddedInTimeline":"Hide embedded content in this timeline", "hideEmbeddedInTimeline":"Hide embedded content in this timeline",
"hideQuotesInTimeline":"Hide quotes in this timeline", "hideQuotesInTimeline":"Hide quotes in this timeline",
"userBlocks":"Accounts you're blocking", "userBlocks":"Account bloccati",
"buttonBlocked":"Blocked", "buttonBlocked":"Bloccato",
"buttonUnblock":"Unblock", "buttonUnblock":"Sblocca",
"failedBlockingUser":"Failed to block the user.", "failedBlockingUser":"Tentativo di bloccare l'utente non riuscito.",
"failedUnblockingUser":"Failed to unblock the user.", "failedUnblockingUser":"Tentativo di sblocco dell'utente non riuscito.",
"unblockUser": "Unblock {username}", "unblockUser": "Sblocca {username}",
"tooltipBlocksYou":"You are blocked from following {username}.", "tooltipBlocksYou":"You are blocked from following {username}.",
"silenced":"Silenced", "silenced":"Silenziati",
"silencedPlural":"Silenced profiles", "silencedPlural":"Silenziati",
"silencedUsersOnThisInstance":"Silenced profiles on {site-title}", "silencedUsersOnThisInstance":"Account silenziati su {site-title}",
"sandboxed":"Sandboxed", "sandboxed":"Sandboxati",
"sandboxedPlural":"Sandboxed profiles", "sandboxedPlural":"Account sandboxati",
"sandboxedUsersOnThisInstance":"Sandboxed profiles on {site-title}", "sandboxedUsersOnThisInstance":"Account sandboxati su {site-title}",
"silencedStreamDescription":"Silenced users can't login or post quips and the quips they've already posted are hidden. For local users it's like a delete that can be reversed, for remote users it's like a site wide block.", "silencedStreamDescription":"Utenti silenziati non possono accedere o postare quips e i quips che hanno già postato sono nascosti per gli utenti locali è come una cancellazione reversibile, per gli utenti remoti costituisce un blocco all'intero sito.",
"sandboxedStreamDescription":"Quips from sandboxed users are excluded from the Public Timeline and The Whole Known Network. Apart from that, they can use the site like any other user.", "sandboxedStreamDescription":"Quips da utenti sandboxati sono esclusi dalla bacheca pubblica e dal resto del network. a parte questo possono usare il sito come ogni altro utente",
"onlyShowNotificationsFromUsersIFollow":"Only show notifications from users I follow", "onlyShowNotificationsFromUsersIFollow":"Mostrami le notifiche solo dagli utenti che seguo",
"userOptions":"More user actions", "userOptions":"More user actions",
"silenceThisUser":"Silence {nickname}", "silenceThisUser":"Nascondi notifiche da {nickname}",
"sandboxThisUser":"Sandbox {nickname}", "sandboxThisUser":"Aggiungi alla sandbox {nickname}",
"unSilenceThisUser":"Unsilence {nickname}", "unSilenceThisUser":"Mostra notifiche da {nickname}",
"unSandboxThisUser":"Unsandbox {nickname}", "unSandboxThisUser":"Rimuovi dalla sandbox {nickname}",
"ERRORfailedSandboxingUser":"Failed sandboxing/unsandboxing the user", "ERRORfailedSandboxingUser":"Tentativo di aggiungere o rimuovere dalla sandbox l'utente non riuscito",
"ERRORfailedSilencingUser":"Failed silencing/unsilencing the user", "ERRORfailedSilencingUser":"Tentativo di aggiungere o rimuovere dalla lista dei silenziati l'utente non riuscito",
"muteUser":"Mute", "muteUser":"Togli voce",
"unmuteUser":"Unmute", "unmuteUser":"Ridai voce",
"hideNotificationsFromMutedUsers":"Hide notifications from muted users", "hideNotificationsFromMutedUsers":"Nascondi notifiche dagli account senza voce",
"thisIsANoticeFromAMutedUser":"You have muted the author of this quip. Click here to show it anyway.", "thisIsANoticeFromAMutedUser":"Hai nascosto dalla bacheca i quip di questo account. Clicca qui per mostrare ugualmente.",
"userMutes":"Accounts you're muting", "userMutes":"Account a cui hai tolto la voce",
"userBlocked":"Blocked accounts", "userBlocked":"Account bloccati",
"userMuted":"Muted accounts", "userMuted":"Account a cui hai tolto la voce",
"mutedStreamDescription":"You've hidden these accounts from your timeline. You will still recieve notifications from these accounts, unless you select &quot;Hide notifications from muted users&quot; from the cog wheel menu on the notifications page.", "mutedStreamDescription":"Hai nascosto questi account dalla tua bacheca. Riceverai comunque le loro notifiche, per disabilitarle seleziona &quot;Nascondi notifiche dagli account senza voce&quot; dal menu delle impostazioni sulla pagina relativa alle notifiche.",
"profileAndSettings":"Profile and settings", "profileAndSettings":"Profilo e impostazioni",
"profileSettings":"Profile settings" "profileSettings":"Impostazioni del profilo",
"thisIsABookmark":"This is a bookmark created in the Classic interface"
} }

View File

@ -180,21 +180,22 @@
"silencedStreamDescription":"サイレンスされたユーザーはログインおよびクイップの投稿ができなくなり、そのユーザーの既に投稿されたクイップは非表示になります。ローカルユーザーにとっては復旧可能な削除のような状態で、リモートユーザーにとっては全サイトでブロックされているような状態になります。", "silencedStreamDescription":"サイレンスされたユーザーはログインおよびクイップの投稿ができなくなり、そのユーザーの既に投稿されたクイップは非表示になります。ローカルユーザーにとっては復旧可能な削除のような状態で、リモートユーザーにとっては全サイトでブロックされているような状態になります。",
"sandboxedStreamDescription":"サンドボックスされたユーザーからのクイップは「パブリックタイムライン」および「関連ネットワーク全体」から除外されます。アンサンドボックスされたユーザーのサンドボックス期間中に投稿されたクイップはパブリックタイムラインに含まれません", "sandboxedStreamDescription":"サンドボックスされたユーザーからのクイップは「パブリックタイムライン」および「関連ネットワーク全体」から除外されます。アンサンドボックスされたユーザーのサンドボックス期間中に投稿されたクイップはパブリックタイムラインに含まれません",
"onlyShowNotificationsFromUsersIFollow":"フォローしているユーザーのお知らせのみ表示する", "onlyShowNotificationsFromUsersIFollow":"フォローしているユーザーのお知らせのみ表示する",
"userOptions":"More user actions", "userOptions":"その他...",
"silenceThisUser":"Silence {nickname}", "silenceThisUser":"{nickname} をサイレンスする",
"sandboxThisUser":"Sandbox {nickname}", "sandboxThisUser":"{nickname} をサンドボックスする",
"unSilenceThisUser":"Unsilence {nickname}", "unSilenceThisUser":"{nickname} をサイレンス解除する",
"unSandboxThisUser":"Unsandbox {nickname}", "unSandboxThisUser":"{nickname} をサンドボックス解除する",
"ERRORfailedSandboxingUser":"Failed sandboxing/unsandboxing the user", "ERRORfailedSandboxingUser":"このユーザーをサンドボックスまたは解除するのに失敗しました。",
"ERRORfailedSilencingUser":"Failed silencing/unsilencing the user", "ERRORfailedSilencingUser":"このユーザーをサイレンスまたは解除するのに失敗しました。",
"muteUser":"Mute", "muteUser":"ミュート",
"unmuteUser":"Unmute", "unmuteUser":"ミュート解除",
"hideNotificationsFromMutedUsers":"Hide notifications from muted users", "hideNotificationsFromMutedUsers":"ミュートしたユーザーからのお知らせを隠す",
"thisIsANoticeFromAMutedUser":"You have muted the author of this quip. Click here to show it anyway.", "thisIsANoticeFromAMutedUser":"あなたはこのお知らせのユーザーをミュートしています。ここをクリックして表示",
"userMutes":"Accounts you're muting", "userMutes":"あなたがミュートしているユーザー",
"userBlocked":"Blocked accounts", "userBlocked":"ブロックされているユーザー",
"userMuted":"Muted accounts", "userMuted":"ミュートされているユーザー",
"mutedStreamDescription":"You've hidden these accounts from your timeline. You will still recieve notifications from these accounts, unless you select &quot;Hide notifications from muted users&quot; from the cog wheel menu on the notifications page.", "mutedStreamDescription":"あなたのタイムラインから、選択されたユーザーを隠しました。あなたがお知らせページの歯車のメニューにある&quot;ミュートしたユーザーからのお知らせを隠す&quot;を選択しなかったユーザー以外からは、まだお知らせを受け取ります。",
"profileAndSettings":"Profile and settings", "profileAndSettings":"プロフィールと設定",
"profileSettings":"Profile settings" "profileSettings":"プロフィール設定",
"thisIsABookmark":"This is a bookmark created in the Classic interface"
} }

View File

@ -187,14 +187,15 @@
"unSandboxThisUser":"Opphev lekekasse for {nickname}", "unSandboxThisUser":"Opphev lekekasse for {nickname}",
"ERRORfailedSandboxingUser":"Feilet ved forsøk på å sette i lekekasse/oppheve lekekasse av bruker", "ERRORfailedSandboxingUser":"Feilet ved forsøk på å sette i lekekasse/oppheve lekekasse av bruker",
"ERRORfailedSilencingUser":"Feilet ved forstumming/oppheving av forstumming av bruker", "ERRORfailedSilencingUser":"Feilet ved forstumming/oppheving av forstumming av bruker",
"muteUser":"Mute", "muteUser":"Forstumme",
"unmuteUser":"Unmute", "unmuteUser":"Opphev forstumming",
"hideNotificationsFromMutedUsers":"Hide notifications from muted users", "hideNotificationsFromMutedUsers":"Skjul notifikasjoner fra forstummet bruker",
"thisIsANoticeFromAMutedUser":"You have muted the author of this quip. Click here to show it anyway.", "thisIsANoticeFromAMutedUser":"Du har forstummet eieren av denne quip. Klikk her for å se den alikevel.",
"userMutes":"Accounts you're muting", "userMutes":"Kontoer du har forstummet",
"userBlocked":"Blocked accounts", "userBlocked":"Blokkerte kontoer",
"userMuted":"Muted accounts", "userMuted":"Forstummede kontoer",
"mutedStreamDescription":"You've hidden these accounts from your timeline. You will still recieve notifications from these accounts, unless you select &quot;Hide notifications from muted users&quot; from the cog wheel menu on the notifications page.", "mutedStreamDescription":"Du har skjul disse kontoene fra din tidslinje. Du vil alikevel motta notifikasjoner fra disse kontoene, hvis da du ikke velger &quot;Skjul notifikasjoner fra forstummede brukere&quot; fra tannhjul menyen på notifikasjons siden.",
"profileAndSettings":"Profile and settings", "profileAndSettings":"Profiler og innstillinger",
"profileSettings":"Profile settings" "profileSettings":"Profil innstillinger",
"thisIsABookmark":"Dette er et bokmerke som ble laget i det klassiske grensesnittet"
} }

View File

@ -196,5 +196,6 @@
"userMuted":"Gedempte gebruikers", "userMuted":"Gedempte gebruikers",
"mutedStreamDescription":"Je negeert deze gebruikers in je tijdlijn. Je krijgt wel nog mededelingen van deze gebruikers, tenzij je &quot;Geen mededelingen van genegeerde gebruikers.&quot; kiest van het instellingen icoon op de mededelingen pagina.", "mutedStreamDescription":"Je negeert deze gebruikers in je tijdlijn. Je krijgt wel nog mededelingen van deze gebruikers, tenzij je &quot;Geen mededelingen van genegeerde gebruikers.&quot; kiest van het instellingen icoon op de mededelingen pagina.",
"profileAndSettings":"Profiel en instellingen", "profileAndSettings":"Profiel en instellingen",
"profileSettings":"Profiel instellingen" "profileSettings":"Profiel instellingen",
"thisIsABookmark":"This is a bookmark created in the Classic interface"
} }

201
locale/pl.json Normal file
View File

@ -0,0 +1,201 @@
{
"directionality":"ltr",
"languageName": "Polish",
"loginUsername": "Nazwa użytkownika lub email",
"loginPassword": "Hasło",
"loginSignIn": "Zaloguj się",
"loginRememberMe": "Zapamiętaj mnie",
"loginForgotPassword": "Nie pamiętasz hasła?",
"notices": "Queety",
"followers": "Obserwujący",
"following": "Obserwowani",
"groups": "Grupy",
"compose": "Co się dzieje?",
"queetVerb": "Wyślij",
"queetsNounPlural": "Queety",
"logout": "Wyloguj się",
"languageSelected": "Język:",
"viewMyProfilePage": "Zobacz swój profil",
"expand": "Rozwiń",
"collapse": "Zwiń",
"details": "Szczegóły",
"expandFullConversation": "Rozwiń całą rozmowę",
"replyVerb": "Odpowiedź",
"requeetVerb": "Podaj dalej",
"favoriteVerb": "Ulubiony",
"requeetedVerb": "Podany dalej",
"favoritedVerb": "Polubione",
"replyTo": "Odpowiedz",
"requeetedBy": "Podany dalej przez {requeeted-by}",
"favoriteNoun": "Ulubiony",
"favoritesNoun": "Ulubione",
"requeetNoun": "Podaj dalej",
"requeetsNoun": "Podane dalej",
"newQueet": "{new-notice-count} nowy queet",
"newQueets": "{new-notice-count} nowych queetów",
"longmonthsJanuary": "styczeń",
"longmonthsFebruary": "luty",
"longmonthsMars": "marzec",
"longmonthsApril": "kwiecień",
"longmonthsMay": "maj",
"longmonthsJune": "czerwiec",
"longmonthsJuly": "lipiec",
"longmonthsAugust": "sierpień",
"longmonthsSeptember": "wrzesień",
"longmonthsOctober": "październik",
"longmonthsNovember": "listopad",
"longmonthsDecember": "grudzień",
"shortmonthsJanuary": "styczeń",
"shortmonthsFebruary": "luty",
"shortmonthsMars": "marzec",
"shortmonthsApril": "kwiecien",
"shortmonthsMay": "maj",
"shortmonthsJune": "czerwiec",
"shortmonthsJuly": "lipiec",
"shortmonthsAugust": "sierpień",
"shortmonthsSeptember": "wrzesień",
"shortmonthsOctober": "październik",
"shortmonthsNovember": "listopad",
"shortmonthsDecember": "grudzień",
"time12am": "{time} am",
"time12pm": "{time} pm",
"longDateFormat": "{time12} - {day} {month} {year}",
"shortDateFormatSeconds": "{seconds}s",
"shortDateFormatMinutes": "{minutes}m",
"shortDateFormatHours": "{hours}godz.",
"shortDateFormatDate": "{day} {month}",
"shortDateFormatDateAndY": "{day} {month} {year}",
"now": "teraz",
"posting": "dodawanie",
"viewMoreInConvBefore": " zobacz więcej w rozmowie",
"viewMoreInConvAfter": "Zobacz więcej w rozmowie ",
"mentions": "Wzmianki",
"timeline": "Oś czasu",
"publicTimeline": "Publiczna oś czasu",
"publicAndExtTimeline": "Cała znana sieć",
"searchVerb": "Szukaj",
"deleteVerb": "Usuń",
"cancelVerb": "Anuluj",
"deleteConfirmation": "Czy na pewno chcesz usunąć ten queet?",
"userExternalFollow": "Zdalne obserwowanie",
"userExternalFollowHelp": "ID Twojego konta (np user@rainbowdash.net).",
"userFollow": "Obserwuj",
"userFollowing": "Obserwowany",
"userUnfollow": "Przestań obserwować",
"joinGroup": "Dołącz",
"joinExternalGroup": "Dołącz zdalnie",
"isMemberOfGroup": "Użytkownik",
"leaveGroup": "Opuść",
"memberCount": "Członkowie",
"adminCount": "Administratorzy",
"settings": "Ustawienia",
"saveChanges": "Zapisz zmiany",
"linkColor": "Kolor linku",
"backgroundColor": "Kolor tła",
"newToQuitter": "Nowy na {site-title}?",
"signUp": "Zarejestruj się",
"signUpFullName": "Imię i nazwisko",
"signUpEmail": "Email",
"signUpButtonText": "Zarejestruj się na {site-title}",
"welcomeHeading": "Witamy na {site-title}.",
"welcomeText": "Jesteśmy społecznością mikroblogerów, złożoną z globalnej <span id=\"federated-tooltip\"><div id=\"what-is-federation\">Oznacza to, że nie musisz posiadać konta na {site-title} aby komunikować się z użytkownikami {site-title}, obserwować lub aby mieć obserwujących na {site-title}. Możesz się także rejestrować na innych serwerach <a href=\"http://www.gnu.org/software/social/\">GNU social</a> lub na innej usłudze, która obsługuje protokół <a href=\"http://www.w3.org/community/ostatus/wiki/Main_Page\">OStatus</a>. Możesz nawet uczestniczyć bez rejestracji, jeśli zainstalujesz GNU social na własnym serwerze. </div>Sieci</span> niezależnych serwerów Gnu social, znanych również jako StatusNet. Jesteśmy idealnym miejscem dla <strong>ludzi takich jak Ty</strong>, dla których etyka i solidarność coś znaczy, a które nie chcą uczestniczyć w scentralizowanych usługach komercyjnych.",
"registerNickname": "Nick",
"registerHomepage": "Strona internetowa",
"registerBio": "O mnie",
"registerLocation": "Lokalizacja",
"registerRepeatPassword": "Powtórz hasło",
"moreSettings": "Więcej ustawień",
"otherServers": "Alternatywnie można utworzyć konto na innym serwerze GNU social <a href=\"http://federation.skilledtests.com/select_your_server.html\">Porównanie</a>",
"editMyProfile": "Edytuj profil",
"notifications": "Powiadomienia",
"xFavedYourQueet": "dodał do ulubionych twój Queet",
"xRepeatedYourQueet": "podał dalej Twojego Queeta",
"xStartedFollowingYou": "zaczął Cię obserwować",
"followsYou": "obserwuje Cię",
"FAQ": "FAQ",
"inviteAFriend": "Zaproś przyjaciół!",
"goToExternalProfile": "Pokaż pełny profil",
"cropAndSave": "Przytnij i zapisz",
"showTerms": "Przeczytaj nasze Warunki korzystania",
"ellipsisMore": "Więcej",
"blockUser": "Zablokuj",
"goToOriginalNotice": "Idź do pierwotnego queeta",
"goToTheUsersRemoteProfile": "Idź do zdalnego profilu użytkownika",
"clickToDrag":"Kliknij, aby przeciągnąć",
"keyboardShortcuts":"Skróty klawiszowe",
"classicInterface":"Klasyczny {site-title}",
"accessibilityToggleLink":"Dla lepszej dostępności należy kliknąć ten link, aby przejść do klasycznego interfejsu",
"tooltipBookmarkStream":"Dodaj ten strumień do zakładek",
"tooltipTopMenu":"Menu i ustawienia",
"tooltipAttachImage":"Dodaj zdjęcie",
"tooltipShortenUrls":"Skrócić wszystkie adresy URL w tym queecie",
"tooltipReloadStream":"Odśwież strumień",
"tooltipRemoveBookmark":"Usuń tę zakładkę",
"clearHistory":"Wyczyść historię przeglądania",
"ERRORsomethingWentWrong":"Coś poszło nie tak.",
"ERRORmustBeLoggedIn":"Musisz być zalogowany, aby zobaczyć ten strumień.",
"ERRORcouldNotFindUserWithNickname":"Nie można znaleźć użytkownika o nicku \"{nickname}\" na tym serwerze",
"ERRORcouldNotFindGroupWithNickname":"Nie można znaleźć grupy o nazie \"{nickname}\" na tym serwerze",
"ERRORcouldNotFindPage":"Nie można znaleźć podanej strony.",
"ERRORnoticeRemoved": "Ten queet został usunięty.",
"ERRORnoContactWithServer": "Nie można nawiązać połączenia z serwerem. Serwer może być przeciążony lub możesz mieć problemy z połączeniem internetowym. Spróbuj ponownie później.",
"ERRORattachmentUploadFailed": "Przesyłanie nie powiodło się. Format może być nieobsługiwany lub rozmiar jest zbyt duży.",
"hideRepliesToPeopleIDoNotFollow":"Ukryj odpowiedzieci od ludzi, których nie obserwuję",
"markAllNotificationsAsSeen":"Oznacz wszystkie powiadomienia jako przeczytane",
"notifyRepliesAndMentions":"Wzmianki i odpowiedzi",
"notifyFavs":"Ulubione",
"notifyRepeats":"Podane dalej",
"notifyFollows":"Nowi obserwujący",
"timelineOptions":"Ustawienia osi czasu",
"ERRORfailedSavingYourSetting":"Błąd podczas zapisywania Twoich ustawień",
"ERRORfailedMarkingAllNotificationsAsRead":"Błąd podczas ozanczania powiadomień jako przeczytane.",
"newNotification": "{new-notice-count} nowe powiadomienie",
"newNotifications": "{new-notice-count} nowych powiadomień",
"thisIsANoticeFromABlockedUser":"Ostrzeżenie: To queet od użytkownika, którego zablokowałeś. Kliknij, by zobaczyć.",
"nicknamesListWithListName":"Lista użytkownika {nickname}: {list-name}",
"myListWithListName":"Moja lista: {list-name}",
"listMembers":"Użytkownicy",
"listSubscribers":"Subskrybujący",
"ERRORcouldNotFindList":"Nie ma takiej listy.",
"emailAlreadyInUse":"Już w użyciu",
"addEditLanguageLink":"Pomóż przetłumaczyć {site-title} na inny język",
"onlyPartlyTranslated":"{site-title} został przetłumaczony częściowo na język <em>{language-name}</em> ({percent}%).Możesz pomóc w ukończeniu tłumaczenia na <a href=\"https://git.gnu.io/h2p/Qvitter/tree/master/locale\">Qvitter's repository homepage</a>",
"startRant":"Rozpocznij przemówienie",
"continueRant":"Kontynuuj przemówienie",
"hideEmbeddedInTimeline":"Ukryj osadzony kontent na tej osi czasu",
"hideQuotesInTimeline":"Ukryj cytaty na tej osi czasu",
"userBlocks":"Konta, które blokujesz",
"buttonBlocked":"Zablokowany",
"buttonUnblock":"Odblokuj",
"failedBlockingUser":"Nie udało się zablokować użytkownika.",
"failedUnblockingUser":"Nie udało się odblokować użytkownika.",
"unblockUser": "Odblokuj",
"tooltipBlocksYou":"Jesteś zablokowany przez {username}.",
"silenced":"Wyciszony",
"silencedPlural":"Wyciszone profile",
"silencedUsersOnThisInstance":"Wyciszone profile na {site-title}",
"sandboxed":"Zsandboksowany",
"sandboxedPlural":"Zsandboksowane profile",
"sandboxedUsersOnThisInstance":"Zsandboksowane profile na {site-title}",
"silencedStreamDescription":"Wyciszeni użytkownicy nie mogą się zalogować ani dodawać nowych queetów, a te, które już dodali, są ukryte. Dla użytkowników lokalnych jest to podobne do usunięcia, które można cofnąć, zaś dla użytkowników zdalnych jest to zablokowanie całej strony.",
"sandboxedStreamDescription":"Queety od zsandboksowanych użytkowników są wyłączone z publicznej osi czasu oraz całej sieci. Poza tym mogą oni używać strony jak każdy inny użytkownik.",
"onlyShowNotificationsFromUsersIFollow":"Pokazuj tylko powiadomienia od użytkowników, których obserwuję",
"userOptions":"Więcej opcji",
"silenceThisUser":"Wycisz {nickname}",
"sandboxThisUser":"Zsandboksuj użytkownika {nickname}",
"unSilenceThisUser":"Odcisz {nickname}",
"unSandboxThisUser":"Odsandboksuj użytkownika {nickname}",
"ERRORfailedSandboxingUser":"Błąd poczas sandboksowania/odsandboksowywania użytkownika",
"ERRORfailedSilencingUser":"Błąd podczas uciszania/odciszania użytkownika",
"muteUser":"Wycisz",
"unmuteUser":"Odcisz",
"hideNotificationsFromMutedUsers":"Ukryj powiadomienia od wycziszonych użytkowników",
"thisIsANoticeFromAMutedUser":"Wyciszyłeś autora tego queeta. Kliknij tu, aby go pokazać.",
"userMutes":"Użytkownicy, których wyciszyłeś",
"userBlocked":"Zablokowani użytkownicy",
"userMuted":"Wyciszeni użytkownicy",
"mutedStreamDescription":"Ukryłeś te konta na swojej osi czasu. Nadal będziesz otrzymywać powiadomienia od tych użytkowników, chyba że wybierzesz opcję &quot;Ukryj powiadomienia od wyciszonych użytkowników&quot;, znajdującą się w rozwijanym menu na stronie powiadomień.",
"profileAndSettings":"Profil i ustawienia",
"profileSettings":"Ustawienia profilu",
"thisIsABookmark":"To jest zakładka stworzona w klasycznym interfejsie"
}

View File

@ -1,11 +1,11 @@
{ {
"directionality":"ltr", "directionality":"ltr",
"languageName": "Português", "languageName": "Português",
"loginUsername": "Nome de usuário ou e-mail", "loginUsername": "Nome de utilizador ou e-mail",
"loginPassword": "Senha", "loginPassword": "Senha",
"loginSignIn": "Iniciar sessão", "loginSignIn": "Iniciar sessão",
"loginRememberMe": "Lembrar meu login", "loginRememberMe": "Lembrar meu login",
"loginForgotPassword": "Esqueceu sua senha?", "loginForgotPassword": "Esqueceu-se da sua senha?",
"notices": "Queets", "notices": "Queets",
"followers": "Seguidores", "followers": "Seguidores",
"following": "Seguindo", "following": "Seguindo",
@ -13,9 +13,9 @@
"compose": "Escrever um novo Queet...", "compose": "Escrever um novo Queet...",
"queetVerb": "Quittear", "queetVerb": "Quittear",
"queetsNounPlural": "Queets", "queetsNounPlural": "Queets",
"logout": "Fechar sessão", "logout": "Terminar sessão",
"languageSelected": "Idioma:", "languageSelected": "Idioma:",
"viewMyProfilePage": "Ver minha página de perfil", "viewMyProfilePage": "Ver a minha página de perfil",
"expand": "Expandir", "expand": "Expandir",
"collapse": "Reduzir", "collapse": "Reduzir",
"details": "Detalhes", "details": "Detalhes",
@ -66,14 +66,14 @@
"shortDateFormatDate": "{day} {month}", "shortDateFormatDate": "{day} {month}",
"shortDateFormatDateAndY": "{day} {month} {year}", "shortDateFormatDateAndY": "{day} {month} {year}",
"now": "agora", "now": "agora",
"posting": "publicando", "posting": "a publicar",
"viewMoreInConvBefore": "← Ver mais na conversa", "viewMoreInConvBefore": "← Ver mais na conversa",
"viewMoreInConvAfter": "Ver mais na conversa →", "viewMoreInConvAfter": "Ver mais na conversa →",
"mentions": "Menções", "mentions": "Menções",
"timeline": "Linha de tempo", "timeline": "Linha de tempo",
"publicTimeline": "Linha de tempo pública", "publicTimeline": "Linha de tempo pública",
"publicAndExtTimeline": "Toda a rede conhecida", "publicAndExtTimeline": "Toda a rede conhecida",
"searchVerb": "Buscar", "searchVerb": "Procurar",
"deleteVerb": "Apagar", "deleteVerb": "Apagar",
"cancelVerb": "Cancelar", "cancelVerb": "Cancelar",
"deleteConfirmation": "Tem certeza que quer apagar este queet?", "deleteConfirmation": "Tem certeza que quer apagar este queet?",
@ -89,112 +89,113 @@
"memberCount": "Membros", "memberCount": "Membros",
"adminCount": "Administradores", "adminCount": "Administradores",
"settings": "Configurações", "settings": "Configurações",
"saveChanges": "Salvar mudanças", "saveChanges": "Guardar mudanças",
"linkColor": "Cor do link", "linkColor": "Cor do link",
"backgroundColor": "Cor de fundo", "backgroundColor": "Cor de fundo",
"newToQuitter": "Você é novo no {site-title}?", "newToQuitter": "Você é novo no {site-title}?",
"signUp": "Registre-se", "signUp": "Registe-se",
"signUpFullName": "Nome completo", "signUpFullName": "Nome completo",
"signUpEmail": "E-mail", "signUpEmail": "E-mail",
"signUpButtonText": "Registre-se no {site-title}", "signUpButtonText": "Registe-se no {site-title}",
"welcomeHeading": "Bem-vindo ao {site-title}.", "welcomeHeading": "Bem-vindo ao {site-title}.",
"welcomeText": "Somos uma <span id=\"federated-tooltip\"><div id=\"what-is-federation\">« Federação » significa que você não deve ter uma conta do {site-title} para seguir seus usuários, ser seguido por eles ou se comunicar com eles. Você pode se registrar em qualquer servidor StatusNet ou <a href=\"http://www.gnu.org/software/social/\">GNU social</a>, ou em qualquer serviço utilizando o protocolo <a href=\"http://www.w3.org/community/ostatus/wiki/Main_Page\">OStatus</a>! Também não deve se registrar em qualquer serviço para participar - simplesmente instale o software GNU social em seu próprio servidor. (:</div>federação</span> de microblogueiros que, como você, estão motivados pela ética e solidaridade, e querem abandonar os serviços centralizados capitalistas. Estamos aqui desde 2010 e sempre vamos ser sem fins lucrativos.", "welcomeText": "Somos uma <span id=\"federated-tooltip\"><div id=\"what-is-federation\">« Federação » significa que você não deve ter uma conta do {site-title} para seguir seus usuários, ser seguido por eles ou se comunicar com eles. Você pode se registrar em qualquer servidor StatusNet ou <a href=\"http://www.gnu.org/software/social/\">GNU social</a>, ou em qualquer serviço utilizando o protocolo <a href=\"http://www.w3.org/community/ostatus/wiki/Main_Page\">OStatus</a>! Também não deve se registrar em qualquer serviço para participar - simplesmente instale o software GNU social em seu próprio servidor. (:</div>federação</span> de microblogueiros que, como você, estão motivados pela ética e solidaridade, e querem abandonar os serviços centralizados capitalistas. Estamos aqui desde 2010 e sempre vamos ser sem fins lucrativos.",
"registerNickname": "Nome de usuário", "registerNickname": "Nome de utilizador",
"registerHomepage": "Site web", "registerHomepage": "Página do utilizador",
"registerBio": "Biografia", "registerBio": "Biografia",
"registerLocation": "Localização", "registerLocation": "Localização",
"registerRepeatPassword": "Repetir senha", "registerRepeatPassword": "Repetir senha",
"moreSettings": "Mais configurações", "moreSettings": "Mais configurações",
"otherServers": "De manera alternativa, você pode criar uma conta em outro servidor da rede GNU social. <a href=\"http://federation.skilledtests.com/select_your_server.html\">Comparativo</a>", "otherServers": "De maneira alternativa, você pode criar uma conta noutro servidor da rede GNU social. <a href=\"http://federation.skilledtests.com/select_your_server.html\">Comparativo</a>",
"editMyProfile": "Editar perfil", "editMyProfile": "Editar perfil",
"notifications": "Notificações", "notifications": "Notificações",
"xFavedYourQueet": "curtiu seu Queet", "xFavedYourQueet": "{username} gostou do seu Queet",
"xRepeatedYourQueet": "requeetou você", "xRepeatedYourQueet": "{username} requeetou-te",
"xStartedFollowingYou": "seguiu você", "xStartedFollowingYou": "{username} começou a seguir-te ",
"followsYou": "segue você", "followsYou": "{username} segue-te",
"FAQ": "FAQ", "FAQ": "FAQ",
"inviteAFriend": "Convide seus amigos!", "inviteAFriend": "Convide os seus amigos!",
"goToExternalProfile": "Ir para o perfil completo", "goToExternalProfile": "Ir para o perfil completo",
"cropAndSave": "Crop and save", "cropAndSave": "Cortar e Guardar",
"showTerms": "Read our Terms of Use", "showTerms": "Ler os nosso termos de utilizador",
"ellipsisMore": "More", "ellipsisMore": "Mais",
"blockUser": "Block {username}", "blockUser": "Bloquear {username}",
"goToOriginalNotice": "Go to original notice", "goToOriginalNotice": "Ver a notícia original",
"goToTheUsersRemoteProfile": "Go to the user's remote profile", "goToTheUsersRemoteProfile": "Ver o perfil remoto do utilizador",
"clickToDrag":"Click to drag", "clickToDrag":"Clique aqui para arrastar",
"keyboardShortcuts":"Keyboard shortcuts", "keyboardShortcuts":"Atalhos do Teclado",
"classicInterface":"Classic {site-title}", "classicInterface":"Versão Clássica de {site-title}",
"accessibilityToggleLink":"For better accessibility, click this link to switch to the classic interface", "accessibilityToggleLink":"Para melhor acessibilidade, carregue neste link para mudar o estilo de interface para clássico",
"tooltipBookmarkStream":"Add this stream to your bookmarks", "tooltipBookmarkStream":"Adicionar esta stream aos seus bookmarks",
"tooltipTopMenu":"Menu and settings", "tooltipTopMenu":"Menu e Definições",
"tooltipAttachImage":"Attach an image", "tooltipAttachImage":"Adicionar Imagem",
"tooltipShortenUrls":"Shorten all URLs in the Queet", "tooltipShortenUrls":"Reduzir o tamanho dos ULRs no Queet",
"tooltipReloadStream":"Refresh this stream", "tooltipReloadStream":"Recarregar stream",
"tooltipRemoveBookmark":"Remove this bookmark", "tooltipRemoveBookmark":"Remover bookmark",
"clearHistory":"Clear browsing history", "clearHistory":"Limpar Histórico de Pesquisa",
"ERRORsomethingWentWrong":"Something went wrong.", "ERRORsomethingWentWrong":"Ups, alguma coisa não está bem.",
"ERRORmustBeLoggedIn":"You must be logged in to view this stream.", "ERRORmustBeLoggedIn":"Para ver esta stream, faça o login.",
"ERRORcouldNotFindUserWithNickname":"Could not find a user with nickname \"{nickname}\" on this server", "ERRORcouldNotFindUserWithNickname":"Não conseguimos encontrar o utilizador \"{nickname}\" neste servidor",
"ERRORcouldNotFindGroupWithNickname":"Could not find a group with nickname \"{nickname}\" on this server", "ERRORcouldNotFindGroupWithNickname":"Não conseguimos encontrar o grupo \"{nickname}\" neste servidor",
"ERRORcouldNotFindPage":"Could not find that page.", "ERRORcouldNotFindPage":"Não conseguimos encontrar a página.",
"ERRORnoticeRemoved": "This notice has been removed.", "ERRORnoticeRemoved": "Esta notícia foi removida.",
"ERRORnoContactWithServer": "Can not establish a connection to the server. The server could be overloaded, or there might be a problem with your internet connecton. Please try again later!", "ERRORnoContactWithServer": "Não conseguimos estabelecer a ligação com o servidor. o servidor pode estar sobrecarregado, ou podem existir problemas com a sua ligação à internet. Por Favor, tente mais tarde!",
"ERRORattachmentUploadFailed": "The upload failed. The format might be unsupported or the size too large.", "ERRORattachmentUploadFailed": "O upload falhou.Possivelmente o formato do ficheiro não é compativél ou o ficheiro é grande.",
"hideRepliesToPeopleIDoNotFollow":"Hide replies to people I don't follow", "hideRepliesToPeopleIDoNotFollow":"Esconder respostas de pessoas que eu não sigo",
"markAllNotificationsAsSeen":"Mark all notifications as seen", "markAllNotificationsAsSeen":"Marcar todas as notificações como vistas",
"notifyRepliesAndMentions":"Mentions and replies", "notifyRepliesAndMentions":"Menções e Respostas",
"notifyFavs":"Favorites", "notifyFavs":"Favoritos",
"notifyRepeats":"Requeets", "notifyRepeats":"Requeets",
"notifyFollows":"New followers", "notifyFollows":"Novos Seguidores",
"timelineOptions":"Timeline options", "timelineOptions":"Opções da Linha do tempo",
"ERRORfailedSavingYourSetting":"Failed saving your setting", "ERRORfailedSavingYourSetting":"As definições não puderam ser guardadas",
"ERRORfailedMarkingAllNotificationsAsRead":"Failed marking all notifications as seen.", "ERRORfailedMarkingAllNotificationsAsRead":"Não conseguimos marcar todas as notificações como vistas.",
"newNotification": "{new-notice-count} new notification", "newNotification": "{new-notice-count} nova notificação",
"newNotifications": "{new-notice-count} new notifications", "newNotifications": "{new-notice-count} novas notificações",
"thisIsANoticeFromABlockedUser":"Warning: This is a notice from a user you have blocked. Click to show it.", "thisIsANoticeFromABlockedUser":"Aviso: Esta Noticia é de um utilizador que você bloqueou, carregue aqui para ler.",
"nicknamesListWithListName":"{nickname}s list: {list-name}", "nicknamesListWithListName":"Lista de {nickname}: {list-name}",
"myListWithListName":"My list: {list-name}", "myListWithListName":"A Minha lista: {list-name}",
"listMembers":"Members", "listMembers":"Membros",
"listSubscribers":"Subscribers", "listSubscribers":"Subscritores",
"ERRORcouldNotFindList":"There is no such list.", "ERRORcouldNotFindList":"Esta lista não existe.",
"emailAlreadyInUse":"Already in use", "emailAlreadyInUse":"este E-mail já se encontra em uso",
"addEditLanguageLink":"Help translate {site-title} to another language", "addEditLanguageLink":"Ajuda a traduzir o site {site-title} para outra lingua",
"onlyPartlyTranslated":"{site-title} is only partly translated to <em>{language-name}</em> ({percent}%). You can help complete the translation at <a href=\"https://git.gnu.io/h2p/Qvitter/tree/master/locale\">Qvitter's repository homepage</a>", "onlyPartlyTranslated":"{site-title} está parcialmente traduzido em <em>{language-name}</em> ({percent}%). Você pode ajudar a terminar a tradução em <a href=\"https://git.gnu.io/h2p/Qvitter/tree/master/locale\">Qvitter's repository homepage</a>",
"startRant":"Start a rant", "startRant":"Começar a desabafar",
"continueRant":"Continue the rant", "continueRant":"Continue a desabaf",
"hideEmbeddedInTimeline":"Hide embedded content in this timeline", "hideEmbeddedInTimeline":"Hide embedded content in this timeline",
"hideQuotesInTimeline":"Hide quotes in this timeline", "hideQuotesInTimeline":"Esconder Citações dentro desta linha do tempo",
"userBlocks":"Accounts you're blocking", "userBlocks":"Contas que estás a bloquear",
"buttonBlocked":"Blocked", "buttonBlocked":"Bloqueado",
"buttonUnblock":"Unblock", "buttonUnblock":"Desbloquear",
"failedBlockingUser":"Failed to block the user.", "failedBlockingUser":"Não conseguimos bloquear o utilizador.",
"failedUnblockingUser":"Failed to unblock the user.", "failedUnblockingUser":"Não conseguimos desbloquear o utilizador.",
"unblockUser": "Unblock {username}", "unblockUser": "Desbloquear {username}",
"tooltipBlocksYou":"You are blocked from following {username}.", "tooltipBlocksYou":"Você foi bloqueado por {username}.",
"silenced":"Silenced", "silenced":"Silenciar",
"silencedPlural":"Silenced profiles", "silencedPlural":"Perfis Silenciados ",
"silencedUsersOnThisInstance":"Silenced profiles on {site-title}", "silencedUsersOnThisInstance":"Perfis Calados no site {site-title}",
"sandboxed":"Sandboxed", "sandboxed":"Restrito",
"sandboxedPlural":"Sandboxed profiles", "sandboxedPlural":"Perfis Restritos",
"sandboxedUsersOnThisInstance":"Sandboxed profiles on {site-title}", "sandboxedUsersOnThisInstance":"Perfis Restritos no site {site-title}",
"silencedStreamDescription":"Silenced users can't login or post quips and the quips they've already posted are hidden. For local users it's like a delete that can be reversed, for remote users it's like a site wide block.", "silencedStreamDescription":"Utilizadores que foram slienciaods não podem efetuar o login ou postar queets e todos os queets que já foram postados são escondidos. Para utilizadores locais, é como se fosse uma eliminação que pode ser revertida, para utilizadores remotos, é como se fosse um bloqueio geral do site. ",
"sandboxedStreamDescription":"Quips from sandboxed users are excluded from the Public Timeline and The Whole Known Network. Apart from that, they can use the site like any other user.", "sandboxedStreamDescription":"Queets de utilizadores restritos são excluidos da linha do tempo pública e de toda a rede conhecida.excuindo esse promenor, eles podem utilizar o site como qualquer outra pessoa.",
"onlyShowNotificationsFromUsersIFollow":"Only show notifications from users I follow", "onlyShowNotificationsFromUsersIFollow":"Mostrar apenas notificações de utilizadores que eu sigo",
"userOptions":"More user actions", "userOptions":"mais ações de utilizador",
"silenceThisUser":"Silence {nickname}", "silenceThisUser":"Silenciar {nickname}",
"sandboxThisUser":"Sandbox {nickname}", "sandboxThisUser":"Restringir {nickname}",
"unSilenceThisUser":"Unsilence {nickname}", "unSilenceThisUser":"Descilenciar {nickname}",
"unSandboxThisUser":"Unsandbox {nickname}", "unSandboxThisUser":" Desrestringir {nickname}",
"ERRORfailedSandboxingUser":"Failed sandboxing/unsandboxing the user", "ERRORfailedSandboxingUser":"Não conseguimos Restringir/Desrestringir o utilizador",
"ERRORfailedSilencingUser":"Failed silencing/unsilencing the user", "ERRORfailedSilencingUser":"Não conseguimos Silenciar/Descilenciar o utilizador",
"muteUser":"Mute", "muteUser":"Calar",
"unmuteUser":"Unmute", "unmuteUser":"Descalar",
"hideNotificationsFromMutedUsers":"Hide notifications from muted users", "hideNotificationsFromMutedUsers":"Esconder notificações de utilizadores calados",
"thisIsANoticeFromAMutedUser":"You have muted the author of this quip. Click here to show it anyway.", "thisIsANoticeFromAMutedUser":"Você calou o utilizador deste queet, carregue aqui para ler ",
"userMutes":"Accounts you're muting", "userMutes":"Contas que está a calar",
"userBlocked":"Blocked accounts", "userBlocked":"Contas Bloqueadas",
"userMuted":"Muted accounts", "userMuted":"Contas Caladas",
"mutedStreamDescription":"You've hidden these accounts from your timeline. You will still recieve notifications from these accounts, unless you select &quot;Hide notifications from muted users&quot; from the cog wheel menu on the notifications page.", "mutedStreamDescription":"Você escondeu estas contas da sua linha do tempo. Irá continuar a receber notificações delas, a não ser que selecione a opção \"Esconder notificações de utilizadores calados\" a partir do menu da roldana na página de notificações.",
"profileAndSettings":"Profile and settings", "profileAndSettings":"Perfil e Definições",
"profileSettings":"Profile settings" "profileSettings":"Definições do Perfil",
"thisIsABookmark":"This is a bookmark created in the Classic interface"
} }

View File

@ -21,15 +21,15 @@
"details": "Detalhes", "details": "Detalhes",
"expandFullConversation": "Expandir toda a conversa", "expandFullConversation": "Expandir toda a conversa",
"replyVerb": "Responder", "replyVerb": "Responder",
"requeetVerb": "Requeetar", "requeetVerb": "Requipar",
"favoriteVerb": "Curtir", "favoriteVerb": "Curtir",
"requeetedVerb": "Requipado", "requeetedVerb": "Requipado",
"favoritedVerb": "Curtida", "favoritedVerb": "Curtido",
"replyTo": "Responder para", "replyTo": "Responder para",
"requeetedBy": "Requipado por {requeeted-by}", "requeetedBy": "Requipado por {requeeted-by}",
"favoriteNoun": "Curtida", "favoriteNoun": "Curtida",
"favoritesNoun": "Curtidas", "favoritesNoun": "Curtidas",
"requeetNoun": "Requipar", "requeetNoun": "Requip",
"requeetsNoun": "Requips", "requeetsNoun": "Requips",
"newQueet": "{new-notice-count} novo quip", "newQueet": "{new-notice-count} novo quip",
"newQueets": "{new-notice-count} novos quips", "newQueets": "{new-notice-count} novos quips",
@ -88,7 +88,7 @@
"leaveGroup": "Sair", "leaveGroup": "Sair",
"memberCount": "Membros", "memberCount": "Membros",
"adminCount": "Administradores", "adminCount": "Administradores",
"settings": "Configurações", "settings": "Ajustes",
"saveChanges": "Salvar alterações", "saveChanges": "Salvar alterações",
"linkColor": "Cor dos links", "linkColor": "Cor dos links",
"backgroundColor": "Cor do plano de fundo", "backgroundColor": "Cor do plano de fundo",
@ -104,7 +104,7 @@
"registerBio": "Biografia", "registerBio": "Biografia",
"registerLocation": "Localização", "registerLocation": "Localização",
"registerRepeatPassword": "Repetir senha", "registerRepeatPassword": "Repetir senha",
"moreSettings": "Mais configurações", "moreSettings": "Mais ajustes",
"otherServers": "Alternativamente, você pode criar uma conta em outro servidor da rede GNU social. <a href=\"http://federation.skilledtests.com/select_your_server.html\">Comparativo</a>", "otherServers": "Alternativamente, você pode criar uma conta em outro servidor da rede GNU social. <a href=\"http://federation.skilledtests.com/select_your_server.html\">Comparativo</a>",
"editMyProfile": "Editar perfil", "editMyProfile": "Editar perfil",
"notifications": "Notificações", "notifications": "Notificações",
@ -187,14 +187,15 @@
"unSandboxThisUser":"Liberar {nickname}", "unSandboxThisUser":"Liberar {nickname}",
"ERRORfailedSandboxingUser":"Falha ao restringir/liberar o usuário", "ERRORfailedSandboxingUser":"Falha ao restringir/liberar o usuário",
"ERRORfailedSilencingUser":"Falha ao silenciar/permitir o usuário", "ERRORfailedSilencingUser":"Falha ao silenciar/permitir o usuário",
"muteUser":"Mute", "muteUser":"Calar",
"unmuteUser":"Unmute", "unmuteUser":"Falar",
"hideNotificationsFromMutedUsers":"Hide notifications from muted users", "hideNotificationsFromMutedUsers":"Esconder notificações de usuários calados",
"thisIsANoticeFromAMutedUser":"You have muted the author of this quip. Click here to show it anyway.", "thisIsANoticeFromAMutedUser":"Você calou o autor deste quip. Clique aqui para mostrá-lo mesmo assim.",
"userMutes":"Accounts you're muting", "userMutes":"Contas que você calou",
"userBlocked":"Blocked accounts", "userBlocked":"Contas bloqueadas",
"userMuted":"Muted accounts", "userMuted":"Contas caladas",
"mutedStreamDescription":"You've hidden these accounts from your timeline. You will still recieve notifications from these accounts, unless you select &quot;Hide notifications from muted users&quot; from the cog wheel menu on the notifications page.", "mutedStreamDescription":"Você escondeu estas contas de sua linha do tempo. Você ainda receberá notificações destas contas, a menos que você selecione &quot;Esconder notificações de usuários calados&quot; no menu de engrenagem na página de notificações.",
"profileAndSettings":"Profile and settings", "profileAndSettings":"Perfil e ajustes",
"profileSettings":"Profile settings" "profileSettings":"Ajustes de perfil",
"thisIsABookmark":"This is a bookmark created in the Classic interface"
} }

View File

@ -6,13 +6,13 @@
"loginSignIn": "Войти", "loginSignIn": "Войти",
"loginRememberMe": "Запомнить меня", "loginRememberMe": "Запомнить меня",
"loginForgotPassword": "Забыли пароль?", "loginForgotPassword": "Забыли пароль?",
"notices": "Твиты", "notices": "Квиты",
"followers": "Читатели", "followers": "Читатели",
"following": "Читаемые", "following": "Читаемые",
"groups": "Группы", "groups": "Группы",
"compose": "Написать новый твит...", "compose": "Написать новый квит...",
"queetVerb": "Отправить", "queetVerb": "Отправить",
"queetsNounPlural": "Твиты", "queetsNounPlural": "Квиты",
"logout": "Выйти", "logout": "Выйти",
"languageSelected": "Язык:", "languageSelected": "Язык:",
"viewMyProfilePage": "Просмотр моего профиля", "viewMyProfilePage": "Просмотр моего профиля",
@ -21,18 +21,18 @@
"details": "Подробно", "details": "Подробно",
"expandFullConversation": "Развернуть беседу", "expandFullConversation": "Развернуть беседу",
"replyVerb": "Ответить", "replyVerb": "Ответить",
"requeetVerb": "Ретвитнуть", "requeetVerb": "Реквитнуть",
"favoriteVerb": "Избранное", "favoriteVerb": "Избранное",
"requeetedVerb": "Ретвитнул", "requeetedVerb": "Реквитнул",
"favoritedVerb": "В избранное", "favoritedVerb": "В избранное",
"replyTo": "Ответить на", "replyTo": "Ответить на",
"requeetedBy": "{requeeted-by} ретвитнул", "requeetedBy": "{requeeted-by} реквитнул",
"favoriteNoun": "Избранное", "favoriteNoun": "Избранное",
"favoritesNoun": "Избранные", "favoritesNoun": "Избранные",
"requeetNoun": "Ретвит", "requeetNoun": "Реквит",
"requeetsNoun": "Ретвиты", "requeetsNoun": "Реквиты",
"newQueet": "{new-notice-count} новый твит", "newQueet": "{new-notice-count} новый квит",
"newQueets": "{new-notice-count} новых твитов", "newQueets": "{new-notice-count} новых квитов",
"longmonthsJanuary": "Январь", "longmonthsJanuary": "Январь",
"longmonthsFebruary": "Февраль", "longmonthsFebruary": "Февраль",
"longmonthsMars": "Март", "longmonthsMars": "Март",
@ -76,9 +76,9 @@
"searchVerb": "Поиск", "searchVerb": "Поиск",
"deleteVerb": "Удалить", "deleteVerb": "Удалить",
"cancelVerb": "Отменить", "cancelVerb": "Отменить",
"deleteConfirmation": "Вы уверены, что ходите удалить этот твит?", "deleteConfirmation": "Вы уверены, что ходите удалить этот квит?",
"userExternalFollow": "Читать удалённо", "userExternalFollow": "Читать удалённо",
"userExternalFollowHelp": "Ваш ID аккаунта (напр. user@rainbowdash.net).", "userExternalFollowHelp": "Ваш ID учётной записи (напр. user@rainbowdash.net).",
"userFollow": "Читать", "userFollow": "Читать",
"userFollowing": "Читаю", "userFollowing": "Читаю",
"userUnfollow": "Отмена", "userUnfollow": "Отмена",
@ -108,10 +108,10 @@
"otherServers": "В качестве альтернативы вы можете зарегистрироваться на другом сервере сети GNU social. <a href=\"http://federation.skilledtests.com/select_your_server.html\">Сравнение</a>", "otherServers": "В качестве альтернативы вы можете зарегистрироваться на другом сервере сети GNU social. <a href=\"http://federation.skilledtests.com/select_your_server.html\">Сравнение</a>",
"editMyProfile": "Редактировать профиль", "editMyProfile": "Редактировать профиль",
"notifications": "Уведомления", "notifications": "Уведомления",
"xFavedYourQueet": "ваши твиты, добавленные в избранное", "xFavedYourQueet": "ваши квиты, добавленные в избранное",
"xRepeatedYourQueet": "ретвитнули", "xRepeatedYourQueet": "реквитнули",
"xStartedFollowingYou": "читают", "xStartedFollowingYou": "теперь читают вас",
"followsYou": "читают", "followsYou": "читают вас",
"FAQ": "FAQ", "FAQ": "FAQ",
"inviteAFriend": "Пригласите друзей!", "inviteAFriend": "Пригласите друзей!",
"goToExternalProfile": "Перейти к полному профилю", "goToExternalProfile": "Перейти к полному профилю",
@ -119,7 +119,7 @@
"showTerms": "Прочтите наши Условия использования", "showTerms": "Прочтите наши Условия использования",
"ellipsisMore": "Больше", "ellipsisMore": "Больше",
"blockUser": "Заблокировать {username}", "blockUser": "Заблокировать {username}",
"goToOriginalNotice": "Перейти к оригинальному твиту", "goToOriginalNotice": "Перейти к оригинальному квиту",
"goToTheUsersRemoteProfile": "Перейти к удалённому профилю пользователя", "goToTheUsersRemoteProfile": "Перейти к удалённому профилю пользователя",
"clickToDrag":"Нажмите для перетаскивания", "clickToDrag":"Нажмите для перетаскивания",
"keyboardShortcuts":"Горячие клавиши", "keyboardShortcuts":"Горячие клавиши",
@ -128,7 +128,7 @@
"tooltipBookmarkStream":"Добавить эту ленту в закладки", "tooltipBookmarkStream":"Добавить эту ленту в закладки",
"tooltipTopMenu":"Меню и настройки", "tooltipTopMenu":"Меню и настройки",
"tooltipAttachImage":"Прикрепить изображение", "tooltipAttachImage":"Прикрепить изображение",
"tooltipShortenUrls":"Сократить все URL в твите", "tooltipShortenUrls":"Сократить все URL в квите",
"tooltipReloadStream":"Обновить ленту", "tooltipReloadStream":"Обновить ленту",
"tooltipRemoveBookmark":"Удалить закладку", "tooltipRemoveBookmark":"Удалить закладку",
"clearHistory":"Удалить историю посещений", "clearHistory":"Удалить историю посещений",
@ -137,14 +137,14 @@
"ERRORcouldNotFindUserWithNickname":"Не удалось найти пользователя с ником \"{nickname}\" на этом сервере", "ERRORcouldNotFindUserWithNickname":"Не удалось найти пользователя с ником \"{nickname}\" на этом сервере",
"ERRORcouldNotFindGroupWithNickname":"Не удалось найти группу с ником \"{nickname}\" на этом сервере", "ERRORcouldNotFindGroupWithNickname":"Не удалось найти группу с ником \"{nickname}\" на этом сервере",
"ERRORcouldNotFindPage":"Не удалось найти страницу.", "ERRORcouldNotFindPage":"Не удалось найти страницу.",
"ERRORnoticeRemoved": "Этот твит был удалён.", "ERRORnoticeRemoved": "Этот квит был удалён.",
"ERRORnoContactWithServer": "Не удается установить соединение с сервером. Сервер перегружен или проблема с доступом в Интернет. Пожалуйста, повторите попытку позже!", "ERRORnoContactWithServer": "Не удается установить соединение с сервером. Сервер перегружен или проблема с доступом в Интернет. Пожалуйста, повторите попытку позже!",
"ERRORattachmentUploadFailed": "Загрузка не удалась. Неподдерживаемый формат или слишком большой размер", "ERRORattachmentUploadFailed": "Загрузка не удалась. Неподдерживаемый формат или слишком большой размер",
"hideRepliesToPeopleIDoNotFollow":"Скрыть ответы для людей, которых я не читаю", "hideRepliesToPeopleIDoNotFollow":"Скрыть ответы для людей, которых я не читаю",
"markAllNotificationsAsSeen":"Отметить уведомления как прочитанные", "markAllNotificationsAsSeen":"Отметить уведомления как прочитанные",
"notifyRepliesAndMentions":"Упоминания и ответы", "notifyRepliesAndMentions":"Упоминания и ответы",
"notifyFavs":"Избранные", "notifyFavs":"Избранные",
"notifyRepeats":"Ретвиты", "notifyRepeats":"Реквиты",
"notifyFollows":"Новые читатели", "notifyFollows":"Новые читатели",
"timelineOptions":"Опции ленты", "timelineOptions":"Опции ленты",
"ERRORfailedSavingYourSetting":"Не удалось сохранить ваши настройки", "ERRORfailedSavingYourSetting":"Не удалось сохранить ваши настройки",
@ -162,37 +162,38 @@
"onlyPartlyTranslated":"{site-title} только частично переведён на <em>{language-name}</em> ({percent}%). Вы можете помочь завершить перевод на <a href=\"https://git.gnu.io/h2p/Qvitter/tree/master/locale\">на домашней странице репозитория Qvitter</a>", "onlyPartlyTranslated":"{site-title} только частично переведён на <em>{language-name}</em> ({percent}%). Вы можете помочь завершить перевод на <a href=\"https://git.gnu.io/h2p/Qvitter/tree/master/locale\">на домашней странице репозитория Qvitter</a>",
"startRant":"Начать декламацию", "startRant":"Начать декламацию",
"continueRant":"Продолжить декламацию", "continueRant":"Продолжить декламацию",
"userBlocks":"Accounts you're blocking", "userBlocks":"Учётные записи, которые вы блокируете",
"buttonBlocked":"Blocked", "buttonBlocked":"Заблокирован",
"buttonUnblock":"Unblock", "buttonUnblock":"Разблокировать",
"failedBlockingUser":"Failed to block the user.", "failedBlockingUser":"Ошибка при блокировке пользователя.",
"failedUnblockingUser":"Failed to unblock the user.", "failedUnblockingUser":"Ошибка при разблокировке пользователя.",
"unblockUser": "Unblock {username}", "unblockUser": "Разблокировать {username}",
"tooltipBlocksYou":"You are blocked from following {username}.", "tooltipBlocksYou":"Вы заблокированы пользователем {username}.",
"silenced":"Silenced", "silenced":"Забаненные",
"silencedPlural":"Silenced profiles", "silencedPlural":"Забаненные профили",
"silencedUsersOnThisInstance":"Silenced profiles on {site-title}", "silencedUsersOnThisInstance":"Профили, забаненные на {site-title}",
"sandboxed":"Sandboxed", "sandboxed":"В \"песочнице\"",
"sandboxedPlural":"Sandboxed profiles", "sandboxedPlural":"Профили в \"песочнице\"",
"sandboxedUsersOnThisInstance":"Sandboxed profiles on {site-title}", "sandboxedUsersOnThisInstance":"Профили в \"песочнице\" на {site-title}",
"silencedStreamDescription":"Silenced users can't login or post quips and the quips they've already posted are hidden. For local users it's like a delete that can be reversed, for remote users it's like a site wide block.", "silencedStreamDescription":"Забаненные пользователи не могут аутентифицироваться или публиковать квиты, а уже опубликованные ими квиты скрыты. Для локальных пользователей это похоже на удаление, которое можно отменить, а для удалённых — на запрет на весь сайт.",
"sandboxedStreamDescription":"Quips from sandboxed users are excluded from the Public Timeline and The Whole Known Network. Apart from that, they can use the site like any other user.", "sandboxedStreamDescription":"Квиты пользователей в \"песочнице\" исключаются из Публичной Ленты и Всей известной сети. В остальном такие пользователи могут пользоваться сайтом так же, как остальные.",
"onlyShowNotificationsFromUsersIFollow":"Only show notifications from users I follow", "onlyShowNotificationsFromUsersIFollow":"Показывать уведомления от только читаемых мной пользователей",
"userOptions":"More user actions", "userOptions":"Пользовательские опции",
"silenceThisUser":"Silence {nickname}", "silenceThisUser":"Silence {nickname}",
"sandboxThisUser":"Sandbox {nickname}", "sandboxThisUser":"Поместить {nickname} в \"песочницу\"",
"unSilenceThisUser":"Unsilence {nickname}", "unSilenceThisUser":"Разбанить {nickname}",
"unSandboxThisUser":"Unsandbox {nickname}", "unSandboxThisUser":"Удалить {nickname} из \"песочницы\"",
"ERRORfailedSandboxingUser":"Failed sandboxing/unsandboxing the user", "ERRORfailedSandboxingUser":"Ошибка при помещении пользователя в \"песочницу\" или удалении из неё",
"ERRORfailedSilencingUser":"Failed silencing/unsilencing the user", "ERRORfailedSilencingUser":"Ошибка при бане/разбане пользователя.",
"muteUser":"Mute", "muteUser":"Игнорировать",
"unmuteUser":"Unmute", "unmuteUser":"Прекратить игнорировать",
"hideNotificationsFromMutedUsers":"Hide notifications from muted users", "hideNotificationsFromMutedUsers":"Скрыть уведомления от игнорируемых пользователей",
"thisIsANoticeFromAMutedUser":"You have muted the author of this quip. Click here to show it anyway.", "thisIsANoticeFromAMutedUser":"Вы игнорируете автора квита. Нажмите здесь, чтобы показать квит.",
"userMutes":"Accounts you're muting", "userMutes":"Игнорируемые вами учётные записи",
"userBlocked":"Blocked accounts", "userBlocked":"Заблокированные вами учётные записи",
"userMuted":"Muted accounts", "userMuted":"Игнорируемые учётные записи",
"mutedStreamDescription":"You've hidden these accounts from your timeline. You will still recieve notifications from these accounts, unless you select &quot;Hide notifications from muted users&quot; from the cog wheel menu on the notifications page.", "mutedStreamDescription":"Вы скрыли этих пользователей из вашей ленты. Вы будете продолжать получать уведомления от этих пользователей, если не выберете &quot;Скрыть уведомления от игнорируемых пользователей&quot; в меню с шестерёнкой на странице уведомлений",
"profileAndSettings":"Profile and settings", "profileAndSettings":"Профиль и настройки",
"profileSettings":"Profile settings" "profileSettings":"Настройки профиля",
"thisIsABookmark":"This is a bookmark created in the Classic interface"
} }

View File

@ -123,7 +123,7 @@
"goToTheUsersRemoteProfile": "Shkoni te profili i largët i përdoruesit", "goToTheUsersRemoteProfile": "Shkoni te profili i largët i përdoruesit",
"clickToDrag":"Klikojeni që ta tërhiqni", "clickToDrag":"Klikojeni që ta tërhiqni",
"keyboardShortcuts":"Shkurtore tastiere", "keyboardShortcuts":"Shkurtore tastiere",
"classicInterface":"Klasik {site-title}", "classicInterface":"{site-title} klasik",
"accessibilityToggleLink":"Për përdorshmëri më të mirë, klikoni mbi këtë lidhje që të kaloni te ndërfaqja klasike", "accessibilityToggleLink":"Për përdorshmëri më të mirë, klikoni mbi këtë lidhje që të kaloni te ndërfaqja klasike",
"tooltipBookmarkStream":"Shtojeni këtë rrjedhë te faqerojtësit tuaj", "tooltipBookmarkStream":"Shtojeni këtë rrjedhë te faqerojtësit tuaj",
"tooltipTopMenu":"Menu dhe rregullime", "tooltipTopMenu":"Menu dhe rregullime",
@ -164,37 +164,38 @@
"continueRant":"Vazhdojeni dërdëllitjen", "continueRant":"Vazhdojeni dërdëllitjen",
"hideEmbeddedInTimeline":"Fshih lëndë të trupëzuar në këtë rrjedhë kohore", "hideEmbeddedInTimeline":"Fshih lëndë të trupëzuar në këtë rrjedhë kohore",
"hideQuotesInTimeline":"Fshih citime në këtë rrjedhë kohore", "hideQuotesInTimeline":"Fshih citime në këtë rrjedhë kohore",
"userBlocks":"Accounts you're blocking", "userBlocks":"Llogari që i bllokoni",
"buttonBlocked":"Blocked", "buttonBlocked":"Bllokuar",
"buttonUnblock":"Unblock", "buttonUnblock":"Zhbllokuar",
"failedBlockingUser":"Failed to block the user.", "failedBlockingUser":"Dështoi në bllokimin e këtij përdoruesi.",
"failedUnblockingUser":"Failed to unblock the user.", "failedUnblockingUser":"Dështoi në zhbllokimin e këtij përdoruesi.",
"unblockUser": "Unblock {username}", "unblockUser": "Zhbllokojeni {username}",
"tooltipBlocksYou":"You are blocked from following {username}.", "tooltipBlocksYou":"Jeni bllokuar nga {username}.",
"silenced":"Silenced", "silenced":"Heshtuar",
"silencedPlural":"Silenced profiles", "silencedPlural":"Profile të heshtuar",
"silencedUsersOnThisInstance":"Silenced profiles on {site-title}", "silencedUsersOnThisInstance":"Profile të heshtuar në {site-title}",
"sandboxed":"Sandboxed", "sandboxed":"Në bankëprovë",
"sandboxedPlural":"Sandboxed profiles", "sandboxedPlural":"Profile në bankëprovë",
"sandboxedUsersOnThisInstance":"Sandboxed profiles on {site-title}", "sandboxedUsersOnThisInstance":"Profile në bankëprovë te {site-title}",
"silencedStreamDescription":"Silenced users can't login or post quips and the quips they've already posted are hidden. For local users it's like a delete that can be reversed, for remote users it's like a site wide block.", "silencedStreamDescription":"Përdoruesit e heshtuar smund të bëjnë hyrje apo të postojnë hoka dhe, hokat që kanë postuar tashmë, fshihen. Për përdoruesit vendorë kjo është si një fshirje që mund të zmbrapset, për përdorues të largët është si të jenë bllokuar për krejt sajtin.",
"sandboxedStreamDescription":"Quips from sandboxed users are excluded from the Public Timeline and The Whole Known Network. Apart from that, they can use the site like any other user.", "sandboxedStreamDescription":"Hokat prej përdoruesish në bankëprovë janë të përjashtuara nga Rrjedha kohore Publike dhe Krejt Rrjeti i Njohur. Veçmas kësaj, ata mund të përdorin sajtin njësoj si cilido përdorues tjetër.",
"onlyShowNotificationsFromUsersIFollow":"Only show notifications from users I follow", "onlyShowNotificationsFromUsersIFollow":"Shfaq njoftime vetëm prej përdoruesish që ndjek",
"userOptions":"More user actions", "userOptions":"Më tepër veprime përdoruesi",
"silenceThisUser":"Silence {nickname}", "silenceThisUser":"Heshtojeni {nickname}",
"sandboxThisUser":"Sandbox {nickname}", "sandboxThisUser":"Vëreni {nickname} në bankëprovë",
"unSilenceThisUser":"Unsilence {nickname}", "unSilenceThisUser":"Çheshtojeni {nickname}",
"unSandboxThisUser":"Unsandbox {nickname}", "unSandboxThisUser":"Hiqeni {nickname} nga bankëprova",
"ERRORfailedSandboxingUser":"Failed sandboxing/unsandboxing the user", "ERRORfailedSandboxingUser":"Dështoi vënia/heqja e përdoruesit në bankëprovë",
"ERRORfailedSilencingUser":"Failed silencing/unsilencing the user", "ERRORfailedSilencingUser":"Dështoi heshtimi/çheshtimi i përdoruesit",
"muteUser":"Mute", "muteUser":"Hiqi zërin",
"unmuteUser":"Unmute", "unmuteUser":"Riktheji zërin",
"hideNotificationsFromMutedUsers":"Hide notifications from muted users", "hideNotificationsFromMutedUsers":"Fshihi njoftimet nga përdorues me zë të hequr",
"thisIsANoticeFromAMutedUser":"You have muted the author of this quip. Click here to show it anyway.", "thisIsANoticeFromAMutedUser":"I keni hequr zërin autorit të kësaj hoke. Klikoni këtu që të shfaqet, sido qoftë.",
"userMutes":"Accounts you're muting", "userMutes":"Llogari të cilave u hiqni zërin",
"userBlocked":"Blocked accounts", "userBlocked":"Llogari të bllokuara",
"userMuted":"Muted accounts", "userMuted":"Llogari pa zë",
"mutedStreamDescription":"You've hidden these accounts from your timeline. You will still recieve notifications from these accounts, unless you select &quot;Hide notifications from muted users&quot; from the cog wheel menu on the notifications page.", "mutedStreamDescription":"Këto llogari i keni fshehur prej rrjedhës suaj kohore. Do të merrni, prapëseprapë, njoftime nga këto llogari, veç në përzgjedhshi &quot;Fshihi njoftimet prej përdorues me zë të hequr&quot;, te menuja me ikonën e ingranazhit te faqja e njoftimeve.",
"profileAndSettings":"Profile and settings", "profileAndSettings":"Profil dhe rregullime",
"profileSettings":"Profile settings" "profileSettings":"Rregullime profili",
"thisIsABookmark":"This is a bookmark created in the Classic interface"
} }

View File

@ -196,5 +196,6 @@
"userMuted":"Ignorerade konton", "userMuted":"Ignorerade konton",
"mutedStreamDescription":"Du har dolt dessa användare från dina flöden. Du kommer fortfarande få notiser från dem, om du inte väljer &quot;Dölj notiser från användare som du ignorerar&quot; från kugghjulsmenyn på notissidan.", "mutedStreamDescription":"Du har dolt dessa användare från dina flöden. Du kommer fortfarande få notiser från dem, om du inte väljer &quot;Dölj notiser från användare som du ignorerar&quot; från kugghjulsmenyn på notissidan.",
"profileAndSettings":"Profil och inställningar", "profileAndSettings":"Profil och inställningar",
"profileSettings":"Profilinställningar" "profileSettings":"Profilinställningar",
"thisIsABookmark":"Detta är ett bokmärke som skapats i GNU socials standardgränssnitt"
} }

View File

@ -105,7 +105,7 @@
"registerLocation": "Konum", "registerLocation": "Konum",
"registerRepeatPassword": "Şifreni tekrar gir", "registerRepeatPassword": "Şifreni tekrar gir",
"moreSettings": "Diğer ayarlar", "moreSettings": "Diğer ayarlar",
"otherServers": "Alternatively you can create an account on another server of the GNU social network. <a href=\"http://federation.skilledtests.com/select_your_server.html\">Comparison</a>", "otherServers": "Alternatif olarak GNU sosyal networkünde başka bir sunucu da hesap oluşturabilirsiniz. <a href=\"http://federation.skilledtests.com/select_your_server.html\">Karşılaştırın</a>",
"editMyProfile": "Profili düzenle", "editMyProfile": "Profili düzenle",
"notifications": "Bildirimler", "notifications": "Bildirimler",
"xFavedYourQueet": "Queet'ini favorilerine ekledi", "xFavedYourQueet": "Queet'ini favorilerine ekledi",
@ -159,7 +159,7 @@
"ERRORcouldNotFindList":"Böyle bir liste yok.", "ERRORcouldNotFindList":"Böyle bir liste yok.",
"emailAlreadyInUse":"Kullanımda", "emailAlreadyInUse":"Kullanımda",
"addEditLanguageLink":"{site-title} çevirisine yardım et", "addEditLanguageLink":"{site-title} çevirisine yardım et",
"onlyPartlyTranslated":"{site-title} is only partly translated to <em>{language-name}</em> ({percent}%). You can help complete the translation at <a href=\"https://git.gnu.io/h2p/Qvitter/tree/master/locale\">Qvitter's repository homepage</a>", "onlyPartlyTranslated":"{site-title} bir kısmı ({percent}%) <em>{language-name}</em> diline tercüme edildi. <a href=\"https://git.gnu.io/h2p/Qvitter/tree/master/locale\">Qvitter'in depo anasayfasından</a> tercümenin tamamlanmasına yardımcı olabilirsiniz",
"startRant":"Konuşmaya başla", "startRant":"Konuşmaya başla",
"continueRant":"Konuşmaya devam et", "continueRant":"Konuşmaya devam et",
"hideEmbeddedInTimeline":"Bu akışta gömülü içeriği gizle", "hideEmbeddedInTimeline":"Bu akışta gömülü içeriği gizle",
@ -170,9 +170,9 @@
"failedBlockingUser":"Kullanıcı engellenemedi.", "failedBlockingUser":"Kullanıcı engellenemedi.",
"failedUnblockingUser":"Kullanıcının engeli kaldırılamadı.", "failedUnblockingUser":"Kullanıcının engeli kaldırılamadı.",
"unblockUser": "{username} engelini kaldır", "unblockUser": "{username} engelini kaldır",
"tooltipBlocksYou":"You are blocked from following {username}.", "tooltipBlocksYou":"{username} kullanıcısını engellediniz.",
"silenced":"Silenced", "silenced":"Susturuldu",
"silencedPlural":"Silenced profiles", "silencedPlural":"Susturulan profiller",
"silencedUsersOnThisInstance":"Silenced profiles on {site-title}", "silencedUsersOnThisInstance":"Silenced profiles on {site-title}",
"sandboxed":"Sandboxed", "sandboxed":"Sandboxed",
"sandboxedPlural":"Sandboxed profiles", "sandboxedPlural":"Sandboxed profiles",
@ -196,5 +196,6 @@
"userMuted":"Muted accounts", "userMuted":"Muted accounts",
"mutedStreamDescription":"You've hidden these accounts from your timeline. You will still recieve notifications from these accounts, unless you select &quot;Hide notifications from muted users&quot; from the cog wheel menu on the notifications page.", "mutedStreamDescription":"You've hidden these accounts from your timeline. You will still recieve notifications from these accounts, unless you select &quot;Hide notifications from muted users&quot; from the cog wheel menu on the notifications page.",
"profileAndSettings":"Profile and settings", "profileAndSettings":"Profile and settings",
"profileSettings":"Profile settings" "profileSettings":"Profile settings",
"thisIsABookmark":"This is a bookmark created in the Classic interface"
} }

201
locale/uk.json Normal file
View File

@ -0,0 +1,201 @@
{
"directionality":"ltr",
"languageName": "Українська",
"loginUsername": "Им’я або e-mail",
"loginPassword": "Пароль",
"loginSignIn": "Вхід",
"loginRememberMe": "Пам’ятати мене",
"loginForgotPassword": "Забули пароль?",
"notices": "Повідомлення",
"followers": "Спостерігачі",
"following": "За чім спостерігаемо",
"groups": "Групи",
"compose": "Про що повідомляємо?",
"queetVerb": "Відправити",
"queetsNounPlural": "Повідомлення",
"logout": "Вихід",
"languageSelected": "Мова:",
"viewMyProfilePage": "Переглянути сторінку моєго профіля",
"expand": "Разгорнути",
"collapse": "Приховати",
"details": "Подробиці",
"expandFullConversation": "Разгорнути розмову",
"replyVerb": "Відповісти",
"requeetVerb": "Відповісти",
"favoriteVerb": "Улюблений",
"requeetedVerb": "Відповів",
"favoritedVerb": "У улюблене",
"replyTo": "Відповісти на",
"requeetedBy": "Повідомлення на {requeeted-by}",
"favoriteNoun": "Улюблений",
"favoritesNoun": "Улюблене",
"requeetNoun": "Повідомлення у відповідь",
"requeetsNoun": "Повідомлення у відповідь",
"newQueet": "{new-notice-count} нове повідомлення",
"newQueets": "{new-notice-count} нові повідомлення",
"longmonthsJanuary": "Січень",
"longmonthsFebruary": "Лютий",
"longmonthsMars": "Березень",
"longmonthsApril": "Квітень",
"longmonthsMay": "Травень",
"longmonthsJune": "Червень",
"longmonthsJuly": "Липень",
"longmonthsAugust": "Серпень",
"longmonthsSeptember": "Вересень",
"longmonthsOctober": "Жовтень",
"longmonthsNovember": "Лістопад",
"longmonthsDecember": "Грудень",
"shortmonthsJanuary": "січ",
"shortmonthsFebruary": "лют",
"shortmonthsMars": "бер",
"shortmonthsApril": "кві",
"shortmonthsMay": "тра",
"shortmonthsJune": "чер",
"shortmonthsJuly": "лип",
"shortmonthsAugust": "сер",
"shortmonthsSeptember": "вер",
"shortmonthsOctober": "жов",
"shortmonthsNovember": "ліс",
"shortmonthsDecember": "гру",
"time12am": "{time} AM",
"time12pm": "{time} PM",
"longDateFormat": "{time12} - {day} {month} {year}",
"shortDateFormatSeconds": "{seconds}с",
"shortDateFormatMinutes": "{minutes}хвил",
"shortDateFormatHours": "{hours}год",
"shortDateFormatDate": "{day} {month}",
"shortDateFormatDateAndY": "{day} {month} {year}",
"now": "зараз",
"posting": "повідомляти",
"viewMoreInConvBefore": "← Переглянути більше в розмове",
"viewMoreInConvAfter": "Переглянути більше в розмове →",
"mentions": "Згадування",
"timeline": "Стрічка",
"publicTimeline": "Публічна стрічка",
"publicAndExtTimeline": "Вся Відома Мережа",
"searchVerb": "Пошук",
"deleteVerb": "Видалити",
"cancelVerb": "Скасувати",
"deleteConfirmation": "Ви упевнени, шо бажаете видалити це повідомлення?",
"userExternalFollow": "Дістанційно спостерігати",
"userExternalFollowHelp": "Ваш обліковий запис (наприклад user@rainbowdash.net).",
"userFollow": "Спостерігати",
"userFollowing": "За чім спостерігаю",
"userUnfollow": "Скасування",
"joinGroup": "Приєднатися",
"joinExternalGroup": "Приєднатися дистанційно",
"isMemberOfGroup": "Учасник",
"leaveGroup": "Покинути групу",
"memberCount": "Учасникі",
"adminCount": "Адміністратори",
"settings": "Налаштування",
"saveChanges": "Зберегти зміни",
"linkColor": "Колір посилання",
"backgroundColor": "Колір тла",
"newToQuitter": "Нове на {site-title}?",
"signUp": "Реєстрація",
"signUpFullName": "Повне им’я",
"signUpEmail": "E-mail",
"signUpButtonText": "Реєстрація на {site-title}",
"welcomeHeading": "Ласкаво просимо в {site-title}.",
"welcomeText": "Ми є <span id=\"federated-tooltip\"><div id=\"what-is-federation\">\"Федерацією\" и це означає що Вам не потрібно створювати обліковий запис на {site-title} для того шоб спостерігати, бути под спостереженнем або взаємодіяти с користувачамі {site-title}. Ви можіте зареєструватися на будь-яким StatusNet або GNU social server або іншім сервере, котрий базуется на протоколі <a href=\"http://www.w3.org/community/ostatus/wiki/Main_Page\">Ostatus</a>! Також ви маєте змогу зовсім не приєднуватися к сервісу спробуйти встановити це файне ПЗ <a href=\"http://www.gnu.org/software/social/\">GNU social</a> на своєму сервері! :)</div>Федерація</span> мікроблогеров, котри піклуются об соціальний справедливісті та солідарності и хочут звільнитися від централізованних капіталістичних послуг.",
"registerNickname": "Прізвисько",
"registerHomepage": "Домашня сторінка",
"registerBio": "Про себе",
"registerLocation": "Місцезнаходження",
"registerRepeatPassword": "Повторити пароль",
"moreSettings": "Більше налаштуваннь",
"otherServers": "Також ви можете створити обліковий запис на іншому сервере мережи GNU social. <a href=\"http://federation.skilledtests.com/select_your_server.html\">Порівняння</a>",
"editMyProfile": "Редагувати профіль",
"notifications": "Оголошення",
"xFavedYourQueet": "улюблене Ваше повідомлення",
"xRepeatedYourQueet": "Вам відповіли",
"xStartedFollowingYou": "спостерігают за Вами зараз",
"followsYou": "спостерігают за Вами",
"FAQ": "ЧАП",
"inviteAFriend": "Запросі друз’ів!",
"goToExternalProfile": "Перейти до повного профіля",
"cropAndSave": "Відрізати та зберегти",
"showTerms": "Читати наші Умови користування",
"ellipsisMore": "Більше",
"blockUser": "Заблокувати {username}",
"goToOriginalNotice": "Перейти до початкового повідомлення",
"goToTheUsersRemoteProfile": "Перейти до дістанційного профіля корістувача",
"clickToDrag":"Клацніть для перетягнення",
"keyboardShortcuts":"Клавіатурні скорочення",
"classicInterface":"Класичний {site-title}",
"accessibilityToggleLink":"Для кращей сприйнятливості клацніть це посилання шоб переключитись на класичний інтерфейс",
"tooltipBookmarkStream":"Додати цей потік до ваших закладок",
"tooltipTopMenu":"Меню та налаштування",
"tooltipAttachImage":"Приєднати зображення",
"tooltipShortenUrls":"Скоротити усі URL у повідомленні",
"tooltipReloadStream":"Оновіти цей потік",
"tooltipRemoveBookmark":"Видалити цю закладку",
"clearHistory":"Очистити історію перегляда",
"ERRORsomethingWentWrong":"Щось пішло не так.",
"ERRORmustBeLoggedIn":"Ви повинни бути зареєстрованним для перегляду цього потіка.",
"ERRORcouldNotFindUserWithNickname":"Не можу знайти користувача з таким прізвиськом \"{nickname}\" на цьому сервері",
"ERRORcouldNotFindGroupWithNickname":"Не можу знайти групу з цією назвой \"{nickname}\" на цьому сервері",
"ERRORcouldNotFindPage":"Не можу знайти цю сторінку.",
"ERRORnoticeRemoved": "Це повідомлення буде вилучіне.",
"ERRORnoContactWithServer": "Не можу з’еднатися з сервером. Сервер мабуть перевантажен або ви маете проблеми зі з’еднанням до Інтернета. Будь ласка, спробуйти пізніше!",
"ERRORattachmentUploadFailed": "Невдача при завантаженні. Формат мабуть не підтримуются або розмір дуже великий.",
"hideRepliesToPeopleIDoNotFollow":"Сховати відповіді людей за котрими я не слідкую",
"markAllNotificationsAsSeen":"Відмітити все оголошення як прочитані",
"notifyRepliesAndMentions":"Згадування та відповіді",
"notifyFavs":"Улюблені",
"notifyRepeats":"Повідомлення у відповідь",
"notifyFollows":"Нові спостерегачі",
"timelineOptions":"Параметри стрічки",
"ERRORfailedSavingYourSetting":"Невдача у збережженні Ваших налаштувань",
"ERRORfailedMarkingAllNotificationsAsRead":"Невдача при відміткі всіх оголошень як прочитаних.",
"newNotification": "{new-notice-count} нове оголошення",
"newNotifications": "{new-notice-count} нові оголошення",
"thisIsANoticeFromABlockedUser":"Увага: Це повідомлення від заблокованого користувача. Клацніть щоб побачити його.",
"nicknamesListWithListName":"Список {nickname}: {list-name}",
"myListWithListName":"Мій список: {list-name}",
"listMembers":"Учасникі",
"listSubscribers":"Передплатникі",
"ERRORcouldNotFindList":"Нажаль, нема такого списка.",
"emailAlreadyInUse":"Вже використовувается",
"addEditLanguageLink":"Допоможіть перекласти {site-title} на іншу мову",
"onlyPartlyTranslated":"{site-title} тількі частково перекладен на <em>{language-name}</em> ({percent}%). Ви можете допомогти у перекладі на <a href=\"https://git.gnu.io/h2p/Qvitter/tree/master/locale\">Qvitter's repository homepage</a>",
"startRant":"Почати декламацію",
"continueRant":"Продовжити декламацію",
"hideEmbeddedInTimeline":"Сховати вставлений зміст на цей стрічці",
"hideQuotesInTimeline":"Сховати цитати на цей стрічці",
"userBlocks":"Облікови записи котри Ви заблокували",
"buttonBlocked":"Заблокувати",
"buttonUnblock":"Разблокувати",
"failedBlockingUser":"Невдача при блокуванні користувача.",
"failedUnblockingUser":"Невдача при разблокуванні користувача.",
"unblockUser": "Разблокувати {username}",
"tooltipBlocksYou":"Ви заблоковани користувачем {username}.",
"silenced":"Заборонені",
"silencedPlural":"Профілі заборонених",
"silencedUsersOnThisInstance":"Профілі заборонених на {site-title}",
"sandboxed":"У \"пісочниці\"",
"sandboxedPlural":"Профілі у \"пісочниці\"",
"sandboxedUsersOnThisInstance":"Профілі у \"пісочниці\" на {site-title}",
"silencedStreamDescription":"Заборонені користувачі не можуть увійти або розмістити повідомлення, іх вже розміщенні повідомлення будут заховани. Для місцевих користувачей це будє подібно видалинню з подальшою відміной, а для дістанційних - на блокування всього сайта.",
"sandboxedStreamDescription":"Повідомлення від користувача, котрий у \"пісочниці\", будут виключіни з Публічной стрічці та Всій Відомой Мережи. У всьому іншому ці користувачі можут користуватися сайтом як і усі.",
"onlyShowNotificationsFromUsersIFollow":"Показувати оголошення тількі тіх користувачей, за котрими я спостерегаю",
"userOptions":"Більше дій для користувача",
"silenceThisUser":"Заборонити {nickname}",
"sandboxThisUser":"У \"пісочницю\" {nickname}",
"unSilenceThisUser":"Дозволити {nickname}",
"unSandboxThisUser":"Видалити з \"пісочниці\" {nickname}",
"ERRORfailedSandboxingUser":"Невдача при розміщенні у \"пісочниці\" або вилученні з неї користувача",
"ERRORfailedSilencingUser":"Невдача при забороні або дозволи користувача",
"muteUser":"Ігнорувати",
"unmuteUser":"Зняти ігнорування",
"hideNotificationsFromMutedUsers":"Сховати оголошення від корістувачей котрих я ігнорую",
"thisIsANoticeFromAMutedUser":"Ви ігноруюти автора цього повідомлення. Клацніть щоб побачити його.",
"userMutes":"Облікови записи котри ви ігноруюти",
"userBlocked":"Заблоковани облікови записи",
"userMuted":"Облікови записи котри Ви ігноруюти зараз",
"mutedStreamDescription":"Ви сховали ці облікови записи з вашей стрічкі. Ви будете одержувати оголошення від цих облікових записів, доки Ви не виберіте &quot;Сховати оголошення від корістувачей котрих я ігнорую&quot; в меню з шестернею на сторінкі оголошень.",
"profileAndSettings":"Профіль та налаштування",
"profileSettings":"Налаштування профіля",
"thisIsABookmark":"This is a bookmark created in the Classic interface"
}

View File

@ -195,5 +195,6 @@
"userMuted":"Muted accounts", "userMuted":"Muted accounts",
"mutedStreamDescription":"You've hidden these accounts from your timeline. You will still recieve notifications from these accounts, unless you select &quot;Hide notifications from muted users&quot; from the cog wheel menu on the notifications page.", "mutedStreamDescription":"You've hidden these accounts from your timeline. You will still recieve notifications from these accounts, unless you select &quot;Hide notifications from muted users&quot; from the cog wheel menu on the notifications page.",
"profileAndSettings":"Profile and settings", "profileAndSettings":"Profile and settings",
"profileSettings":"Profile settings" "profileSettings":"Profile settings",
"thisIsABookmark":"This is a bookmark created in the Classic interface"
} }

View File

@ -195,5 +195,6 @@
"userMuted":"Muted accounts", "userMuted":"Muted accounts",
"mutedStreamDescription":"You've hidden these accounts from your timeline. You will still recieve notifications from these accounts, unless you select &quot;Hide notifications from muted users&quot; from the cog wheel menu on the notifications page.", "mutedStreamDescription":"You've hidden these accounts from your timeline. You will still recieve notifications from these accounts, unless you select &quot;Hide notifications from muted users&quot; from the cog wheel menu on the notifications page.",
"profileAndSettings":"Profile and settings", "profileAndSettings":"Profile and settings",
"profileSettings":"Profile settings" "profileSettings":"Profile settings",
"thisIsABookmark":"This is a bookmark created in the Classic interface"
} }