TinyMCE licenciado não integra com SC9 [RESOLVIDO]

Pessoal,

Estou com uma licença paga do TinyMCE pra integrar no SC9, mas não encontrei ainda NADA pra orientar.
Já tentei reconfigurar no tinymce.init no evento onApplicationInit e no onLoad e ele simplesmente ignora.

Mais alguém com esse problema?
valeu

Marcio

o SC já tem a biblioteca dele para editor html configurado.

Parceiro, sei disso, mas a licença que vem no SC9 é limitada (free) e não oferece muita coisa.
Já uso a biblioteca que vem no SC9, mas pra ter por exemplo, um botão pra fazer upload de uma imagem pra inserir num texto dentro do editor, o nativo não permite. Só o licenciado…

javascript deve ser usado em onscriptinit e/ou onload (evento onload não é executado no modo novo registro).

Mas não acredito que consiga usar no campo do SC, terá que criar uma tag de input próprio.

1 Curtida

“criar uma tag de input próprio”
Como?

Tentei no onScriptInit e nem fez cócegas…

inspecionando a página, se garante que a biblioteca Re:TinyMCE (externa ao sc) esta sendo carregada?

Input próprio: Criando um campo virtual do tipo label e jogando o código html do input personalizado em seu valor.

Galera,

Como acredito que esse não tenha sido um problema incomum e não havia NADA esclarecedor no forum, vou compartilhar em detalhes a solução para efetivamente ser ÚTIL, sem usar “enigmas codificados”…que os 'novatos" no SC nem sempre compreendem.

Primeiro, tive que configurar o TinyMCE licenciado e com o plugin da Moxie manualmente no “Novo Campo”.
Segundo, o SC não captura o conteúdo desse campo TinyMCE por default, então configurei no onChange do editor pra toda mudança ser copiada para o campo textarea relacionado ao campo no database.

  1. Criei um “Novo Campo” do tipo “Texto com múltiplas linhas” e abandonei a configuração original do campo criado pelo SC9 que era do tipo “Editor HTML”.
  2. Configurei no Evento onLoad o tinyMCE.init do jeito que eu queria, adicionando inclusive o plugin MoxieManager
  1. Atualizar o campo original (do database) gerado pelo SC com o conteúdo do outro campo textarea (Novo Campo) no evento onBeforeUpdate => {NomeDoCampoOriginal} = {NomeDoNovoCampo};

Usando pela interface do SC usando o Editor HTML (TinyMCE), não consegui reconfigurar o tinymce.init depois de inicializado.

Agora vou continuar customizando o Tiny com o Moxie pra deixá-lo exatamente como quero.

Espero ter ajudado…
Saudações

Marcio Vasconcellos
marcio@e-noar.com.br

2 Curtidas

Olá,

Legal por compartilhar tua solução. Uma pergunta apenas: o que quiseste dizer com “enigmas codificados”?

“Dinada”

Kleber,

Tenho observado que alguns “experts” assumem uma postura “pouco colaborativa” apesar de aparentemente quererem colaborar. Já venho observando isso há algum tempo em vários posts…

Não sei se por falta de tempo ou arrogância, mas acredito que num forum a intenção seja de ter um acervo de problemas e soluções COLABORATIVOS e acho que se quero realmente acrescentar, é mais honesto com novatos ou experts que a gente seja objetivo ao máximo, sem respostas de 2 palavras que pra um novato parece até deboche.

Tenho 49 anos, uns 30 de programação e outros 12 de PHP, mas no SC não tenho nem 6 meses, e pela própria definição de RAD, temos que ser rápidos nas soluções, então não custa nada gastar uns minutinhos a mais pra detalhar uma solução e ajudar efetivamente os demais colegas.

Afinal, ontem era eu com dúvida, e hoje ofereci uma solução.
O mundo dá voltas, e se tenho o caminho das pedras, vou compartilhar de boa…

Vamos PRODUZIR e COLABORAR…
"Conhecimento deve ser compartilhado para gerar valor para as outras pessoas. "

Vamos que vamos e espero que seja útil pra vc…amigo…
Abraços

Marcio

2 Curtidas

Entendi, Marcio. Bem, tem alguns casos em que as dúvidas não são bem elaboradas, o que (penso eu) requer que se faça algumas perguntas para se saber o real problema. Já tem outros casos em que os que fazem as perguntas acham que você tem a obrigação de dar a resposta o mais rápido possível, o que logicamente não é garantido. Mas realmente é tudo muito colaborativo mesmo.

Tá tranquilo, sem stress.
É que realmente não é um caso isolado e nem são muitos. 2 ou 3 gatos pingados que se acham acima dos demais…
A grande maioria é bem colaborativo, tanto que fiz questão de compartilhar o que encontrei, mas deixa pra lá que isso aqui é pra debater técnicas e SC, e não comportamentos.
Vida que segue…
Abraços

Realmente existem 2 ou 3 que se acham superiores, mas boa parte falta mesmo é humildade.

Sempre é bom ter sangue novo aqui principalmente capacitado.

Contamos com suas colaborações.

