I am successfully using the module with the patch 
<http://presentacions.mimosinnet.org/reveal/01#/>. It works nicely. 

El dimecres, 12 abril de 2017 19:56:54 UTC+2, Joel Berger va escriure:
>
> And after I fixed the "bug", I just now remember why I did that. It made 
> it convenient when using github pages for publishing ...
>
> Hmmmm. Not sure what to do now.
>
> On Wednesday, January 18, 2017 at 4:50:17 PM UTC-6, mimosinnet wrote:
>>
>> You hit the nail on the head! Thanks a lot! I was looking for answers at 
>> the wrong place  =^_^=
>>
>> I will now work on the pull request and the test ;-) 
>>
>> Thanks! 
>>
>> El dimecres, 18 gener de 2017 14:46:52 UTC+1, Dotan Dimet va escriure:
>>>
>>> Sorry, I should have looked at the code in the layout template.
>>>
>>>
>>> https://github.com/jberger/Mojolicious-Plugin-RevealJS/blob/master/lib/Mojolicious/Plugin/RevealJS/files/templates/layouts/revealjs.html.ep
>>>
>>> It seems the links to the revealjs static files (css, etc.) are relative 
>>> to the current route:
>>>
>>> <link rel="stylesheet" href="revealjs/css/reveal.css">
>>>
>>> So if your presentation is at /reveal/foo, it will look for 
>>> /reveal/revealjs/css/reveal.css, and not find it.
>>>
>>> I thought it was using absolute paths (i.e "/revealjs/css/reveal.css" 
>>> etc.), which would avoid this issue.
>>>
>>> You could send Joel a bug report or a  pull request for a change 
>>> (preferably adding a test for a nested route, like you have in your app).
>>>
>>> - Dotan
>>>
>>> On 17/01/17 01:50, mimosinnet wrote:
>>>
>>> El dilluns, 16 gener de 2017 14:33:50 UTC+1, Dotan Dimet va escriure: 
>>>>
>>>> My guess is that your route ('/revealjs/:id') interferes with requests 
>>>> for the static Reveal.js files bundled in the plugin,
>>>> which are served from /revealjs/...
>>>>
>>> ... 
>>>
>>>> So, try renaming your route and see if things improve?
>>>>
>>>
>>> Thanks very much for the suggestion. I have renamed the route to:
>>>
>>> $r->get('/reveal/:id')->to('presenta#reveal');
>>>
>>> Nevertheless, I have the same issue. These are the paths that cannot be 
>>> found when rendering the page:
>>>
>>> GET http://127.0.0.1:3000/reveal/revealjs/js/reveal.js 
>>> 01:53 GET http://127.0.0.1:3000/reveal/revealjs/lib/js/head.min.js 
>>> 01:22 GET http://127.0.0.1:3000/reveal/revealjs/lib/css/zenburn.css 
>>> 01:19 GET http://127.0.0.1:3000/reveal/revealjs/css/theme/black.css 
>>> 01:17 GET http://127.0.0.1:3000/reveal/revealjs/css/reveal.css 
>>> 01:30 GET http://127.0.0.1:3000/reveal/revealjs/css/print/paper.css 
>>> 01:53 GET http://127.0.0.1:3000/reveal/revealjs/lib/js/head.min.js 
>>> 01:54 GET http://127.0.0.1:3000/reveal/revealjs/js/reveal.js 
>>>
>>> If I try with Mojolicious::Lite, it fins the paths, which are:
>>> /revealjs/lib/js/head.min.js 
>>> /revealjs/lib/css/zenburn.css
>>> /revealjs/css/theme/black.css
>>> /revealjs/css/reveal.css
>>> ...
>>>
>>> Cheers! 
>>>
>>> On 16/01/17 10:51, mimosinnet wrote:
>>>>
>>>> I am having trouble using Mojolicious::Plugin::RevealJS. It works it a 
>>>> Lite app, but I fail to use it in a full app and I am unable to find where 
>>>> is the issue.  
>>>>
>>>> I start the plugin with:
>>>>
>>>> sub startup {
>>>>>
>>>>>   my $self = shift;
>>>>>
>>>>>   $self->plugin('RevealJS');
>>>>> ...
>>>>>   my $r = $self->routes;
>>>>> ....
>>>>>  $r->get('/revealjs/:id')->to('presenta#revealjs');
>>>>> ...
>>>>> }
>>>>>
>>>>
>>>> In the controller, I start the plugin by using the revealjs layout:
>>>> sub revealjs {
>>>>
>>>>  my $self = shift;
>>>>  my $id_pres = $self->stash('id');
>>>>  $self->render(
>>>>
>>>>  layout => 'revealjs',
>>>>  template => 'mytalk',
>>>>  id_pres => $id_pres
>>>>  
>>>>
>>>>  );
>>>> }
>>>>
>>>>
>>>> The app shows the content of the template, adds code from the plugin, 
>>>> but fails to find the revealjs files when rendering the layout. These are 
>>>> the paths that cannot be found when rendering the page:
>>>> GET http://127.0.0.1:3000/revealjs/revealjs/css/reveal.css 
>>>> 01:53 GET http://127.0.0.1:3000/revealjs/revealjs/lib/js/head.min.js 
>>>> 01:22 GET http://127.0.0.1:3000/revealjs/revealjs/lib/css/zenburn.css 
>>>> 01:19 GET http://127.0.0.1:3000/revealjs/revealjs/css/theme/black.css 
>>>> 01:54 GET http://127.0.0.1:3000/revealjs/revealjs/js/reveal.js 
>>>> 01:30 GET http://127.0.0.1:3000/revealjs/revealjs/css/print/paper.css 
>>>> 01:53 GET http://127.0.0.1:3000/revealjs/revealjs/lib/js/head.min.js 
>>>> 01:54 GET http://127.0.0.1:3000/revealjs/revealjs/js/reveal.js 
>>>> 01:72 Uncaught ReferenceError: Reveal is not defined
>>>>     at 01:72
>>>>
>>>> As the app calls the plugin but fails to find the revealjs files, I 
>>>> guess the issue could be in how the code 
>>>> <https://github.com/jberger/Mojolicious-Plugin-RevealJS> builds the 
>>>> paths, and I imagine this is the relevant part:
>>>> package Mojolicious::Plugin::RevealJS;
>>>> ...
>>>> use Mojo::Home;
>>>> ...
>>>> use File::Basename 'dirname';
>>>> use File::Spec::Functions qw/rel2abs catdir/;
>>>> use File::ShareDir 'dist_dir';
>>>>
>>>> has home => sub {
>>>>   my $checkout = catdir(dirname(rel2abs(__FILE__)), qw/RevealJS files
>>>> /);
>>>>   Mojo::Home->new(-d $checkout ? $checkout : dist_dir(
>>>> 'Mojolicious-Plugin-RevealJS'));
>>>> };
>>>>
>>>> sub register {
>>>>   my ($plugin, $app, $conf) = @_;
>>>>   my $home = $plugin->home;
>>>>   push @{ $app->static->paths },   $home->rel_dir('public');
>>>>   push @{ $app->renderer->paths }, $home->rel_dir('templates');
>>>>
>>>>
>>>>   $app->defaults('revealjs.init' => {
>>>>     controls => \1,
>>>>     progress => \1,
>>>>     history  => \1,
>>>>     center   => \1,
>>>>     transition => 'slide', #none/fade/slide/convex/concave/zoom
>>>>   });
>>>>
>>>>
>>>>   $app->helper('include_code' => \&_include_code);
>>>>   $app->helper('revealjs.export' => \&_export);
>>>> }
>>>>
>>>> I would appreciate any hints! 
>>>>
>>>> Cheers!
>>>> -- 
>>>> You received this message because you are subscribed to the Google 
>>>> Groups "Mojolicious" group.
>>>> To unsubscribe from this group and stop receiving emails from it, send 
>>>> an email to [email protected].
>>>> To post to this group, send email to [email protected].
>>>> Visit this group at https://groups.google.com/group/mojolicious.
>>>> For more options, visit https://groups.google.com/d/optout.
>>>>
>>>>
>>>> -- 
>>> You received this message because you are subscribed to the Google 
>>> Groups "Mojolicious" group.
>>> To unsubscribe from this group and stop receiving emails from it, send 
>>> an email to [email protected].
>>> To post to this group, send email to [email protected].
>>> Visit this group at https://groups.google.com/group/mojolicious.
>>> For more options, visit https://groups.google.com/d/optout.
>>>
>>>
>>>

-- 
You received this message because you are subscribed to the Google Groups 
"Mojolicious" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/mojolicious.
For more options, visit https://groups.google.com/d/optout.

Reply via email to