function privatemsg_view_form in Privatemsg 5
Same name and namespace in other branches
- 5.3 privatemsg.module \privatemsg_view_form()
Add the action form to the view message screen.
1 string reference to 'privatemsg_view_form'
- theme_privatemsg_view in ./
privatemsg.module - Returns content to view a private message.
File
- ./
privatemsg.module, line 1867
Code
function privatemsg_view_form($message) {
global $user;
$form['pm_id'] = array(
'#type' => 'hidden',
'#value' => $message->id,
);
$form['pm_fid'] = array(
'#type' => 'hidden',
'#value' => $message->folder,
);
$form['author'] = array(
'#type' => 'value',
'#value' => $message->author,
);
$form['js_bypass'] = array(
'#type' => 'hidden',
'#value' => 0,
);
$form['actions'] = array(
'#type' => 'fieldset',
'#collapsible' => FALSE,
'#collapsed' => FALSE,
'#attributes' => array(
'class' => 'container-inline',
),
);
$form['actions']['text'] = array(
'#value' => '<div><strong>' . t('With this message:') . '</strong> </div>',
);
if ($user->uid == $message->recipient) {
$form['actions']['reply'] = array(
'#type' => 'submit',
'#value' => t('Reply'),
'#attributes' => array(
'class' => 'pm-spacer',
),
);
}
$del = variable_get('privatemsg_actions_loc', '1');
if ($del == '1') {
$form['actions']['delete'] = array(
'#type' => 'submit',
'#value' => t('Delete'),
'#prefix' => ' ',
'#attributes' => array(
'class' => 'pm-add-delete pm-spacer',
),
);
}
$folders = privatemsg_load_folders($user->uid);
if (user_access('create new folder')) {
$extra_folders = array();
foreach ($folders as $folder) {
// Do not display the recycle bin in the move to folder drop down as the
// delete button is already available. Similarly, avoid displaying
// the sent items folder as it is for internal use only.
if ($folder['fid'] != PRIVATEMSG_FOLDER_SENT && $folder['fid'] != PRIVATEMSG_FOLDER_RECYCLE_BIN && $folder['fid'] != $message->folder) {
$extra_folders[$folder['fid']] = $folder['name'];
}
}
$extra_folders['new'] = t('New folder...');
if ($user->uid == $message->recipient) {
$form['actions']['folder'] = array(
'#type' => 'select',
'#options' => $extra_folders,
'#attributes' => array(
'class' => 'pm-spacer',
),
);
$form['actions']['extra_folders'] = array(
'#type' => 'value',
'#value' => $extra_folders,
);
$form['actions']['move_messages'] = array(
'#type' => 'submit',
'#value' => t('Move to folder'),
);
}
}
if ($del == '2') {
$form['actions']['delete'] = array(
'#type' => 'submit',
'#value' => t('Delete'),
'#prefix' => ' ',
'#attributes' => array(
'class' => 'pm-add-delete pm-spacer',
),
);
}
// only add the JS once, otherwise we get dupllicated JS confirm messages on thread views
static $count = 0;
if ($count == 0) {
$js = array(
'deleteMessage' => t('Are you sure you want to delete this message?'),
);
drupal_add_js(drupal_get_path('module', 'privatemsg') . '/privatemsg.js');
drupal_add_js(array(
'privatemsg' => $js,
), 'setting');
++$count;
}
return $form;
}