You are here

function filedepot_form in filedepot 6

Same name and namespace in other branches
  1. 7 filedepot.module \filedepot_form()

Implementation of hook_form().

File

./filedepot.module, line 472
filedepot.module Filedepot: File Management Module developed by Nextide www.nextide.ca Full featured document managment module with a desktop application feel. Integrated role and user permissions to secure folders, automated notifications, Tag Cloud…

Code

function filedepot_form(&$node, $form_state) {
  module_load_include('php', 'filedepot', 'lib-common');
  $nodetype = node_get_types('type', $node);
  if ($node->type = 'filedepot_folder') {
    $form['title'] = array(
      '#type' => 'textfield',
      '#title' => filter_xss($nodetype->title_label),
      '#required' => TRUE,
      '#default_value' => filter_xss($node->title),
      '#weight' => -5,
      '#maxlength' => 255,
    );
    $form['body_filter']['folderdesc'] = array(
      '#type' => 'textarea',
      '#title' => filter_xss($nodetype->body_label),
      '#required' => FALSE,
      '#rows' => 2,
    );
    $form['body_filter']['filter'] = filter_form($node->format);
    if (user_access('administer filedepot', $user)) {
      $parentFolders = array(
        0 => 'Top Level Folder',
      );
    }
    else {
      $parentFolders = array();
    }
    $parentFolders += filedepot_recursiveAccessArray(array(
      'admin',
    ));
    $form['parentfolder'] = array(
      '#type' => 'select',
      '#title' => t('Parent Folder'),
      '#required' => TRUE,
      '#options' => $parentFolders,
    );
    if (isset($node->folderdesc) and !empty($node->folderdesc)) {
      $form['body_filter']['folderdesc']['#default_value'] = filter_xss($node->folderdesc);
    }
    else {
      $form['body_filter']['folderdesc']['#default_value'] = filter_xss($node->body);
    }
    if (isset($node->parentfolder)) {
      $form['parentfolder']['#default_value'] = $node->parentfolder;
    }

    // Remove any files (attachments) that are in the submission queue
    if (is_array($node->field_filedepot_file) and Count($node->field_filedepot_file) > 0) {
      foreach ($node->field_filedepot_file as $id => $file) {
        if (db_result(db_query("SELECT count(*) FROM {filedepot_filesubmissions} WHERE cckfid=%d", $file['fid'])) == 1) {
          unset($node->field_filedepot_file[$id]);
        }
      }
    }
    return $form;
  }
}