Lançado Adianti Framework 7.6!
Clique aqui para saber mais
Como fazer upload de imagens para servidor externo pelo summernote do THtmlEditor Olá, Estou usando o THtmlEditor para cadastrar artigos, porém as imagens inseridas são salvas em base64. Eu gostaria de salvar as imagens em um servidor externo e gravar no BD apenas a referência. Estou fazendo o projeto pelo builder. Vi que a classe utiliza o editor summernote e vendo sua documentação encontrei como fazer isso: ...
CA
Como fazer upload de imagens para servidor externo pelo summernote do THtmlEditor  
Olá,

Estou usando o THtmlEditor para cadastrar artigos, porém as imagens inseridas são salvas em base64. Eu gostaria de salvar as imagens em um servidor externo e gravar no BD apenas a referência. Estou fazendo o projeto pelo builder.
Vi que a classe utiliza o editor summernote e vendo sua documentação encontrei como fazer isso:

  1. <?php 
  2.   $('#summernote').summernote({
  3.   callbacks: {
  4.     onImageUpload: function(files) {
  5.       // upload image to server and create imgNode...
  6.       $summernote.summernote('insertNode'imgNode);
  7.     }
  8.   }
  9. });
  10. ?>


Porém dessa forma o editor é reecrito e perco as funcionalidades que havia inserido antes como um botão customizado com `addCustomButton`.
Então encontrei essa outra forma que seria a correta:

  1. <?php 
  2. $('#summernote').on('summernote.image.upload', function(wefiles) {
  3.   // upload image to server and create imgNode...
  4.   $summernote.summernote('insertNode'imgNode);
  5. });
  6. ?>


Porém esse evento não é ativado. Lendo as issues percebi que caso um callback tenha sido definido na criação do editor, como acontece com THtmlEditor, o evento usando `on` não é disparado.

Pelo `setOptions` da classe THtmlEditor acredito que possa redefinir os callback, porém não acerto..
Estou fazendo isso:

  1. <?php
  2. $conteudo->setOption('callbacks', ['onImageUpload' => "function() {
  3.           console.log('Entrei');
  4.         }"]);
  5. ?>


Então como realizar o upload para um servidor externo de forma correta?

Se alguém pude ajudar, agradeço!

Curso completo Meu Negócio Pronto
Use para si, ou transforme em um negócio: Inclui aulas e códigos-fontes
Gestor de conteúdo (SITE) + Loja Virtual (E-Commerce) + Emissor de Notas para infoprodutos


Meu negócio pronto Quero me inscrever agora!

Comentários (1)


LF

Basicamente eu tentaria usar Jquery para isso!
Avaliando por cima ... o códido onSave devia resgatar esses valores que estão em uma html na tela;


  1. <?php 
  2. function onSave()
  3.     {
  4.         try
  5.         {
  6.             TScript::create(
  7.                 ' const html_data =  $(".note-editable.card-block img"); ' .
  8.                 ' let filebase64 = html_data[0].src;                     ' .
  9.                 ' let filename = html_data.data("filename");             ' .
  10.                 '// chamar sua funcao para enviar para servidor externno'       
  11.             );
  12.  ... segue o fluxo
  13.  ?>