Formfiller: Fettdruck

Hast du Probleme oder Fragen bei der Einrichtung bestimmter Plugins ? Diese kannst du hier loswerden.
Antworten
oliver
Beiträge: 238
Registriert: 25. Nov 2014, 19:47

Formfiller: Fettdruck

Beitrag von oliver »

hallo rmb,

bei Fettdruck eines Feldes (A=B) schmiert das Plugin ab:

Code: Alles auswählen

Call to undefined function strstr_multiple() in /www/htdocs/admlogin/spielwiese/adm_plugins/formfiller/createpdf.php on line 261
Habe nicht weiter analysiert.

Besten Gruß
Oliver
lagro
Beiträge: 1
Registriert: 16. Sep 2014, 17:12

Re: Formfiller: Fettdruck

Beitrag von lagro »

Hallo Oliver,

die Funktion strstr multiple scheint es nicht zu geben.
Ich verwende die neuste Version 2.0.1. Da ist der Fehler immer noch drin ;(.

Die Validierung habe ich jetzt behoben...
Allerdings funktionierte das auch nicht beim Etikettendruck.
Ich habe dazu jetzt nocht etwas rumgecodet.
Eher quick & dirty aber jetzt funktionieren Schriftfarben und Fonteinstellungen auch im Etikettenbereich.
Außerdem habe ich noch zwei neue Spezialzeichen '{' und '}' für Text voranstellen oder anhängen ergänzt.
So kann man auch noch Zusatztext ausgeben. Kann z.B. nötig sein wenn man "Hallo Max," ausgeben möchten. Dann kann man jetzt so etwas in der Art machen:
Feld: Vorname Position: x-Koord,y-Koord;{=Hallo;}=,
Hier meine komplette createpdf.php

Code: Alles auswählen

<?php
/******************************************************************************
 * 
 * createpdf.php
 *   
 * Erzeugt und befuellt die PDF-Datei fuer das Admidio-Plugin FormFiller
 * 
 * Copyright    : (c) 2004 - 2015 The Admidio Team
 * Homepage     : http://www.admidio.org
 * License      : GNU Public License 2 http://www.gnu.org/licenses/gpl-2.0.html
 *
 * Parameters:
 * 
 * user_id : 		ID des Mitglieds, dessen Daten ausgelesen werden
 * form_id :		interne Nummer des verwendeten PDF-Formulars
 * 					    Hinweis: form_id wird abhängig vom aufrufenden Programm
 * 						     entweder über $_GET oder über $_POST übergeben
 * lst_id : 		Liste, deren Konfiguration verwendet wird
 * rol_id : 		ID der verwendeten Rolle
 * show_members : 	0 - (Default) aktive Mitglieder der Rolle anzeigen
 *                	1 - Ehemalige Mitglieder der Rolle anzeigen
 *                	2 - Aktive und ehemalige Mitglieder der Rolle anzeigen
 *                
 * Hinweis: Abhängig vom aufrufenden Programm wird 
 * 	   entweder user_id oder (lst_id und rol_id und show_members) übergeben    
 *           
 *****************************************************************************/

require_once(substr(__FILE__, 0,strpos(__FILE__, 'adm_plugins')-1).'/adm_program/system/common.php');
require_once(SERVER_PATH. '/adm_program/system/classes/tablefile.php');
require_once(SERVER_PATH. '/adm_program/system/classes/listconfiguration.php');
require_once(SERVER_PATH. '/adm_program/system/classes/image.php');

require_once(dirname(__FILE__).'/common_function.php');
require_once($plugin_path. '/'.$plugin_folder.'/classes/configtable.php'); 
require_once($plugin_path. '/'.$plugin_folder.'/library/fpdf.php');
require_once($plugin_path. '/'.$plugin_folder.'/library/fpdi.php');

// Initialize and check the parameters
$getUserId       = admFuncVariableIsValid($_GET, 'user_id', 'numeric', array('defaultValue' => 0));
$getFormID 	 	 = admFuncVariableIsValid($_GET, 'form_id', 'numeric', array('defaultValue' => 0));
$postFormID 	 = admFuncVariableIsValid($_POST, 'form_id', 'numeric', array('defaultValue' => 0));
$postListId      = admFuncVariableIsValid($_POST, 'lst_id', 'numeric', array('defaultValue' => 0));
$postRoleId      = admFuncVariableIsValid($_POST, 'rol_id', 'numeric', array('defaultValue' => 0));
$postShowMembers = admFuncVariableIsValid($_POST, 'show_members', 'numeric', array('defaultValue' => 0));

$userArray = array();
unset($role_ids);
$getpostFormID = 0;
$spalte = 0;
$zeile = 0;	
$etikettenText = array();
$etikettenTextSettings = array();
		
$user = new User($gDb, $gProfileFields);

// Konfiguration einlesen
$pPreferences = new ConfigTablePFF();
$pPreferences->read();

// wenn von der Profilanzeige aufgerufen wurde, dann ist $getUserId>0
// und form_id wurde über $_GET übergeben
if($getUserId > 0)
{
	$userArray[] = $getUserId ;
	$getpostFormID = $getFormID;
}
elseif(($postListId > 0) && ($postRoleId > 0))
{
	//$list->getSQL($role_ids, $postShowMembers) erwartet als Parameter für 
	//$role_ids ein Array, deshalb $postRoleId in ein Array umwandeln
	$role_ids[] = $postRoleId;
	$mainSql      = '';   // enthaelt das Haupt-Sql-Statement fuer die Liste

	// create list configuration object and create a sql statement out of it
	$list = new ListConfiguration($gDb, $postListId);
	$mainSql = $list->getSQL($role_ids, $postShowMembers);
		
	// SQL-Statement der Liste ausfuehren und pruefen ob Daten vorhanden sind
	$resultList = $gDb->query($mainSql);
	
	while ($row = $gDb->fetch_array($resultList))
	{
		$userArray[] = $row['usr_id'] ;
	}
	$getpostFormID = $postFormID;
}
else 
{
	//Fehlermeldung ausgeben, wenn Parameter fehler
	$gMessage->show($gL10n->get('PFF_MISSING_PARAMETER'),$gL10n->get('SYS_ERROR'));
}

//initiate FPDF
$pdf = new FPDI('P','mm','A4');

// falls ein Formular definiert wurde, dann ist der Wert der form_pdfid>0
if ($pPreferences->config['Formular']['pdfid'][$getpostFormID]>0)
{
	//prüfen, ob das Formular noch in der DB existiert
	$sql = 'SELECT fil_id 
            FROM '.TBL_FILES.' , '. TBL_CATEGORIES. ', '. TBL_FOLDERS. '
            WHERE fil_id = \''.$pPreferences->config['Formular']['pdfid'][$getpostFormID].'\' 
            AND fil_fol_id = fol_id
            AND (  fol_org_id = '.$gCurrentOrganization->getValue('org_id').'
            	OR fol_org_id IS NULL ) ';
    $result = $gDb->query($sql);
    $row = $gDb->fetch_object($result);
     
	// Gibt es das Formular noch in der DB, wenn nicht: Fehlermeldung
    if( !isset($row->fil_id) && !(strlen($row->fil_id) > 0) )
    {
    	$gMessage->show($gL10n->get('SYS_FILE_NOT_EXIST'));
    }     
	
	// get recordset of current file from databse
	$file = new TableFile($gDb);
	
	$file->getFileForDownload($pPreferences->config['Formular']['pdfid'][$getpostFormID]);
    
	//kompletten Pfad der Datei holen
	$completePath = $file->getCompletePathOfFile();

	//pruefen ob File ueberhaupt physikalisch existiert
	if (!file_exists($completePath))
	{
		$gMessage->show($gL10n->get('SYS_FILE_NOT_EXIST'));
	}
}

//sind Daten für Etiketten definiert?  (dann die Etikettendaten überprüfen)
$etiketten = explode(',',$pPreferences->config['Formular']['labels'][$getpostFormID]);
		
if(count($etiketten)==4)
{
	foreach ($etiketten as $data)
	{
		if(!(is_numeric($data)))
		{
			$etiketten = array(1,0,1,0);       // das sind die Werte zum Drucken für eine Seite
			break;
		}
	}
}	
else 
{
	$etiketten = array();
}
//wenn 	count($etiketten) jetzt nicht 0 ist, dann wird Etikettendruck durchgeführt	
						
foreach($userArray as $UserId)
{
	$user->readDataById($UserId);
	
	if ($zeile==0 && $spalte==0)
	{
		$pdf->AddPage();
		$pdf->SetAutoPageBreak(false);
	}

	if ($pPreferences->config['Formular']['pdfid'][$getpostFormID]>0 && $zeile==0 && $spalte==0)
	{
		// set the sourcefile
		$pdf->setSourceFile($completePath);

		//import page
		$tplIdx = $pdf->importPage(1);

		//use the imported page...
		$pdf->useTemplate($tplIdx,null,null,0,0,true);
	}

	// nur zur Info: FPDI kann auch die Größe einer PDF-Datei auslesen
	//$arr_size = $pdf->getTemplateSize($tplIdx);
	
	// zuerst mal Standardschriftfarbe festlegen (falls nichts definiert wurde)
	$pdf->SetTextColor(0,0,0);

	// und Standardschrift, -stil und -größe festlegen (falls nichts definiert wurde)
	$pdf->SetFont('Arial','BI',10);
	
	// jetzt alle Felder durchlaufen
	//foreach($gProfileFields->mProfileFields as $field )
	foreach($pPreferences->config['Formular']['fields'][$getpostFormID] as $key => $fielddata)
	{ 
		$text = '';
	
		//$fielddata splitten in Typ und ID
        $fieldtype=substr($fielddata,0,1);
        $fieldid=substr($fielddata,1);
        	
        $formdata = $pPreferences->config['Formular']['positions'][$getpostFormID][$key];
        	
		// jetzt mit den Standarddaten überschreiben
		$color = explode(',',$pPreferences->config['Formular']['color'][$getpostFormID]);
		$pdf->SetTextColor($color[0],$color[1],$color[2]);
			  
		// mit den Standarddaten überschreiben
		$pdf->SetFont($pPreferences->config['Formular']['font'][$getpostFormID],
			  	  	  $pPreferences->config['Formular']['style'][$getpostFormID],
			 	  	  $pPreferences->config['Formular']['size'][$getpostFormID]   );										
			 	  	  
		if(!empty($formdata))
		{
			//zuerst mal sehen, ob Schrift-Parameter angefügt sind (wenn sich ein ';' darin befindet)
			$xyKoord = array();
			$gender = array('x','x');
			
			//$formdata splitten in Koordinaten und Rest
			$arrSplit = explode(';',$formdata);

			// xyKoordinaten extrahieren und in $arrSplit löschen
			$xyKoord = explode(',',array_shift($arrSplit));

			// Routine beenden, wenn nicht mindestens die Koordinaten für X und Y angegeben wurden
			if (count($xyKoord)<2)
			{
				continue ;
			}
			$pdf->SetXY($xyKoord[0], $xyKoord[1]);
					
			//arrSplit zerlegen in ein assoziatives Array
			$fontData = array();		
			foreach($arrSplit as $splitData)
			{
				$fontData[substr($splitData,0,1)] = substr($splitData,2) ;	
			}
		
			// wurde eine abweichende Schriftfarbe definiert? ->  prüfen und ggf. überschreiben
			if ( array_key_exists ( 'C', $fontData ) )
			{
				// jetzt mit den konfigurierten Daten überschreiben
				$color = explode(',',$fontData['C']);
				$key = true;
				foreach ($color as $data)
				{
					if(!(is_numeric($data)))
					{
						$key = false;
						break;
					}
				}
				if ($key)
				{
					$pdf->SetTextColor($color[0],$color[1],$color[2]);		
				}
			}
			
			// wurde eine abweichende Schriftgröße definiert? -> prüfen und bei Syntaxfehler ggf. löschen
			if ( array_key_exists ( 'S', $fontData ) && !(is_numeric($fontData['S'])))
			{
				unset($fontData['S']);
			}	

			// wurde ein abweichender Schrifttyp definiert? -> prüfen und bei Syntaxfehler ggf. löschen
			if ( array_key_exists ( 'F', $fontData ) && !(in_array($fontData['F'],array('Courier','Arial','Times','Symbol','ZapfDingbats' ))))
			{
				unset($fontData['F']);
			}			

			// wurden abweichende Schriftattribute definiert? -> prüfen und bei Syntaxfehler ggf. löschen
			if ( array_key_exists ( 'A', $fontData ) && !preg_match("/^[BUI]*$/",$fontData['A']) )
			{
				unset($fontData['A']);
			}
		
			// wurden abweichende Schriftart, Schriftstil oder Schriftgröße definiert?	-> überschreiben	
			$pdf->SetFont(
				((array_key_exists ( 'F', $fontData )) ? $fontData['F'] : $pPreferences->config['Formular']['font'][$getpostFormID]),
				((array_key_exists ( 'A', $fontData )) ? $fontData['A'] : $pPreferences->config['Formular']['style'][$getpostFormID]),
				((array_key_exists ( 'S', $fontData )) ? $fontData['S'] : $pPreferences->config['Formular']['size'][$getpostFormID])   );		

			switch ($fieldtype)
			{
				case 'l':
					$image  = null;
					$zufall = 0;
					$imageW = 0;
					$imageH = 0;
					$picpath= '';	
		
					// wurden Parameter für Weite und Höhe übergeben?
					if (isset($xyKoord[2]))
					{
						$imageW = $xyKoord[2];
						if (isset($xyKoord[3]))
						{
							$imageH = $xyKoord[3];		
						}	
					}

					if ( array_key_exists ( 'L', $fontData ) )                         //Foto aus einer alternativen Bilddatei)
					{
						if(file_exists(SERVER_PATH. '/adm_my_files/download/'.$fontData['L']))
						{
							$picpath = SERVER_PATH. '/adm_my_files/download/'.$fontData['L'];
						}	
					}
					elseif($gPreferences['profile_photo_storage'] == 1 )              //Foto aus adm_my_files
					{
						if(file_exists(SERVER_PATH. '/adm_my_files/user_profile_photos/'.$UserId.'.jpg'))
						{
							$picpath = SERVER_PATH. '/adm_my_files/user_profile_photos/'.$UserId.'.jpg';
						}
					}
					elseif($gPreferences['profile_photo_storage'] == 0 )               //Foto aus der Datenbank
					{		
						if(strlen($user->getValue('usr_photo')) != NULL)
    					{
        					$image = new Image();
        					$image->setImageFromData($user->getValue('usr_photo'));
        
        					// die Methode Image der Klasse FPDF benötigt einen Pfad zur Imagedatei
        					// ich habe es nicht geschafft von der Klasse Image direkt an die Klasse FPDF diesen Pfad zu übergeben
        					// deshalb der Umweg über eine temporäre Datei
        					$zufall = mt_rand(10000,99999);
        					$image->copyToFile(null,SERVER_PATH. '/adm_my_files/PFF'.$zufall.'.png');
        					$image->delete();
        					$picpath = SERVER_PATH. '/adm_my_files/PFF'.$zufall.'.png';   
    					}
					}

					//Bild nur in PDF-Datei schreiben, wenn auch ein Bild zum Mitglied gefunden wurde
					if ($picpath<>'')
					{
       					$pdf->Image($picpath,$xyKoord[0],$xyKoord[1], $imageW, $imageH);

						// ggf. die temporär angelegte Bilddatei wieder löschen
						if(file_exists(SERVER_PATH. '/adm_my_files/PFF'.$zufall.'.png'))
            			{
                			unlink(SERVER_PATH. '/adm_my_files/PFF'.$zufall.'.png');
            			}
					}
					break;

				case 'v':
					// wurde ein Wert definiert? 
					if ( array_key_exists ( 'V', $fontData ) )
					{
						$text = $fontData['V'];	               // Hinweis: der übergebene Inhalt wird nicht überprüft 
					}
					break;	

				case 'd':
					$text = date("d.m.Y");
				
					// wurden Werte für das Datum definiert? 
					if ( array_key_exists ( 'D', $fontData ) )
					{
						$text = date($fontData['D']);	       // Hinweis: der übergebene Inhalt wird nicht überprüft 
					}	
					break;  

				case 'p':
        			if($gProfileFields->getPropertyById($fieldid, 'usf_name_intern')=='GENDER')
        			{
						if ( array_key_exists ( 'T', $fontData ) )       // wurden Werte für das Geschlecht definiert?
						{
							$gender = explode(',',$fontData['T']);
							if(!isset($gender[0]))
							{
								$gender[0]='x';
							}
							if(!isset($gender[1]))
							{
								$gender[1]=$gender[0];
							}
						}	
			
        				if(strstr($user->getValue($gProfileFields->getPropertyById($fieldid, 'usf_name_intern')),'female'))
        				{
        	    			//female
        					if (isset($xyKoord[2]) && isset($xyKoord[3]))
        					{
        						$pdf->SetXY($xyKoord[2], $xyKoord[3]);
        					}
        					$text = $gender[1];
        				}
        				elseif(strstr($user->getValue($gProfileFields->getPropertyById($fieldid, 'usf_name_intern')),'male')) 
        				{
        					$text = $gender[0];
        				}
        			}
					elseif($gProfileFields->getPropertyById($fieldid, 'usf_type') == 'CHECKBOX')
        			{
        				if($user->getValue($gProfileFields->getPropertyById($fieldid, 'usf_name_intern')))
        				{
        					$text = 'x';
        				}
        		}
        		else 
        		{
        			$text= $user->getValue($gProfileFields->getPropertyById($fieldid, 'usf_name_intern'));
        		}
        		break;
			}
        	
			// wurde optionaler Text angegeben?
			if ( array_key_exists ( '}', $fontData ) )
			{
				$text .= $fontData['}'];
			}
			if ( array_key_exists ( '{', $fontData ) )
			{
				$text = $fontData['{'].$text;
			}
			
        	//über ein Hilfsarray gehen, falls mit Etiketten gearbeitet wird
        	if (count($etiketten)>0)
        	{
        		$etikettenText[$pdf->GetY()][$pdf->GetX()]=$text;
				$etikettenTextSettings[$pdf->GetY()][$pdf->GetX()]['F'] = ((array_key_exists ( 'F', $fontData )) ? $fontData['F'] : $pPreferences->config['Formular']['font'][$getpostFormID]);
				$etikettenTextSettings[$pdf->GetY()][$pdf->GetX()]['A'] = ((array_key_exists ( 'A', $fontData )) ? $fontData['A'] : $pPreferences->config['Formular']['style'][$getpostFormID]);
				$etikettenTextSettings[$pdf->GetY()][$pdf->GetX()]['S'] = ((array_key_exists ( 'S', $fontData )) ? $fontData['S'] : $pPreferences->config['Formular']['size'][$getpostFormID]);
				$etikettenTextSettings[$pdf->GetY()][$pdf->GetX()]['C'] = $color;
        	}
        	else 
        	{
        		$pdf->Write(0,utf8_decode($text));
        	}
		}		
	}  // zum naechsten Profilfeld 

	$text = '';
	if (count($etiketten)>0)
    {        	
        foreach($etikettenText as $yKoord => $zeileData)	
        {
        	$pdf->SetY($yKoord+($zeile*$etiketten[3]));
        	
        	ksort($zeileData);
        	reset($zeileData);
        	$xKoord = key($zeileData);
        	
        	$pdf->SetX($xKoord+($spalte*$etiketten[1]));
        	
        	$text = '';
			$blnFirst = true;
        	foreach($zeileData as $spalteText => $spalteData)
        	{
				if($blnFirst) {
					$blnFirst = false;
					$text = $spalteData;
				}
				else {
					$text = ' '.$spalteData;
				}
				$pdf->SetFont(
					$etikettenTextSettings[$yKoord][$spalteText]['F'],
					$etikettenTextSettings[$yKoord][$spalteText]['A'],
					$etikettenTextSettings[$yKoord][$spalteText]['S']
				);
				$pdf->SetTextColor(
					$etikettenTextSettings[$yKoord][$spalteText]['C'][0],
					$etikettenTextSettings[$yKoord][$spalteText]['C'][1],
					$etikettenTextSettings[$yKoord][$spalteText]['C'][2]
				);		
				
				$pdf->Write(0,utf8_decode($text));
        	}
        }
	
    	unset($etikettenText);
        
		$spalte++;
		if($spalte==$etiketten[0])
		{
			$spalte=0;
			$zeile++;
		}
		if($zeile==$etiketten[2])
		{
			$zeile=0;
		}
    }
}  // zum naechsten User

if($pdf->PageNo() > $pPreferences->config['Optionen']['maxpdfview'] )
{
	$pdf->Output($pPreferences->config['Formular']['desc'][$getpostFormID].'.pdf','D');	
}
else 
{
	$pdf->Output();
}


?>
rmb
Plugin-Developer
Beiträge: 632
Registriert: 10. Mai 2011, 19:56
Wohnort: 86856

Re: Formfiller: Fettdruck

Beitrag von rmb »

Hallo zusammen!

Sorry, da habe ich einmal zuviel gelöscht. :?

Diese Funktion muss in die common_function.php:

Code: Alles auswählen

// Funktion überprüft, ob jeder einzelne Wert von $needle in $heystack enthalten ist
function strstr_multiple($haystack, $needle )
{
	for ($i=0;$i<strlen($needle);$i++)
	{
		if (!(strstr($haystack,substr($needle,$i,1))))
		{
			return false;
		}
	}
	return true;		
}
Gruß

rmb
oliver
Beiträge: 238
Registriert: 25. Nov 2014, 19:47

Re: Formfiller: Fettdruck

Beitrag von oliver »

Hallo rmb,

funktioniert!
Hast Du schon mal darüber nachgedacht, wie die Rollenmitgliedschaften (am Besten auch gleich die Ehrungen) mit dem Formfiller dargestellt werden könnten? Wir hatten das Thema vor einiger Zeit mal in einem Thead...

Besten Gruß
Oliver
rmb
Plugin-Developer
Beiträge: 632
Registriert: 10. Mai 2011, 19:56
Wohnort: 86856

Re: Formfiller: Fettdruck

Beitrag von rmb »

Hallo Oliver,

Du meinst sicher den Thread "Personalbogen drucken".

Bisher gibt es bei mir keine Überlegungen, Rollenmitgliedschaften in FormFiller darzustellen.
Aber im Plugin Kategoriereport habe ich bereits in der "Spaltenauswahl" eine Kombination aus Profilfeldern und Rollen. Müsste man nur etwas umbauen.

Schreib mir doch mal eine PM wie so ein Personalbogen aussehen sollte (evtl. Muster).

Gruß

rmb
Pfiff
Beiträge: 27
Registriert: 12. Okt 2010, 20:49
Wohnort: Freising
Kontaktdaten:

Re: Formfiller: Fettdruck

Beitrag von Pfiff »

Hallo rmb,

cool gibt es die Funktionalität auch noch für das 2.4er Plugin?

Wir erstellen mit dem Plugin unsere Gruppenlisten für die Teamleiter.
Da die Teamleiter immer einen Zettel wollen, wo alle Mitglieder Ihrere Gruppe mit Adresse, Telefonnr. etc drauf stehen habe ich diese Liste mit dem Formfiller erstellt.
Ich habe keine bessere Methode gefunden,
so mache ich es mit dem Formfiller in der Etikettenvariante.
Es funktioniert soweit, ich bekam jedoch schon ein paar mal folgenden Fragen.
-Könnte man den Namen nicht fett machen (Dies würde mit dieser Erweiterung gehen)
-Könnte man nicht auf dem Blatt die Rolle (Rollenname) als Überschrift anzeigen (Ich weiß das hat nichts mehr mit Etikettenausdruck zu tun :oops: )
-Kann man die Daten eines Kindes nicht in einer Zeile schreiben?
(Das würde nur funktionieren, wenn man den X Wert auch beim Etiketten drucken verwenden könnte.)

Deshalb wollte ich einfach mal nachfragen,
ob diese Formaterweiterung auch noch in das alte Plugin kommt?
Im Download Bereich des Plugin habe ich aber bisher nur die Version 2.01 gefunden von der hier gesprochenen Version 2.03 habe ich nichts gefunden.
Und ob Du vielleicht eine Idee hast wie ich die Wünsche meiner Mitglieder vielleicht erfüllen könnte.

Schöne Grüße
und ich wünsche schon mal allen einen guten rutsch mit viel Gesundheit im neue Jahr.
Hannes

Ich Verwende Admidio Version 2.4.13 mit dem Formfiller Version 1.03
oliver
Beiträge: 238
Registriert: 25. Nov 2014, 19:47

Re: Formfiller: Fettdruck

Beitrag von oliver »

Hallo Pfiff,

Was spricht denn gegen ein Update auf die 3.0?

Besten Gruß
Oliver
rmb
Plugin-Developer
Beiträge: 632
Registriert: 10. Mai 2011, 19:56
Wohnort: 86856

Re: Formfiller: Fettdruck

Beitrag von rmb »

Hallo Hannes,

ich muss Dir leider mitteilen, daß es von meiner Seite aus kein Update mehr von FormFiller für Admidio 2.4 geben wird. FormFiller 1.03 ist hier die letzte Version. Die aktuelle Version von FormFiller für Admidio 3 ist die 2.01.

Ich würde Dir, genauso wie Oliver, zu einem Update raten.

Zu einer Überschrift beim Etikettendruck habe ich mir schon mal Gedanken gemacht. Einen Rollennamen anzuzeigen ist mir aber zu einseitig. Ich könnte hier ein zusätzliches Textfeld bei den Konfigurationen einfügen, welches dann oberhalb der Etiketten gedruckt wird. Sowas wäre möglich.
Nicht möglich hingegen ist eine Mischung aus Etikettendruck und Auswertung des X-Wertes, so wie Du es zum Drucken der Daten eines Kindes benötigst.

Viele Grüße und Guten Rutsch

rmb
Pfiff
Beiträge: 27
Registriert: 12. Okt 2010, 20:49
Wohnort: Freising
Kontaktdaten:

Re: Formfiller: Fettdruck

Beitrag von Pfiff »

Hallo rmb,

danke für die schnelle Antwort.
Das ist ja ein großes Druckmittel :lol: , dass ich auf 3.0 update.
Ich wollte eigentlich noch nicht so schnell updaten,
da ich erst vor kurzem meine Leute für Admidio überzeugen konnte.
Leider haben wir viele, "Internetfeidliche Skeptiker", welche erst mit dem Argument von https überzeugen konnte und die wollte ich nicht gleich wieder was neuem konfrontieren :oops:

Vielleicht mache ich mal eine parallel Installation um es mal zu testen.
Ist das Future von der Fettschrift im Etikettendruck in der 2.01 schon enthalten?

Schöne Grüße
und einen guten Rutsch ins neue Jahr.
Hannes
rmb
Plugin-Developer
Beiträge: 632
Registriert: 10. Mai 2011, 19:56
Wohnort: 86856

Re: Formfiller: Fettdruck

Beitrag von rmb »

Hallo Hannes,

bei der Durchsicht des Programmcodes bin ich heute auf einen Fehler gestoßen und muß leider mitteilen, daß es beim Etikettendruck nicht möglich ist, Profilfelder mit unterschiedlichen Schriftattributen zu drucken, weder in der Version 1.0.3 von FormFiller, noch in der Version 2.0.1.

Etiketten werden immer mit denselben Schriftattributen gedruckt. Ausschlaggebend ist hier immer die eingestellte Standardschrift, oder die Attribute, die bei einer Konfiguration bei der Feldwahl im letzten Feld angegeben sind.

Im neuen Jahr werde sobald als möglich dieses Problem in Angriff nehmen. (Heute nicht mehr :wink:)

Gruß

rmb
Pfiff
Beiträge: 27
Registriert: 12. Okt 2010, 20:49
Wohnort: Freising
Kontaktdaten:

Re: Formfiller: Fettdruck

Beitrag von Pfiff »

Hallo rmb,

danke freue mich schon :-)
Heute sollst Du auch nicht arbeiten, sondern Dich auf den Jahreswechsel vorbereiten :D

An guadn Rutsch
Hannes
Benutzeravatar
Beligan
Beiträge: 1
Registriert: 22. Mai 2018, 13:31
Wohnort: Munchen

Re: Formfiller: Fettdruck

Beitrag von Beligan »

Pfiff hat geschrieben:Hallo rmb,

cool gibt es die Funktionalität auch noch für das 2.4er Plugin?

Wir erstellen mit dem Plugin unsere Gruppenlisten für die Teamleiter.
Da die Teamleiter immer einen Zettel wollen, wo alle Mitglieder Ihrere Gruppe mit Adresse, Telefonnr. etc drauf stehen habe ich diese Liste mit dem Formfiller erstellt.
Ich habe keine bessere Methode gefunden,
so mache ich es mit dem Formfiller in der Etikettenvariante.
Es funktioniert soweit, ich bekam jedoch schon ein paar mal folgenden Fragen.
-Könnte man den Namen nicht fett machen (Dies würde mit dieser Erweiterung gehen)
-Könnte man nicht auf dem Blatt die Rolle (Rollenname) als Überschrift anzeigen (Ich weiß das hat nichts mehr mit Etikettenausdruck zu tun :oops: )
-Kann man die Daten eines Kindes nicht in einer Zeile schreiben?
(Das würde nur funktionieren, wenn man den X Wert auch beim Etiketten drucken verwenden könnte.)

Deshalb wollte ich einfach mal nachfragen,
ob diese Formaterweiterung auch noch in das alte Plugin kommt?
Im Download Bereich des Plugin habe ich aber bisher nur die Version 2.01 gefunden von der hier gesprochenen Version 2.03 habe ich nichts gefunden.
Und ob Du vielleicht eine Idee hast wie ich die Wünsche meiner Mitglieder vielleicht erfüllen könnte.

Schöne Grüße und ich wünsche schon mal allen einen guten ruts Gesundheit kamagra in Deutschland online bestellen im neue Jahr.
Hannes

Ich Verwende Admidio Version 2.4.13 mit dem Formfiller Version 1.03
Zuerst scheint es, dass die Frage leicht zu lösen ist, aber nachdem ich es bis zum Ende gelesen habe, verstehe ich ganz ehrlich nicht, was das Wesen der Sache ist.
Antworten