id = self::UNIQUE_ID_PREFIX.self::$unique_id; $this->content = (string) $content; $this->type = $type; } protected function get_notice_classes($classes = array()) { if (is_string($classes)) { $classes = explode(' ', $classes); } else if (is_array($classes)) { } else { $classes = array(); } if ($this->is_dismissible) { $classes[] = 'is-dismissible'; } $result = array_merge(array('notice', $this->type), $classes); return trim(implode(' ', $result)); } public function initMessage() { $classes = array(); if ($this->hide_on_init) { $classes[] = 'no_display'; } $this->wrap_tag = empty($this->wrap_tag) ? 'p' : $this->wrap_tag; echo '
'. '<'.$this->wrap_cont_tag.' class="msg-content">'. $this->content. 'wrap_cont_tag.'>'. '
'; } public function updateMessage($jsVarName, $echo = true) { $result = 'jQuery("#'.$this->id.' > .msg-content").html('.$jsVarName.');'; if ($echo) { echo $result; } else { return $result; } } public function showMessage($echo = true) { $callStr = !empty($this->callback_on_show) ? $this->callback_on_show.';' : ''; $result = 'jQuery("#'.$this->id.'").fadeIn( "slow", function() { $(this).removeClass("no_display");'.$callStr.' });'; if ($this->auto_hide_delay > 0) { $result .= 'setTimeout(function () { '.$this->hideMessage(false).' }, '.$this->auto_hide_delay.');'; } if ($echo) { echo $result; } else { return $result; } } public function hideMessage($echo = true) { $callStr = !empty($this->callback_on_hide) ? $this->callback_on_hide.';' : ''; $result = 'jQuery("#'.$this->id.'").fadeOut( "slow", function() { $(this).addClass("no_display");'.$callStr.' });'; if ($echo) { echo $result; } else { return $result; } } }