Beispiel #1
0
 /**
  * Renders the album's form
  *
  * @since	1.0
  * @access	public
  */
 public function form()
 {
     // Check for user profile completeness
     FD::checkCompleteProfile();
     // Check if photos is enabled
     $this->checkFeature();
     // Only allow registered users to upload photos
     FD::requireLogin();
     // Get the current user
     $my = FD::user();
     // Get album id
     $id = JRequest::getInt('id', null);
     // Load album library
     $uid = JRequest::getInt('uid');
     $type = JRequest::getWord('type', SOCIAL_TYPE_USER);
     if ($type == SOCIAL_TYPE_USER && !$uid) {
         $uid = $my->id;
     }
     $lib = Foundry::albums($uid, $type, $id);
     // If we are creating an album
     if (!$lib->data->id) {
         // Set the ownership of the album
         $lib->data->uid = $lib->uid;
         $lib->data->type = $lib->type;
         // Check if we have exceeded album creation limit.
         if ($lib->exceededLimits()) {
             return $this->output($lib->getExceededHTML(), $lib->data);
         }
     }
     // Set the page title
     $title = $lib->getPageTitle($this->getLayout());
     FD::page()->title($title);
     // Set the breadcrumbs
     $lib->setBreadcrumbs($this->getLayout());
     // Determines if the current user can edit this album
     if ($lib->data->id && !$lib->editable($lib->data)) {
         return $this->restricted($lib->data->uid, $lib->data->type);
     }
     // Render options
     $options = array('viewer' => $my->id, 'layout' => 'form', 'showStats' => false, 'showResponse' => false, 'showTags' => false, 'photoItem' => array('openInPopup' => false));
     // Render item
     $output = $lib->renderItem($options);
     return $this->output($lib->uid, $lib->type, $output, $lib->data);
 }