---
title: "Vistenkarten - System"
url: "https://www.typo3.net/d/33960-vistenkarten-system"
source: "typo3.net"
tags: ["Allgemein","Frage"]
created: "2005-11-28"
last_reply: "2005-12-01"
replies: 23
solved: false
page: 1
pages: 1
lang: "de"
---

# Vistenkarten - System

Allgemein · 23 Antworten · gestartet 2005-11-28

## Eröffnungsbeitrag

**Sohn der Sonne** · 2005-11-28 · [Beitrag #1](https://www.typo3.net/d/33960-vistenkarten-system/1)

Hi,

ich hab die Suche ausgiebig genutzt und leider nichts passendes gefunden.

Folgendes soll realisiert werden:

Ich will x Visitenkarten anlegen, die den Namen, die Adresse (mit E-Mail und Web) sowie 3 Bilder (1 Logo und 2 Fotos) enthalten. Diese sollen sortiert in einer List-Ansicht untereinander ausgegeben werden.

Jedes Mitglied soll nur seine V-Card ändern können.

Ich will eine Suche einbauen, mit der man nach Stichworten in den V-Cards suchen kann.

Gibt es ein dementsprechendes Modul? Oder einen Lösungsweg?

Es wäre generell auch möglich das ganze in php umzusetzen und einzubinden, ich fänd es jedoch schöner es in Typo3 zu machen.

Homepage gibt es noch nicht, bin zurzeit mit xampp dran da was zu machen.

## Antworten

### [#2](https://www.typo3.net/d/33960-vistenkarten-system/2) · just2b · 2005-11-28

Hallo,

naja man muss manchmal etwas weiter denken ;)

Ext **cwt_community**: This extension provides a wide range of community features for frontend users. It mainly consists of the following parts: **Userlist, Profile, Profile Administration**, Guestbook, Messages, Buddylist, Backend User Administration.

lg georg

### [#3](https://www.typo3.net/d/33960-vistenkarten-system/3) · Sohn der Sonne · 2005-11-28

Okay, ich schau es mir direkt mal an.

Danke erstmal. :)

### [#4](https://www.typo3.net/d/33960-vistenkarten-system/4) · Sohn der Sonne · 2005-11-28

Gibt es da ein tutorial oder so was zu?

### [#5](https://www.typo3.net/d/33960-vistenkarten-system/5) · just2b · 2005-11-28

drunter ist doch e ein link im Rep zum Manual!
<http://typo3.org/documentation/document-library/cwt_community/>

### [#6](https://www.typo3.net/d/33960-vistenkarten-system/6) · Sohn der Sonne · 2005-11-28

:o

Danke.  :p

### [#7](https://www.typo3.net/d/33960-vistenkarten-system/7) · Sohn der Sonne · 2005-11-28

Also, ich hab jetzt dieses plugin installiert. Und ich habe alles gemacht was da in der Anleitung stand.

Wenn ich die PID öffne (also auf Seite index.php?id="Userlist" usw.) gehe sagt er mir nur "Bitte einloggen". Einen Login habe ich bisher nicht, wie mache ich einen? Und wie legt man einen User an?

### [#8](https://www.typo3.net/d/33960-vistenkarten-system/8) · just2b · 2005-11-28

zB mit der ext newloginbox bzw sr_feuser_register

### [#9](https://www.typo3.net/d/33960-vistenkarten-system/9) · Sohn der Sonne · 2005-11-28

Ich arbeite mal das durch:

<http://typo3.hachmeister.org/Login_einfuegen.135.0.html>

### [#10](https://www.typo3.net/d/33960-vistenkarten-system/10) · Sohn der Sonne · 2005-11-28

Es fehlt ein "i" im titel, kann das ein Mod editieren?

Ich hab das Plugin soweit drin, die Userlist funzt leider noch nicht.

Ich müsste danach nur noch die Felder etwas um ändern. Weiß jemand wie das geht?

### [#11](https://www.typo3.net/d/33960-vistenkarten-system/11) · Sohn der Sonne · 2005-11-28

Mein derzeitiges Problem:

Ich hab das Layout der Vistenkarte in dem Profiltemplate geändert. Aber wenn ich die Userlist anpassen will, benutzt er nicht alle Marker. Ich will ja das die VCards untereinander gezeigrt werden, eine Liste, und wollte dazu die Userlist "mißbrauchen" ... aber er zeigt dann nur die Hälfte der Marker ...

### [#12](https://www.typo3.net/d/33960-vistenkarten-system/12) · just2b · 2005-11-28

