1: <?php
2:
3: /**
4: * This file contains the cContentTypeImg class.
5: *
6: * @package Core
7: * @subpackage ContentType
8: * @author Simon Sprankel
9: * @copyright four for business AG <www.4fb.de>
10: * @license http://www.contenido.org/license/LIZENZ.txt
11: * @link http://www.4fb.de
12: * @link http://www.contenido.org
13: */
14:
15: defined('CON_FRAMEWORK') || die('Illegal call: Missing framework initialization - request aborted.');
16:
17: /**
18: * Content type CMS_IMG which displays the path to the selected image.
19: *
20: * @package Core
21: * @subpackage ContentType
22: */
23: class cContentTypeImg extends cContentTypeImgeditor {
24:
25: /**
26: * Initialises class attributes and handles store events.
27: *
28: * @param string $rawSettings
29: * the raw settings in an XML structure or as plaintext
30: * @param int $id
31: * ID of the content type, e.g. 3 if CMS_DATE[3] is used
32: * @param array $contentTypes
33: * array containing the values of all content types
34: */
35: public function __construct($rawSettings, $id, array $contentTypes) {
36:
37: // There are no raw settings here, because CMS_IMG is not saved
38: // separately any more. So compute the appropriate raw settings
39: // and call the parent constructor with them.
40: if (!cXmlBase::isValidXML($rawSettings)) {
41: $rawSettings = $this->_getRawSettings("CMS_IMGEDITOR", $id, $contentTypes, $editable = false);
42: }
43:
44: parent::__construct($rawSettings, $id, $contentTypes);
45: }
46:
47: /**
48: * Generates the code which should be shown if this content type is shown in
49: * the frontend.
50: *
51: * @return string
52: * escaped HTML code which sould be shown if content type is shown in frontend
53: */
54: public function generateViewCode() {
55: return $this->_encodeForOutput($this->_imagePath);
56: }
57:
58: /**
59: * Generates the code which should be shown if this content type is edited.
60: *
61: * @return string
62: * escaped HTML code which should be shown if content type is edited
63: */
64: public function generateEditCode() {
65: return $this->generateViewCode();
66: }
67:
68: }
69: