Druckmodul auf Basis von Artikel einfügen (rechts)

joergsart
Beiträge: 34
Registriert: Do 19. Mai 2005, 23:48
Wohnort: Hamburg
Kontaktdaten:

Beitrag von joergsart » Mi 31. Jan 2007, 14:42

hmmm, man müsste wohl eine abfrage in das modul einsetzen, ob man sich im frontend oder backend befindet und dementsprechend den pfad ausgeben...

wenn man noch aus dem backend drucken könnte, wäre das eine extrem runde sache, ein besseres druckmodul habe ich noch nicht gesehen.

fange leider gerade erst mit dem modulschreiben an
schau einfach mal...

gruß
joergsart

Anaman
Beiträge: 105
Registriert: So 26. Mär 2006, 22:19
Kontaktdaten:

Beitrag von Anaman » Mi 14. Feb 2007, 16:34

Hallo zusammen,

kann es sein, dass das Modul in geschützten Bereichen nicht funtioniert. Im öffentlichen Bereich läuft es problemlos im geschützen hingegen erscheint nur der Druckkopf ohne Buttons und kein Inhalt. Woran könnt das liegen?

Gruß
Anaman

schlaucher
Beiträge: 444
Registriert: Mi 14. Sep 2005, 10:38
Wohnort: Karlsruhe
Kontaktdaten:

Beitrag von schlaucher » Mi 14. Feb 2007, 20:03

Anaman hat geschrieben:Hallo zusammen,

kann es sein, dass das Modul in geschützten Bereichen nicht funtioniert. Im öffentlichen Bereich läuft es problemlos im geschützen hingegen erscheint nur der Druckkopf ohne Buttons und kein Inhalt. Woran könnt das liegen?

Gruß
Anaman
In geschützten Bereichen hatte ich noch gar nicht getestet, da muss man im Modul Artikel drucken noch eine Änderung machen:

suche nach:

Code: Alles auswählen

