Du bist nicht angemeldet. Der Zugriff auf einige Boards wurde daher deaktiviert.
Seiten: 1
#1 11. Mai 2015 09:21
- faglork
- arbeitet mit CMS/ms
- Ort: Fränkische Schweiz
- Registriert: 15. Dezember 2010
- Beiträge: 1.152
- Webseite
[GELÖST] Uploads Modul: kein WYSIWYG beim Erstellen der Beschreibung
Moin!
Das Uploads-Modul bietet die Möglichkeit, eine Beschreibung der Datei einzustellen. Dummerweise passiert folgendes:
- Beim ERSTELLEN eines neuen Eintrags kommt nur eine Textarea
- beim BEARBEITEN des Eintrags erscheint der TinyMCE
Das ist natürlich doof, weil man quasi doppelte Arbeit hat.
Kennt jemand das Problem und hat es bereits gelöst? AFAIK muss man nur irgendwo im Code die use wysiwyg Einstellung setzen. Ich finds schon - ich frag nur obs jemand schon mal gemacht hat dann kann ich mir die rumsucherei sparen. Die Seite ist ja auch online, da mag ich nicht so viel dran rumexperimentieren ...
cmsms 1.11.10
EDIT: Uploads 1.16.16
Upgedated auf Uploads 1.18.5 - überhaupt kein wysiwyg mehr :-((
Im code von action.admin_upload.php findet man
$this->CreateTextArea(isset($tfields[$i]['attrib']['usewysiwyg']) && $tfields[$i]['attrib']['usewysiwyg'] == 1 &&
$this->GetPreference('allow_comment_wysiwyg',0),
Leider bietet das modul keine möglichkeit, allow_comment_wysiwyg eizustellen.
Servus,
Alex
Beitrag geändert von faglork (11. Mai 2015 15:13)
Offline
#2 11. Mai 2015 21:37
- Andynium
- Moderator
- Ort: Dohna / SN / Deutschland
- Registriert: 13. September 2010
- Beiträge: 7.018
- Webseite
Re: [GELÖST] Uploads Modul: kein WYSIWYG beim Erstellen der Beschreibung
Kennt jemand das Problem und hat es bereits gelöst? AFAIK muss man nur irgendwo im Code die use wysiwyg Einstellung setzen.
Returns the xhtml equivalent of a textarea. Also takes WYSIWYG preference into consideration if it's called from the admin side.
CreateTextArea($enablewysiwyg, $id, $text, $name, $classname = '', $htmlid = '', $encoding = '', $stylesheet = '', $cols = '80', $rows = '15', $forcewysiwyg = '', $wantedsyntax = '', $addtext = '') : string
Wenn ich dich richtig verstanden habe, willst du ja sowieso das Dingens einfach aktiviert haben (und nicht permanent an und abschalten können, oder?!
Damit das passiert, musst du einfach nur den ersten Wert der Methode CreateTextArea (also $enablewysiwyg) auf true oder 1 setzen - also den ganzen isset() und GetPreferences Kram rauschmeißen und dafür einfach nur eine 1 eintragen
Offline
#3 12. Mai 2015 08:09
- faglork
- arbeitet mit CMS/ms
- Ort: Fränkische Schweiz
- Registriert: 15. Dezember 2010
- Beiträge: 1.152
- Webseite
Re: [GELÖST] Uploads Modul: kein WYSIWYG beim Erstellen der Beschreibung
Thx.
Ich habs mal geändert auf
[== php ==]
$this->CreateTextArea(1,
$id,
$tfields[$i]['attrib']['dfltcontent'],
'field_'.$tfields[$i]['id']);
nur leider funzt das auch nicht. Mit "true" auch nicht.
Bin irgendwie ratlos. Das ist in action.admin_upload.php das einzige Vorkommen von CreateTextArea, es MUSS also dieser Teil des Codes sein.
Servus,
Alex
Offline
#4 12. Mai 2015 08:32
- faglork
- arbeitet mit CMS/ms
- Ort: Fränkische Schweiz
- Registriert: 15. Dezember 2010
- Beiträge: 1.152
- Webseite
Re: [GELÖST] Uploads Modul: kein WYSIWYG beim Erstellen der Beschreibung
Aaaah ...
der komplette block-Anfank lautet
[== php ==]
$query = 'SELECT * FROM '.cms_db_prefix().'module_uploads_fielddefs ORDER BY iorder';
$tfields = $db->GetArray($query);
for( $i = 0; $i < count($tfields); $i++ ) {
$tfields[$i]['attrib'] = unserialize($tfields[$i]['attribs']);
unset($tfields[$i]['attribs']);
switch($tfields[$i]['type']) {
case 'textarea':
$tfields[$i]['input'] =
$this->CreateTextArea(1,
$id,
$tfields[$i]['attrib']['dfltcontent'],
'field_'.$tfields[$i]['id']);
break;
Das bezieht sich am ende nur auf zusätzlich angelegte Felder? Ich vermute es mal, denn die Struktur des "Description" Tabs wird in der admin_upload.tpl angelegt:
[== php ==]
{cge_tabcontent_start name='description'}
<div class="pageoverflow">
<p class="pagetext">{$mod->Lang('description')}</p>
<p class="pageinput">
<textarea name="{$actionid}input_description">{$upload.description}</textarea>
</p>
</div>
Aber wo bekommt dann das verd... Feld sein wywsiwyg her?
Am Ende der action.admin_upload.php findet sich
# Display the template
#
echo $this->ProcessTemplate('admin_upload.tpl');
Also könnte es doch dort passieren? Wo finde ich denn das?
Servus,
alex
Offline
#5 12. Mai 2015 08:37
- faglork
- arbeitet mit CMS/ms
- Ort: Fränkische Schweiz
- Registriert: 15. Dezember 2010
- Beiträge: 1.152
- Webseite
Re: [GELÖST] Uploads Modul: kein WYSIWYG beim Erstellen der Beschreibung
Hab grad mal ein Extra-Feld hinzugefügt und in den Optionen auf WYSIWYG gesetzt.
--> auch das funktioniert nicht. Es funktioniert auch nicht wenn ich in action.admin_uploads.php $wysiwyg auf 1 setze.
Ich hab mal in anderen Modulen geguggt: Gallery erzeugt ein WYSIWYG Feld wenn "für die Beschreibung wywsiwygw verwenden" eingestellt ist. Prinzipiell funktioniert das also.
Servus,
Alex
Offline
#6 12. Mai 2015 09:03
- Andynium
- Moderator
- Ort: Dohna / SN / Deutschland
- Registriert: 13. September 2010
- Beiträge: 7.018
- Webseite
Re: [GELÖST] Uploads Modul: kein WYSIWYG beim Erstellen der Beschreibung
[== php ==] <textarea name="{$actionid}input_description">{$upload.description}</textarea>
So auf jeden Fall nicht. Mit der Funktion createTextArea wird das KOMPLETTE Feld von CMSMS zusammengebaut, siehe
if ($result == '')
{
$result = '<textarea name="' . $name . '" cols="' . $width . '" rows="' . $height . '"';
if ($classname != '')
{
$result .= ' class="' . $classname . '"';
}
else
{
$result .= ' class="cms_textarea"';
}
if ($id != '')
{
$result .= ' id="' . $id . '"';
}
if( !empty($addtext))
{
$result .= ' ' . $addtext;
}
$result .= '>' . cms_htmlentities($text, ENT_NOQUOTES, get_encoding($encoding)) . '</textarea>';
}
währenddessen dein Beispiel einen Mix aus HTML und Smarty enthält.
Im Template dürfte aber für die gesamte Textarea allenfalls eine Variable erscheinen.
Hast du mal versucht, das Modul auf die werksseitigen Voreinstellungen zurückzusetzen?
Wäre nicht das erste Mal, dass dann "plötzlich" ganz andere Templates verwendet werden ...
Offline
#7 12. Mai 2015 09:31
- faglork
- arbeitet mit CMS/ms
- Ort: Fränkische Schweiz
- Registriert: 15. Dezember 2010
- Beiträge: 1.152
- Webseite
Re: [GELÖST] Uploads Modul: kein WYSIWYG beim Erstellen der Beschreibung
faglork schrieb:[== php ==] <textarea name="{$actionid}input_description">{$upload.description}</textarea>
So auf jeden Fall nicht. Mit der Funktion createTextArea wird das KOMPLETTE Feld von CMSMS zusammengebaut, siehe
-----------snip------------------------
währenddessen dein Beispiel einen Mix aus HTML und Smarty enthält.Im Template dürfte aber für die gesamte Textarea allenfalls eine Variable erscheinen.
Hast du mal versucht, das Modul auf die werksseitigen Voreinstellungen zurückzusetzen?
Wäre nicht das erste Mal, dass dann "plötzlich" ganz andere Templates verwendet werden ...
Das ist keine benutzer-wählbare Template. Das ist die Admin-Template für das Modul. Daher gibts auch keine Möglichkeit des "Zurücksetzens".
Ich kapier nur eines nicht: in der 1.16.16 wurde beimm EDITIEREN eines Eintags an dieser Stelle der TinyMCE eingefügt.
Also muss es doch irgendwie gehen?
Servus,
Alex
Offline
#8 12. Mai 2015 09:35
- Andynium
- Moderator
- Ort: Dohna / SN / Deutschland
- Registriert: 13. September 2010
- Beiträge: 7.018
- Webseite
Re: [GELÖST] Uploads Modul: kein WYSIWYG beim Erstellen der Beschreibung
Hast du mal die Templates der beiden Modul-Versionen verglichen?
Offline
#9 12. Mai 2015 10:11
- faglork
- arbeitet mit CMS/ms
- Ort: Fränkische Schweiz
- Registriert: 15. Dezember 2010
- Beiträge: 1.152
- Webseite
Re: [GELÖST] Uploads Modul: kein WYSIWYG beim Erstellen der Beschreibung
Ich hab jetzt mal 1.16.16 auf ner anderen Site installiert.
Ergebnis: auch kein wysiwyg, weder im upload- noch im edit-mode.
WTF???
Ich vermute ja langsam dass es ganz anders war: an dieser stelle soll eigentlich gar kein editor sein? Aber warum habe ich dann einen bekommen? Ich irre mich auch nicht, denn die Sekretärin der Gemeinde kann kein HTML ... da WAR also ein Editor.
Nun könnte man das ja einfach lösen indem man einfach ein neues Feld "Inhalt" anlegt und auf Textarea/wysiwyg setzt.
Gesagt ...
getan ...
... kein wysiwyg :-(
Auch auf ner anderen site getestet ... nix.
Wie gesagt, in allen anderen modulen funzt das an/abschalten des wysiwyg problemlos.
Cheers,
Alex
Beitrag geändert von faglork (12. Mai 2015 10:12)
Offline
#10 12. Mai 2015 10:36
- Andynium
- Moderator
- Ort: Dohna / SN / Deutschland
- Registriert: 13. September 2010
- Beiträge: 7.018
- Webseite
Re: [GELÖST] Uploads Modul: kein WYSIWYG beim Erstellen der Beschreibung
Von wem war das Modul doch gleich ?
Offline
#11 12. Mai 2015 11:58
- faglork
- arbeitet mit CMS/ms
- Ort: Fränkische Schweiz
- Registriert: 15. Dezember 2010
- Beiträge: 1.152
- Webseite
Re: [GELÖST] Uploads Modul: kein WYSIWYG beim Erstellen der Beschreibung
"Er, dessen Name nicht genannt werden darf"
Offline
#12 14. Mai 2015 00:55
- faglork
- arbeitet mit CMS/ms
- Ort: Fränkische Schweiz
- Registriert: 15. Dezember 2010
- Beiträge: 1.152
- Webseite
Re: [GELÖST] Uploads Modul: kein WYSIWYG beim Erstellen der Beschreibung
Uff. Ich habs zum Laufen gebracht.
Mit Sicherheit gibts ne bessere Lösung, aber es hat mich eh schon viel zeit gekostet. Und dieses Modul wird ja eher selten upgedatet, so what ...
Das Modul ist prinzipiell ja ganz ok, daher mal die Anleitung:
im Modulverzeichnis:
----------------------------------------------------------------------------------
templates/admin_upload.tpl
Zeile 82
<textarea name="{$actionid}input_description">{$upload.description}</textarea>
ersetzen durch
{cge_textarea prefix=$actionid name=input_description wysiwyg=true}
--> "Beschreibung" wird wysiwyg beim Neuanlegen eines Eintrags
----------------------------------------------------------------------------------
action.editupload.php
Zeile 410
$smarty->assign ('input_uploaddesc',$this->CreateTextArea (false, $id, $row['upload_description'], 'input_uploaddesc' ));
ersetzen durch
$smarty->assign ('input_uploaddesc',$this->CreateTextArea (true, $id, $row['upload_description'], 'input_uploaddesc' ));
--> "Beschreibung" wird wysiwyg beim Bearbeiten eines Eintrags
Zeile 348
$this->CreateTextArea(isset($tfields[$i]['attrib']['usewysiwyg']) && $tfields[$i]['attrib']['usewysiwyg'] == 1 &&
$this->GetPreference('allow_comment_wysiwyg',0),
ersetzen durch
$this->CreateTextArea(isset($tfields[$i]['attrib']['usewysiwyg']) && $tfields[$i]['attrib']['usewysiwyg'] == 1 &&
$this->GetPreference('allow_comment_wysiwyg',1),
--> zusätzliches Feld wird wysiwg (defaultwert ist jetzt 1)
----------------------------------------------------------------------------------
action.admin_upload.php
Zeile 85
$this->CreateTextArea(isset($tfields[$i]['attrib']['usewysiwyg']) && $tfields[$i]['attrib']['usewysiwyg'] == 1 &&
$this->GetPreference('allow_comment_wysiwyg',0),
ersetzen durch
$this->CreateTextArea(isset($tfields[$i]['attrib']['usewysiwyg']) && $tfields[$i]['attrib']['usewysiwyg'] == 1 &&
$this->GetPreference('allow_comment_wysiwyg',1),
--> zusätzliches Feld wird wysiwg (defaultwert ist jetzt 1)
----------------------------------------------------------------------------------
Wasn Spaß ...
Alex
Beitrag geändert von faglork (14. Mai 2015 00:59)
Offline
#13 14. Mai 2015 08:28
- Andynium
- Moderator
- Ort: Dohna / SN / Deutschland
- Registriert: 13. September 2010
- Beiträge: 7.018
- Webseite
Re: [GELÖST] Uploads Modul: kein WYSIWYG beim Erstellen der Beschreibung
Uff. Ich habs zum Laufen gebracht.
Herzlichen Glückwunsch - du hast den 1. Platz in der allmonatlichen CCMC (CMSMS Code Modification Challenge) gewonnen .
Als Preis erhältst du das Anrecht, einen vollständigen Fork für alle DEUTSCHSPRACHIGEN Anwender zu erstellen.
Offline
#14 15. Mai 2015 23:12
- faglork
- arbeitet mit CMS/ms
- Ort: Fränkische Schweiz
- Registriert: 15. Dezember 2010
- Beiträge: 1.152
- Webseite
Re: [GELÖST] Uploads Modul: kein WYSIWYG beim Erstellen der Beschreibung
faglork schrieb:Uff. Ich habs zum Laufen gebracht.
Herzlichen Glückwunsch - du hast den 1. Platz in der allmonatlichen CCMC (CMSMS Code Modification Challenge) gewonnen
.
Danke, danke, danke ... endlich mal ein sinnvoller Gewinn ...
Als Preis erhältst du das Anrecht, einen vollständigen Fork für alle DEUTSCHSPRACHIGEN
Anwender zu erstellen.
aaargh!
lol,
Alex
Offline
Seiten: 1