Olá Márcio, demais colegas bom dia.
Por favor e se possível, detalha a parte 2 (no evento onLoad) como fizestes a correlação do novo campo criado que ficou como TEXTAREA para que o scriptcase reconhecesse o editor wysiwyg.
É que estou tentando incorporar o editor CKEditor com o CKFinder. Estou instanciando as duas bibliotecas (configurei como bibliotecas externas públicas) e, numa blank (código abaixo) funciona perfeito, porém quando vou em um formulário seguindo os passos que indicastes não reconhece o editor no novo campo criado.

Código em uma aplicação tipo Blank:

?>

<head>
<script type="text/javascript" src="../_lib/libraries/sys/ckeditor_4130/ckeditor/ckeditor.js"></script>
<script type="text/javascript" src="../_lib/libraries/sys/ckFinder/ckfinder/ckfinder.js"></script>
</head>
<body>
    <textarea id="editor1" name="editor" rows="10" cols="80"></textarea>
<script type="text/javascript">
var editor = CKEDITOR.replace( 'editor1', {
    filebrowserBrowseUrl : '../_lib/libraries/sys/ckFinder/ckinder/ckfinder.html',
    filebrowserImageBrowseUrl : '../_lib/libraries/sys/ckFinder/ckfinder/ckfinder.html?type=Images',
    filebrowserFlashBrowseUrl : '../_lib/libraries/sys/ckFinder/ckfinder/ckfinder.html?type=Flash',
    filebrowserUploadUrl : '../_lib/libraries/sys/ckFinder/ckfinder/core/connector/php/connector.php?command=QuickUpload&type=Files',
    filebrowserImageUploadUrl : '../_lib/libraries/sys/ckFinder/ckfinder/core/connector/php/connector.php?command=QuickUpload&type=Images',
    filebrowserFlashUploadUrl : '../_lib/libraries/sys/ckFinder/ckfinder/core/connector/php/connector.php?command=QuickUpload&type=Flash',
	filebrowserWindowWidth: '1000',
	filebrowserWindowHeight: '700'
});
CKFinder.setupCKEditor( editor1, '../_lib/libraries/sys/ckFinder/ckfinder' );
	
</script>
</body>
</html>
<?php Agradeço a atenção

Olá bom dia a todos.
Consegui ajustar e gostaria de partilhar aqui:
No evento onLoad coloquei o código que instancia o editor html (no meu caso o CKEditor) junto com o localizador de arquivos o CKFinder. O código ficou assim:

(Lembrar de fechar a tag php ?> para iniciar o código no evento onLoad:)

<head>
<script type="text/javascript" src="../_lib/libraries/sys/ckeditor_4130/ckeditor/ckeditor.js"></script>
<script type="text/javascript" src="../_lib/libraries/sys/ckFinder/ckfinder/ckfinder.js"></script>
</head>
<script type="text/javascript">
  window.onload = function()  {
    CKEDITOR.replace( 'id_sc_field_editor', {
	filebrowserBrowseUrl : '../_lib/libraries/sys/ckFinder/ckinder/ckfinder.html',
    filebrowserImageBrowseUrl : '../_lib/libraries/sys/ckFinder/ckfinder/ckfinder.html?type=Images',
    filebrowserFlashBrowseUrl : '../_lib/libraries/sys/ckFinder/ckfinder/ckfinder.html?type=Flash',
    filebrowserUploadUrl : '../_lib/libraries/sys/ckFinder/ckfinder/core/connector/php/connector.php?command=QuickUpload&type=Files',
    filebrowserImageUploadUrl : '../_lib/libraries/sys/ckFinder/ckfinder/core/connector/php/connector.php?command=QuickUpload&type=Images',
    filebrowserFlashUploadUrl : '../_lib/libraries/sys/ckFinder/ckfinder/core/connector/php/connector.php?command=QuickUpload&type=Flash',
	filebrowserWindowWidth: '1000',
	filebrowserWindowHeight: '700',
	uiColor: '#CCEAEE',
	removeButtons: 'Underline,Strike,Subscript,Superscript,Anchor,Styles,Specialchar'
	});
  };
</script> 
(Lembrar de abrir a tag php: <?php).

Obs.: Nesta parte: “CKEDITOR.replace( ‘id_sc_field_editor’, {…”, peguei o id do campo (tem que ser do tipo “Texto com Múltiplas Linhas” que é do tipo TEXTAREA. No caso pelo que percebi será sempre “id_sc_field_(nome do campo)”. Dá para pegar o id, inspecionando a página (vejam na imagem):

1 Curtida

Ola Marcio,

Obrigado por compartilhar a solução.

Eu consegui integrar o tiny com o SC com a opção de upload de imagem. Tudo corre bem.
Porem não consigo capturar o conteúdo do editor para salvar. :confused:
Fiz o passo 3 normalmente no update e o conteúdo não vem.
fiz uma concatenação para ter certeza que o onbeforeUpdate estava funcionando e esta.
{campoDB} = {campoEditor} . " teste ";
Fica salvo somente o valor “teste” no DB.

Sabe se isso ainda funciona com vc?