View | Details | Raw Unified | Return to bug 3922 | Differences between
and this patch

Collapse All | Expand All

(-)classes/article/Article.inc.php (+68 lines)
 Lines 423-428    Link Here 
423
		);
423
		);
424
		return $commentsStatusOptions;
424
		return $commentsStatusOptions;
425
	}
425
	}
426
	
427
	/**
428
	 * Get an array of user IDs associated with this article
429
	 * @param $authors boolean
430
	 * @param $reviewers boolean
431
	 * @param $editors boolean
432
	 * @param $proofreaders boolean
433
	 * @param $copyeditors boolean
434
	 * @param $layoutEditors boolean
435
	 * @return array User IDs
436
	 */
437
	function getAssociatedUserIds($authors = true, $reviewers = true, $editors = true, $proofreaders = true, $copyeditors = true, $layoutEditors = true) {
438
		$articleId = $this->getArticleId();
439
		
440
		$userIds = array();
441
442
		if($authors) {
443
			$authorDao = &DAORegistry::getDAO('AuthorDAO');
444
			$authors = $authorDao->getAuthorsByArticle($articleId);
445
			foreach ($authors as $author) {
446
				$userIds[] = array('id' => $author->getAuthorId(), 'role' => 'author');
447
			}
448
		}
449
		
450
		if($editors) {
451
			$editAssignmentDao =& DAORegistry::getDAO('EditAssignmentDAO');
452
			$editAssignments =& $editAssignmentDao->getEditorAssignmentsByArticleId($articleId);
453
			while ($editAssignment =& $editAssignments->next()) {
454
				$userIds[] = array('id' => $editAssignment->getEditorId(), 'role' => 'editor');
455
				unset($editAssignment);
456
			}
457
		}
458
		
459
		if($copyeditors) {
460
			$copyAssignmentDao = &DAORegistry::getDAO('CopyAssignmentDAO');
461
			$copyAssignment =& $copyAssignmentDao->getCopyAssignmentByArticleId($articleId);
462
			if ($copyAssignment != null && $copyAssignment->getCopyeditorId() > 0) {
463
				$userIds[] =array('id' =>  $copyAssignment->getCopyeditorId(), 'role' => 'copyeditor');
464
			}
465
		}
466
		
467
		if($layoutEditors) {
468
			$layoutAssignmentDao = &DAORegistry::getDAO('LayoutAssignmentDAO');
469
			$layoutEditorId = $layoutAssignmentDao->getLayoutEditorIdByArticleId($articleId);
470
			if ($layoutEditorId != null && $layoutEditorId > 0) {
471
				$userIds[] = array('id' => $layoutEditorId, 'role' => 'layoutEditor');
472
			}
473
		}	
474
		
475
		if($proofreaders) {
476
			$proofAssignmentDao = &DAORegistry::getDAO('ProofAssignmentDAO');
477
			$proofAssignment =& $proofAssignmentDao->getProofAssignmentByArticleId($articleId);
478
			if ($proofAssignment != null && $proofAssignment->getProofreaderId() > 0) {
479
				$userIds[] = array('id' => $proofAssignment->getProofreaderId(), 'role' => 'proofreader');
480
			}
481
		}
482
		
483
		if($reviewers) {
484
			$reviewAssignmentDao =& DAORegistry::getDAO('ReviewAssignmentDAO');
485
			$reviewAssignments =& $reviewAssignmentDao->getReviewAssignmentsByArticleId($articleId);
486
			foreach ($reviewAssignments as $reviewAssignment) {
487
				$userIds[] = array('id' => $reviewAssignment->getReviewerId(), 'role' => 'reviewer');
488
				unset($reviewAssignment);
489
			}
490
		}
491
				
492
		return $userIds;
493
	}
426
}
494
}
427
495
428
?>
496
?>
(-)classes/journal/Journal.inc.php (+8 lines)
 Lines 175-180    Link Here 
175
	function getJournalId() {
175
	function getJournalId() {
176
		return $this->getData('journalId');
176
		return $this->getData('journalId');
177
	}
177
	}
178
	
179
	/**
180
	 * Get ID of journal (for generic calls in PKP WAL).
181
	 * @return int
182
	 */
183
	function getId() {
184
		return $this->getData('journalId');
185
	}
