var Flash = {
  template: {},
  ids: 0,
  get_template: function(t){

    if (t=='error'){

      if (!this.template['error']){
          this.template['error'] = tmpl( $j('#flash-error-template').html()) ;
      }

      return this.template['error'];
    }

    if (!this.template['notice']){
        this.template['notice'] = tmpl(  $j('#flash-notice-template').html()  );
    }

    return this.template['notice'];
  },

  clear: function(){
    $j('#flash').html('');
  },
  
  notice: function(message){

      Flash.clear();

      var template = this.get_template('notice');

      var tid = this.id++;

      var html = template({message: message, id: tid});


      $j('#flash').append(html);


      setTimeout(function(){
        try{
            $j('#flash-'+tid).fadeOut(1000);
        } catch (E){
        }
      }, 2000);


  },

  error: function(message){

      Flash.clear();

      var template = this.get_template('error');

      var tid = this.id++;

      var html = template({message: message, id: tid});
      $j('#flash').append(html);



      setTimeout(function(){
        try{

           $j('#flash-'+tid).fadeOut(1000);

        } catch (E){
        }
      }, 2000);

  },
  
  redirect: function(url, message){
    window.top.location = url;

    throw 'dummy';

    return;
  },
  
  close: function(id){
    $j('#flash-'+id).hide();
  }
}
