Aleksander Machniak
2012-10-24 1e7aa75d18e34b0733d49a3af689be0f3d73b83c
program/steps/settings/func.inc
@@ -157,7 +157,6 @@
    $blocks = array(
      'main'    => array('name' => Q(rcube_label('mainoptions'))),
      'browser' => array('name' => Q(rcube_label('browseroptions'))),
    );
    // language selection
@@ -198,9 +197,6 @@
        list($tzs, $offset) = $zone;
        $select_timezone->add('(GMT ' . $offset . ') ' . strtr($tzs, '_', ' '), $tzs);
      }
      if (is_numeric($config['timezone']))
        timezone_name_from_abbr("", $config['timezone'] * 3600, 0);
      $blocks['main']['options']['timezone'] = array(
        'title' => html::label($field_id, Q(rcube_label('timezone'))),
@@ -252,15 +248,32 @@
      if (count($skins) > 1) {
        $field_id = 'rcmfd_skin';
        $input_skin = new html_select(array('name'=>'_skin', 'id'=>$field_id));
        $input_skin = new html_radiobutton(array('name'=>'_skin'));
        foreach($skins as $skin)
          $input_skin->add($skin, $skin);
        $blocks['skin'] = array('name' => Q(rcube_label('skin')),);
        $blocks['main']['options']['skin'] = array(
          'title' => html::label($field_id, Q(rcube_label('skin'))),
          'content' => $input_skin->show($config['skin']),
        );
        foreach($skins as $skin) {
          $thumbnail = "./skins/$skin/thumbnail.png";
          if (!is_file($thumbnail))
            $thumbnail = './program/resources/blank.gif';
          $skinname = ucfirst($skin);
          $author_link = $license_link = '';
          $meta = @json_decode(@file_get_contents("./skins/$skin/meta.json"), true);
          if (is_array($meta) && $meta['name']) {
            $skinname = $meta['name'];
            $author_link  = $meta['url'] ? html::a(array('href' => $meta['url'], 'target' => '_blank'), Q($meta['author'])) : Q($meta['author']);
            $license_link = $meta['license-url'] ? html::a(array('href' => $meta['license-url'], 'target' => '_blank'), Q($meta['license'])) : Q($meta['license']);
          }
          $blocks['skin']['options'][$skin]['content'] = html::label(array('class' => 'skinselection'),
            html::span('skinitem', $input_skin->show($config['skin'], array('value' => $skin, 'id' => $field_id.$skin))) .
            html::span('skinitem', html::img(array('src' => $thumbnail, 'class' => 'skinthumbnail', 'alt' => $skin, 'width' => 64, 'height' => 64))) .
            html::span('skinitem', html::span('skinname', Q($skinname)) . html::br() .
              html::span('skinauthor', $author_link ? 'by ' . $author_link : '') . html::br() .
              html::span('skinlicense', $license_link ? rcube_label('license').': ' . $license_link : ''))
          );
        }
      }
    }
@@ -268,10 +281,13 @@
    $RCMAIL->output->add_script(sprintf("%s.check_protocol_handler('%s', '#mailtoprotohandler');",
      JS_OBJECT_NAME, JQ($product_name)), 'foot');
    $blocks['browser']['options']['mailtoprotohandler'] = array(
      'content' => html::a(array(
        'href' => '#',
        'id' => 'mailtoprotohandler'), Q(rcube_label('mailtoprotohandler'))),
    $blocks['browser'] = array(
      'name' => Q(rcube_label('browseroptions')),
      'options' => array('mailtoprotohandler' => array(
        'content' => html::a(array(
          'href' => '#',
          'id' => 'mailtoprotohandler'), Q(rcube_label('mailtoprotohandler'))),
        )),
    );
    break;
@@ -667,7 +683,7 @@
      $select_abook = new html_select(array('name' => '_default_addressbook', 'id' => $field_id));
      foreach ($books as $book) {
        $select_abook->add($book['name'], $book['id']);
        $select_abook->add(html_entity_decode($book['name'], ENT_COMPAT, 'UTF-8'), $book['id']);
      }
      $blocks['main']['options']['default_addressbook'] = array(