Zum Inhalt springen

Nanu, Typo3 4 und Printlink???!?

Erstellt am 10. Januar 2007 · 8 Antworten · letzte Antwort am 22. Juni 2007

Tags: RealURL, Frage

BlackPixel ·

Ich weiss, mehrere Satzzeichen sind unfug, aber die vielen Fragezeichen sollen meine verwunderung ausdrücken, also verzeiht es mir :o

In meinen vergangenen Projekten habe ich immer Printlinks eingebaut, mit erfolg. Hab mir dazu auch immer schön Dokumentationen angelegt wie ich vorgehen muss. Aber was ist das? In der neuen Typo3 Version scheint das nicht mehr zu gehen!

Das Icon wird gesetzt, ich bekomme ein ?type=98 an den Link, es geht im neuen Fenster auf, allerdings mit meinem Standarddesign. Den Quelltext den ich an das Fenster übergebe wird ignoriert. Liegt das an RealURL? GLaube ich nicht, denn auf äletern Versionen hormanisiert das! Hier mal der Code:

TS Setup:

[global]
## Template für Druckausgabe ## 
temp.PRINT = TEXT
temp.PRINT.value = <IMG SRC="fileadmin/template/print.jpg" border="0">
temp.PRINT.postUserFunc = tx_make_printlink 
temp.PRINT.postUserFunc.include_post_vars = 1 
temp.PRINT.postUserFunc.target = _blank 
temp.PRINT.postUserFunc.popup = 0 

temp.PRINT.postUserFunc.windowparams =  resizable=yes,toolbar=no,scrollbars=yes,menubar=no,width=695,height=822 
temp.PRINT.postUserFunc.windowname = Druckversion 


## Erstellung und Ausgabe der Seite 
# Header- und Javascript-Code komplett entfernen 
print_page.config.disableAllHeaderCode = 1 
print_page.config.removeDefaultJS = 1 
print_page = PAGE 
print_page { 
     typeNum = 98 

# Header neu schreiben 
     1 = TEXT 
     1.value ( 
<?xml version="1.0" encoding="iso-8859-1"?> 
<!DOCTYPE html 
     PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
     "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 

<head> 
  <style type="text/css"> 
<!-- 
     body, body td {font: 0.8em Arial, Helvetica, sans-serif;} 
    h1 {font-size: 1.5em;font-weight: bold;} 
     h2 {font-size: 1.3em;font-weight: bold;} 
     h3 {font-size: 1.1em;font-weight: bold;} 
     h4 {font-size: 1em;font-weight: bold;} 
--> 
  </style> 
</head> 

<body> 
) 


## Seitenkopf 
# Quellen-/Pfadangabe 
     10 = TEXT 
     10.value = Druckversion - Quelle: <strong>
     15 = TEXT 
     15.field = alias//uid 
     15.wrap = |.html</strong><hr /> 

# Seitenname 
     20 = TEXT 
     20.data = page:title 
     20.if.isTrue.data = page:title 
     20.wrap = Seitentitel: <strong>|</strong><br /> 

# Autor  
     30 = TEXT 
     30.data = page:author 
     30.if.isTrue.data = page:author 
     30.wrap = Autor: <strong><a href="|.html" target="_top" style="text-decoration:none"> 
     40 = TEXT 
     40.data = page:author 
     40.if.isTrue.data = page:author 
     40.wrap = | </strong></a><br /> 

# Erstellungs-/Änderungsdatum  
    50 = TEXT 
     50.field = SYS_LASTCHANGED 
     50.date = j.m.Y 
#     50.wrap = Erstellt/geändert am:&nbsp; <strong>|</strong> <br /> 

# Seiten-ID 
     60 = TEXT 
     60.field = uid  
    60.wrap = <font size =-2><i>Seiten-ID:&nbsp; <strong>|</strong> </i></font><hr /> 

# Inhalt ausgben 
     70 = CONTENT 
     70 < styles.content.get 

# start automatischer Ausdruck 
     100 = TEXT 
    100.value = <meta http-equiv="refresh" content="0; URL=javascript:window.print()"> 
    } 

# Body und html schließen 
     1000 = TEXT 
     1000.value =  </body></html> 
# EOF 

seite.10.marks.DRUCKVERSION < temp.PRINT 

[global]

Und die RealURL

