# List frontend user Plugin for listing users from table fe_user in frontend. Contains three frontend plugins. 1. List users from selected groups 2. List currently logged user 3. Map with users For both plugins must be either included static resource in template or you can define your own typoscript for `plugin.tx_listfeusers_pi2.user`. This typoscript object `COA` is required. To this object will be passed in row from table fe_user. ## Database modification Plugin add a field `fe_pid` to table `fe_groups`. This field is used for association between group and page. This field is editable in administration of the group in backend area. Despite this is not used by plugin itself by default. To get link to the proper page with listed user you can use this code snippet 10 = COA 10 { 10 = TEXT 10.field = name 10.if.isTrue.field = name 10.stdWrap{ typolink.parameter.stdWrap { dataWrap = db:fe_groups:{field:usergroup}:fe_pid wrap3 = {|}#user-{field:uid} insertData = 1 } } } ## Static files Here are the stacic files, that are provided with the plugins. ### List logged user plugin.tx_listfeusers_pi2{ user = COA user { 10 = COA 10 { stdWrap.dataWrap =
|
#name 10 = COA 10 { 30 = TEXT 30.field = name wrap =

|

} 15 = COA 15 { if.isTrue.field = image 1 = IMAGE 1 { wrap =
|
file = image file.import = uploads/tx_srfeuserregister/ file.import.field = image file.width = 180 required = 1 } } #contact info 20 = COA 20 { stdWrap.wrap = |
stdWrap.required = 1 10 = TEXT 10.field = firma 10.wrap = Firma| 9 = TEXT 9.field = date_of_birth 9.wrap = Geburtsdatum| 9.if.isTrue.field = date_of_birth 10 = TEXT 10.field = telephone 10.wrap = Telefon| #10.if.isTrue.field = telephone 20 = TEXT 20.field = email 20.wrap = E-Mail| #20.if.isTrue.field = email 30 = TEXT 30.field = fax 30.wrap = fax:| 30.if.isTrue.field = fax 40 = TEXT 40.field = www 40.wrap = Homepage| 40.if.isTrue.field = www 40.typolink.parameter.field = www 40.typolink.extTarget = _blank } #address 29 = TEXT 29.value =

Adresse

30 = COA 30 { wrap = |
10 = TEXT 10.field = address 10.wrap = Adresse| 19 = TEXT 19.field = zip 19.wrap = PLZ| #19.if.isTrue.field = zip 20 = TEXT 20.field = city 20.wrap = Wohnort| #20.if.isTrue.field = city } } } _CSS_DEFAULT_STYLE ( .tx-listfeusers-pi2 .user .photo { float:right; margin-left: 10px; } .content .tx-listfeusers-pi2 table{ margin: 10px 0px; } .content .tx-listfeusers-pi2 h1{ margin: 0px 10px 10px 10px; padding: 0; } .content .tx-listfeusers-pi2 h2 { margin: 5px 10px; padding: 0; } .tx-listfeusers-pi2 table tr td{ text-align: right; width: 25%; } .tx-listfeusers-pi2 table tr td.value { font-weight: bold; text-align: left; width: 75%; } ) } ### List frontend users plugin.tx_listfeusers_pi1{ sort = name user = COA user { 10 = COA 10 { stdWrap.dataWrap =
|
#name 10 = COA 10 { 30 = TEXT 30.field = name wrap =

|

} 11 = TEXT 11 { data = page : title wrap =
|
} 15 = COA 15 { if.isTrue.field = image 1 = IMAGE 1 { wrap =
|
file = image file.import = uploads/tx_srfeuserregister/ file.import.field = image file.width = 180 required = 1 } } #contact info 20 = COA 20 { stdWrap.wrap =
|
stdWrap.required = 1 10 = TEXT 10.field = telephone 10.wrap =
tel.: |
10.if.isTrue.field = telephone 20 = TEXT 20.field = email 20.wrap =
|
20.if.isTrue.field = email 30 = TEXT 30.field = fax 30.wrap =
fax: |
30.if.isTrue.field = fax 40 = TEXT 40.field = www 40.wrap =
|
40.if.isTrue.field = www 40.typolink.parameter.field = www 40.typolink.extTarget = _blank } #address 30 = COA 30 { wrap =
|
10 = TEXT 10.field = address 10.wrap =
|
10.if.isTrue.field = address 19 = TEXT 19.field = zip 19.wrap = |   19.if.isTrue.field = zip 20 = TEXT 20.field = city 20.wrap = | 20.if.isTrue.field = city } #description 40 = COA 40 { required = 1 wrap =
|
10 = TEXT 10 { field = comments } } } } _CSS_DEFAULT_STYLE ( .tx-listfeusers-pi1 .user { overflow: auto; position: relative; } .tx-listfeusers-pi1 .user .fn { font-size: 20px; } .tx-listfeusers-pi1 .role { display: none; } .tx-listfeusers-pi1 .user .contact { border: 1px solid #eee; padding: 10px; margin: 0px 0px 10px 0px; overflow: auto; } .tx-listfeusers-pi1 .user .adr { border: 1px solid #eee; padding: 10px; margin: 0px 0px 10px 0px; overflow: auto; } .tx-listfeusers-pi1 .user .photo { float:right; margin-left: 10px; } .tx-listfeusers-pi1 .user .contact .email, .tx-listfeusers-pi1 .user .contact .tel, .tx-listfeusers-pi1 .user .contact .fax, .tx-listfeusers-pi1 .user .contact .www { float: left; margin-right: 10px; } ) } ## FAQ - Can I sort users other then name? Yes: via typoscript - eg. `plugin.tx_listfeusers_pi1.sort=last_name`