public function display($tpl = null)
 {
     $this->option = JFactory::getApplication()->input->getCmd('option');
     $this->state = $this->get('State');
     $this->items = $this->get('Items');
     $this->pagination = $this->get('Pagination');
     $this->params = $this->state->get('params');
     $this->numberInRow = (int) $this->params->get('items_row', 3);
     $this->prepareItems($this->items);
     // Get the folder with images
     $this->imageFolder = $this->params->get('images_directory', 'images/crowdfunding');
     // Get currency
     $currency = Crowdfunding\Currency::getInstance(JFactory::getDbo(), $this->params->get('project_currency'));
     $this->amount = new Crowdfunding\Amount($this->params);
     $this->amount->setCurrency($currency);
     $this->displayCreator = (bool) $this->params->get('display_creator', true);
     // Prepare social integration.
     if ($this->displayCreator !== false) {
         $usersIds = CrowdfundingHelper::fetchIds($this->items, 'user_id');
         $this->socialProfiles = CrowdfundingHelper::prepareIntegrations($this->params->get('integration_social_platform'), $usersIds);
     }
     $this->layoutData = array('items' => $this->items, 'params' => $this->params, 'amount' => $this->amount, 'socialProfiles' => $this->socialProfiles, 'imageFolder' => $this->imageFolder, 'titleLength' => $this->params->get('discover_title_length', 0), 'descriptionLength' => $this->params->get('discover_description_length', 0), 'span' => $this->numberInRow > 0 ? round(12 / $this->numberInRow) : 4);
     $this->prepareDocument();
     parent::display($tpl);
 }
 protected function prepareFundersScreen()
 {
     $model = JModelLegacy::getInstance('Funders', 'CrowdfundingModel', $config = array('ignore_request' => false));
     $this->items = $model->getItems();
     // Create a currency object if I have to display funders amounts.
     $this->displayAmounts = $this->params->get('funders_display_amounts', 0);
     if ($this->displayAmounts) {
         $currency = Crowdfunding\Currency::getInstance(JFactory::getDbo(), $this->params->get('project_currency'));
         $this->amount = new Crowdfunding\Amount($this->params);
         $this->amount->setCurrency($currency);
     }
     // Prepare social integration.
     $usersIds = CrowdfundingHelper::fetchIds($this->items, 'id');
     $this->socialProfiles = CrowdfundingHelper::prepareIntegrations($this->params->get('integration_social_platform'), $usersIds);
 }