Open Journal Systems  3.3.0
BibliographyOptions.php
1 <?php
2 /*
3  * citeproc-php
4  *
5  * @link http://github.com/seboettg/citeproc-php for the source repository
6  * @copyright Copyright (c) 2017 Sebastian Böttger.
7  * @license https://opensource.org/licenses/MIT
8  */
9 
11 
12 use SimpleXMLElement;
13 
20 {
21 
29  private $subsequentAuthorSubstitute;
30 
37  private $subsequentAuthorSubstituteRule;
38 
43  private $hangingIndent = false;
44 
51  private $secondFieldAlign;
52 
58  private $lineSpacing;
59 
66  private $entrySpacing;
67 
68  public function __construct(SimpleXMLElement $node)
69  {
70 
72  foreach ($node->attributes() as $attribute) {
73  switch ($attribute->getName()) {
74  case 'subsequent-author-substitute':
75  $this->subsequentAuthorSubstitute = (string) $attribute;
76  break;
77  case 'subsequent-author-substitute-rule':
78  $this->subsequentAuthorSubstituteRule = new SubsequentAuthorSubstituteRule((string) $attribute);
79  break;
80  case 'hanging-indent':
81  $this->hangingIndent = "true" === (string) $attribute ? true : false;
82  break;
83  case 'second-field-align':
84  $this->secondFieldAlign = (string) $attribute;
85  break;
86  case 'line-spacing':
87  $this->lineSpacing = (string) $attribute;
88  break;
89  case 'entry-spacing':
90  $this->entrySpacing = (string) $attribute;
91  }
92  }
93  if (empty($this->subsequentAuthorSubstituteRule)) {
94  $this->subsequentAuthorSubstituteRule = new SubsequentAuthorSubstituteRule("complete-all");
95  }
96  }
97 
101  public function getSubsequentAuthorSubstitute()
102  {
103  return $this->subsequentAuthorSubstitute;
104  }
105 
109  public function setSubsequentAuthorSubstitute($subsequentAuthorSubstitute)
110  {
111  $this->subsequentAuthorSubstitute = $subsequentAuthorSubstitute;
112  }
113 
117  public function getSubsequentAuthorSubstituteRule()
118  {
119  return $this->subsequentAuthorSubstituteRule;
120  }
121 
125  public function setSubsequentAuthorSubstituteRule($subsequentAuthorSubstituteRule)
126  {
127  $this->subsequentAuthorSubstituteRule = $subsequentAuthorSubstituteRule;
128  }
129 
133  public function getHangingIndent()
134  {
135  return $this->hangingIndent;
136  }
137 
141  public function setHangingIndent($hangingIndent)
142  {
143  $this->hangingIndent = $hangingIndent;
144  }
145 
149  public function getSecondFieldAlign()
150  {
151  return $this->secondFieldAlign;
152  }
153 
157  public function setSecondFieldAlign($secondFieldAlign)
158  {
159  $this->secondFieldAlign = $secondFieldAlign;
160  }
161 
165  public function getLineSpacing()
166  {
167  return $this->lineSpacing;
168  }
169 
173  public function setLineSpacing($lineSpacing)
174  {
175  $this->lineSpacing = $lineSpacing;
176  }
177 
181  public function getEntrySpacing()
182  {
183  return $this->entrySpacing;
184  }
185 
189  public function setEntrySpacing($entrySpacing)
190  {
191  $this->entrySpacing = $entrySpacing;
192  }
193 }
Seboettg\CiteProc\Style\Options\BibliographyOptions\__construct
__construct(SimpleXMLElement $node)
Definition: BibliographyOptions.php:86
Seboettg\CiteProc\Style\Options\BibliographyOptions\getSecondFieldAlign
getSecondFieldAlign()
Definition: BibliographyOptions.php:167
Seboettg\CiteProc\Style\Options\BibliographyOptions\setLineSpacing
setLineSpacing($lineSpacing)
Definition: BibliographyOptions.php:191
Seboettg\CiteProc\Style\Options\BibliographyOptions\getEntrySpacing
getEntrySpacing()
Definition: BibliographyOptions.php:199
Seboettg\CiteProc\Style\Options
Definition: BibliographyOptions.php:10
Seboettg\CiteProc\Style\Options\BibliographyOptions\getLineSpacing
getLineSpacing()
Definition: BibliographyOptions.php:183
Seboettg\CiteProc\Style\Options\BibliographyOptions\setEntrySpacing
setEntrySpacing($entrySpacing)
Definition: BibliographyOptions.php:207
Seboettg\CiteProc\Style\Options\BibliographyOptions\getHangingIndent
getHangingIndent()
Definition: BibliographyOptions.php:151
Seboettg\CiteProc\Style\Options\BibliographyOptions\getSubsequentAuthorSubstitute
getSubsequentAuthorSubstitute()
Definition: BibliographyOptions.php:119
Seboettg\CiteProc\Style\Options\BibliographyOptions
Definition: BibliographyOptions.php:19
Seboettg\CiteProc\Style\Options\SubsequentAuthorSubstituteRule
Definition: SubsequentAuthorSubstituteRule.php:23
Seboettg\CiteProc\Style\Options\BibliographyOptions\getSubsequentAuthorSubstituteRule
getSubsequentAuthorSubstituteRule()
Definition: BibliographyOptions.php:135
Seboettg\CiteProc\Style\Options\BibliographyOptions\setHangingIndent
setHangingIndent($hangingIndent)
Definition: BibliographyOptions.php:159
Seboettg\CiteProc\Style\Options\BibliographyOptions\setSubsequentAuthorSubstituteRule
setSubsequentAuthorSubstituteRule($subsequentAuthorSubstituteRule)
Definition: BibliographyOptions.php:143
Seboettg\CiteProc\Style\Options\BibliographyOptions\setSubsequentAuthorSubstitute
setSubsequentAuthorSubstitute($subsequentAuthorSubstitute)
Definition: BibliographyOptions.php:127
Seboettg\CiteProc\Style\Options\BibliographyOptions\setSecondFieldAlign
setSecondFieldAlign($secondFieldAlign)
Definition: BibliographyOptions.php:175