1: <?php
2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14:
15:
16: defined('CON_FRAMEWORK') || die('Illegal call: Missing framework initialization - request aborted.');
17:
18: 19: 20: 21: 22: 23: 24:
25: class cContentTypeHtml extends cContentTypeAbstract {
26:
27: 28: 29: 30: 31: 32: 33: 34: 35: 36: 37:
38: public function __construct($rawSettings, $id, array $contentTypes) {
39:
40:
41: parent::__construct($rawSettings, $id, $contentTypes);
42: $this->_type = 'CMS_HTML';
43: $this->_prefix = 'html';
44: }
45:
46: 47: 48: 49: 50: 51: 52:
53: public function generateViewCode() {
54: return $this->_encodeForOutput($this->_rawSettings);
55: }
56:
57: 58: 59: 60: 61: 62:
63: public function generateEditCode() {
64: $wysiwygDiv = new cHTMLDiv();
65:
66:
67:
68: $id = str_replace('CMS_', '', $this->_type) . '_';
69: $db = cRegistry::getDb();
70: $sql = 'SELECT `idtype` FROM `' . $this->_cfg['tab']['type'] . '` WHERE `type`=\'' . $this->_type . '\'';
71: $db->query($sql);
72: $db->nextRecord();
73: $id .= $db->f('idtype') . '_' . $this->_id;
74: $wysiwygDiv->setId($id);
75:
76: $wysiwygDiv->setEvent('Focus', "this.style.border='1px solid #bb5577';");
77: $wysiwygDiv->setEvent('Blur', "this.style.border='1px dashed #bfbfbf';");
78: $wysiwygDiv->appendStyleDefinitions(array(
79: 'border' => '1px dashed #bfbfbf',
80: 'direction' => langGetTextDirection($this->_lang),
81: 'min-height' => '20px'
82: ));
83: $wysiwygDiv->updateAttribute('contentEditable', 'true');
84: if (strlen($this->_rawSettings) == 0) {
85: $wysiwygDiv->setContent(' ');
86: } else {
87: $wysiwygDiv->setContent($this->_rawSettings);
88: }
89:
90:
91:
92: $editLink = $this->_session->url($this->_cfg['path']['contenido_fullhtml'] . 'external/backendedit/' . 'front_content.php?action=10&idcat=' . $this->_idCat . '&idart=' . $this->_idArt . '&idartlang=' . $this->_idArtLang . '&type=' . $this->_type . '&typenr=' . $this->_id. '&client=' . $this->_client);
93: $editAnchor = new cHTMLLink("javascript:setcontent('" . $this->_idArtLang . "','" . $editLink . "');");
94: $editButton = new cHTMLImage($this->_cfg['path']['contenido_fullhtml'] . $this->_cfg['path']['images'] . 'but_edithtml.gif');
95: $editButton->appendStyleDefinition('margin-right', '2px');
96: $editAnchor->setContent($editButton);
97:
98:
99: $saveAnchor = new cHTMLLink();
100: $saveAnchor->setLink("javascript:setcontent('" . $this->_idArtLang . "', '0')");
101: $saveButton = new cHTMLImage($this->_cfg['path']['contenido_fullhtml'] . $this->_cfg['path']['images'] . 'but_ok.gif');
102: $saveAnchor->setContent($saveButton);
103:
104: return $this->_encodeForOutput($wysiwygDiv->render() . $editAnchor->render() . $saveAnchor->render());
105: }
106:
107: }