protected function set_vars($event) { if (!is_object($event)) { return null; } if ($this->text) { $event->text = MPurifier::clean($this->text); } else { $event->text = null; } if ($this->start && MValidate::date($this->start)) { $event->start = $this->start; } else { return mapi_report_message('Not a valid start date.'); } if ($this->end && MValidate::date($this->end)) { $event->end = $this->end; } else { return mapi_report_message('Not a valid end date.'); } $start = new DateTime($event->start); $end = new DateTime($event->end); if (!$end > $start) { return mapi_report_message('Event end is before it\'s starting time.'); } return true; }
static function text($input) { if (!$input) { return ''; } $output = self::preproc($input); return MPurifier::clean($output); }
private function htmlpurifier($path) { if (!mapi_include_abs_path($path, 'lib')) { return null; } MPurifier::instance(); return true; }
protected function set_vars($post) { if (!$post || !is_object($post)) { return null; } if ($this->text) { $post->text = MPurifier::clean($this->text); } else { $this->text = null; } return true; }
static function instance() { if (!self::$purifier) { $config = HTMLPurifier_Config::createDefault(); $config->set('CSS.AllowTricky', true); $config->set('Attr.AllowedFrameTargets', array('_blank')); $config->set('HTML.SafeIframe', true); $config->set('Attr.EnableID', true); $config->set('URI.SafeIframeRegexp', '%^(https?:)?//(www\\.youtube(?:-nocookie)?\\.com/embed/|player\\.vimeo\\.com/video/)%'); //$config->set( 'HTML.Allowed', 'textarea[id|cols|rows|class]'); $config->set('HTML.AllowedElements', array('textarea', 'div', 'hr', 'br')); $config->set('HTML.Trusted', true); self::$purifier = new HTMLPurifier($config); } }
protected function set_vars($post) { if (!$post || !is_object($post)) { return null; } if ($this->text) { $post->text = MPurifier::clean($this->text); } else { $this->text = ''; } if ($this->url && MValidate::url($this->url)) { $post->url = urlencode($this->url); } else { return mapi_report_message('Not a valid url.'); } return true; }