Hallo zusammen,
ich habe RealUrl 1.1.0 unter Typo3 3.8.1 laufen.
Es funktioniert auch soweit, allerdigs:
Wenn ich in der Navigation links auf "Web" klicke, dann auf "Info" und dann rechts im Drop-Down Menü "Speaking URL Management" gehe erhalte ich folgende Fehler:
Fatal error: Call to undefined function: workspaceol() in /home/testsite_de/www/typo3conf/ext/realurl/modfunc1/class.tx_realurl_modfunc1.php on line 135
Ich habe alles nach bestem Wissen konfiguriert. Die Umsetzung funktioniert ja auch einwandfrei. Ich hoffe einer von euch kann mir einen Tip geben.
Gruß
Der Hirsch
Hallo Leute,
ich habe das Problem schmutzig gelöst:
in der Klasse class.t3lib_befunc.php
habe ich die "alten" Funktionen (siehe unten) wieder reingenommen und es funzt soweit.
function workspaceOL($table,&$row,$wsid=-99) {
// Initialize workspace ID:
if ($wsid == -99) $wsid = $GLOBALS['BE_USER']->workspace;
// Check if workspace is different from zero and record is set:
if ($wsid!==0 && is_array($row)) {
$wsAlt = t3lib_BEfunc::getWorkspaceVersionOfRecord($wsid, $table, $row['uid'], implode(',',array_keys($row)));
// If version was found, swap the default record with that one.
if (is_array($wsAlt)) {
// Always correct PID from -1 to what it should be:
if (isset($wsAlt['pid'])) {
$wsAlt['_ORIG_pid'] = $wsAlt['pid']; // Keep the old (-1) - indicates it was a version...
$wsAlt['pid'] = $row['pid']; // Set in the online versions PID.
}
// For versions of single elements or page+content, swap UID and PID:
if ($table!=='pages' || $wsAlt['t3ver_swapmode']<=0) {
$wsAlt['_ORIG_uid'] = $wsAlt['uid'];
$wsAlt['uid'] = $row['uid'];
// Backend css class:
$wsAlt['_CSSCLASS'] = $table==='pages' && $wsAlt['t3ver_swapmode']==0 ? 'ver-page' : 'ver-element';
} else { // This is only for page-versions with BRANCH below!
$wsAlt['_ONLINE_uid'] = $row['uid'];
// Backend css class:
$wsAlt['_CSSCLASS'] = 'ver-branchpoint';
$wsAlt['_SUBCSSCLASS'] = 'ver-branch';
}
// Changing input record to the workspace version alternative:
$row = $wsAlt;
}
}
}
function getWorkspaceVersionOfRecord($workspace, $table, $uid, $fields='*') {
global $TCA;
if ($workspace!==0 && $TCA[$table] && $TCA[$table]['ctrl']['versioningWS']) {
// Select workspace version of record:
$rows = $GLOBALS['TYPO3_DB']->exec_SELECTgetRows(
$fields,
$table,
'pid=-1 AND
t3ver_oid='.intval($uid).' AND
t3ver_wsid='.intval($workspace).
t3lib_BEfunc::deleteClause($table)
);
if (is_array($rows[0])) return $rows[0];
}
return FALSE;
}
Allerdings möcht ich eigentlich nicht auf diesen Trick zurückgreifen.
Vielleicht kann mit jemand erklären, warum die Funktionen nicht mehr da sind und wodurch sie ersetzt worden sind.
Aus diesem Grund lass ich den Thread noch ein wenig aktiv!
Gruß
Der Hirsch
Hallo nochmal,
da niemand von euch mir weiter helfen konnte, die alternative Frage:
Hatte jemand bereits das gleiche Problem???
Mit der Bitte um Feedback
Knut
Ich kann mich Erinnern das ich vor kurzen auch dieses Problem hatte.
Ich habe im "Install Tool" unter "2: Database Analyser" bei "Update required tables" ein "COMPARE" durchgeführt.
Danach war der Fehler beim Aufruf der "Info" verschwunden.
Hi RPW,
danke für die Antwort.
Wenn ich das angegebene Versuche/Ausführe erhalte ic folgende Meldung:
The tables and fields in the current database corresponds perfectly to the database in the selected SQL-file.
An dem Fehler:
Fatal error: Call to undefined function: workspaceol() in /home/h/www.xyz.de/public_html/typo3conf/ext/realurl/modfunc1/class.tx_realurl_modfunc1.php on line 135
hat sich aber nichts geändert.
Für weitere Ratschläge wäre ich sehr dankbar.
Gruß
Knut
[/quote]
Hallo!
also ich habe das gleiche Problem..
Habe aber auch keine Lösung finden können...
tut mir leid..
gr.
Kasper
Hi Elvis,
ist ja nicht Deine Schuld 🙂
Versuch es mal mit dem Fix von oben.
Hat bei mir ohne Seiteneffekte funktioniert.
Trotzdem, hat einer von euch weitere Tipps???
Freue mich auf weitere Dikussionen.
Gruß
Knut
Also wenn jemand eine Lösung findet wäre ich ihm auch sehr dankbar