178
186
179
	/**
187
	/**
180
	 * Set ID of journal.
188
	 * Set ID of journal.
(-)classes/submission/author/AuthorAction.inc.php (+27 lines)
 Lines 277-282    Link Here 
277
			if ($commentForm->validate()) {
277
			if ($commentForm->validate()) {
278
				$commentForm->execute();
278
				$commentForm->execute();
279
279
280
				// Send a notification to associated users
281
				import('notification.Notification');
282
				$notificationUsers = $article->getAssociatedUserIds(true, false);
283
				foreach ($notificationUsers as $user) {
284
					$url = Request::url(null, $user['role'], 'submissionEditing', $article->getArticleId()) . "#layout";
285
					Notification::createNotification($user['id'], "notification.type.layoutComment",
286
						$article->getArticleTitle(), $url, 1, NOTIFICATION_TYPE_LAYOUT_COMMENT, 1);
287
				}
288
				
280
				if ($emailComment) {
289
				if ($emailComment) {
281
					$commentForm->email();
290
					$commentForm->email();
282
				}
291
				}
 Lines 389-394    Link Here 
389
			if ($commentForm->validate()) {
398
			if ($commentForm->validate()) {
390
				$commentForm->execute();
399
				$commentForm->execute();
391
400
401
				// Send a notification to associated users
402
				import('notification.Notification');
403
				$notificationUsers = $article->getAssociatedUserIds(true, false);
404
				foreach ($notificationUsers as $user) {
405
					$url = Request::url(null, $user['role'], 'submissionEditing', $article->getArticleId()) . "#copyedit";
406
					Notification::createNotification($user['id'], "notification.type.copyeditComment",
407
						$article->getArticleTitle(), $url, 1, NOTIFICATION_TYPE_COPYEDIT_COMMENT, 1);
408
				}
409
				
392
				if ($emailComment) {
410
				if ($emailComment) {
393
					$commentForm->email();
411
					$commentForm->email();
394
				}
412
				}
 Lines 432-437    Link Here 
432
			if ($commentForm->validate()) {
450
			if ($commentForm->validate()) {
433
				$commentForm->execute();
451
				$commentForm->execute();
434
452
453
				// Send a notification to associated users
454
				import('notification.Notification');
455
				$notificationUsers = $article->getAssociatedUserIds(true, false);
456
				foreach ($notificationUsers as $user) {
457
					$url = Request::url(null, $user['role'], 'submissionEditing', $article->getArticleId()) . "#proofread";
458
					Notification::createNotification($user['id'], "notification.type.proofreadComment",
459
						$article->getArticleTitle(), $url, 1, NOTIFICATION_TYPE_PROOFREAD_COMMENT, 1);
460
				}
461
				
435
				if ($emailComment) {
462
				if ($emailComment) {
436
					$commentForm->email();
463
					$commentForm->email();
437
				}
464
				}
(-)classes/submission/common/Action.inc.php (-1 / +19 lines)
 Lines 149-155    Link Here 
149
149
150
			} else {
150
			} else {
151
				$metadataForm->execute();
151
				$metadataForm->execute();
152
152
				
153
				// Send a notification to associated users
154
				import('notification.Notification');
155
				$notificationUsers = $article->getAssociatedUserIds();
156
				foreach ($notificationUsers as $user) {
157
					$url = Request::url(null, $user['role'], 'submission', $article->getArticleId()) . "#metadata";
158
					Notification::createNotification($user['id'], "notification.type.metadataModified",
159
						$article->getArticleTitle(), $url, 1, NOTIFICATION_TYPE_METADATA_MODIFIED, 1);
160
				}
161
		
153
				// Add log entry
162
				// Add log entry
154
				$user = &Request::getUser();
163
				$user = &Request::getUser();
155
				import('article.log.ArticleLog');
164
				import('article.log.ArticleLog');
 Lines 257-262    Link Here 
257
			if ($commentForm->validate()) {
266
			if ($commentForm->validate()) {
258
				$commentForm->execute();
267
				$commentForm->execute();
259
268
269
				// Send a notification to associated users
270
				import('notification.Notification');
271
				$notificationUsers = $article->getAssociatedUserIds(true, false);
272
				foreach ($notificationUsers as $user) {
273
					$url = Request::url(null, $user['role'], 'submissionReview', $article->getArticleId()) . "#editorDecision";
274
					Notification::createNotification($user['id'], "notification.type.submissionComment",
275
						$article->getArticleTitle(), $url, 1, NOTIFICATION_TYPE_SUBMISSION_COMMENT, 1);
276
				}
277
				
260
				if ($emailComment) {
278
				if ($emailComment) {
261
					$commentForm->email($commentForm->emailHelper());
279
					$commentForm->email($commentForm->emailHelper());
262
				}
280
				}
(-)classes/submission/copyeditor/CopyeditorAction.inc.php (+18 lines)
 Lines 286-291    Link Here 
286
			if ($commentForm->validate()) {
286
			if ($commentForm->validate()) {
287
				$commentForm->execute();
287
				$commentForm->execute();
288
288
289
				// Send a notification to associated users
290
				import('notification.Notification');
291
				$notificationUsers = $article->getAssociatedUserIds(true, false);
292
				foreach ($notificationUsers as $user) {
293
					$url = Request::url(null, $user['role'], 'submissionEditing', $article->getArticleId()) . "#layout";
294
					Notification::createNotification($user['id'], "notification.type.layoutComment",
295
						$article->getArticleTitle(), $url, 1, NOTIFICATION_TYPE_LAYOUT_COMMENT, 1);
296
				}
297
				
289
				if ($emailComment) {
298
				if ($emailComment) {
290
					$commentForm->email();
299
					$commentForm->email();
291
				}
300
				}
 Lines 328-333    Link Here 
328
			if ($commentForm->validate()) {
337
			if ($commentForm->validate()) {
329
				$commentForm->execute();
338
				$commentForm->execute();
330
339
340
				// Send a notification to associated users
341
				import('notification.Notification');
342
				$notificationUsers = $article->getAssociatedUserIds(true, false);
343
				foreach ($notificationUsers as $user) {
344
					$url = Request::url(null, $user['role'], 'submissionEditing', $article->getArticleId()) . "#coypedit";
345
					Notification::createNotification($user['id'], "notification.type.copyeditComment",
346
						$article->getArticleTitle(), $url, 1, NOTIFICATION_TYPE_COPYEDIT_COMMENT, 1);
347
				}
348
				
331
				if ($emailComment) {
349
				if ($emailComment) {
332
					$commentForm->email();
350
					$commentForm->email();
333
				}
351
				}
(-)classes/submission/layoutEditor/LayoutEditorAction.inc.php (-2 / +20 lines)
 Lines 252-258    Link Here 
252
252
253
			if ($commentForm->validate()) {
253
			if ($commentForm->validate()) {
254
				$commentForm->execute();
254
				$commentForm->execute();
255
255
				
256
				// Send a notification to associated users
257
				import('notification.Notification');
258
				$notificationUsers = $article->getAssociatedUserIds(true, false);
259
				foreach ($notificationUsers as $user) {
260
					$url = Request::url(null, $user['role'], 'submissionEditing', $article->getArticleId()) . "#layout";
261
					Notification::createNotification($user['id'], "notification.type.layoutComment",
262
						$article->getArticleTitle(), $url, 1, NOTIFICATION_TYPE_LAYOUT_COMMENT, 1);
263
				}
264
				
256
				if ($emailComment) {
265
				if ($emailComment) {
257
					$commentForm->email();
266
					$commentForm->email();
258
				}
267
				}
 Lines 294-300    Link Here 
294
303
295
			if ($commentForm->validate()) {
304
			if ($commentForm->validate()) {
296
				$commentForm->execute();
305
				$commentForm->execute();
297
306
				
307
				// Send a notification to associated users
308
				import('notification.Notification');
309
				$notificationUsers = $article->getAssociatedUserIds(true, false);
310
				foreach ($notificationUsers as $user) {
311
					$url = Request::url(null, $user['role'], 'submissionEditing', $article->getArticleId()) . "#proofread";
312
					Notification::createNotification($user['id'], "notification.type.proofreadComment",
313
						$article->getArticleTitle(), $url, 1, NOTIFICATION_TYPE_PROOFREAD_COMMENT, 1);
314
				}
315
				
298
				if ($emailComment) {
316
				if ($emailComment) {
299
					$commentForm->email();
317
					$commentForm->email();
300
				}
318
				}
(-)classes/submission/proofreader/ProofreaderAction.inc.php (-1 / +19 lines)
 Lines 474-479    Link Here 
474
			if ($commentForm->validate()) {
474
			if ($commentForm->validate()) {
475
				$commentForm->execute();
475
				$commentForm->execute();
476
476
477
				// Send a notification to associated users
478
				import('notification.Notification');
479
				$notificationUsers = $article->getAssociatedUserIds(true, false);
480
				foreach ($notificationUsers as $user) {
481
					$url = Request::url(null, $user['role'], 'submissionEditing', $article->getArticleId()) . "#proofread";
482
					Notification::createNotification($user['id'], "notification.type.proofreadComment",
483
						$article->getArticleTitle(), $url, 1, NOTIFICATION_TYPE_PROOFREAD_COMMENT, 1);
484
				}
485
				
477
				if ($emailComment) {
486
				if ($emailComment) {
478
					$commentForm->email();
487
					$commentForm->email();
479
				}
488
				}
 Lines 516-522    Link Here 
516
525
517
			if ($commentForm->validate()) {
526
			if ($commentForm->validate()) {
518
				$commentForm->execute();
527
				$commentForm->execute();
519
528
								
529
				// Send a notification to associated users
530
				import('notification.Notification');
531
				$notificationUsers = $article->getAssociatedUserIds(true, false);
532
				foreach ($notificationUsers as $user) {
533
					$url = Request::url(null, $user['role'], 'submissionEditing', $article->getArticleId()) . "#layout";
534
					Notification::createNotification($user['id'], "notification.type.layoutComment",
535
						$article->getArticleTitle(), $url, 1, NOTIFICATION_TYPE_LAYOUT_COMMENT, 1);
536
				}
537
				
520
				if ($emailComment) {
538
				if ($emailComment) {
521
					$commentForm->email();
539
					$commentForm->email();
522
				}
540
				}
(-)classes/submission/reviewer/ReviewerAction.inc.php (+24 lines)
 Lines 305-310    Link Here 
305
			if ($commentForm->validate()) {
305
			if ($commentForm->validate()) {
306
				$commentForm->execute();
306
				$commentForm->execute();
307
307
308
				// Send a notification to associated users
309
				import('notification.Notification');
310
				$notificationUsers = $article->getAssociatedUserIds();
311
				foreach ($notificationUsers as $user) {
312
					$url = Request::url(null, $user['role'], 'submissionReview', $article->getArticleId())  . "#peerReview";
313
					Notification::createNotification($user['id'], "notification.type.reviewerComment",
314
						$article->getArticleTitle(), $url, 1, NOTIFICATION_TYPE_REVIEWER_COMMENT, 1);
315
				}
316
				
308
				if ($emailComment) {
317
				if ($emailComment) {
309
					$commentForm->email();
318
					$commentForm->email();
310
				}
319
				}
 Lines 347-352    Link Here 
347
			$reviewForm->readInputData();
356
			$reviewForm->readInputData();
348
			if ($reviewForm->validate()) {
357
			if ($reviewForm->validate()) {
349
				$reviewForm->execute();
358
				$reviewForm->execute();
359
360
				// Send a notification to associated users
361
				import('notification.Notification');
362
				$reviewAssignmentDao =& DAORegistry::getDAO('ReviewAssignmentDAO');
363
				$reviewAssignment = $reviewAssignmentDao->getReviewAssignmentById($reviewId);
364
				$articleId = $reviewAssignment->getArticleId();
365
				$articleDao =& DAORegistry::getDAO('ArticleDAO'); 
366
				$article =& $articleDao->getArticle($articleId);
367
				$notificationUsers = $article->getAssociatedUserIds();
368
				foreach ($notificationUsers as $user) {
369
					$url = Request::url(null, $user['role'], 'submissionReview', $article->getArticleId())  . "#peerReview";
370
					Notification::createNotification($user['id'], "notification.type.reviewerFormComment",
371
						$article->getArticleTitle(), $url, 1, NOTIFICATION_TYPE_REVIEWER_FORM_COMMENT, 1);
372
				}
373
				
350
			} else {
374
			} else {
351
				$reviewForm->display();
375
				$reviewForm->display();
352
				return false;
376
				return false;
(-)classes/submission/sectionEditor/SectionEditorAction.inc.php (+45 lines)
 Lines 1758-1763    Link Here 
1758
		if ($commentForm->validate()) {
1758
		if ($commentForm->validate()) {
1759
			$commentForm->execute();
1759
			$commentForm->execute();
1760
1760
1761
			// Send a notification to associated users
1762
			import('notification.Notification');
1763
			$notificationUsers = $article->getAssociatedUserIds();
1764
			foreach ($notificationUsers as $user) {
1765
				$url = Request::url(null, $user['role'], 'submissionReview', $article->getArticleId())  . "#peerReview";
1766
				Notification::createNotification($user['id'], "notification.type.reviewerComment",
1767
					$article->getArticleTitle(), $url, 1, NOTIFICATION_TYPE_REVIEWER_COMMENT, 1);
1768
			}
1769
				
1761
			if ($emailComment) {
1770
			if ($emailComment) {
1762
				$commentForm->email();
1771
				$commentForm->email();
1763
			}
1772
			}
 Lines 1801-1806    Link Here 
1801
		if ($commentForm->validate()) {
1810
		if ($commentForm->validate()) {
1802
			$commentForm->execute();
1811
			$commentForm->execute();
1803
1812
1813
			// Send a notification to associated users
1814
			import('notification.Notification');
1815
			$notificationUsers = $article->getAssociatedUserIds(true, false);
1816
			foreach ($notificationUsers as $user) {
1817
				$url = Request::url(null, $user['role'], 'submissionReview', $article->getArticleId()) . "#editorDecision";
1818
				Notification::createNotification($user['id'], "notification.type.editorDecisionComment",
1819
					$article->getArticleTitle(), $url, 1, NOTIFICATION_TYPE_EDITOR_DECISION_COMMENT, 1);
1820
			}
1821
				
1804
			if ($emailComment) {
1822
			if ($emailComment) {
1805
				$commentForm->email();
1823
				$commentForm->email();
1806
			}
1824
			}
 Lines 2044-2049    Link Here 
2044
		if ($commentForm->validate()) {
2062
		if ($commentForm->validate()) {
2045
			$commentForm->execute();
2063
			$commentForm->execute();
2046
2064
2065
			// Send a notification to associated users
2066
			import('notification.Notification');
2067
			$notificationUsers = $article->getAssociatedUserIds(true, false);
2068
			foreach ($notificationUsers as $user) {
2069
				$url = Request::url(null, $user['role'], 'submissionEditing', $article->getArticleId()) . "#copyedit";
2070
				Notification::createNotification($user['id'], "notification.type.copyeditComment",
2071
					$article->getArticleTitle(), $url, 1, NOTIFICATION_TYPE_COPYEDIT_COMMENT, 1);
2072
			}
2073
2047
			if ($emailComment) {
2074
			if ($emailComment) {
2048
				$commentForm->email();
2075
				$commentForm->email();
2049
			}
2076
			}
 Lines 2087-2092    Link Here 
2087
		if ($commentForm->validate()) {
2114
		if ($commentForm->validate()) {
2088
			$commentForm->execute();
2115
			$commentForm->execute();
2089
2116
2117
			// Send a notification to associated users
2118
			import('notification.Notification');
2119
			$notificationUsers = $article->getAssociatedUserIds(true, false);
2120
			foreach ($notificationUsers as $user) {
2121
				$url = Request::url(null, $user['role'], 'submissionEditing', $article->getArticleId()) . "#layout";
2122
				Notification::createNotification($user['id'], "notification.type.layoutComment",
2123
					$article->getArticleTitle(), $url, 1, NOTIFICATION_TYPE_LAYOUT_COMMENT, 1);
2124
			}
2125
				
2090
			if ($emailComment) {
2126
			if ($emailComment) {
2091
				$commentForm->email();
2127
				$commentForm->email();
2092
			}
2128
			}
 Lines 2130-2135    Link Here 
2130
		if ($commentForm->validate()) {
2166
		if ($commentForm->validate()) {
2131
			$commentForm->execute();
2167
			$commentForm->execute();
2132
2168
2169
			// Send a notification to associated users
2170
			import('notification.Notification');
2171
			$notificationUsers = $article->getAssociatedUserIds(true, false);
2172
			foreach ($notificationUsers as $user) {
2173
				$url = Request::url(null, $user['role'], 'submissionEditing', $article->getArticleId()) . "#proofread";
2174
				Notification::createNotification($user['id'], "notification.type.proofreadComment",
2175
					$article->getArticleTitle(), $url, 1, NOTIFICATION_TYPE_PROOFREAD_COMMENT, 1);
2176
			}	
2177
			
2133
			if ($emailComment) {
2178
			if ($emailComment) {
2134
				$commentForm->email();
2179
				$commentForm->email();
2135
			}
2180
			}
(-)dbscripts/xml/data/email_templates.xml (+15 lines)
 Lines 21-26    Link Here 
21
		  *
21
		  *
22
		  -->
22
		  -->
23
		<row>
23
		<row>
24
			<field name="email_key">NOTIFICATION</field>
25
			<field name="can_edit">1</field>
26
			<field name="can_disable">0</field>
27
		</row>
28
		<row>
29
			<field name="email_key">NOTIFICATION_MAILLIST</field>
30
			<field name="can_edit">1</field>
31
			<field name="can_disable">0</field>
32
		</row>
33
		<row>
34
			<field name="email_key">NOTIFICATION_MAILLIST_PASSWORD</field>
35
			<field name="can_edit">1</field>
36
			<field name="can_disable">0</field>
37
		</row>
38
		<row>
24
			<field name="email_key">PASSWORD_RESET_CONFIRM</field>
39
			<field name="email_key">PASSWORD_RESET_CONFIRM</field>
25
			<field name="can_edit">1</field>
40
			<field name="can_edit">1</field>
26
			<field name="can_disable">0</field>
41
			<field name="can_disable">0</field>
(-)dbscripts/xml/data/locale/en_US/email_templates_data.xml (+49 lines)
 Lines 22-27    Link Here 
22
		  *
22
		  *
23
		  -->
23
		  -->
24
		<row>
24
		<row>
25
			<field name="email_key">NOTIFICATION</field>
26
			<field name="subject">New notification</field>
27
			<field name="body">You have a new notification from {$siteTitle}:
28
29
{$notificationContents}
30
31
Link: {$url}
32
33
{$principalContactSignature}</field>
34
			<field name="description">The email is sent to registered users that have selected to have this type of notification emailed to them.</field>
35
		</row>
36
		<row>
37
			<field name="email_key">NOTIFICATION_MAILLIST</field>
38
			<field name="subject">New notification</field>
39
			<field name="body">You have a new notification from {$siteTitle}:
40
--
41
{$notificationContents}
42
43
Link: {$url}
44
--
45
46
If you wish to stop receiving notification emails, please go to {$unsubscribeLink} and enter your email address and password.
47
48
{$principalContactSignature}</field>
49
			<field name="description">This email is sent to unregistered users on the notification mailing list.</field>
50
		</row>
51
		<row>
52
			<field name="email_key">NOTIFICATION_MAILLIST_WELCOME</field>
53
			<field name="subject">Welcome to the the {$siteTitle} mailing list!</field>
54
			<field name="body">You have signed up to receive notifications from {$siteTitle}.
55
56
If you wish to stop receiving notification emails, please go to {$unsubscribeLink} and enter your email address and password.
57
58
Your password for disabling notification emails is: {$password}
59
60
{$principalContactSignature}</field>
61
			<field name="description">This email is sent to an unregistered user who just registered with the notification mailing list.</field>
62
		</row>
63
		<row>
64
			<field name="email_key">NOTIFICATION_MAILLIST_PASSWORD</field>
65
			<field name="subject">Your notification mailing list information</field>
66
			<field name="body">Your new password for disabling notification emails is: {$password}
67
68
If you wish to stop receiving notification emails, please go to {$unsubscribeLink} and enter your email address and password.
69
70
{$principalContactSignature}</field>
71
			<field name="description">This email is sent to an unregistered user on the notification mailing list when they indicate that they have forgotten their password or are unable to login. It provides a URL they can follow to reset their password.</field>
72
		</row>
73
		<row>
25
			<field name="email_key">PASSWORD_RESET_CONFIRM</field>
74
			<field name="email_key">PASSWORD_RESET_CONFIRM</field>
26
			<field name="subject">Password Reset Confirmation</field>
75
			<field name="subject">Password Reset Confirmation</field>
27
			<field name="body">We have received a request to reset your password for the {$siteTitle} web site.
76
			<field name="body">We have received a request to reset your password for the {$siteTitle} web site.
(-)pages/admin/AdminJournalHandler.inc.php (+1 lines)
 Lines 77-82    Link Here 
77
		if ($settingsForm->validate()) {
77
		if ($settingsForm->validate()) {
78
			PluginRegistry::loadCategory('blocks');
78
			PluginRegistry::loadCategory('blocks');
79
			$settingsForm->execute();
79
			$settingsForm->execute();
80
80
			Request::redirect(null, null, 'journals');
81
			Request::redirect(null, null, 'journals');
81
82
82
		} else {
83
		} else {
(-)pages/admin/AdminSettingsHandler.inc.php (-1 lines)
 Lines 77-83    Link Here 
77
			}
77
			}
78
		} elseif ($settingsForm->validate()) {
78
		} elseif ($settingsForm->validate()) {
79
			$settingsForm->execute();
79
			$settingsForm->execute();
80
81
			$templateMgr = &TemplateManager::getManager();
80
			$templateMgr = &TemplateManager::getManager();
82
			$templateMgr->assign(array(
81
			$templateMgr->assign(array(
83
				'currentUrl' => Request::url(null, null, 'settings'),
82
				'currentUrl' => Request::url(null, null, 'settings'),
(-)pages/author/SubmitHandler.inc.php (+19 lines)
 Lines 144-149    Link Here 
144
			$articleId = $submitForm->execute();
144
			$articleId = $submitForm->execute();
145
145
146
			if ($step == 5) {
146
			if ($step == 5) {
147
				// Send a notification to associated users
148
				import('notification.Notification');
149
				$articleDao =& DAORegistry::getDAO('ArticleDAO'); 
150
				$article =& $articleDao->getArticle($articleId);
151
				$roleDao = &DAORegistry::getDAO('RoleDAO');
152
				$notificationUsers = array();
153
				$journalManagers = $roleDao->getUsersByRoleId(ROLE_ID_JOURNAL_MANAGER);
154
				$allUsers = $journalManagers->toArray();
155
				$editors = $roleDao->getUsersByRoleId(ROLE_ID_EDITOR);
156
				array_merge($allUsers, $editors->toArray());
157
				foreach ($allUsers as $user) {
158
					$notificationUsers[] = array('id' => $user->getUserId());
159
				}
160
				foreach ($notificationUsers as $user) {
161
					$url = Request::url(null, 'editor', 'submission', $articleId);
162
					Notification::createNotification($user['id'], "notification.type.articleSubmitted",
163
						$article->getArticleTitle(), $url, 1, NOTIFICATION_TYPE_ARTICLE_SUBMITTED, 1);
164
				}
165
				
147
				$journal = &Request::getJournal();
166
				$journal = &Request::getJournal();
148
				$templateMgr = &TemplateManager::getManager();
167
				$templateMgr = &TemplateManager::getManager();
149
				$templateMgr->assign_by_ref('journal', $journal);
168
				$templateMgr->assign_by_ref('journal', $journal);
(-)pages/comment/CommentHandler.inc.php (+12 lines)
 Lines 97-102    Link Here 
97
			$commentForm->readInputData();
97
			$commentForm->readInputData();
98
			if ($commentForm->validate()) {
98
			if ($commentForm->validate()) {
99
				$commentForm->execute();
99
				$commentForm->execute();
100
				
101
				// Send a notification to associated users
102
				import('notification.Notification');
103
				$articleDAO =& DAORegistry::getDAO('ArticleDAO');
104
				$article =& $articleDAO->getArticle($articleId);
105
				$notificationUsers = $article->getAssociatedUserIds();
106
				foreach ($notificationUsers as $user) {
107
					$url = Request::url(null, null, 'view', array($articleId, $galleyId, $parentId));
108
					Notification::createNotification($user['id'], "notification.type.userComment",
109
						$article->getArticleTitle(), $url, 1, NOTIFICATION_TYPE_USER_COMMENT, 1);
110
				}
111
				
100
				Request::redirect(null, null, 'view', array($articleId, $galleyId, $parentId), array('refresh' => 1));
112
				Request::redirect(null, null, 'view', array($articleId, $galleyId, $parentId), array('refresh' => 1));
101
			}
113
			}
102
		}
114
		}
(-)pages/editor/IssueManagementHandler.inc.php (-2 / +20 lines)
 Lines 94-100    Link Here 
94
				$issueDao->updateIssue($issue);
94
				$issueDao->updateIssue($issue);
95
			}
95
			}
96
		}
96
		}
97
98
		Request::redirect(null, null, 'backIssues');
97
		Request::redirect(null, null, 'backIssues');
99
	}
98
	}
100
99
 Lines 537-543    Link Here 
537
536
538
		$issueDao = &DAORegistry::getDAO('IssueDAO');
537
		$issueDao = &DAORegistry::getDAO('IssueDAO');
539
		$issueDao->updateCurrentIssue($journalId,$issue);
538
		$issueDao->updateCurrentIssue($journalId,$issue);
540
539
		
540
		// Send a notification to associated users
541
		import('notification.Notification');
542
		$roleDao = &DAORegistry::getDAO('RoleDAO');
543
		$notificationUsers = array();
544
		$allUsers = $roleDao->getUsersByJournalId($journalId);
545
		while (!$allUsers->eof()) {
546
			$user = &$allUsers->next();
547
			$notificationUsers[] = array('id' => $user->geUserId());
548
			unset($user);
549
		}
550
		$url = Request::url(null, 'issue', 'current');
551
		foreach ($notificationUsers as $user) {
552
			Notification::createNotification($user['id'], "notification.type.issuePublished",
553
				null, $url, 1, NOTIFICATION_TYPE_PUBLISHED_ISSUE, 1);
554
		}
555
		$notificationDao = &DAORegistry::getDAO('NotificationDAO');
556
		$notificationDao->sendToMailingList(Notification::createNotification(0, "notification.type.issuePublished",
557
				null, $url, 1, NOTIFICATION_TYPE_PUBLISHED_ISSUE, 1));
558
				
541
		Request::redirect(null, null, 'issueToc', $issue->getIssueId());
559
		Request::redirect(null, null, 'issueToc', $issue->getIssueId());
542
	}
560
	}
543
561
(-)pages/layoutEditor/SubmissionLayoutHandler.inc.php (+23 lines)
 Lines 184-189    Link Here 
184
		if ($submitForm->validate()) {
184
		if ($submitForm->validate()) {
185
			$submitForm->execute();
185
			$submitForm->execute();
186
186
187
			// Send a notification to associated users
188
			import('notification.Notification');
189
			$articleDao =& DAORegistry::getDAO('ArticleDAO'); 
190
			$article =& $articleDao->getArticle($articleId);
191
			$notificationUsers = $article->getAssociatedUserIds(true, false);
192
			foreach ($notificationUsers as $user) {
193
				$url = Request::url(null, $user['role'], 'submissionEditing', $article->getArticleId()) . "#layout";
194
				Notification::createNotification($user['id'], "notification.type.galleyModified",
195
					$article->getArticleTitle(), $url, 1, NOTIFICATION_TYPE_GALLEY_MODIFIED, 1);
196
			}
197
187
			if (Request::getUserVar('uploadImage')) {
198
			if (Request::getUserVar('uploadImage')) {
188
				$submitForm->uploadImage();
199
				$submitForm->uploadImage();
189
				Request::redirect(null, null, 'editGalley', array($articleId, $galleyId));
200
				Request::redirect(null, null, 'editGalley', array($articleId, $galleyId));
 Lines 368-373    Link Here 
368
379
369
		if ($submitForm->validate()) {
380
		if ($submitForm->validate()) {
370
			$submitForm->execute();
381
			$submitForm->execute();
382
383
			// Send a notification to associated users
384
			import('notification.Notification');
385
			$articleDao =& DAORegistry::getDAO('ArticleDAO'); 
386
			$article =& $articleDao->getArticle($articleId);
387
			$notificationUsers = $article->getAssociatedUserIds(true, false);
388
			foreach ($notificationUsers as $user) {
389
				$url = Request::url(null, $user['role'], 'submissionEditing', $article->getArticleId()) . "#layout";
390
				Notification::createNotification($user['id'], "notification.type.suppFileModified",
391
					$article->getArticleTitle(), $url, 1, NOTIFICATION_TYPE_SUPP_FILE_MODIFIED, 1);
392
			}
393
			
371
			Request::redirect(null, null, 'submission', $articleId);
394
			Request::redirect(null, null, 'submission', $articleId);
372
395
373
		} else {
396
		} else {
(-)pages/manager/ManagerPaymentHandler.inc.php (-1 lines)
 Lines 152-158    Link Here 
152
152
153
		if ($settingsForm->validate()) {
153
		if ($settingsForm->validate()) {
154
			$settingsForm->execute();
154
			$settingsForm->execute();
155
156
			$templateMgr->assign(array(
155
			$templateMgr->assign(array(
157
				'currentUrl' => Request::url(null, null, 'payMethodSettings'),
156
				'currentUrl' => Request::url(null, null, 'payMethodSettings'),
158
				'pageTitle' => 'manager.payment.paymentMethods',
157
				'pageTitle' => 'manager.payment.paymentMethods',
(-)pages/manager/SubscriptionHandler.inc.php (-2 lines)
 Lines 230-236    Link Here 
230
230
231
			if ($subscriptionForm->validate()) {
231
			if ($subscriptionForm->validate()) {
232
				$subscriptionForm->execute();
232
				$subscriptionForm->execute();
233
234
				if (Request::getUserVar('createAnother')) {
233
				if (Request::getUserVar('createAnother')) {
235
					Request::redirect(null, null, 'selectSubscriber', null, array('subscriptionCreated', 1));
234
					Request::redirect(null, null, 'selectSubscriber', null, array('subscriptionCreated', 1));
236
				} else {
235
				} else {
 Lines 465-471    Link Here 
465
464
466
		if ($subscriptionPolicyForm->validate()) {
465
		if ($subscriptionPolicyForm->validate()) {
467
			$subscriptionPolicyForm->execute();
466
			$subscriptionPolicyForm->execute();
468
469
			SubscriptionHandler::setupTemplate(true);
467
			SubscriptionHandler::setupTemplate(true);
470
468
471
			$templateMgr = &TemplateManager::getManager();
469
			$templateMgr = &TemplateManager::getManager();
(-)pages/sectionEditor/SubmissionEditHandler.inc.php (-1 / +46 lines)
 Lines 1214-1219    Link Here 
1214
1214
1215
		if ($submitForm->validate()) {
1215
		if ($submitForm->validate()) {
1216
			$submitForm->execute();
1216
			$submitForm->execute();
1217
1218
			// Send a notification to associated users
1219
			import('notification.Notification');
1220
			$articleDao =& DAORegistry::getDAO('ArticleDAO'); 
1221
			$article =& $articleDao->getArticle($articleId);
1222
			$notificationUsers = $article->getAssociatedUserIds(true, false);
1223
			foreach ($notificationUsers as $user) {
1224
				$url = Request::url(null, $user['role'], 'submissionEditing', $article->getArticleId()) . "#layout";
1225
				Notification::createNotification($user['id'], "notification.type.suppFileModified",
1226
					$article->getArticleTitle(), $url, 1, NOTIFICATION_TYPE_SUPP_FILE_MODIFIED, 1);
1227
			}
1228
			
1217
			Request::redirect(null, null, SubmissionEditHandler::getFrom(), $articleId);
1229
			Request::redirect(null, null, SubmissionEditHandler::getFrom(), $articleId);
1218
		} else {
1230
		} else {
1219
			parent::setupTemplate(true, $articleId, 'summary');
1231
			parent::setupTemplate(true, $articleId, 'summary');
 Lines 1463-1468    Link Here 
1463
		$galleyForm =& new ArticleGalleyForm($articleId);
1475
		$galleyForm =& new ArticleGalleyForm($articleId);
1464
		$galleyId = $galleyForm->execute($fileName);
1476
		$galleyId = $galleyForm->execute($fileName);
1465
1477
1478
		// Send a notification to associated users
1479
		import('notification.Notification');
1480
		$articleDao = &DAORegistry::getDAO('ArticleDAO'); 
1481
		$article = &$articleDao->getArticle($articleId);
1482
		$notificationUsers = $article->getAssociatedUserIds(true, false);
1483
		foreach ($notificationUsers as $user) {
1484
			$url = Request::url(null, $user['role'], 'submissionEditing', $article->getArticleId()) . "#layout";
1485
			Notification::createNotification($user['id'], "notification.type.galleyAdded",
1486
				$article->getArticleTitle(), $url, 1, NOTIFICATION_TYPE_GALLEY_ADDED, 1);
1487
		}
1488
		
1466
		Request::redirect(null, null, 'editGalley', array($articleId, $galleyId));
1489
		Request::redirect(null, null, 'editGalley', array($articleId, $galleyId));
1467
	}
1490
	}
1468
1491
 Lines 1507-1513    Link Here 
1507
		$submitForm->readInputData();
1530
		$submitForm->readInputData();
1508
		if ($submitForm->validate()) {
1531
		if ($submitForm->validate()) {
1509
			$submitForm->execute();
1532
			$submitForm->execute();
1510
1533
			
1534
			// Send a notification to associated users
1535
			import('notification.Notification');
1536
			$articleDao =& DAORegistry::getDAO('ArticleDAO'); 
1537
			$article =& $articleDao->getArticle($articleId);
1538
			$notificationUsers = $article->getAssociatedUserIds(true, false);
1539
			foreach ($notificationUsers as $user) {
1540
				$url = Request::url(null, $user['role'], 'submissionEditing', $article->getArticleId()) . "#layout";
1541
				Notification::createNotification($user['id'], "notification.type.galleyModified",
1542
					$article->getArticleTitle(), $url, 1, NOTIFICATION_TYPE_GALLEY_MODIFIED, 1);
1543
			}
1544
			
1511
			if (Request::getUserVar('uploadImage')) {
1545
			if (Request::getUserVar('uploadImage')) {
1512
				$submitForm->uploadImage();
1546
				$submitForm->uploadImage();
1513
				Request::redirect(null, null, 'editGalley', array($articleId, $galleyId));
1547
				Request::redirect(null, null, 'editGalley', array($articleId, $galleyId));
 Lines 1626-1631    Link Here 
1626
		$suppFileForm->setData('title', Locale::translate('common.untitled'));
1660
		$suppFileForm->setData('title', Locale::translate('common.untitled'));
1627
		$suppFileId = $suppFileForm->execute($fileName);
1661
		$suppFileId = $suppFileForm->execute($fileName);
1628
1662
1663
		// Send a notification to associated users
1664
		import('notification.Notification');
1665
		$articleDao =& DAORegistry::getDAO('ArticleDAO'); 
1666
		$article =& $articleDao->getArticle($articleId);
1667
		$notificationUsers = $article->getAssociatedUserIds(true, false);
1668
		foreach ($notificationUsers as $user) {
1669
			$url = Request::url(null, $user['role'], 'submissionEditing', $article->getArticleId()) . "#layout";
1670
			Notification::createNotification($user['id'], "notification.type.suppFileAdded",
1671
				$article->getArticleTitle(), $url, 1, NOTIFICATION_TYPE_SUPP_FILE_ADDED, 1);
1672
		}
1673
1629
		Request::redirect(null, null, 'editSuppFile', array($articleId, $suppFileId));
1674
		Request::redirect(null, null, 'editSuppFile', array($articleId, $suppFileId));
1630
	}
1675
	}
1631
1676
(-)plugins/blocks/fontSize/FontSizeBlockPlugin.inc.php (-1 / +1 lines)
 Lines 23-29    Link Here 
23
		if ($success) {
23
		if ($success) {
24
			$this->addLocaleData();
24
			$this->addLocaleData();
25
			$templateMgr =& TemplateManager::getManager();
25
			$templateMgr =& TemplateManager::getManager();
26
			$templateMgr->assign('fontIconPath', 'templates/images/icons');
26
			$templateMgr->assign('fontIconPath', 'lib/pkp/templates/images/icons');
27
			$additionalHeadData = $templateMgr->get_template_vars('additionalHeadData');
27
			$additionalHeadData = $templateMgr->get_template_vars('additionalHeadData');
28
28
29
			// Add font sizer js and css if not already in header
29
			// Add font sizer js and css if not already in header
(-)styles/common.css (-1 / +18 lines)
 Lines 651-657    Link Here 
651
	font-size: 1em;
651
	font-size: 1em;
652
}
652
}
653
653
654
ul.formErrorList a {
654
span.formSuccess {
655
	color: #090;
656
	font-weight: bold;
657
	font-size: 1em;
658
}
659
660
ul.formErrorList {
655
	color: #900;
661
	color: #900;
656
}
662
}
657
663
 Lines 742-744    Link Here 
742
	width: 505px;
748
	width: 505px;
743
	z-index:1;
749
	z-index:1;
744
}
750
}
751
752
td.notificationContent {
753
	padding-left: 5px;
754
	padding-right: 5px;
755
}
756
757
td.notificationFunction {
758
	padding-left: 5px;
759
	padding-right: 5px;
760
	text-align: right;
761
}
(-)templates/article/article.tpl (-12 / +12 lines)
 Lines 15-23    Link Here 
15
		<div id="topBar">
15
		<div id="topBar">
16
			<div id="articleFontSize">
16
			<div id="articleFontSize">
17
				{translate key="article.fontSize"}:&nbsp;
17
				{translate key="article.fontSize"}:&nbsp;
18
				<a href="#" onclick="setFontSize('{translate|escape:"jsparam" key="article.fontSize.small.altText"}');" class="icon">{icon path="templates/images/icons/" name="font_small"}</a>&nbsp;
18
				<a href="#" onclick="setFontSize('{translate|escape:"jsparam" key="article.fontSize.small.altText"}');" class="icon">{icon path="lib/pkp/templates/images/icons/" name="font_small"}</a>&nbsp;
19
				<a href="#" onclick="setFontSize('{translate|escape:"jsparam" key="article.fontSize.medium.altText"}');" class="icon">{icon path="templates/images/icons/" name="font_medium"}</a>&nbsp;
19
				<a href="#" onclick="setFontSize('{translate|escape:"jsparam" key="article.fontSize.medium.altText"}');" class="icon">{icon path="lib/pkp/templates/images/icons/" name="font_medium"}</a>&nbsp;
20
				<a href="#" onclick="setFontSize('{translate|escape:"jsparam" key="article.fontSize.large.altText"}');" class="icon">{icon path="templates/images/icons/" name="font_large"}</a>
20
				<a href="#" onclick="setFontSize('{translate|escape:"jsparam" key="article.fontSize.large.altText"}');" class="icon">{icon path="lib/pkp/templates/images/icons/" name="font_large"}</a>
21
			</div>
21
			</div>
22
		</div>
22
		</div>
23
		{$galley->getHTMLContents()}
23
		{$galley->getHTMLContents()}
 Lines 27-35    Link Here 
27
		{assign var=galleys value=$article->getLocalizedGalleys()}
27
		{assign var=galleys value=$article->getLocalizedGalleys()}
28
		{if $galleys && $subscriptionRequired && $showGalleyLinks}
28
		{if $galleys && $subscriptionRequired && $showGalleyLinks}
29
			<div id="accessKey">
29
			<div id="accessKey">
30
				<img src="{$baseUrl}/templates/images/icons/fulltext_open_medium.gif" alt="{translate key="article.accessLogoOpen.altText"}" />
30
				<img src="{$baseUrl}/lib/pkp/templates/images/icons/fulltext_open_medium.png" alt="{translate key="article.accessLogoOpen.altText"}" />
31
				{translate key="reader.openAccess"}&nbsp;
31
				{translate key="reader.openAccess"}&nbsp;
32
				<img src="{$baseUrl}/templates/images/icons/fulltext_restricted_medium.gif" alt="{translate key="article.accessLogoRestricted.altText"}" />
32
				<img src="{$baseUrl}/lib/pkp/templates/images/icons/fulltext_restricted_medium.png" alt="{translate key="article.accessLogoRestricted.altText"}" />
33
				{if $purchaseArticleEnabled}
33
				{if $purchaseArticleEnabled}
34
					{translate key="reader.subscriptionOrFeeAccess"}
34
					{translate key="reader.subscriptionOrFeeAccess"}
35
				{else}
35
				{else}
 Lines 39-47    Link Here 
39
		{/if}
39
		{/if}
40
		<div id="articleFontSize">
40
		<div id="articleFontSize">
41
				{translate key="article.fontSize"}:&nbsp;
41
				{translate key="article.fontSize"}:&nbsp;
42
			<a href="#" onclick="setFontSize('{translate|escape:"jsparam" key="article.fontSize.small.altText"}');" class="icon">{icon path="templates/images/icons/" name="font_small"}</a>&nbsp;
42
			<a href="#" onclick="setFontSize('{translate|escape:"jsparam" key="article.fontSize.small.altText"}');" class="icon">{icon path="lib/pkp/templates/images/icons/" name="font_small"}</a>&nbsp;
43
			<a href="#" onclick="setFontSize('{translate|escape:"jsparam" key="article.fontSize.medium.altText"}');" class="icon">{icon path="templates/images/icons/" name="font_medium"}</a>&nbsp;
43
			<a href="#" onclick="setFontSize('{translate|escape:"jsparam" key="article.fontSize.medium.altText"}');" class="icon">{icon path="lib/pkp/templates/images/icons/" name="font_medium"}</a>&nbsp;
44
			<a href="#" onclick="setFontSize('{translate|escape:"jsparam" key="article.fontSize.large.altText"}');" class="icon">{icon path="templates/images/icons/" name="font_large"}</a>
44
			<a href="#" onclick="setFontSize('{translate|escape:"jsparam" key="article.fontSize.large.altText"}');" class="icon">{icon path="lib/pkp/templates/images/icons/" name="font_large"}</a>
45
		</div>
45
		</div>
46
	</div>
46
	</div>
47
	{if $coverPagePath}
47
	{if $coverPagePath}
 Lines 71-87    Link Here 
71
				<a href="{url page="article" op="view" path=$article->getBestArticleId($currentJournal)|to_array:$galley->getBestGalleyId($currentJournal)}" class="file" target="_parent">{$galley->getGalleyLabel()|escape}</a>
71
				<a href="{url page="article" op="view" path=$article->getBestArticleId($currentJournal)|to_array:$galley->getBestGalleyId($currentJournal)}" class="file" target="_parent">{$galley->getGalleyLabel()|escape}</a>
72
				{if $subscriptionRequired && $showGalleyLinks && $restrictOnlyPdf}
72
				{if $subscriptionRequired && $showGalleyLinks && $restrictOnlyPdf}
73
					{if $article->getAccessStatus() || !$galley->isPdfGalley()}	
73
					{if $article->getAccessStatus() || !$galley->isPdfGalley()}	
74
						<img class="accessLogo" src="{$baseUrl}/templates/images/icons/fulltext_open_medium.gif" alt="{translate key="article.accessLogoOpen.altText"}" />
74
						<img class="accessLogo" src="{$baseUrl}/lib/pkp/templates/images/icons/fulltext_open_medium.png" alt="{translate key="article.accessLogoOpen.altText"}" />
75
					{else}
75
					{else}
76
						<img class="accessLogo" src="{$baseUrl}/templates/images/icons/fulltext_restricted_medium.gif" alt="{translate key="article.accessLogoRestricted.altText"}" />
76
						<img class="accessLogo" src="{$baseUrl}/lib/pkp/templates/images/icons/fulltext_restricted_medium.png" alt="{translate key="article.accessLogoRestricted.altText"}" />
77
					{/if}
77
					{/if}
78
				{/if}
78
				{/if}
79
			{/foreach}
79
			{/foreach}
80
			{if $subscriptionRequired && $showGalleyLinks && !$restrictOnlyPdf}
80
			{if $subscriptionRequired && $showGalleyLinks && !$restrictOnlyPdf}
81
				{if $article->getAccessStatus()}
81
				{if $article->getAccessStatus()}
82
					<img class="accessLogo" src="{$baseUrl}/templates/images/icons/fulltext_open_medium.gif" alt="{translate key="article.accessLogoOpen.altText"}" />
82
					<img class="accessLogo" src="{$baseUrl}/lib/pkp/templates/images/icons/fulltext_open_medium.png" alt="{translate key="article.accessLogoOpen.altText"}" />
83
				{else}
83
				{else}
84
					<img class="accessLogo" src="{$baseUrl}/templates/images/icons/fulltext_restricted_medium.gif" alt="{translate key="article.accessLogoRestricted.altText"}" />
84
					<img class="accessLogo" src="{$baseUrl}/lib/pkp/templates/images/icons/fulltext_restricted_medium.png" alt="{translate key="article.accessLogoRestricted.altText"}" />
85
				{/if}
85
				{/if}
86
			{/if}					
86
			{/if}					
87
		{else}
87
		{else}
(-)templates/common/navbar.tpl (+1 lines)
 Lines 22-27    Link Here 
22
		<li><a href="{url page="search"}">{translate key="navigation.search"}</a></li>
22
		<li><a href="{url page="search"}">{translate key="navigation.search"}</a></li>
23
23
24
		{if $currentJournal}
24
		{if $currentJournal}
25
			<li><a href="{url page="notification"}">{translate key="notification.notifications"}</a></li>
25
			<li><a href="{url page="issue" op="current"}">{translate key="navigation.current"}</a></li>
26
			<li><a href="{url page="issue" op="current"}">{translate key="navigation.current"}</a></li>
26
			<li><a href="{url page="issue" op="archive"}">{translate key="navigation.archives"}</a></li>
27
			<li><a href="{url page="issue" op="archive"}">{translate key="navigation.archives"}</a></li>
27
		{/if}{* $currentJournal *}
28
		{/if}{* $currentJournal *}
(-)templates/issue/issue.tpl (-4 / +4 lines)
 Lines 44-60    Link Here 
44
				<a href="{url page="article" op="view" path=$article->getBestArticleId($currentJournal)|to_array:$galley->getBestGalleyId($currentJournal)}" class="file">{$galley->getGalleyLabel()|escape}</a>
44
				<a href="{url page="article" op="view" path=$article->getBestArticleId($currentJournal)|to_array:$galley->getBestGalleyId($currentJournal)}" class="file">{$galley->getGalleyLabel()|escape}</a>
45
				{if $subscriptionRequired && $showGalleyLinks && $restrictOnlyPdf}
45
				{if $subscriptionRequired && $showGalleyLinks && $restrictOnlyPdf}
46
					{if $article->getAccessStatus() || !$galley->isPdfGalley()}	
46
					{if $article->getAccessStatus() || !$galley->isPdfGalley()}	
47
						<img class="accessLogo" src="{$baseUrl}/templates/images/icons/fulltext_open_medium.gif" alt="{translate key="article.accessLogoOpen.altText"}" />
47
						<img class="accessLogo" src="{$baseUrl}/lib/pkp/templates/images/icons/fulltext_open_medium.png" alt="{translate key="article.accessLogoOpen.altText"}" />
48
					{else}
48
					{else}
49
						<img class="accessLogo" src="{$baseUrl}/templates/images/icons/fulltext_restricted_medium.gif" alt="{translate key="article.accessLogoRestricted.altText"}" />
49
						<img class="accessLogo" src="{$baseUrl}/lib/pkp/templates/images/icons/fulltext_restricted_medium.png" alt="{translate key="article.accessLogoRestricted.altText"}" />
50
					{/if}
50
					{/if}
51
				{/if}
51
				{/if}
52
			{/foreach}
52
			{/foreach}
53
			{if $subscriptionRequired && $showGalleyLinks && !$restrictOnlyPdf}
53
			{if $subscriptionRequired && $showGalleyLinks && !$restrictOnlyPdf}
54
				{if $article->getAccessStatus()}
54
				{if $article->getAccessStatus()}
55
					<img class="accessLogo" src="{$baseUrl}/templates/images/icons/fulltext_open_medium.gif" alt="{translate key="article.accessLogoOpen.altText"}" />
55
					<img class="accessLogo" src="{$baseUrl}/lib/pkp/templates/images/icons/fulltext_open_medium.png" alt="{translate key="article.accessLogoOpen.altText"}" />
56
				{else}
56
				{else}
57
					<img class="accessLogo" src="{$baseUrl}/templates/images/icons/fulltext_restricted_medium.gif" alt="{translate key="article.accessLogoRestricted.altText"}" />
57
					<img class="accessLogo" src="{$baseUrl}/lib/pkp/templates/images/icons/fulltext_restricted_medium.png" alt="{translate key="article.accessLogoRestricted.altText"}" />
58
				{/if}
58
				{/if}
59
			{/if}				
59
			{/if}				
60
		{/if}
60
		{/if}
(-)templates/issue/view.tpl (-2 / +2 lines)
 Lines 11-19    Link Here 
11
 *}
11
 *}
12
{if $subscriptionRequired && $showGalleyLinks && $showToc}
12
{if $subscriptionRequired && $showGalleyLinks && $showToc}
13
	<div id="accessKey">
13
	<div id="accessKey">
14
		<img src="{$baseUrl}/templates/images/icons/fulltext_open_medium.gif" alt="{translate key="article.accessLogoOpen.altText"}" />
14
		<img src="{$baseUrl}/lib/pkp/templates/images/icons/fulltext_open_medium.png" alt="{translate key="article.accessLogoOpen.altText"}" />
15
		{translate key="reader.openAccess"}&nbsp;
15
		{translate key="reader.openAccess"}&nbsp;
16
		<img src="{$baseUrl}/templates/images/icons/fulltext_restricted_medium.gif" alt="{translate key="article.accessLogoRestricted.altText"}" />
16
		<img src="{$baseUrl}/lib/pkp/templates/images/icons/fulltext_restricted_medium.png" alt="{translate key="article.accessLogoRestricted.altText"}" />
17
		{if $purchaseArticleEnabled}
17
		{if $purchaseArticleEnabled}
18
			{translate key="reader.subscriptionOrFeeAccess"}
18
			{translate key="reader.subscriptionOrFeeAccess"}
19
		{else}
19
		{else}

Return to bug 3922