> **Sohn der Sonne schrieb:**
>
> ... aber er zeigt dann nur die Hälfte der Marker ...

naja sind zuerst alle Marker ersetzt worden? Wenn ja, dann hast du sie zuviel im Template verschoben - auch das Template braucht - insb bei wiederkehrenden Elementen - eine gewisse Struktur, die man dann nur im php-Code anpassen kann

lg georg

### [#13](https://www.typo3.net/d/33960-vistenkarten-system/13) · Sohn der Sonne · 2005-11-28

Nee, die wurden von Anfang an nicht ersetzt. Ich verusche grade in der PHP Datei (sollte die /p1/.#class.tx_cwtcommunity_pi1.php.1.1 sein hoffe ich) das Marker Array um das der "My Profile" zu erweitern.

### [#14](https://www.typo3.net/d/33960-vistenkarten-system/14) · Sohn der Sonne · 2005-11-28

Hat geklappt. :)

Hänge jetzt daran neue Felder hinzuzufügen.

### [#15](https://www.typo3.net/d/33960-vistenkarten-system/15) · just2b · 2005-11-28

> **Sohn der Sonne schrieb:**
>
> Hat geklappt. :)
>
> Hänge jetzt daran neue Felder hinzuzufügen.

tca.php erweitern, locallang entsprechend erweitern, gegebenfalls flexforms erweitern, .sql erweitern, fertig

### [#16](https://www.typo3.net/d/33960-vistenkarten-system/16) · Sohn der Sonne · 2005-11-28

Aber wie? Um was erweitern?

Was muss ich tun?

### [#17](https://www.typo3.net/d/33960-vistenkarten-system/17) · Sohn der Sonne · 2005-11-28

Es geht ja noch nicht mal um das Abckend, nur um das Frontedn von CWT Comm. Sollte eigentlich kein Problem sein ... sollte ...

### [#18](https://www.typo3.net/d/33960-vistenkarten-system/18) · Sohn der Sonne · 2005-11-28

Ich veröffentliche natürlich die gesamte Lösung wenn Sie da ist. :)

### [#19](https://www.typo3.net/d/33960-vistenkarten-system/19) · Sohn der Sonne · 2005-11-29

Unten sieht man was ich änderte.

Datei: p1/class.tx_cwtcommunity_pi1.php

