/**
 * Изготавливает "разумное" меню выбора региона
 */
var smartCities = function() {
  var ul = $('.smart-cities');
  $('li:first', ul).addClass('countrywide');
  
  var selected = $('li.selected', ul).hide().removeClass('selected').clone();
  selected.addClass('selected').show().prependTo(ul);
  
  var li = $('<li class="trigger" />').appendTo(ul);
  var trigger = $('<a />').appendTo(li);
  var dropbox = $('<ul class="dropbox" />').appendTo(li);
  trigger.append('<span>другие города</span>');
  $('li', ul).not(li).not('.countrywide').not('.selected').appendTo(dropbox).hover(
    function() { $(this).addClass('hover'); },
    function() { $(this).removeClass('hover'); }
  );
  
  li.addClass('collapsed').click(function(){
    $(this).toggleClass('collapsed').toggleClass('expanded');
  })
  
  $('li div', ul).live('click', function() {
    var span = $(this).find('span');
    var cli = $(this).parents('li:first');
    
    if ($(this).parents('.dropbox').length) {
      $('li', dropbox).show();
      if (selected.hasClass('countrywide')) {
        selected = ul.children('li').not(li).not('.countrywide');
      }
      selected.remove();
      selected = cli.clone();
      cli.hide();
      selected.prependTo(ul);
    } else {
      selected = cli;
      li.addClass('collapsed').removeClass('expanded');
    }
    $('li.disabled', ul).removeClass('disabled').addClass('enabled');
    selected.addClass('selected disabled').removeClass('enabled');
    
    var id = span.attr('id');
    $('.news-blocks > div').hide();
    $('.news-block-' + id).show();
  });
}
