Arun
Arun

Reputation: 257

Error when trying to use plugins in redactor yii2

I'm trying to create a sample plugin and I'm getting this error:

Uncaught ReferenceError: RedactorPlugins is not defined

This is my code for plugin:

<?php
    $script = <<< JS

   (function($)
    {
        $.Redactor.prototype.advanced = function()
        {
            return {
                init: function ()
                {
                    var button = this.button.add('advanced', 'Advanced');
                    this.button.addCallback(button, this.advanced.test);
                },
                test: function(buttonName)
                {
                    alert(buttonName);
                }
            };
        };
    })(jQuery);

JS;
$this->registerJs($script);
?>

My advanced plugin is load after redactor.js, what should i modify to make Redactor to accept plugins?

Thanks in advance!

Upvotes: 0

Views: 193

Answers (1)

Gabriele Carbonai
Gabriele Carbonai

Reputation: 459

If you looking your html code by your browser, I am sure that JS will be before the Redactor plugin and maybe before jquery too. Just add the depends

$this->registerJs($script,['depends' => [\yii\web\JqueryAsset::className()]]);

then check the position of your code in your printed html

If it will be still before Redactor plugin, you can make a new JS file and add to AppAsset.php just below Redactor plugin

Upvotes: 0

Related Questions