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:      * Constructor to create an instance of this class.
27:      *
28:      * Initialises class attributes and handles store events.
29:      *
30:      * @param string $rawSettings
31:      *         the raw settings in an XML structure or as plaintext
32:      * @param int $id
33:      *         ID of the content type, e.g. 3 if CMS_DATE[3] is used
34:      * @param array $contentTypes
35:      *         array containing the values of all content types
36:      */
37:     public function __construct($rawSettings, $id, array $contentTypes) {
38: 
39:         // There are no raw settings here, because CMS_IMG is not saved
40:         // separately any more. So compute the appropriate raw settings
41:         // and call the parent constructor with them.
42:         if (!cXmlBase::isValidXML($rawSettings)) {
43:             $rawSettings = $this->_getRawSettings("CMS_IMGEDITOR", $id, $contentTypes, $editable = false);
44:         }
45: 
46:         parent::__construct($rawSettings, $id, $contentTypes);
47:     }
48: 
49:     /**
50:      * Generates the code which should be shown if this content type is shown in
51:      * the frontend.
52:      *
53:      * @return string
54:      *         escaped HTML code which sould be shown if content type is shown in frontend
55:      */
56:     public function generateViewCode() {
57:         return $this->_encodeForOutput($this->_imagePath);
58:     }
59: 
60:     /**
61:      * Generates the code which should be shown if this content type is edited.
62:      *
63:      * @return string
64:      *         escaped HTML code which should be shown if content type is edited
65:      */
66:     public function generateEditCode() {
67:         return $this->generateViewCode();
68:     }
69: 
70: }
71: