Restrict uploads

Obrigado, funcionou

Agora podemos fazer este componente restringir-se a grupos de assinantes :stuck_out_tongue:

A única maneira que posso fazer isso sozinho é tornando o Nível de Confiança 3 impossível de ser alcançado, aumentando o número de dias, etc. E então adicionando pessoas manualmente quando elas se inscrevem. O que é muito provavelmente o caminho que seguirei, a menos que eu possa modificar isso por grupo.

2 curtidas

Restringir Uploads agora está bloqueando a capacidade de fazer upload de qualquer coisa em novas publicações ou respostas.

1 curtida

Isso mesmo, desculpe.

Parece que this._super() na verdade não relata se o usuário tem permissão para enviar imagens no core. Eu o reutilizei do componente antigo e já percebi ontem que ele também causava problemas com a lógica do espaço reservado (placeholder).

Não tenho tempo para investigar isso mais a fundo agora.

Uma coisa que notei ao testar hoje: usar \"*\" em api.addComposerUploadHandler([\"*\"] quebra a expressão regular usada para corresponder aos manipuladores de upload.

1 curtida

Eu acho que isso deveria fazer parte do núcleo. Apenas minha humilde opinião, mas uma forma de controlar uploads por nível de confiança, grupo ou até mesmo usuários individuais seria muito útil.

1 curtida

Acredito que você precise usar o método modifyClass para sobrescrever este descritor computado corretamente.

import discourseComputed from "discourse-common/utils/decorators";

api.modifyClass("service:composer", 
  (SuperClass) => class extends SuperClass {
    @discourseComputed
    allowUpload() {
      return super.allowUpload && canUpload;
    }
  }
);

EDIT:

Fiz um PR:

4 curtidas