PageRenderTime 42ms CodeModel.GetById 13ms RepoModel.GetById 0ms app.codeStats 0ms

/components/com_roksprocket/lib/RokSprocket/Item.php

https://bitbucket.org/pastor399/newcastleunifc
PHP | 658 lines | 287 code | 91 blank | 280 comment | 5 complexity | 8f3f04632f1e2931dd2b1ab20a24cd73 MD5 | raw file
  1. <?php
  2. /**
  3. * @version $Id$
  4. * @author RocketTheme http://www.rockettheme.com
  5. * @copyright Copyright (C) 2007 - 2013 RocketTheme, LLC
  6. * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 only
  7. */
  8. class RokSprocket_Item
  9. {
  10. /**
  11. * @var
  12. */
  13. protected $id;
  14. /**
  15. * @var string
  16. */
  17. protected $alias;
  18. /**
  19. * @var bool
  20. */
  21. protected $published;
  22. /**
  23. * @var string
  24. */
  25. protected $author;
  26. /**
  27. * @var string
  28. */
  29. protected $date;
  30. /**
  31. * @var string
  32. */
  33. protected $title;
  34. /**
  35. * @var string
  36. */
  37. protected $text;
  38. /**
  39. * @var string
  40. */
  41. protected $provider;
  42. /**
  43. * @var RokSprocket_Item_Image
  44. */
  45. protected $primaryImage;
  46. /**
  47. * @var \RokSprocket_Item_Image[]
  48. */
  49. protected $images;
  50. /**
  51. * @var RokSprocket_Item_Link
  52. */
  53. protected $primaryLink;
  54. /**
  55. * @var \RokSprocket_Item_Link[]
  56. */
  57. protected $links;
  58. /**
  59. * @var RokSprocket_Item_Field[]
  60. */
  61. protected $textFields;
  62. /**
  63. * @var string[]
  64. */
  65. protected $tags;
  66. /**
  67. * @var int
  68. */
  69. protected $order;
  70. /**
  71. * @var int
  72. */
  73. protected $commentCount;
  74. /**
  75. * @var int
  76. */
  77. protected $hits;
  78. /**
  79. * @var int
  80. */
  81. protected $rating;
  82. /**
  83. * @var
  84. */
  85. protected $metaKey;
  86. /**
  87. * @var
  88. */
  89. protected $metaDesc;
  90. /**
  91. * @var
  92. */
  93. protected $metaData;
  94. /**
  95. * @var string
  96. */
  97. protected $category;
  98. /**
  99. * @var array
  100. */
  101. protected $params = array();
  102. /**
  103. * @var
  104. */
  105. protected $dborder;
  106. /**
  107. * @var
  108. */
  109. protected $publish_up;
  110. /**
  111. * @var
  112. */
  113. protected $publish_down;
  114. /**
  115. * @param string $alias
  116. */
  117. public function setAlias($alias)
  118. {
  119. $this->alias = $alias;
  120. }
  121. /**
  122. * @return string
  123. */
  124. public function getAlias()
  125. {
  126. return $this->alias;
  127. }
  128. /**
  129. * @param string $author
  130. */
  131. public function setAuthor($author)
  132. {
  133. $this->author = $author;
  134. }
  135. /**
  136. * @return string
  137. */
  138. public function getAuthor()
  139. {
  140. return $this->author;
  141. }
  142. /**
  143. * @param string $date
  144. */
  145. public function setDate($date)
  146. {
  147. $this->date = $date;
  148. }
  149. /**
  150. * @return string
  151. */
  152. public function getDate()
  153. {
  154. return $this->date;
  155. }
  156. /**
  157. * @param $fields
  158. */
  159. public function setTextFields($fields)
  160. {
  161. $this->textFields = $fields;
  162. }
  163. /**
  164. * @return RokSprocket_Item_Field[]
  165. */
  166. public function getTextFields()
  167. {
  168. return $this->textFields;
  169. }
  170. /**
  171. * @param $identifier
  172. *
  173. * @return null|\RokSprocket_Item_Field
  174. */
  175. public function getTextField($identifier)
  176. {
  177. if (isset($this->textFields[$identifier])) {
  178. return $this->textFields[$identifier];
  179. }
  180. return null;
  181. }
  182. /**
  183. * @param $identifier
  184. * @param $value
  185. */
  186. public function addTextField($identifier, $value)
  187. {
  188. $this->textFields[$identifier] = $value;
  189. }
  190. /**
  191. * @param $id
  192. */
  193. public function setId($id)
  194. {
  195. $this->id = $id;
  196. }
  197. /**
  198. * @return mixed
  199. */
  200. public function getId()
  201. {
  202. return $this->id;
  203. }
  204. /**
  205. * @param $images
  206. */
  207. public function setImages($images)
  208. {
  209. $this->images = $images;
  210. }
  211. /**
  212. * @return RokSprocket_Item_Image[]
  213. */
  214. public function getImages()
  215. {
  216. return $this->images;
  217. }
  218. /**
  219. * @param $identifier
  220. *
  221. * @return null|RokSprocket_Item_Image
  222. */
  223. public function getImage($identifier)
  224. {
  225. if (isset($this->images[$identifier])) {
  226. return $this->images[$identifier];
  227. }
  228. return null;
  229. }
  230. /**
  231. * @param $identifier
  232. * @param $image
  233. */
  234. public function addImage($identifier, RokSprocket_Item_Image $image)
  235. {
  236. $this->images[$identifier] = $image;
  237. }
  238. /**
  239. * @param string $introtext
  240. */
  241. public function setText($introtext)
  242. {
  243. $this->text = $introtext;
  244. }
  245. /**
  246. * @return string
  247. */
  248. public function getText()
  249. {
  250. return $this->text;
  251. }
  252. /**
  253. * @param $links
  254. */
  255. public function setLinks($links)
  256. {
  257. $this->links = $links;
  258. }
  259. /**
  260. * @return RokSprocket_Item_Link[]
  261. */
  262. public function getLinks()
  263. {
  264. return $this->links;
  265. }
  266. /**
  267. * @param $identifier
  268. *
  269. * @return null|RokSprocket_Item_Link
  270. */
  271. public function getLink($identifier)
  272. {
  273. if (isset($this->links[$identifier])) {
  274. return $this->links[$identifier];
  275. }
  276. return null;
  277. }
  278. /**
  279. * @param $identifier
  280. * @param $link
  281. */
  282. public function addLink($identifier, RokSprocket_Item_Link $link)
  283. {
  284. $this->links[$identifier] = $link;
  285. }
  286. /**
  287. * @param \RokSprocket_Item_Image $primaryImage
  288. */
  289. public function setPrimaryImage($primaryImage)
  290. {
  291. $this->primaryImage = $primaryImage;
  292. }
  293. /**
  294. * @return \RokSprocket_Item_Image
  295. */
  296. public function &getPrimaryImage()
  297. {
  298. return $this->primaryImage;
  299. }
  300. /**
  301. * @param \RokSprocket_Item_Link $primaryLink
  302. */
  303. public function setPrimaryLink($primaryLink)
  304. {
  305. $this->primaryLink = $primaryLink;
  306. }
  307. /**
  308. * @return \RokSprocket_Item_Link
  309. */
  310. public function &getPrimaryLink()
  311. {
  312. return $this->primaryLink;
  313. }
  314. /**
  315. * @param string $provider
  316. */
  317. public function setProvider($provider)
  318. {
  319. $this->provider = $provider;
  320. }
  321. /**
  322. * @return string
  323. */
  324. public function getProvider()
  325. {
  326. return $this->provider;
  327. }
  328. /**
  329. * @param boolean $published
  330. */
  331. public function setPublished($published)
  332. {
  333. $this->published = $published;
  334. }
  335. /**
  336. * @return boolean
  337. */
  338. public function getPublished()
  339. {
  340. return $this->published;
  341. }
  342. /**
  343. * @param string $title
  344. */
  345. public function setTitle($title)
  346. {
  347. $this->title = $title;
  348. }
  349. /**
  350. * @return string
  351. */
  352. public function getTitle()
  353. {
  354. return $this->title;
  355. }
  356. /**
  357. * @param int $order
  358. */
  359. public function setOrder($order)
  360. {
  361. $this->order = $order;
  362. }
  363. /**
  364. * @return int
  365. */
  366. public function getOrder()
  367. {
  368. return $this->order;
  369. }
  370. /**
  371. * @param $tags
  372. */
  373. public function setTags($tags)
  374. {
  375. $this->tags = $tags;
  376. }
  377. /**
  378. * @return string[]
  379. */
  380. public function getTags()
  381. {
  382. return $this->tags;
  383. }
  384. /**
  385. * @param $commentCount
  386. */
  387. public function setCommentCount($commentCount)
  388. {
  389. $this->commentCount = $commentCount;
  390. }
  391. /**
  392. * @return int
  393. */
  394. public function getCommentCount()
  395. {
  396. return $this->commentCount;
  397. }
  398. /**
  399. * @param int $hits
  400. */
  401. public function setHits($hits)
  402. {
  403. $this->hits = $hits;
  404. }
  405. /**
  406. * @return int
  407. */
  408. public function getHits()
  409. {
  410. return $this->hits;
  411. }
  412. /**
  413. * @param int $rating
  414. */
  415. public function setRating($rating)
  416. {
  417. $this->rating = $rating;
  418. }
  419. /**
  420. * @return int
  421. */
  422. public function getRating()
  423. {
  424. return $this->rating;
  425. }
  426. /**
  427. * @param $metaData
  428. */
  429. public function setMetaData($metaData)
  430. {
  431. $this->metaData = $metaData;
  432. }
  433. /**
  434. * @return
  435. */
  436. public function getMetaData()
  437. {
  438. return $this->metaData;
  439. }
  440. /**
  441. * @param $metaDesc
  442. */
  443. public function setMetaDesc($metaDesc)
  444. {
  445. $this->metaDesc = $metaDesc;
  446. }
  447. /**
  448. * @return
  449. */
  450. public function getMetaDesc()
  451. {
  452. return $this->metaDesc;
  453. }
  454. /**
  455. * @param $metaKey
  456. */
  457. public function setMetaKey($metaKey)
  458. {
  459. $this->metaKey = $metaKey;
  460. }
  461. /**
  462. * @return
  463. */
  464. public function getMetaKey()
  465. {
  466. return $this->metaKey;
  467. }
  468. /**
  469. * @param $category
  470. */
  471. public function setCategory($category)
  472. {
  473. $this->category = $category;
  474. }
  475. /**
  476. * @return string
  477. */
  478. public function getCategory()
  479. {
  480. return $this->category;
  481. }
  482. /**
  483. * @return string
  484. */
  485. public function getArticleId()
  486. {
  487. return $this->provider . '-' . $this->id;
  488. }
  489. /**
  490. * @param $parameters
  491. */
  492. public function setParams($parameters)
  493. {
  494. $this->params = $parameters;
  495. }
  496. /**
  497. * @return array
  498. */
  499. public function getParams()
  500. {
  501. return $this->params;
  502. }
  503. /**
  504. * @param $name
  505. * @param null $default
  506. *
  507. * @return null
  508. */
  509. public function getParam($name, $default = null)
  510. {
  511. if (isset($this->params[$name])) {
  512. return $this->params[$name];
  513. } else {
  514. return $default;
  515. }
  516. }
  517. /**
  518. * @param $dborder
  519. */
  520. public function setDbOrder($dborder)
  521. {
  522. $this->dborder = $dborder;
  523. }
  524. /**
  525. * @return mixed
  526. */
  527. public function getDbOrder()
  528. {
  529. return $this->dborder;
  530. }
  531. /**
  532. * @param $name
  533. * @param $value
  534. */
  535. public function setParam($name, $value)
  536. {
  537. $this->params[$name] = $value;
  538. }
  539. /**
  540. * @return mixed
  541. */
  542. public function getPublishUp()
  543. {
  544. return $this->publish_up;
  545. }
  546. /**
  547. * @param $datetime
  548. */
  549. public function setPublishUp($datetime)
  550. {
  551. $this->publish_up = $datetime;
  552. }
  553. /**
  554. * @return mixed
  555. */
  556. public function getPublishDown()
  557. {
  558. return $this->publish_down;
  559. }
  560. /**
  561. * @param $datetime
  562. */
  563. public function setPublishDown($datetime)
  564. {
  565. $this->publish_down = $datetime;
  566. }
  567. }