Browse articles by section (or section page detail)

Hi,
In my home page i have a list of all section configured in ojs.

Simple list like

  1. Section1;
  2. Section2

    Is there a link to section details? I mean a page where i have a list of all articles (by section)
    A page like …/index.php/jm/sections/section1

if not, how i can create it or where i can read guidelines for create a plugin to do this?

Thanks

Nothing about?
No solution?

Hi @maurox,

You mean in OJS 3, right?
Maybe this plugin can help: GitHub - pkp/browseBySection: This OJS 3 plugin adds support for browsing published articles by section.? – I haven’t tested it yet…

Best,
Bozana

Thanks! Yes maybe is this!
But i have a problem with installation:
“The uploaded plugin archive does not contain a folder that corresponds to the plugin name.”

I’ve dowloaded zip file and upload to my installation. Not works.
I’ve also tried to change filename but no lucky, same error.

I’ve also tried to upload directly all files but:
“PHP Fatal error: Call to undefined method BrowseBySectionPlugin::_registerTemplateResource() in /var/www/ojs3/ojs-3.1.0-1/plugins/generic/browseBySection/BrowseBySectionPlugin.inc.php on line 40”

Any suggestion?

Thanks!

Hi @maurox

Ah sorry, I think that plugin will be first available for OJS 3.1.1 – it contains some functions that came after OJS 3.1.0-1 release…
The OJS 3.1.1 release should come in March, so maybe you can wait a little bit…

Best,
Bozana

2 Likes

Ok, thanks for your reply.
I will wait.

Ciao

We are waiting for OJS 3.1.1, this will be a great release! I am very excited about that!

Hi,
i’ve downloaded a new version of OJS 3.1.1 but it missing this GitHub - pkp/browseBySection: This OJS 3 plugin adds support for browsing published articles by section. plugin. I’m also unable to find it in plugin->generic folder of .gz file http://pkp.sfu.ca/ojs/download/ojs-3.1.1.tar.gz

it’s normal (i have to manually dopwnload browse folder in generic) or there is some issue with file?

Thanks

Hi @maurox