```php
elseif ($CODE == "PROFILE_EDIT"){
				//Get the TCA from fe_users
				//START CONFIG FOR FEEDIT
				$table = "fe_users";
                //Create Item array
                $items['username']['label'] = htmlspecialchars($this->pi_getLL('CWT_PROFILE_EDIT_USERNAME_LABEL'));
                $items['username']['helptext'] = htmlspecialchars($this->pi_getLL('CWT_PROFILE_EDIT_USERNAME_HELPTEXT'));
                $items['username']['error_msg'] = htmlspecialchars($this->pi_getLL('CWT_PROFILE_EDIT_USERNAME_ERRMSG'));
                $items['username']['type'] = "preview";
                $items['name']['label'] = htmlspecialchars($this->pi_getLL('CWT_PROFILE_EDIT_NAME_LABEL'));
                $items['name']['helptext'] = htmlspecialchars($this->pi_getLL('CWT_PROFILE_EDIT_NAME_HELPTEXT'));
                $items['name']['error_msg'] = htmlspecialchars($this->pi_getLL('CWT_PROFILE_EDIT_NAME_ERRMSG'));
                $items['password']['label'] = htmlspecialchars($this->pi_getLL('CWT_PROFILE_EDIT_PWD_LABEL'));
                $items['password']['label_again'] = htmlspecialchars($this->pi_getLL('CWT_PROFILE_EDIT_PWD_LABELAGAIN'));
                $items['password']['helptext'] = htmlspecialchars($this->pi_getLL('CWT_PROFILE_EDIT_PWD_HELPTEXT'));
                $items['password']['helptext_again'] = htmlspecialchars($this->pi_getLL('CWT_PROFILE_EDIT_PWD_HELPTEXTAGAIN'));
                $items['password']['error_msg'] = htmlspecialchars($this->pi_getLL('CWT_PROFILE_EDIT_PWD_ERRMSG'));
                $items["password"]["type"] = "password";
                $items["password"]["eval"] = "twice";
                $items['address']['label'] = htmlspecialchars($this->pi_getLL('CWT_PROFILE_EDIT_ADDRESS_LABEL'));
                $items['address']['helptext'] = htmlspecialchars($this->pi_getLL('CWT_PROFILE_EDIT_ADDRESS_HELPTEXT'));
                $items['address']['error_msg'] = htmlspecialchars($this->pi_getLL('CWT_PROFILE_EDIT_ADDRESS_ERRMSG'));
				$items['zip']['label'] = htmlspecialchars($this->pi_getLL('CWT_PROFILE_EDIT_ZIP_LABEL'));
				$items['zip']['helptext'] = htmlspecialchars($this->pi_getLL('CWT_PROFILE_EDIT_ZIP_HELPTEXT'));
				$items['zip']['error_msg'] = htmlspecialchars($this->pi_getLL('CWT_PROFILE_EDIT_ZIP_ERRMSG'));
				$items['city']['label'] = htmlspecialchars($this->pi_getLL('CWT_PROFILE_EDIT_CITY_LABEL'));
				$items['city']['helptext'] = htmlspecialchars($this->pi_getLL('CWT_PROFILE_EDIT_CITY_HELPTEXT'));
				$items['city']['error_msg'] = htmlspecialchars($this->pi_getLL('CWT_PROFILE_EDIT_CITY_ERRMSG'));
				$items['country']['label'] = htmlspecialchars($this->pi_getLL('CWT_PROFILE_EDIT_COUNTRY_LABEL'));
				$items['country']['helptext'] = htmlspecialchars($this->pi_getLL('CWT_PROFILE_EDIT_COUNTRY_HELPTEXT'));
				$items['country']['error_msg'] = htmlspecialchars($this->pi_getLL('CWT_PROFILE_EDIT_COUNTRY_ERRMSG'));
				$items['company']['label'] = htmlspecialchars($this->pi_getLL('CWT_PROFILE_EDIT_COMPANY_LABEL'));
				$items['company']['helptext'] = htmlspecialchars($this->pi_getLL('CWT_PROFILE_EDIT_COMPANY_HELPTEXT'));
				$items['company']['error_msg'] = htmlspecialchars($this->pi_getLL('CWT_PROFILE_EDIT_COMPANY_ERRMSG'));
                $items['telephone']['label'] = htmlspecialchars($this->pi_getLL('CWT_PROFILE_EDIT_PHONE_LABEL'));
                $items['telephone']['helptext'] = htmlspecialchars($this->pi_getLL('CWT_PROFILE_EDIT_PHONE_HELPTEXT'));
                $items['telephone']['error_msg'] = htmlspecialchars($this->pi_getLL('CWT_PROFILE_EDIT_PHONE_ERRMSG'));
                $items['fax']['label'] = htmlspecialchars($this->pi_getLL('CWT_PROFILE_EDIT_FAX_LABEL'));
                $items['fax']['helptext'] = htmlspecialchars($this->pi_getLL('CWT_PROFILE_EDIT_FAX_HELPTEXT'));
                $items['fax']['error_msg'] = htmlspecialchars($this->pi_getLL('CWT_PROFILE_EDIT_FAX_ERRMSG'));
                $items['email']['label'] = htmlspecialchars($this->pi_getLL('CWT_PROFILE_EDIT_EMAIL_LABEL'));
                $items['email']['helptext'] = htmlspecialchars($this->pi_getLL('CWT_PROFILE_EDIT_EMAIL_HELPTEXT'));
                $items['email']['error_msg'] = htmlspecialchars($this->pi_getLL('CWT_PROFILE_EDIT_EMAIL_ERRMSG'));
                $items["email"]["eval"] = "email";
                $items['www']['label'] = htmlspecialchars($this->pi_getLL('CWT_PROFILE_EDIT_WWW_LABEL'));
                $items['www']['helptext'] = htmlspecialchars($this->pi_getLL('CWT_PROFILE_EDIT_WWW_HELPTEXT'));
                $items['www']['error_msg'] = htmlspecialchars($this->pi_getLL('CWT_PROFILE_EDIT_WWW_ERRMSG'));
                $items['tx_cwtcommunityuser_image']['label'] = htmlspecialchars($this->pi_getLL('CWT_PROFILE_EDIT_IMAGE_LABEL'));
                $items['tx_cwtcommunityuser_image']['helptext'] = htmlspecialchars($this->pi_getLL('CWT_PROFILE_EDIT_IMAGE_HELPTEXT'));
                $items['tx_cwtcommunityuser_image']['error_msg'] = htmlspecialchars($this->pi_getLL('CWT_PROFILE_EDIT_IMAGE_ERRMSG'));
				
				//Edit Danny Faak
				//Versuch ein neues Image-Feld hinzuzufügen
				//
				$items['tx_cwtcommunityuser_ppt']['label'] = htmlspecialchars("MOEP");
                $items['tx_cwtcommunityuser_ppt']['helptext'] = htmlspecialchars($this->pi_getLL('CWT_PROFILE_EDIT_IMAGE_HELPTEXT'));
                $items['tx_cwtcommunityuser_ppt']['error_msg'] = htmlspecialchars($this->pi_getLL('CWT_PROFILE_EDIT_IMAGE_ERRMSG'));

				//Ende Imagefeld
```