$TYPO3_CONF_VARS['EXTCONF']['realurl']['_DEFAULT'] = array(
    'pagePath' => array(
        'type' => 'user',
        'userFunc' => 'EXT:realurl/class.tx_realurl_advanced.php:&tx_realurl_advanced->main',
        'spaceCharacter' => '-',
        'languageGetVar' => 'L',
        'expireDays' => 3
    ),
	 'init' => array(

	'enableCHashCache' => 1
	
	), 
	

    'fileName' => array (
        'defaultToHTMLsuffixOnPrev'=> 1
    ),
	'postVarSets' => array(
                        '_DEFAULT' => array (
                            'objektiv' => array(
                                array(
                                    'GETvar' => 'tx_phpobjektive_pi1[showUid]',
										  'lookUpTable' => array(
											 'table' => 'tx_phpobjektive_content',
											 'id_field' => 'uid',
											 'alias_field' => 'name',
											 'addWhereClause' => ' AND NOT deleted',
											 'maxLenght' => 15,
											 'useUniqueCache' => 'TRUE',
											 'useUniqueCache_conf' => array(
												 'strtolower' => 'TRUE',
												 'spaceCharacter' => '-',
											 ),
										 ),
	                                ),
    	                        ),
								'pointer' => array(
									 array(
										 'GETvar' => 'tx_phpobjektive_pi1[pointer]',
										 'valueMap' => array(
											 'pointer' => 0,
										 ),
									),
								),

								'modus' => array(
									 array(
										 'GETvar' => 'tx_phpobjektive_pi1[mode]',
										 'valueMap' => array(
											 'mode' => 1,
										 ),
									),
								),
								'sortierung' => array(
									 array(
										 'GETvar' => 'tx_phpobjektive_pi1[sort]',
										 
									),
								),







                            'kamera' => array(
                                array(
                                    'GETvar' => 'tx_phpkamera_pi1[showUid]',
										  'lookUpTable' => array(
											 'table' => 'tx_phpkamera_content',
											 'id_field' => 'uid',
											 'alias_field' => 'model',
											 'addWhereClause' => ' AND NOT deleted',
											 'maxLenght' => 15,
											 'useUniqueCache' => 'TRUE',
											 'useUniqueCache_conf' => array(
												 'strtolower' => 'TRUE',
												 'spaceCharacter' => '-',
											 ),
										 ),
	                                ),
    	                        ),
								'pointer' => array(
									 array(
										 'GETvar' => 'tx_phpkamera_pi1[pointer]',
										 'valueMap' => array(
											 'pointer' => 0,
										 ),
									),
								),

								'modus' => array(
									 array(
										 'GETvar' => 'tx_phpkamera_pi1[mode]',
										 'valueMap' => array(
											 'mode' => 1,
										 ),
									),
								),
								'sortierung' => array(
									 array(
										 'GETvar' => 'tx_phpkamera_pi1[sort]',
										 
									),
								),

















                        ),
						),
);

Kann mir jemand mal kurz auf die Spünge helfen?

Danke und Gruss Manfred

BlackPixel ·

So, es gibt eine neue erkenntnis: Das Problem mit dem # Link auf dem Druckersymbol konnte ich lösen.

Ich habe folgendes festgestellt:

http://www.dslr-seite.de/webcms/foto-lexikon.html

Da geht das mit dem Printlink nicht. Im Popup wird das normale Design angezeigt.

Gehe ich eine ebene tiefer in http://www.dslr-seite.de/webcms/foto-lexikon/abblendtaste.html

funktioniert das ganze. Die Linkpfeile gehen allerdings auch nicht. Hat das ganze was damit zu tun, das dass Typo3 im verzeichniss /webcms/ läuft?

BlackPixel ·

Hab noch die base URL mit in den Header eingebaut, Pfeile werden angezeigt. Nach wie vor ist die untere Ebene nicht als Druckseite sondern als normales Design!

BlackPixel ·

Ich hoffe ich geh Euch nicht auf den Senkel wenn ich andauernd hier was reinschreib :o

Es liegt an

  'fileName' => array (
        'defaultToHTMLsuffixOnPrev'=> 0

in der localconf... ok, so habe ich jetzt nur pfade und kein .html hintendran, dann geht es, ich würde aber das .html ganz gerne hinten dran haben wollen... ne Idee?

BlackPixel ·

So... abschliessend kann ich noch berichten, dass das Problem nun behoben ist und Funktioniert.

Für Realurl kann ich folgende conf bestätigen:

    'fileName' => array (
        'defaultToHTMLsuffixOnPrev'=> true,
         'index' => array(
 
             'print' => array(
                 'keyValues' => array(
                     'type' => '98',
                )
             ),
		),	
	),

So geht es nun in allen ebenen... wunderbar

Das Problem mit make_printlink und dem # im Link kann wie folgt gelöst werden:

unter /typo3con/ext/make_printlink/ die make_printlink.php sicherungskopie anlegen und anschliessend öffnen.

Find

$js .= ' onclick="window.open(\''.$uri.'\',\''.$conf['windowname'].'\',\''.$conf['windowparams'].'\');"';

Replace

$js .= 'onclick="window.open(this.href,\''.$conf['windowname'].'\',\''.$conf['windowparams'].'\'); return false"';

Find

$uri='#';

Replace

//$uri='#';

[EOF]

Tjo, na dann, freudiges gelingen 🙂

valentina ·

Hallo BlackPixel

Danke für diese Infos, welche mir wirklich weiter geholfen haben.
Hatte nämlich das selbe Problem...

Grüsse
Valentina