We are pleased to announce the official opening of our scientific electronic medical journal “Psychosomatic Medicine and General Practice”: Psychosomatic Medicine and General Practice.
Thanks to PKP team and OJS platform this project came to life.
Much work is already done and much work is waiting to be done. We have adopted @NateWr advice about creating child theme, and created own bootstrap 3 design.
Our workflow is based on JATS XML - all our articles are first published in this format. Thanks to Open Typesetting Stack this work really takes not much time and thanks to Lens Viewer they have great look at front-end. Also with help of xslt we also create html and pdf variants of articles.
Design of HTML Galleys was my first project as front-end developer They are created with use of bootstrap framework and jquery library.
For now we are finishing our work on pdf transformation and composing our 2nd issue .
For html galleys I have worked with display.tpl file in the htmlArticleGalley plugin directory. There I have the code for displaying navigation menu and article title, authors, abstract. Other article information comes from html galley file. They are styled with use of bootstrap framework and functionality added with jquery javascript library (autocreating intraarticle navigation, citation pop-ups and mobile responsiveness).
You can see the code for css and javascript with chrome browser (inspect → sources → and browse psychosomatics.css and psychosomatics.js)
For PDF generation we use own JATS to LaTeX converter. It is mostly done, but for now it adhere Ukrainian standards Maybe, in the near future I will make the public release. It will produce ready for compiling LaTeX and Bibtex files.
We have also edited the look of our main page. I have developed a Browse Latest Articles plugin. It adds carousel widget and all that can be seen on a main page.
Another thing that we recently adopted - is a separate URL for secondary locale. As can be seen, non-English locale now have subdomain. That was done for indexing secondary locale by Google.
After OJS 3.1 and Bootstrap 4 releases, we have completely changed front-end appearance of our journal. I must say that PKP team did a very great job - OJS has very clean and understandable code. It’s quite easy to modify its look and add some additional functionality: JATS Parser plugin for displaying article full-text under the abstract page and Browse plugin for displaying most recent articles on the main page.
So our new theme, although not fully complete, but already is quite good looking. It was inspired by eLife journal and PLoS ONE journal. All the front-end element (menus, navbars, article blocks, lists, alerts etc.) were created with bootstrap 4. Especialy I like the look of main, article detail and register pages.
Once again, thanks to the PKP team for this great publishing system!
In the current version, the plugin requires adding a specific method in the PublishedArticleDao class:
function getPublishedArticlesBySection($journalId = null, $rangeInfo = null, $reverse = false, $sections) {
$params = $this->getFetchParameters();
if ($journalId) $params[] = (int) $journalId;
$result = $this->retrieveRange(
'SELECT ps.*,
s.*,
' . $this->getFetchColumns() . '
FROM published_submissions ps
LEFT JOIN submissions s ON ps.submission_id = s.submission_id
LEFT JOIN issues i ON ps.issue_id = i.issue_id
' . $this->getFetchJoins() . '
WHERE i.published = 1
' . ($journalId?'AND s.context_id = ?':'') . '
AND s.status <> ' . STATUS_DECLINED . '
AND se.section_id IN ('. $sections . ')
ORDER BY ps.date_published '. ($reverse?'DESC':'ASC'),
$params,
$rangeInfo
);
return new DAOResultFactory($result, $this, '_fromRow');
}
This plugin is responsible for adding a slider and displaying all our latest articles. That version that is on Github should work with Bootstrap 4. To make it work one should do several tweaks:
Explicitly point the id’s (numbers) for you sections, that you want to display (you can check them in your database). In this example in our first line numbers, 3,4,9 are for our research articles, reviews and clinical cases (left block) and 11 in the 3 line - our news section (upper block). browsePlugin/BrowsePlugin.inc.php at master · Vitaliy-1/browsePlugin · GitHub
If you want to use it, I suggest to perform a test OJS installation and make the necessary changes there first. I can help on any stage, but, apparently, this plugin is not an out-of-the-box solution.