/**
  * Prepares the form
  * @param \ride\library\form\FormBuilder $builder
  * @param array $options
  * @return null
  */
 public function prepareForm(FormBuilder $builder, array $options)
 {
     $translator = $options['translator'];
     $socialMedia = $this->config->get('social');
     $builder->addRow('socialMediaName', 'select', array('label' => $translator->translate('label.social.media.name'), 'options' => array_combine(array_keys($socialMedia), array_keys($socialMedia)), 'widget' => 'select', 'required' => array()));
     $builder->addRow('accountName', 'string', array('label' => $translator->translate('label.social.media.account.name'), 'required' => array()));
 }
 /**
  * Disables this cache
  * @return null
  */
 public function disable()
 {
     $io = $this->config->get('cms.node.io.default', 'ini');
     if ($io != 'cache') {
         return;
     }
     $io = $this->config->get('cms.node.io.cache');
     $this->config->set('cms.node.io.default', $io);
     $this->config->set('cms.node.io.cache', null);
 }
 /**
  * Render the social media links.
  * @param Config $config
  */
 public function indexAction(Config $config)
 {
     $socialMedia = $config->get('social');
     $values = unserialize($this->properties->getWidgetProperty('social.widgets'));
     if (!$values) {
         return;
     }
     $data = array('socialMedia' => array(), 'title' => $this->properties->getLocalizedWidgetProperty($this->locale, self::PROPERTY_TITLE));
     foreach ($values as $value) {
         if (isset($value['socialMediaName']) && isset($socialMedia[$value['socialMediaName']])) {
             $data['socialMedia'][] = array('name' => $value['socialMediaName'], 'url' => $socialMedia[$value['socialMediaName']]['profileUrl'] . $value['accountName']);
         }
     }
     $this->setTemplateView($this->getTemplate(static::TEMPLATE_NAMESPACE . '/social.media.links'), $data);
 }