var $content = null;
+ /**
+ * The current user
+ */
+
+ var $user = null;
+
/**
* Constructor
*
* @param string $content content to pre-fill
*/
- function __construct($out=null, $action=null, $content=null)
+ function __construct($out=null, $action=null, $content=null, $user=null)
{
parent::__construct($out);
$this->action = $action;
$this->content = $content;
+
+ if ($user) {
+ $this->user = $user;
+ } else {
+ $this->user = common_current_user();
+ }
+
+ if (common_config('attachments', 'uploads')) {
+ $this->enctype = 'multipart/form-data';
+ }
}
/**
function formData()
{
- $user = common_current_user();
-
- $this->out->elementStart('ul', 'form_datas');
- $this->out->elementStart('li', array('id' => 'notice_text'));
$this->out->element('label', array('for' => 'notice_data-text'),
- sprintf(_('What\'s up, %s?'), $user->nickname));
+ sprintf(_('What\'s up, %s?'), $this->user->nickname));
// XXX: vary by defined max size
$this->out->element('textarea', array('id' => 'notice_data-text',
'cols' => 35,
'rows' => 4,
'name' => 'status_textarea'),
($this->content) ? $this->content : '');
- $this->out->elementEnd('li');
- $this->out->elementEnd('ul');
-
$this->out->elementStart('dl', 'form_note');
$this->out->element('dt', null, _('Available characters'));
$this->out->element('dd', array('id' => 'notice_text-count'),
'140');
$this->out->elementEnd('dl');
-
+ if (common_config('attachments', 'uploads')) {
+ $this->out->element('label', array('for' => 'notice_data-attach'),_('Attach'));
+ $this->out->element('input', array('id' => 'notice_data-attach',
+ 'type' => 'file',
+ 'name' => 'attach',
+ 'title' => _('Attach a file')));
+ $this->out->hidden('MAX_FILE_SIZE', common_config('attachments', 'file_quota'));
+ }
if ($this->action) {
- // FIXME: or VERIFY that notice_return-to doesn't break anything. Changed from 'returnto'
- $this->out->hidden('notice_return-to', $this->action);
+ $this->out->hidden('notice_return-to', $this->action, 'returnto');
}
-
- // FIXME: Does this need to be checked like returnto?
- $this->out->hidden('notice_in-reply-to', $this->action);
-
+ $this->out->hidden('notice_in-reply-to', $this->action, 'inreplyto');
}
/**
function formActions()
{
- $this->out->elementStart('ul', 'form_actions');
- $this->out->elementStart('li', array('id' => 'notice_submit'));
$this->out->element('input', array('id' => 'notice_action-submit',
'class' => 'submit',
'name' => 'status_submit',
'type' => 'submit',
'value' => _('Send')));
- $this->out->elementEnd('li');
- $this->out->elementEnd('ul');
}
}