OJS 3 – upon subsequent upgrade

Hello,

I managed to update my testing installation of OJS 3.0.0. to version 3.0.2. However, I would like to report the following issues, both related to the functionality and user experience:

  1. Both emails and submission notes (accessible from Editorial History tab) are lacking attachment files (we use file attachments pretty extensively).
  2. There is no cover description, which I find really handy particularly in life-related journals (we use that field).
  3. Cover images are broken, not visible.
  4. I miss sorting submissions (e.g., by ID) or users (e.g., by letters). Accessing latest archived submissions is really time-consuming if you have thousands of them, especially relying only on live loading mode.
  5. Add Participant window is to be a nightmare for editors/authors/reviewers I presume, especially the part “Choose a predefined message to use, or fill out the form below”, which present predefined topics list, some of them repeated a few times, so it is not intuitive which topic to pick. Some topics trigger the Message field to be prefilled with some text, others do not. BTW, is the predefined topics list required at all here? There are dedicated buttons for main editorial actions (like Decline submission, Accept, etc.), which open prefilled email forms. I’m totally confused with it.
  6. General software performance, or rather communicativity with respect to some actions, e.g., when I view user list and try to go to subsequent page the system doesn’t inform me that it actually loads the data, and it takes some time to load the page so users may be confused about that. The new way of reloading the content in OJS 3 should include such informative component where possible.

Forgive me If I missed something when pointing out the issues. I try to study the new OJS release very carefully, because the switch from 2.x. will not be easy at all.

Best,

Peter

Hi @piotreba

Thanks a lot for the feedback and reporting!
I would especially like to understand and to try to reproduce and fix the upgrade issues. Thus could you maybe tell me something more about:

  1. Are those attachments from OJS 2.4.x? – Submission notes were only in OJS 2.4.x, I believe. Here is a GitHub Issue with a solution for that: Investigate upgrade of submission note files · Issue #1932 · pkp/pkp-lib · GitHub. Is that what you mean?
    I’ll try to test what you mean with e-mail attachments…
  2. Are those issue covers? Could you give me some more information about this issue? For example: Could you take a look in your DB, the table issue_settings (maybe in 3.0.0 as well as 3.0.2 version), and tell me what do you see there about/for cover images? – In 2.4.x they were localized, then in 3.0.0 they were not localized, then in 3.0.2 they were changed to be localized again, so maybe something went wrong with the upgrade… Also could you double check if they are in the public folder and correctly named (as in the DB)?

I’ll also take a look at the other issues you are mentioning and see with other team members about them…

Thanks a lot!
Best,
Bozana

Hi Bozana,

sure, will try to provide more details.

Regarding update, I made a copy of my production OJS 2.4.7.1, under different url, which was my testing environment. Then I updated it to 3.0.0.0, added Boostrap 3 Base Theme, and next installed OJS 3.0.2.0. I moved the public folder from previous versions to subsequent updates. Should you need url for this testing version along with additional details/access let me know.

  1. The discussion is related to the issue, indeed. I will have to apply it. I found there both sql (UPDATE ojs3DB.submission_files, ojs2DB.notes SET ojs3DB.submission_files.assoc_type = 520, ojs3DB.submission_files.assoc_id = ojs2DB.notes.note_id WHERE ojs2DB.notes.file_id = ojs3DB.submission_files.file_id AND ojs3DB.submission_files.file_stage = 3) and code updates (pkp/pkp-lib#1932 display submission note file · bozana/pkp-lib@8170fa2 · GitHub). They should be both applied as I understand?

  2. Yes, issue covers. Under Archives view, the code between a link to the issue shows: <img class="media-object" src="Array">. On the TOC page, there is <img class="img-responsive" alt="Array" src="Array"> for cover image. In the table issue_settings, next to the coverImage setting I see en_US in the locale column. The file names in the public folder and DB seem to be the same.

Best,

Peter

Hi @piotreba

  1. Exactly, if you are applying the patch on your existing 3.0.2 you will have to apply that SQL query – you would need your old and your new DB, and you would have to be logged in as a user that have access on both – and that code changes to display the attachments.
    (f you would do the upgrade anew, you would apply the other code changes instead of the SQL query).

  2. What is the setting_value in the DB table issue_settings for a cover image? A string i.e. a normal cover image name? Or an array?
    Do the file names contain locale e.g. “en_US”?

Thanks!
Bozana

@bozana,

  1. the setting_value is a string, like: cover_issue_483_en_US.jpg.

Peter

@piotreba

Hmmm… the data in your DB seems to be fine, thus maybe something with the template (or Handler), that displays the Cover images… I’ll take a look in the code…

Thanks!
Bozana

@bozana

Thanks, should you need further information, let me know please.

Peter

Hi @piotreba

hmmm… a little bit strange, because the code in OJS 3.0.2 seems to be correct…
Do you have this same lines in the your code:
The issue function getLocalizedCoverImageUrl:

The issue function getLocalizedCoverImage:

In the template:

and

If so, could you please check what do you get from the function getLocalizedCoverImageUrl, if it is an array or a URL?

Thanks!
Bozana

@bozana

All the code seems to be the same on my side.

But where is issue_summary.tpl template visible? I am trying to place there some sample text but it’s not visible anywhere publicly. I just wanted to make sure what does getLocalizedCoverImageUrl return.

Best,

Peter

Hi @piotreba

The issue_summary.tpl is used for the issue archive page. The template templates/frontend/objects/issue_toc.tpl is used for the issue page.

Thanks!
Bozana

@bozana,

probably I do something wrong, because I see no effect.

I edited the file templates/frontend/objects/issue_summary.tpl
I removed all the file content and uploaded it to the server. I cleared template cache and opened …/issue/archive page. The list of issues is still visible…

Peter

Hmmm… do you maybe use another theme?

@bozana,

yes!!! I use Boostrap 3 Base Theme… I’m sorry, I totally ignored this issue as I wrote about applying different theme earlier in this discussion :((( I switched to default theme and the covers are fine!

Peter

Hi @piotreba

Hmmm… I will take a look at the bootstrap 3 base theme… maybe it needs a fix… :slight_smile:

Thanks!
Bozana

Hmmm… @piotreba, how do those template files e.g. templates/frontend/objects/article_details.tpl look like in your bootstrap theme folder? Here it looks like it does consider the localized covers: bootstrap3/article_summary.tpl at master · NateWr/bootstrap3 · GitHub
Thanks!

Yep… it looks different in a few points:

<div class="article-summary media">
{if $article->getCoverImage()}
	<div class="cover media-left">
		<a href="{url page="article" op="view" path=$articlePath}" class="file">
			<img class="media-object" src="{$publicFilesDir|escape}/{$article->getCoverImage()|escape}">
		</a>
	</div>
{/if}

<div class="media-body">
	<h3 class="media-heading">
		<a href="{url page="article" op="view" path=$articlePath}">
			{$article->getLocalizedTitle()|strip_unsafe_html}
		</a>
	</h3>

	{if $showAuthor || $article->getPages() || ($article->getDatePublished() && $showDatePublished)}

		{if $showAuthor}
			<div class="meta">
				{if $showAuthor}
					<div class="authors">
						{$article->getAuthorString()}
					</div>
				{/if}
			</div>
		{/if}

		{* Page numbers for this article *}
		{if $article->getPages()}
			<p class="pages">
				{$article->getPages()|escape}
			</p>
		{/if}

		<div class="btn-group" role="group">
			{foreach from=$article->getGalleys() item=galley}
				{include file="frontend/objects/galley_link.tpl" parent=$article}
			{/foreach}
		</div>
	{/if}
</div>

{call_hook name="Templates::Issue::Issue::Article"}