It is still not included into the plugin gallery. Once this is the case, you will be able to install it from there. Tagging @asmecher and @NateWr here.
Else, if you try to install the plugin manually, you should unpack the plugin in the plugins/generic/ folder, in the subfolder called browseBySection.
The plugins/generic/ folder is there, in the OJS current release package (http://pkp.sfu.ca/ojs/download/ojs-3.1.1.tar.gz) – I do not know how you do not see it…

Best,
Bozana

Ok, yes “generic” folder is present, i was referring to browseBySection plugin folder.

Thanks a lot

@bozana and @maurox: I’ve got the same problem. I’m in the generic folder and don’t see browseBySection. I have 3.1.1 installed and I’m looking through the manual download folders. @maurox did you successfully install?

Yes, i’ ve succesfully installed it manually

Hi @emolls,

Yes, the plugin is still not available in the plugin gallery, so if you cannot wait a little bit – it should happen soon – you can install it manually, by unpacking the .zip into your folder plugins/generic, and the subfolder should be called browseBySection.

Best,
Bozana

I got this error : Failed Ajax request or invalid JSON returned. When I tried to edit any section after installing this plugin. I have OJS 3.1.1.2

[17-Aug-2018 06:47:05 UTC] PHP Warning:  Declaration of SectionForm::fetch($request) should be compatible with Form::fetch($request, $template = NULL, $display = false) in /home/u796555399/public_html/controllers/grid/settings/sections/form/SectionForm.inc.php on line 18
[17-Aug-2018 06:47:05 UTC] PHP Warning:  Declaration of SectionForm::initData($args, $request) should be compatible with Form::initData() in /home/u796555399/public_html/controllers/grid/settings/sections/form/SectionForm.inc.php on line 18
[17-Aug-2018 06:47:05 UTC] PHP Warning:  Declaration of SectionForm::execute($args, $request) should be compatible with Form::execute() in /home/u796555399/public_html/controllers/grid/settings/sections/form/SectionForm.inc.php on line 18
[17-Aug-2018 06:47:05 UTC] PHP Deprecated:  Non-static method PKPRequest::getUserVar() should not be called statically in /home/u796555399/public_html/lib/pkp/classes/form/Form.inc.php on line 369
[17-Aug-2018 06:47:05 UTC] PHP Deprecated:  Non-static method PKPRequest::_checkThis() should not be called statically in /home/u796555399/public_html/lib/pkp/classes/core/PKPRequest.inc.php on line 592
[17-Aug-2018 06:47:05 UTC] PHP Fatal error:  Uncaught Error: Call to undefined method BrowseBySectionPlugin::getTemplateResource() in /home/u796555399/public_html/plugins/generic/browseBySection/BrowseBySectionPlugin.inc.php:130
Stack trace:
#0 /home/u796555399/public_html/lib/pkp/classes/plugins/HookRegistry.inc.php(107): BrowseBySectionPlugin->addSectionFormFields('Templates::Mana...', Array)
#1 /home/u796555399/public_html/lib/pkp/classes/template/PKPTemplateManager.inc.php(1145): HookRegistry::call('Templates::Mana...', Array)
#2 /home/u796555399/public_html/cache/t_compile/259c04d1ba7dbdc192c271f42cc9c869d6745016^%%AC^ACE^ACE23A71%%sectionForm.tpl.php(56): PKPTemplateManager->smartyCallHook(Array, Object(TemplateManager))
#3 /home/u796555399/public_html/lib/pkp/lib/vendor/smarty/smarty/libs/Smarty.class.php(1264): include('/home/u79655539...')
#4 /home/u796555399/public_html/lib/pkp/classes/template/PKPTemplateManager.inc.php(797): Smarty->fetch('controllers/gri...', NULL, '259c04d1ba7dbdc...', false)
#5 /home/u796555399/public_html/lib/pkp/classes in /home/u796555399/public_html/plugins/generic/browseBySection/BrowseBySectionPlugin.inc.php on line 130

130th line is: `

$output .= $smarty->fetch($this->getTemplateResource(‘controllers/grids/settings/section/form/sectionFormAdditionalFields.tpl’));

`

change to:
$output .= $smarty->fetch($this->getTemplatePath() . 'controllers/grids/settings/section/form/sectionFormAdditionalFields.tpl');

Thanks, I did that. Now the error is gone when you try to edit. However it is still present when you try to create a new section. Also, there is no change in the edit menu. There is nothing like activate browse section, when I click on edit.

Error log for creating a new section:

[17-Aug-2018 07:43:28 UTC] PHP Warning:  Declaration of SectionForm::fetch($request) should be compatible with Form::fetch($request, $template = NULL, $display = false) in /home/u796555399/public_html/controllers/grid/settings/sections/form/SectionForm.inc.php on line 18
[17-Aug-2018 07:43:28 UTC] PHP Warning:  Declaration of SectionForm::initData($args, $request) should be compatible with Form::initData() in /home/u796555399/public_html/controllers/grid/settings/sections/form/SectionForm.inc.php on line 18
[17-Aug-2018 07:43:28 UTC] PHP Warning:  Declaration of SectionForm::execute($args, $request) should be compatible with Form::execute() in /home/u796555399/public_html/controllers/grid/settings/sections/form/SectionForm.inc.php on line 18
[17-Aug-2018 07:43:28 UTC] PHP Fatal error:  Uncaught Error: Call to a member function getData() on null in /home/u796555399/public_html/plugins/generic/browseBySection/BrowseBySectionPlugin.inc.php:151
Stack trace:
#0 /home/u796555399/public_html/lib/pkp/classes/plugins/HookRegistry.inc.php(107): BrowseBySectionPlugin->initDataSectionFormFields('sectionform::in...', Array)
#1 /home/u796555399/public_html/lib/pkp/classes/form/Form.inc.php(242): HookRegistry::call('sectionform::in...', Array)
#2 /home/u796555399/public_html/controllers/grid/settings/sections/form/SectionForm.inc.php(71): Form->initData(Array, Object(Request))
#3 /home/u796555399/public_html/controllers/grid/settings/sections/SectionGridHandler.inc.php(175): SectionForm->initData(Array, Object(Request))
#4 /home/u796555399/public_html/controllers/grid/settings/sections/SectionGridHandler.inc.php(159): SectionGridHandler->editSection(Array, Object(Request))
#5 /home/u796555399/public_html/lib/pkp/classes/core/PKPRouter.inc.php(372): SectionGridHandler->addSection(Array, Object(Request))
#6 in /home/u796555399/public_html/plugins/generic/browseBySection/BrowseBySectionPlugin.inc.php on line 151

151th line is: $sectionForm->setData(‘browseByEnabled’, $section->getData(‘browseByEnabled’));

The plugin was updated in accordance with OJS master branch. You need either waiting OJS 3.2 or fall back to before update to Smarty 3: https://github.com/pkp/browseBySection/commits/master

Thanks. It worked finally.