1: <?php
2: 3: 4: 5:
6:
7: if (!defined('XOOPS_ROOT_PATH')) exit();
8:
9: require_once XOOPS_ROOT_PATH . "/core/XCube_ActionForm.class.php";
10:
11: class User_AvatarSelectForm extends XCube_ActionForm
12: {
13: var $mSelectedId = null;
14:
15: function getTokenName()
16: {
17: return "module.user.AvatarSelectForm.TOKEN" . $this->get('uid');
18: }
19:
20: function prepare()
21: {
22: $this->mFormProperties['uid'] =new XCube_IntProperty('uid');
23: $this->mFormProperties['avatar_id'] =new XCube_IntArrayProperty('avatar_id');
24: }
25:
26: function validateAvatar_id()
27: {
28: $ids = $this->get('avatar_id');
29:
30: if (count($ids) != 1) {
31: $this->addErrorMessage(_MD_USER_ERROR_AVATAR_SELECT);
32: }
33:
34: foreach ($ids as $avatar_id => $dmy_value) {
35: $this->mSelectedId = $avatar_id;
36: }
37:
38: if ($this->mSelectedId == 0) {
39: return;
40: }
41:
42:
43:
44:
45: $handler =& xoops_getmodulehandler('avatar', 'user');
46: $obj =& $handler->get($this->mSelectedId);
47:
48: if (!is_object($obj)) {
49: $this->addErrorMessage(_MD_USER_ERROR_AVATAR_SELECT);
50: }
51: }
52:
53: function load(&$obj)
54: {
55: $this->set('uid', $obj->get('uid'));
56: }
57:
58: function update(&$obj)
59: {
60: $handler =& xoops_getmodulehandler('avatar', 'user');
61:
62: if ($this->mSelectedId == 0) {
63: $obj->set('user_avatar', 'blank.gif');
64: }
65: else {
66: $avatar =& $handler->get($this->mSelectedId);
67: $obj->set('user_avatar', $avatar->get('avatar_file'));
68: }
69: }
70: }
71:
72: ?>
73: