Hallo Yves
Ich habe nun endlich Zeit gefunden, mich an die Abfragen der Formularfelder von Joomla zu wagen.
Beim Namensfeld ist mir dies problemlos gelungen, da dies über $this->user->name abgefragt werden kann, aber bei den restlichen Felder stehe ich an.
Ich habe es nun hingekriegt, dass ich die Daten von _users_profil abfragen kann, erhalte jedoch alle Werte in der selben Ausgabe.
Das sieht dann so aus:
Was ich auch noch nicht wegbekommen habe, sind die "" bei den einzelnen Inhalten.
Ich bin kein Profiprogrammierer und komme nicht mehr weiter, eventuell kannst Du mir dabei helfen?
Ich denke es ist schon korrekt, alle Werte auf einmal abzufragen, nur sollte ich die einzelnen Werte, anschliessend einzeln auflisten können.
Habe dies nun mal so gelöst:
Code display:
$usermail = $this->user->email;
/* Create Array named $profile with contents of jos_users */
$user =& JFactory::getUser();
/* Extract jos_user_profiles data and add to $profile */
$db = JFactory::getDBO();
$query = $db->getQuery(true);
$query->select('profile_key, profile_value');
$query->from('#__user_profiles');
$query->where('user_id = '. (int) $user->id);
$db->setQuery($query);
$rows = $db->loadObjectList();
foreach ($rows as $row)
{
$profile[$row->profile_key] = $row->profile_value;
}
?>
<script type="text/javascript">
window.addEvent('domready', function () {
var steps = <?php echo $this->steps; ?>;
var intro = document.id('mat_intro');
var current_step = 1;
var btn_next = document.id('btn_next');
var btn_back = document.id('btn_back');
var btn_submit = document.id('btn_submit');
var page_one = document.id('mat_pageone');
var page_two = document.id('mat_pagetwo');
var page_three = document.id('mat_pagethree');
var payment = document.id('payment');
var usermail = '<?php echo $usermail; ?>';
var firstname = '<?php echo $this->user->name;?>';
var street = '<?php foreach ($profile as $key => $value)
{
echo $key = $value;
} ?>';
var email = document.id('email');
var name = document.id('firstname');
var userstreet = document.id('street');
var agb = document.id('agb');
var nrbooked = document.id('nrbooked');
<?php
if (MatukioHelperSettings::getSettings("payment_coupon", 1) == 1 && !empty($this->event->fees)) {
?>
var coupon_code = document.id('coupon_code');
<?php
}
?>
if (email) {
email.set('value', usermail);
if (usermail != "") {
// email.set('disabled', true); // TODO add a setting for this
}
}
if (name) {
name.set('value', firstname);
if (firstname != "") {
// name.set('disabled', true); // TODO add a setting for this
}
}
if (userstreet) {
userstreet.set('value', street);
if (street != "") {
// userstreet.set('disabled', true); // TODO add a setting for this
}
}
Gruss Thomas