Open Journal Systems  3.3.0
SubmissionMetadataFormImplementation.inc.php
1 <?php
2 
17 import('lib.pkp.classes.submission.PKPSubmissionMetadataFormImplementation');
18 
23  function _getAbstractsRequired($submission) {
24  $sectionDao = DAORegistry::getDAO('SectionDAO'); /* @var $sectionDao SectionDAO */
25  $section = $sectionDao->getById($submission->getCurrentPublication()->getData('sectionId'));
26  return !$section->getAbstractsNotRequired();
27  }
28 
33  function addChecks($submission) {
34  parent::addChecks($submission);
35  $sectionDao = DAORegistry::getDAO('SectionDAO'); /* @var $sectionDao SectionDAO */
36  $section = $sectionDao->getById($submission->getCurrentPublication()->getData('sectionId'));
37  $wordCount = $section->getAbstractWordCount();
38  if (isset($wordCount) && $wordCount > 0) {
39  $this->_parentForm->addCheck(new FormValidatorCustom($this->_parentForm, 'abstract', 'required', 'submission.submit.form.wordCountAlert', function($abstract) use($wordCount) {
40  foreach ($abstract as $localizedAbstract) {
41  if (count(preg_split('/\s+/', trim(str_replace('&nbsp;', ' ', strip_tags($localizedAbstract))))) > $wordCount) {
42  return false;
43  }
44  }
45  return true;
46  }));
47  }
48  }
49 
50 }
51 
52 
SubmissionMetadataFormImplementation\addChecks
addChecks($submission)
Definition: SubmissionMetadataFormImplementation.inc.php:33
DAORegistry\getDAO
static & getDAO($name, $dbconn=null)
Definition: DAORegistry.inc.php:57
PKPSubmissionMetadataFormImplementation
Definition: PKPSubmissionMetadataFormImplementation.inc.php:17
SubmissionMetadataFormImplementation\_getAbstractsRequired
_getAbstractsRequired($submission)
Definition: SubmissionMetadataFormImplementation.inc.php:23
SubmissionMetadataFormImplementation
This can be used by other forms that want to implement submission metadata data and form operations.
Definition: SubmissionMetadataFormImplementation.inc.php:19
FormValidatorCustom
Form validation check with a custom user function performing the validation check.
Definition: FormValidatorCustom.inc.php:18