<?php
/**
* Register a form field to forms
*/
switch ($modx->event->name) {
case 'OnUserFormPrerender':
/* if you want to add custom scripts, css, etc, register them here */
break;
case 'OnUserFormRender':
/* now do the HTML */
$fields = '
<div class="x-form-item x-tab-item">
<label class="x-form-item-label" style="width:150px;">Foto</label>
<div class="x-form-element">
<label for="foto"></label>
<input type="file" name="foto" id="foto" class="x-form-text x-form-field">
</div>
</div>
<div class="x-form-item x-tab-item">
<label class="x-form-item-label" style="width:150px;">Logo empresa</label>
<div class="x-form-element">
<label for="logo_empresa"></label>
<input type="file" name="logo_empresa" id="logo_empresa" class="x-form-text x-form-field">
</div>
</div>
<div class="x-form-item x-tab-item">
<label class="x-form-item-label" style="width:150px;">Logo empresa</label>
<div class="x-form-element">
<label for="prueba"></label>
<input name="prueba" type="input" class="x-form-text x-form-field" id="prueba" value="prueba">
</div>
</div>
';
$modx->event->output($fields);
break;
case 'OnUserFormSave':
/* do processing logic here. */
$resource =& $scriptProperties['user'];
$resource->set('photo',$_FILES['foto']['name']);
//$resource->save();
if ( $resource->save()) {
$output = "Photo saved";
} else {
$output = "Error";
}
return $output;
break;
}<?php
case 'OnUserFormSave':
/* do processing logic here. */
/* the user object is already available */
$profile = $user->getOne('Profile');
$extendedFields = $profile->get('extended);
$extendedFields['photo'] = $_FILES['foto']['name']);
$profile->set('extended',$extendedFields);
$profile->save();
/* The return value from OnUserFormSave is ignored so there's no point in returning anything.
* You could write to the log here, instead.
*/
break;<?php
/**
* Register a form field to forms
*/
switch ($modx->event->name) {
case 'OnUserFormPrerender':
/* if you want to add custom scripts, css, etc, register them here */
break;
case 'OnUserFormRender':
$v = '';
if (isset($scriptProperties['user'])) {
/* on the update screen, so set the value */
$user =& $scriptProperties['user'];
$profile = $user->getOne('Profile');
$extendedFields = $profile->get('extended');
$v = $extendedFields['photo'];
} else {
/* on the create screen, so set the default */
$v = '';
}
/* now do the HTML */
$fields = '
<div class="x-form-item x-tab-item">
<label class="x-form-item-label" style="width:150px;">Foto</label>
<div class="x-form-element">
<label for="foto"></label>
<input type="file" name="foto" id="foto" class="x-form-text x-form-field">
</div>
</div>
<div class="x-form-item x-tab-item">
<label class="x-form-item-label" style="width:150px;">Logo empresa</label>
<div class="x-form-element">
<label for="logo_empresa"></label>
<input type="file" name="logo_empresa" id="logo_empresa" class="x-form-text x-form-field">
</div>
</div>
<div class="x-form-item x-tab-item">
<label class="x-form-item-label" style="width:150px;">Logo empresa</label>
<div class="x-form-element">
<label for="prueba">Prueba</label>
<input name="prueba" type="input" class="x-form-text x-form-field" id="prueba" value="'.$v.'">
</div>
</div>
';
$modx->event->output($fields);
break;
case 'OnUserFormSave':
/* do processing logic here. */
$user =& $scriptProperties['user'];
$profile = $user->getOne('Profile');
$extendedFields = $profile->get('extended');
$extendedFields['prueba'] = $_POST['prueba'];
//return $_FILES['foto']['name'];
if (is_uploaded_file($_FILES['foto']['tmp_name'])) {
$uploaddir = '/home/carroza/www/assets/images/zona_socios/fotos/';
$uploadfile = $uploaddir . basename($_FILES['foto']['name']);
if (move_uploaded_file($_FILES['foto']['tmp_name'], $uploadfile)) {
$extendedFields['foto'] = $uploadfile;
$output = "OK.\n";
} else {
$output = "Error\n";
}
} else {
$output = 'Error, no subida.';
}
$profile->set('extended',$extendedFields);
$profile->save();
return $output;
break;
}
return;
MODx.panel.UpdateProfile = function(config) {
config = config || {};
Ext.applyIf(config,{
title: _('general_information')
,fileUpload: true

If I "return" an output message, it is automatically logged.
$modx->setLogTarget('ECHO');$modx->setLogTarget('HTML');
MODx.panel.User = function(config) {
config = config || {};
Ext.applyIf(config,{
url: MODx.config.connectors_url+'security/user.php'
,baseParams: {}
,fileUpload: true