if ($public == 1 AND $visible == 1 AND  $online == 1) { 
ersetzte durch:

Code: Alles auswählen

if ($visible == 1 AND  $online == 1) {
dann funktioniert es auch in geschützten Bereichen.

Gruß
schlaucher

Anaman
Beiträge: 105
Registriert: So 26. Mär 2006, 22:19
Kontaktdaten:

Beitrag von Anaman » Do 15. Feb 2007, 15:06

Genau das war's! Danke für das tolle Modul!

Bluepiclife
Beiträge: 1
Registriert: Mo 30. Apr 2007, 10:13
Kontaktdaten:

Beitrag von Bluepiclife » Mo 30. Apr 2007, 10:22

"Im Imput Bereich des Moduls müsst Ihr den Artikel mit dem Druckkopf hinterlegen. " - Könnte mir mal jemand die Stelle zeigen - wo und wie man das macht = Neuling- Danke!

schlaucher
Beiträge: 444
Registriert: Mi 14. Sep 2005, 10:38
Wohnort: Karlsruhe
Kontaktdaten:

Beitrag von schlaucher » Mo 30. Apr 2007, 14:28

Bluepiclife hat geschrieben:"Im Imput Bereich des Moduls müsst Ihr den Artikel mit dem Druckkopf hinterlegen. " - Könnte mir mal jemand die Stelle zeigen - wo und wie man das macht = Neuling- Danke!
Mit Druckkopf ist der Artikel Druckvorschau gemeint, den Du zuerst anlegen musst. In Diesem Artikel kannst Du eine Kopfzeile im HTML Textbereich erstellen, die dann auf allen Ausdrucken gleich ist.
Diesen Artikel kannst Du irgendwo erstellen z.B. im Servicebereich.
In Deinen normalen Artikeln wird dieser dann im Inputbereich angegeben.

Ich hoffe das war verständlich.

Gruß
schlaucher

b-wing
Beiträge: 8
Registriert: Fr 4. Mai 2007, 10:58
Kontaktdaten:

Beitrag von b-wing » Mo 21. Mai 2007, 23:08

hallo,

gibt es denn mittlerweile eine möglichkeit dieses modul auch mit der mod_rewrite version von stese einzusetzen?

habe alle schritte befolgt und es sollte auch soweit zu funktionieren, wenn das modul die rewrite url nutzt...

ich bitte um hilfe ;)

kenzo
Beiträge: 112
Registriert: Di 8. Jul 2003, 19:46
Kontaktdaten:

Variablen

Beitrag von kenzo » Fr 26. Okt 2007, 19:45

Hi Milez


Wie hast Du das genau gemacht, welche Variablen hast Du eingetragen?
Anstatt den Druckartikel über die Eingabe zu definieren, habe ich ihn als Mandanten Variable definiert, und im Modul wieder herausgeholt. Dann braucht man nicht jedes Template konfigurieren.

Code:

$cApiClient = new cApiClient($client);
$MOD_DV_sel_idcat = $cApiClient->getProperty('druckvorschau', 'druckkategorie');
$MOD_DV_sel_idcatart = $cApiClient->getProperty('druckvorschau', 'druckartikel');


THX Kenzo

kenzo
Beiträge: 112
Registriert: Di 8. Jul 2003, 19:46
Kontaktdaten:

Links in der Druckvorschau deaktivieren

Beitrag von kenzo » Sa 27. Okt 2007, 09:10

Hi Schlaucher,

wie kann ich die Links in der DRuckvorschau deaktivieren?
Wenn die Druckvorschau irgendein Link angeklickt wird öffnet sich ja dann immer die ganze Seite in der Druckvorschau.

gibt es da was mit css?

thx

Kenzo

bluefin
Beiträge: 67
Registriert: Mi 9. Nov 2005, 19:51
Kontaktdaten:

Re: Druckmodul auf Basis von Artikel einfügen (rechts)

Beitrag von bluefin » Mo 5. Nov 2007, 14:04

Hallo,
setzte die aktuellste Version von Contenido ein 4.6.22.

Habe dieses Modul schon x mal einbgebaut immer ohne Probleme. Nur diesmal wills nicht hinhauen. Gibt es etwas bezgl. der neuen Version zu beachten?

Ich benutze nicht das Layout mit den Layern , sondern verwende noch Tabellen, wie bei den anderen auch.

Wenn ich auf die Druckvorschau klicke wird mir die ganze Seite inkl. Navigation angezeigt, obwohl ich die zu druckenden Container definiert habe.

Auszug Quelltext vom Layout:


<td><!-- Content -->
<!--start:content--><container id="12" name="Text" types="Content" default="">Content 1</container>
<container id="15" name="Text" types="Content" default="">Content 2</container>
<container id="22" name="Text" types="Content" default="">Content 3</container>
<container id="24" name="Text" types="Content" default="">Content 4</container>
<container id="26" name="Text" types="Content" default="">Content 5</container>
<!--end:content--> </td>




Kann mir jemend helfen??
Beste Grüße

cardman
Beiträge: 61
Registriert: Mi 11. Jun 2003, 09:34
Kontaktdaten:

Beitrag von cardman » Di 20. Nov 2007, 22:54

Hallo,

zunächst mal Danke für das Modul.
Ich habe es eingebaut und es läuft einwandfrei.

Allerdings musste ich es etwas auf meine Bedürfnisse anpassen.
Es ist nichts wildes gewesen, aber für mich war es eben erforderlich, das ich mehrere Bereiche definieren kann, die anschliessend in der Druckvorschau erscheinen.

Hier der geänderte Code:

Code: Alles auswählen

<?php 
/*********************************************** 
* Article Include Output for Printing 
* 
* Author      :     Willi Man 
* Copyright   :     Contenido - four for business 
* Created     :     18-12-2003 
* Modified    :     02-01-2004 
* Modified    :     05-08-2005, Andreas Lindner 
* Modified    :     20-11-2006, schlaucher 
************************************************/ 

#Get current settings 
//$cms_idcat = "CMS_VALUE[1]"; 
//$cms_idcatart = "CMS_VALUE[2]"; 

$bDebug = false; 
if ($bDebug) echo "<pre> cat $cms_idcat catart $cms_idcatart</pre>"; 

if ((strlen($cms_idcat) > 0 AND $cms_idcat != '0') AND (strlen($cms_idcatart) > 0 AND $cms_idcatart != '0')) { 
   if (strlen($cms_idcatart) > 0 AND $cms_idcatart > 0) {       
      #Get idart from database 
      $sql = "SELECT idcat, idart 
            FROM ".$cfg["tab"]["cat_art"]." 
            WHERE idcatart='".$cms_idcatart."'"; 
      if ($bDebug) {echo "<pre>";print_r($sql);echo "</pre>";} 
       $db->query($sql); 
       $db->next_record(); 

       $cms_catid = $db->f("idcat"); 
       $cms_artid = $db->f("idart"); 
        
         $db->free();       
   } 
    
   if ($cms_idcatart == 0) { 
      $cms_catid = $cms_idcat; 
             
      $sql = "SELECT A.idart, B.lastmodified 
            FROM ".$cfg["tab"]["cat_art"]." AS A, ".$cfg["tab"]["art_lang"]." AS B 
            WHERE 
               A.idart = B.idart AND 
               B.online = 1 AND 
               A.idcat = '".$cms_idcat."' 
               ORDER BY B.lastmodified DESC"; 
                
      if ($bDebug) {echo "<pre>";print_r($sql);echo "</pre>";} 
       $db->query($sql); 
        
       if ($db->next_record()) { 
          $cms_artid = $db->f("idart"); 
          $lastmod = $db->f('lastmodified'); 
       } 
        
         $db->free(); 
          
      $sql = "SELECT idcatart 
            FROM ".$cfg["tab"]["cat_art"]." 
            WHERE 
               idart = '".$cms_artid."' AND 
               idcat = '".$cms_catid."' "; 
                
      if ($bDebug) {echo "<pre>";print_r($sql);echo "</pre>";} 
       $db->query($sql); 
        
       if ($db->next_record()) { 
          $cms_idcatart = $db->f("idcatart"); 
       } 
        
         $db->free();          
   }    
    
    #Check if category is online or protected 
    $sql = "SELECT public, visible FROM ".$cfg["tab"]["cat_lang"]." WHERE idcat='".$cms_catid."' AND idlang='".$lang."'"; 
   if ($bDebug) {echo "<pre>";print_r($sql);echo "</pre>";} 
    $db->query($sql); 
    $db->next_record(); 

    $public = $db->f("public"); 
    $visible = $db->f("visible"); 
        
    $db->free(); 

    #Check if article is online 
    $sql = "SELECT online FROM ".$cfg["tab"]["art_lang"]." WHERE idart='".$cms_artid."' AND idlang='".$lang."'"; 
   if ($bDebug) {echo "<pre>";print_r($sql);echo "</pre>";} 
    $db->query($sql); 
    $db->next_record(); 

    $online = $db->f("online"); 
        
    $db->free(); 

    #If the article is online and the according category is not protected and visible, include the article 

    if ($public == 1 AND $visible == 1 AND  $online == 1) { 
      #Check if code creation is necessary 
       $sql = "SELECT 
                createcode 
            FROM 
                ".$cfg["tab"]["cat_art"]." 
            WHERE 
                idcat = '".$cms_catid."' AND 
                idart = '".$cms_artid."'"; 
      if ($bDebug) {echo "<pre>";print_r($sql);echo "</pre>";} 
      $db->query($sql); 
      if ($db->next_record()) { 
         $createcode = $db->f("createcode"); 
      } else { 
         $createcode = 1; 
      } 
    
      $db->free(); 
       
      #Create code if necessary 
      if ($createcode == 1) { 
         cInclude('includes', 'functions.con.php'); 
         cInclude('includes', 'functions.tpl.php'); 
         cInclude('includes', 'functions.mod.php'); 
          
           conGenerateCode($cms_catid, $cms_artid, $lang, $client); 
      } 
       
      #Get code from database and execute it 
      $sql = "SELECT code FROM ".$cfg["tab"]["code"]." WHERE idcatart = '".$cms_idcatart."' AND idlang = '".$lang."'"; 
      if ($bDebug) {echo "<pre>";print_r($sql);echo "</pre>";} 

      $db->query($sql); 
      if ($db->next_record()) { 
         $code = stripslashes($db->f("code")); 
          
         $db->free(); 
          
         ob_start(); 
       
         eval("?> 
".$code." 
<?php 
"); 
    
         $code = ob_get_contents(); 
    
         #Clean buffer 
         ob_end_clean(); 
         $code2 = "";

         do {
             $startpos = strpos($code, "<!--start:content-->"); 
             $endpos = strpos($code, "<!--end:content-->"); 
             $difflen = $endpos - $startpos; 
             $code2 .= substr($code, $startpos, $difflen);   
             $code = substr($code, $endpos+20);              
         }
         while($startpos > 0);

            echo '<div id="print_button"><button class="button_print" onclick="self.print();">Drucken</button>&nbsp;&nbsp;&nbsp;&nbsp;<button class="button_print" onclick="self.close();">Schließen</button></div><hr>'; 
         echo $code2; 
      } else { 
         echo "<!-- ERROR in module Article Include<pre>no code created for article to include!<br>idcat $cms_catid, idart $cms_artid, idlang $lang, idclient $client</pre>-->"; 
      } 
    } 
} 

?>
Ich habe das Rausfiltern der beiden Strings die das Anfang und Ende des Druckbereichs markieren einfach in eine do ... while -Schleife gesetzt und suche einfach so lange, bis kein Begin mehr gefunden wird.

Wenn Ihr Anregungen habt oder Fehler im Code sind, schreibt mir einfach zurück.

Danke

Gruss
Cardman

jdstrike
Beiträge: 52
Registriert: Di 18. Dez 2007, 14:55
Kontaktdaten:

Beitrag von jdstrike » So 23. Dez 2007, 00:39

hallo zusammen,
so hier mal mein erster post. sieht auch genau so bei meiner erfahrung in contenido aus.

also hier mal zu diesem modul hier: es funktioniert soweit einwandfrei.

Meine Frage ist die, warum ich bei jedem Artikel in der Konfiguration
Kategorie der Druckvorschau wählen:
Artikel der Druckvorschau wählen:

muss? Warum macht er das nicht automatisch bei allen Artikel die das gleiche Template haben? kann ich nicht automatisch den Ort des Artikel Druckvorschau im Modul hinterlegen. Und wie mache ich das?

Wahrscheinlich ist das mega einfach für Euch. Wäre euch echt dankbar wenn Ihr mir helfen könntet.

Bless jd

vpanama
Beiträge: 26
Registriert: Mo 3. Dez 2007, 19:21
Kontaktdaten:

Toll, bis auf Kleinigkeit

Beitrag von vpanama » Mi 9. Jan 2008, 11:19

Hallo,

das Tool ist prima, allerdings hab ich noch einen Fehler drin.
Bei der Druckasicht ist auch der Schalter für die Druckansicht drin.
Das gehört doch dort nicht mehr hin, oder? funktioniert dann ja eh nicht mehr. Wie bekomm ich den da raus? Soll natürlich auch nicht mit gedruckt werden.

Danke
vpanama

Dodger77
Beiträge: 3626
Registriert: Di 12. Okt 2004, 20:00
Wohnort: Voerde (Niederrhein)
Kontaktdaten:

Re: Toll, bis auf Kleinigkeit

Beitrag von Dodger77 » Mi 9. Jan 2008, 11:24

vpanama hat geschrieben:Bei der Druckasicht ist auch der Schalter für die Druckansicht drin.
Nicht, wenn du dich an die Anleitung im ersten Post gehalten hast:
CSS drucken
Code:

Code: Alles auswählen

#print_button
 {
 display:none;
 }

#button
 {
 display:none;
 }

vpanama
Beiträge: 26
Registriert: Mo 3. Dez 2007, 19:21
Kontaktdaten:

Hallo Dodger

Beitrag von vpanama » Mi 9. Jan 2008, 14:25

...nicht dieser.

diese Einträge für die css wirken nur für die Button, Drucken und Schließen. Leider nicht für Druckansicht.

Für Artikel die druckbar sein sollen greift das Script von Java. Das sollte aber für mein Empfinden nicht mehr beim Druckartikel, also bei der Druckansicht greifen.

Danke und Gruß

vpanama[/img]

Gesperrt