In der TCA.php weiß ich nicht was zu tun ist ...  #angry#

### [#20](https://www.typo3.net/d/33960-vistenkarten-system/20) · just2b · 2005-11-29

und ich werd mir jetzt die Ext anschauen und schauen was du geändert hast? ne... ist aber auch egal!

[siehe Core Api](https://docs.typo3.org/m/typo3/reference-tca/main/en-us/Ctrl/Index.html) bzw manuals bzw videos zum Ext erstellen!

lg georg

### [#21](https://www.typo3.net/d/33960-vistenkarten-system/21) · Sohn der Sonne · 2005-12-01

So , kann erst heute wieder weitermachen. Habs aber immer noch nicht ... mal sehen. :)

### [#22](https://www.typo3.net/d/33960-vistenkarten-system/22) · Sohn der Sonne · 2005-12-01

> **just2b schrieb:**
>
> > **Sohn der Sonne schrieb:**
> >
> > Hat geklappt. :)
> >
> > Hänge jetzt daran neue Felder hinzuzufügen.
>
> tca.php erweitern, locallang entsprechend erweitern, gegebenfalls flexforms erweitern, .sql erweitern, fertig

Die tca.php bildet genau 6 Haupt-Arrays:

```php
$TCA["tx_cwtcommunity_message"]
$TCA["tx_cwtcommunity_buddylist"]
$TCA["tx_cwtcommunity_buddylist_approval"]
$TCA["tx_cwtcommunity_guestbook"]
$TCA["tx_cwtcommunity_guestbook_data"]
$TCA["tx_cwtcommunity_icons"]
```

Und ich wüsste nicht welches davon ich editieren sollte.

Ziel soll es ja sein neue Profilfelder zu bekommen, die man dann editieren kann. Hauptziel dabei: Ein weiters Bild und eine Datei (*.ppt).

Die locallang muss angepasst werden, damit die neuen Felder Namen haben, klar.

Felxforms ... ich schau mir mal an was das ist, vom Namen her denke ich das sind die Eingabe-Forms?

.sql erweitern: Ich denke damit meinst du die Datenbank, das ist geschehen (Felder einfügen). :)

### [#23](https://www.typo3.net/d/33960-vistenkarten-system/23) · Sohn der Sonne · 2005-12-01

Also, ich hab das neue Feld unter Edit Profile.

Aber leider nutzt er nicht mein Datenbankfeld, sondern das normale Imagefeld.

Meine Änderungen:

```php
Pfad: /cwt_community

Datei 1: locallang_tca.php

Berreich: Array 'de'

Änderung:

	//Edit me
		'cwt_community.pi_flexform.sheet_general' => 'Hauptseite',
		'cwt_community.pi_flexform.sheet_general_code' => 'Wählen Sie Ihre Ansicht:',
		'cwt_community.pi_flexform.sheet_general_code.I.0' => 'Willkommen',
		'cwt_community.pi_flexform.sheet_general_code.I.1' => 'Nachrichten',
		'cwt_community.pi_flexform.sheet_general_code.I.2' => 'Gästebuch',
		'cwt_community.pi_flexform.sheet_general_code.I.3' => 'Nutzerprofil',
		'cwt_community.pi_flexform.sheet_general_code.I.4' => 'Nutzerprofil editieren',
		'cwt_community.pi_flexform.sheet_general_code.I.5' => 'Benutzerliste',
		'cwt_community.pi_flexform.sheet_general_code.I.6' => 'Freunde',
	//Ende Edit

Pfad: /cwt_community/p1

Datei 1: class.tx_cwtcommunity_pi1.php

Berreich 1: elseif ($CODE == "PROFILE_EDIT")

Änderung:

	//Edit me
		$items['tx_cwtcommunityuser_ppt']['label'] = htmlspecialchars("PowerPoint Datei:");
		$items['tx_cwtcommunityuser_ppt']['helptext'] =  htmlspecialchars($this->pi_getLL('CWT_PROFILE_EDIT_IMAGE_HELPTEXT'));
		$items['tx_cwtcommunityuser_ppt']['error_msg'] = htmlspecialchars($this->pi_getLL('CWT_PROFILE_EDIT_IMAGE_ERRMSG'));
	//Ende Edit

Bereich 2: Create Form object

Änderung:

	//Edit me
		$content.= $form->getElement("tx_cwtcommunityuser_ppt"); 
	//Ende edit

Berreich 3: Create Marker Array

Änderung:

	//Edit me
		$pathToImage = "uploads/tx_cwtcommunityuser/".$users[$i]['tx_cwtcommunityuser_ppt'];
		$lConf = $this->conf['imagePopup.'];
		$lConf['alttext']= "";
		$markerArray["###PPT###"] = $cObj -> cImage($pathToImage, $lConf);
	//Ende edit

Berreich 4: GetViewProfile

Änderung:

	//Edit me
		$pathToImage = "uploads/tx_cwtcommunityuser/".$user['tx_cwtcommunityuser_ppt'];
		$lConf = $this->conf['imagePopup.'];
		$lConf['alttext']= "";
	//Ende Edit



Berreich 5: GetViewProfile: Create Marker Array

Änderung:

	//Edit me
		$markerArray["###PPT###"] = $cObj -> cImage($pathToImage, $lConf);
	//Ende Edit

Berreich 6: function doGetUserlist($letter), im Else:

Änderung:

	// Fetch users
	//Edit me
		$users = $this -> doDatabaseQuery("SELECT * FROM fe_users WHERE pid = ".intval($this->sysfolderList)." AND (username LIKE '" . $letter . "%' OR username LIKE '" . strtoupper($letter) . "%') AND NOT deleted=1 AND NOT disable=1 ORDER BY username ASC");
	//Ende Edit

	//Auskommentiert
		// $users = $this -> doDatabaseQuery("SELECT uid, username, name, city, country, www FROM fe_users WHERE pid = ".intval($this->sysfolderList)." AND (username LIKE '" . $letter . "%' OR username LIKE '" . strtoupper($letter) . "%') AND NOT deleted=1 AND NOT disable=1 ORDER BY username ASC");
	//Ende Auskommmentiert


Datei 2: locallang.php

Berreich: Array 'de'

Änderung: 

	//Edit me
	//PPT
		'CWT_PROFILE_EDIT_PPT_LABEL' => 'PowerPoint Datei:',
		'CWT_PROFILE_EDIT_PPT_HELPTEXT' => 'Diese Datei wird im Profil gespeichert.',
	//Edit Ende

Pfad: cwt_community_user

Datei: ext_tables.php

Berreich: Array tempColumns

Änderung:

	//Edit me
		"tx_cwtcommunityuser_ppt" => Array (		
			"exclude" => 1,		
			"label" => "LLL:EXT:cwt_community_user/locallang_db.php:fe_users.tx_cwtcommunityuser_ppt",		
			"config" => Array (
				"type" => "group",
				"internal_type" => "file",
				"allowed" => $GLOBALS["TYPO3_CONF_VARS"]["GFX"]["imagefile_ext"],	
				"max_size" => 500,	
				"uploadfolder" => "uploads/tx_cwtcommunityuser",
				"size" => 1,	
				"minitems" => 0,
				"maxitems" => 1,
			)
		),
	//Ende Edit

Berreich: Vorletzte Zeile

Änderung:

t3lib_extMgm::addToAllTCAtypes("fe_users","tx_cwtcommunityuser_image;;;;1-1-1,tx_cwtcommunityuser_ppt;;;;1-1-1, tx_cwtcommunityuser_sex");

Bemerkung: "tx_cwtcommunityuser_ppt;;;;1-1-1," wurde hinzugefügt.

Datei: ext_tables.sql

Berreich: CREATE TABLE fe_users

Änderung:

tx_cwtcommunityuser_ppt blob NOT NULL,
```

### [#24](https://www.typo3.net/d/33960-vistenkarten-system/24) · Sohn der Sonne · 2005-12-01

Die Bilder werden jedesmal in beide Datenbankfelder geschrieben, und auch jedesmal wenn gelöscht wird in beiden entfernt.

---

Quelle: „Vistenkarten - System“, typo3.net, https://www.typo3.net/d/33960-vistenkarten-system
Beiträge von Mitgliedern des Forums. Bitte mit Link auf die Diskussion zitieren.
