Merge branch 'master' into glitch-soc/merge-upstream
This commit is contained in:
		
						commit
						fd5da4033e
					
				
					 10 changed files with 56 additions and 31 deletions
				
			
		| 
						 | 
					@ -52,9 +52,7 @@ Bug reports and feature suggestions can be submitted to [GitHub Issues](https://
 | 
				
			||||||
 | 
					
 | 
				
			||||||
## Translations
 | 
					## Translations
 | 
				
			||||||
 | 
					
 | 
				
			||||||
You can submit translations via [Weblate](https://weblate.joinmastodon.org/). They are periodically merged into the codebase.
 | 
					You can submit translations via pull request.
 | 
				
			||||||
 | 
					 | 
				
			||||||
[](https://weblate.joinmastodon.org/)
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
## Pull requests
 | 
					## Pull requests
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -28,6 +28,7 @@ class Poll extends ImmutablePureComponent {
 | 
				
			||||||
    intl: PropTypes.object.isRequired,
 | 
					    intl: PropTypes.object.isRequired,
 | 
				
			||||||
    dispatch: PropTypes.func,
 | 
					    dispatch: PropTypes.func,
 | 
				
			||||||
    disabled: PropTypes.bool,
 | 
					    disabled: PropTypes.bool,
 | 
				
			||||||
 | 
					    visible: PropTypes.bool,
 | 
				
			||||||
  };
 | 
					  };
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  state = {
 | 
					  state = {
 | 
				
			||||||
| 
						 | 
					@ -69,13 +70,14 @@ class Poll extends ImmutablePureComponent {
 | 
				
			||||||
  };
 | 
					  };
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  renderOption (option, optionIndex) {
 | 
					  renderOption (option, optionIndex) {
 | 
				
			||||||
    const { poll, disabled } = this.props;
 | 
					    const { poll, disabled, visible } = this.props;
 | 
				
			||||||
    const percent     = poll.get('votes_count') === 0 ? 0 : (option.get('votes_count') / poll.get('votes_count')) * 100;
 | 
					    const percent     = poll.get('votes_count') === 0 ? 0 : (option.get('votes_count') / poll.get('votes_count')) * 100;
 | 
				
			||||||
    const leading     = poll.get('options').filterNot(other => other.get('title') === option.get('title')).every(other => option.get('votes_count') > other.get('votes_count'));
 | 
					    const leading     = poll.get('options').filterNot(other => other.get('title') === option.get('title')).every(other => option.get('votes_count') > other.get('votes_count'));
 | 
				
			||||||
    const active      = !!this.state.selected[`${optionIndex}`];
 | 
					    const active      = !!this.state.selected[`${optionIndex}`];
 | 
				
			||||||
    const showResults = poll.get('voted') || poll.get('expired');
 | 
					    const showResults = poll.get('voted') || poll.get('expired');
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    let titleEmojified = option.get('title_emojified');
 | 
					    let titleEmojified = option.get('title_emojified');
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    if (!titleEmojified) {
 | 
					    if (!titleEmojified) {
 | 
				
			||||||
      const emojiMap = makeEmojiMap(poll);
 | 
					      const emojiMap = makeEmojiMap(poll);
 | 
				
			||||||
      titleEmojified = emojify(escapeTextContentForBrowser(option.get('title')), emojiMap);
 | 
					      titleEmojified = emojify(escapeTextContentForBrowser(option.get('title')), emojiMap);
 | 
				
			||||||
| 
						 | 
					@ -104,7 +106,7 @@ class Poll extends ImmutablePureComponent {
 | 
				
			||||||
          {!showResults && <span className={classNames('poll__input', { checkbox: poll.get('multiple'), active })} />}
 | 
					          {!showResults && <span className={classNames('poll__input', { checkbox: poll.get('multiple'), active })} />}
 | 
				
			||||||
          {showResults && <span className='poll__number'>{Math.round(percent)}%</span>}
 | 
					          {showResults && <span className='poll__number'>{Math.round(percent)}%</span>}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
          <span dangerouslySetInnerHTML={{ __html: titleEmojified }} />
 | 
					          {visible ? <span dangerouslySetInnerHTML={{ __html: titleEmojified }} /> : <span>{String.fromCharCode(64 + optionIndex + 1)}</span>}
 | 
				
			||||||
        </label>
 | 
					        </label>
 | 
				
			||||||
      </li>
 | 
					      </li>
 | 
				
			||||||
    );
 | 
					    );
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -272,7 +272,7 @@ class Status extends ImmutablePureComponent {
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    if (status.get('poll')) {
 | 
					    if (status.get('poll')) {
 | 
				
			||||||
      media = <PollContainer pollId={status.get('poll')} />;
 | 
					      media = <PollContainer pollId={status.get('poll')} visible={!status.get('hidden')} />;
 | 
				
			||||||
    } else if (status.get('media_attachments').size > 0) {
 | 
					    } else if (status.get('media_attachments').size > 0) {
 | 
				
			||||||
      if (this.props.muted) {
 | 
					      if (this.props.muted) {
 | 
				
			||||||
        media = (
 | 
					        media = (
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -106,7 +106,7 @@ export default class DetailedStatus extends ImmutablePureComponent {
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    if (status.get('poll')) {
 | 
					    if (status.get('poll')) {
 | 
				
			||||||
      media = <PollContainer pollId={status.get('poll')} />;
 | 
					      media = <PollContainer pollId={status.get('poll')} visible={!status.get('hidden')} />;
 | 
				
			||||||
    } else if (status.get('media_attachments').size > 0) {
 | 
					    } else if (status.get('media_attachments').size > 0) {
 | 
				
			||||||
      if (status.getIn(['media_attachments', 0, 'type']) === 'video') {
 | 
					      if (status.getIn(['media_attachments', 0, 'type']) === 'video') {
 | 
				
			||||||
        const video = status.getIn(['media_attachments', 0]);
 | 
					        const video = status.getIn(['media_attachments', 0]);
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -7,6 +7,8 @@
 | 
				
			||||||
      - unless media.file.meta.nil?
 | 
					      - unless media.file.meta.nil?
 | 
				
			||||||
        = opengraph 'og:image:width', media.file.meta.dig('original', 'width')
 | 
					        = opengraph 'og:image:width', media.file.meta.dig('original', 'width')
 | 
				
			||||||
        = opengraph 'og:image:height', media.file.meta.dig('original', 'height')
 | 
					        = opengraph 'og:image:height', media.file.meta.dig('original', 'height')
 | 
				
			||||||
 | 
					      - if media.description.present?
 | 
				
			||||||
 | 
					        = opengraph 'og:image:alt', media.description
 | 
				
			||||||
    - elsif media.video? || media.gifv?
 | 
					    - elsif media.video? || media.gifv?
 | 
				
			||||||
      - player_card = true
 | 
					      - player_card = true
 | 
				
			||||||
      = opengraph 'og:image', full_asset_url(media.file.url(:small))
 | 
					      = opengraph 'og:image', full_asset_url(media.file.url(:small))
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -298,8 +298,8 @@ cs:
 | 
				
			||||||
          one: Jeden účet v databázi byl ovlivněn
 | 
					          one: Jeden účet v databázi byl ovlivněn
 | 
				
			||||||
          other: "%{count} účtů v databázi bylo ovlivněno"
 | 
					          other: "%{count} účtů v databázi bylo ovlivněno"
 | 
				
			||||||
        retroactive:
 | 
					        retroactive:
 | 
				
			||||||
          silence: Odtišit všechny existující účty z této domény
 | 
					          silence: Odtišit existující ovlivněné účty z této domény
 | 
				
			||||||
          suspend: Zrušit pozastavení všech existujících účtů z této domény
 | 
					          suspend: Zrušit pozastavení existujících ovlivněných účtů z této domény
 | 
				
			||||||
        title: Zrušit blokaci domény %{domain}
 | 
					        title: Zrušit blokaci domény %{domain}
 | 
				
			||||||
        undo: Odvolat
 | 
					        undo: Odvolat
 | 
				
			||||||
      undo: Odvolat blokaci domény
 | 
					      undo: Odvolat blokaci domény
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -163,7 +163,7 @@ sk:
 | 
				
			||||||
      resubscribe: Znovu odoberaj
 | 
					      resubscribe: Znovu odoberaj
 | 
				
			||||||
      role: Oprávnenia
 | 
					      role: Oprávnenia
 | 
				
			||||||
      roles:
 | 
					      roles:
 | 
				
			||||||
        admin: Administrátor
 | 
					        admin: Správca
 | 
				
			||||||
        moderator: Moderátor
 | 
					        moderator: Moderátor
 | 
				
			||||||
        staff: Člen
 | 
					        staff: Člen
 | 
				
			||||||
        user: Užívateľ
 | 
					        user: Užívateľ
 | 
				
			||||||
| 
						 | 
					@ -174,7 +174,7 @@ sk:
 | 
				
			||||||
        created_reports: Vytvorené hlásenia
 | 
					        created_reports: Vytvorené hlásenia
 | 
				
			||||||
        targeted_reports: Nahlásenia od ostatných
 | 
					        targeted_reports: Nahlásenia od ostatných
 | 
				
			||||||
      silence: Stíš
 | 
					      silence: Stíš
 | 
				
			||||||
      silenced: Utíšený/é
 | 
					      silenced: Stíšený/é
 | 
				
			||||||
      statuses: Príspevky
 | 
					      statuses: Príspevky
 | 
				
			||||||
      subscribe: Odoberaj
 | 
					      subscribe: Odoberaj
 | 
				
			||||||
      suspended: Zablokovaní
 | 
					      suspended: Zablokovaní
 | 
				
			||||||
| 
						 | 
					@ -298,8 +298,8 @@ sk:
 | 
				
			||||||
          one: Jeden účet v databáze bol ovplyvnený
 | 
					          one: Jeden účet v databáze bol ovplyvnený
 | 
				
			||||||
          other: "%{count} účtov v databáze bolo ovplyvnených"
 | 
					          other: "%{count} účtov v databáze bolo ovplyvnených"
 | 
				
			||||||
        retroactive:
 | 
					        retroactive:
 | 
				
			||||||
          silence: Zruš stíšenie všetkých existujúcich účtov z tejto domény
 | 
					          silence: Zruš stíšenie všetkých momentálne utíšených účtov z tejto domény
 | 
				
			||||||
          suspend: Zruš suspendáciu všetkých existujúcich účtov z tejto domény
 | 
					          suspend: Zruš suspendáciu všetkých momentálne odročených účtov z tejto domény
 | 
				
			||||||
        title: Zruš blokovanie domény %{domain}
 | 
					        title: Zruš blokovanie domény %{domain}
 | 
				
			||||||
        undo: Vráť späť
 | 
					        undo: Vráť späť
 | 
				
			||||||
      undo: Odvolaj blokovanie domény
 | 
					      undo: Odvolaj blokovanie domény
 | 
				
			||||||
| 
						 | 
					@ -396,7 +396,7 @@ sk:
 | 
				
			||||||
        desc_html: Sčítanie miestne uverejnených príspevkov, aktívnych užívateľov, a nových registrácii, v týždenných intervaloch
 | 
					        desc_html: Sčítanie miestne uverejnených príspevkov, aktívnych užívateľov, a nových registrácii, v týždenných intervaloch
 | 
				
			||||||
        title: Vydať hromadné štatistiky o užívateľskej aktivite
 | 
					        title: Vydať hromadné štatistiky o užívateľskej aktivite
 | 
				
			||||||
      bootstrap_timeline_accounts:
 | 
					      bootstrap_timeline_accounts:
 | 
				
			||||||
        desc_html: Ak je prezývok viacero, každú oddeľte čiarkou. Možno zadať iba miestne, odomknuté účty. Pokiaľ necháte prázdne, je to pre všetkých miestnych administrátorov.
 | 
					        desc_html: Ak je prezývok viacero, každú oddeľ čiarkou. Je možné zadať iba miestne, odomknuté účty. Pokiaľ necháš prázdne, je to pre všetkých miestnych správcov.
 | 
				
			||||||
        title: Štandardní následovníci nových užívateľov
 | 
					        title: Štandardní následovníci nových užívateľov
 | 
				
			||||||
      contact_information:
 | 
					      contact_information:
 | 
				
			||||||
        email: Pracovný email
 | 
					        email: Pracovný email
 | 
				
			||||||
| 
						 | 
					@ -405,30 +405,30 @@ sk:
 | 
				
			||||||
        desc_html: Uprav vzhľad pomocou CSS, ktoré je načítané na každej stránke
 | 
					        desc_html: Uprav vzhľad pomocou CSS, ktoré je načítané na každej stránke
 | 
				
			||||||
        title: Vlastné CSS
 | 
					        title: Vlastné CSS
 | 
				
			||||||
      hero:
 | 
					      hero:
 | 
				
			||||||
        desc_html: Zobrazuje sa na hlavnej stránke. Doporučuje sa rozlišenie aspoň 600x100px Pokiaľ nič nieje dodané, bude nastavený základný orázok serveru
 | 
					        desc_html: Zobrazuje sa na hlavnej stránke. Doporučené je rozlišenie aspoň 600x100px. Pokiaľ nič nieje dodané, bude nastavený základný orázok serveru.
 | 
				
			||||||
        title: Obrázok hrdinu
 | 
					        title: Obrázok hrdinu
 | 
				
			||||||
      mascot:
 | 
					      mascot:
 | 
				
			||||||
        desc_html: Zobrazované na viacerých stránkach. Odporúčaná veľkosť aspoň 293×205px. Pokiaľ nieje nahraté, bude zobrazený základný maskot
 | 
					        desc_html: Zobrazované na viacerých stránkach. Odporúčaná veľkosť aspoň 293×205px. Pokiaľ nieje nahraté, bude zobrazený základný maskot.
 | 
				
			||||||
        title: Obrázok maskota
 | 
					        title: Obrázok maskota
 | 
				
			||||||
      peers_api_enabled:
 | 
					      peers_api_enabled:
 | 
				
			||||||
        desc_html: Domény, na ktoré tento server už v rámci fediverse natrafil
 | 
					        desc_html: Domény, na ktoré tento server už v rámci fediversa natrafil
 | 
				
			||||||
        title: Zverejni zoznam objavených serverov
 | 
					        title: Zverejni zoznam objavených serverov
 | 
				
			||||||
      preview_sensitive_media:
 | 
					      preview_sensitive_media:
 | 
				
			||||||
        desc_html: Náhľad odkazov z iných serverov, bude zobrazený aj vtedy, keď sú médiá označené ako senzitívne
 | 
					        desc_html: Náhľad odkazov z iných serverov, bude zobrazený aj vtedy, keď sú médiá označené ako citlivé
 | 
				
			||||||
        title: Ukazuj aj chúlostivé médiá v náhľadoch OpenGraph
 | 
					        title: Ukazuj aj chúlostivé médiá v náhľadoch OpenGraph
 | 
				
			||||||
      profile_directory:
 | 
					      profile_directory:
 | 
				
			||||||
        desc_html: Povoľ užívateľom, aby mohli byť nájdení
 | 
					        desc_html: Povoľ užívateľom, aby mohli byť nájdení
 | 
				
			||||||
        title: Zapni profilový katalóg
 | 
					        title: Zapni profilový katalóg
 | 
				
			||||||
      registrations:
 | 
					      registrations:
 | 
				
			||||||
        closed_message:
 | 
					        closed_message:
 | 
				
			||||||
          desc_html: Toto sa zobrazí na hlavnej stránke v prípade že sú registrácie uzavreté. Možno tu použiť aj HTML kód
 | 
					          desc_html: Toto sa zobrazí na hlavnej stránke v prípade, že sú registrácie uzavreté. Možno tu použiť aj HTML kód
 | 
				
			||||||
          title: Správa o uzavretých registráciách
 | 
					          title: Správa o uzavretých registráciách
 | 
				
			||||||
        deletion:
 | 
					        deletion:
 | 
				
			||||||
          desc_html: Dovoľiť každému aby si mohli zmazať svok účet
 | 
					          desc_html: Dovoľ každému aby si mohli zmazať svok účet
 | 
				
			||||||
          title: Sprístupniť možnosť vymazať si účet
 | 
					          title: Sprístupni možnosť vymazať si účet
 | 
				
			||||||
        min_invite_role:
 | 
					        min_invite_role:
 | 
				
			||||||
          disabled: Nikto
 | 
					          disabled: Nikto
 | 
				
			||||||
          title: Povoliť pozvánky od
 | 
					          title: Povoľ pozvánky od
 | 
				
			||||||
      registrations_mode:
 | 
					      registrations_mode:
 | 
				
			||||||
        modes:
 | 
					        modes:
 | 
				
			||||||
          approved: Pre registráciu je nutné povolenie
 | 
					          approved: Pre registráciu je nutné povolenie
 | 
				
			||||||
| 
						 | 
					@ -436,11 +436,11 @@ sk:
 | 
				
			||||||
          open: Ktokoľvek sa môže zaregistrovať
 | 
					          open: Ktokoľvek sa môže zaregistrovať
 | 
				
			||||||
        title: Režím registrácií
 | 
					        title: Režím registrácií
 | 
				
			||||||
      show_known_fediverse_at_about_page:
 | 
					      show_known_fediverse_at_about_page:
 | 
				
			||||||
        desc_html: Pokiaľ je zapnuté, bude v ukážke osi možné nahliadnúť príspevky z celého známeho fediversa. Inak budú ukázané iba príspevky z miestnej osi.
 | 
					        desc_html: Ak je zapnuté, bude v ukážke osi možné nahliadnúť príspevky z celého známeho fediversa. Inak budú ukázané iba príspevky z miestnej osi.
 | 
				
			||||||
        title: Ukáž celé známe fediverse na náhľade osi
 | 
					        title: Ukáž celé známe fediverse na náhľade osi
 | 
				
			||||||
      show_staff_badge:
 | 
					      show_staff_badge:
 | 
				
			||||||
        desc_html: Zobraz moderátorsky odznak na užívateľovom profile
 | 
					        desc_html: Ukáž moderátorsky odznak na užívateľovom profile
 | 
				
			||||||
        title: Zobraz značku moderátora
 | 
					        title: Ukáž značku moderátora
 | 
				
			||||||
      site_description:
 | 
					      site_description:
 | 
				
			||||||
        desc_html: Oboznamujúci paragraf na hlavnej stránke a pri meta tagoch. Opíš, čo robí tento Mastodon server špecifickým, a ďalej hocičo iné, čo považuješ za dôležité. Môžeš použiť HTML kód, hlavne <code><a></code> a <code><em></code>.
 | 
					        desc_html: Oboznamujúci paragraf na hlavnej stránke a pri meta tagoch. Opíš, čo robí tento Mastodon server špecifickým, a ďalej hocičo iné, čo považuješ za dôležité. Môžeš použiť HTML kód, hlavne <code><a></code> a <code><em></code>.
 | 
				
			||||||
        title: Popis servera
 | 
					        title: Popis servera
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -0,0 +1,23 @@
 | 
				
			||||||
 | 
					class RemoveBoostsWideningAudience < ActiveRecord::Migration[5.2]
 | 
				
			||||||
 | 
					  disable_ddl_transaction!
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  def up
 | 
				
			||||||
 | 
					    public_boosts = Status.find_by_sql(<<-SQL)
 | 
				
			||||||
 | 
					      SELECT boost.id
 | 
				
			||||||
 | 
					      FROM statuses AS boost
 | 
				
			||||||
 | 
					      LEFT JOIN statuses AS boosted ON boost.reblog_of_id = boosted.id
 | 
				
			||||||
 | 
					      WHERE
 | 
				
			||||||
 | 
					        boost.id > 101746055577600000
 | 
				
			||||||
 | 
					        AND (boost.local = TRUE OR boost.uri IS NULL)
 | 
				
			||||||
 | 
					        AND boost.visibility IN (0, 1)
 | 
				
			||||||
 | 
					        AND boost.reblog_of_id IS NOT NULL
 | 
				
			||||||
 | 
					        AND boosted.visibility = 2
 | 
				
			||||||
 | 
					    SQL
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    RemovalWorker.push_bulk(public_boosts.pluck(:id))
 | 
				
			||||||
 | 
					  end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  def down
 | 
				
			||||||
 | 
					    raise ActiveRecord::IrreversibleMigration
 | 
				
			||||||
 | 
					  end
 | 
				
			||||||
 | 
					end
 | 
				
			||||||
| 
						 | 
					@ -10,7 +10,7 @@
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# It's strongly recommended that you check this file into your version control system.
 | 
					# It's strongly recommended that you check this file into your version control system.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
ActiveRecord::Schema.define(version: 2019_05_12_200918) do
 | 
					ActiveRecord::Schema.define(version: 2019_05_19_130537) do
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  # These are extensions that must be enabled in order to support this database
 | 
					  # These are extensions that must be enabled in order to support this database
 | 
				
			||||||
  enable_extension "plpgsql"
 | 
					  enable_extension "plpgsql"
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -13,7 +13,7 @@ services:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  redis:
 | 
					  redis:
 | 
				
			||||||
    restart: always
 | 
					    restart: always
 | 
				
			||||||
    image: redis:4.0-alpine
 | 
					    image: redis:5.0-alpine
 | 
				
			||||||
    networks:
 | 
					    networks:
 | 
				
			||||||
      - internal_network
 | 
					      - internal_network
 | 
				
			||||||
    healthcheck:
 | 
					    healthcheck:
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in a new issue