+++ /dev/null
-<?php # $Id$
-
-/**
- * @version $Revision$
- * @author Ivan Cenov jwalker@abv.bg
- * EN-Revision: 690
- */
-
-@define('PLUGIN_EVENT_HTMLVALIDATOR_NAME', 'HTML валидатор');
-@define('PLUGIN_EVENT_HTMLVALIDATOR_DESC', 'Валидира статиите за XML съвместимост');
-@define('PLUGIN_EVENT_HTMLVALIDATOR_CHARSET', 'Charset (символна таблица)');
-@define('PLUGIN_EVENT_HTMLVALIDATOR_CHARSETDESC', 'Обичайната символна таблица на вашите статии.');
-@define('PLUGIN_EVENT_HTMLVALIDATOR_DOCTYPE', 'Doctype (документен тип)');
-@define('PLUGIN_EVENT_HTMLVALIDATOR_DOCTYPEDESC', 'Обичайният документен тип на вашите статии.');
-@define('PLUGIN_EVENT_HTMLVALIDATOR_VALIDATE', 'Валидиране при всеки предварителен преглед');
-@define('PLUGIN_EVENT_HTMLVALIDATOR_GOVALIDATE', 'Показване на HTML Валидатор при предварителен преглед');
-
-?>
+++ /dev/null
-<?php # $Id: serendipity_event_htmlvalidator.php 235 2005-07-08 13:29:39Z garvinhicking $
-
- @define('PLUGIN_EVENT_HTMLVALIDATOR_NAME', 'HTML Validator');
- @define('PLUGIN_EVENT_HTMLVALIDATOR_DESC', 'Überprüft, ob ein Artikel XML-konform ist');
- @define('PLUGIN_EVENT_HTMLVALIDATOR_CHARSET', 'Zeichensatz');
- @define('PLUGIN_EVENT_HTMLVALIDATOR_CHARSETDESC', 'Der übliche Zeichensatz Ihrer Einträge');
- @define('PLUGIN_EVENT_HTMLVALIDATOR_DOCTYPE', 'Dokumenttyp');
- @define('PLUGIN_EVENT_HTMLVALIDATOR_DOCTYPEDESC', 'Der übliche Dokumenttyp Ihrer Einträge');
- @define('PLUGIN_EVENT_HTMLVALIDATOR_VALIDATE', 'Bei jeder Vorschau aktiviert');
- @define('PLUGIN_EVENT_HTMLVALIDATOR_GOVALIDATE', 'HTML-Validator bei der Vorschau ausführen');
+++ /dev/null
-<?php # $Id: lang_es.inc.php,v 1.0 2005/08/20 11:37:42 garvinhicking Exp $
-/**
- * @version $Revision: 690 $
- * @author Rodrigo Lazo Paz <rlazo.paz@gmail.com>
- * EN-Revision: 690
- */
-
-@define('PLUGIN_EVENT_HTMLVALIDATOR_NAME', 'Validador HTML');
-@define('PLUGIN_EVENT_HTMLVALIDATOR_DESC', 'Valida la conformidad XML de las entradas');
-@define('PLUGIN_EVENT_HTMLVALIDATOR_CHARSET', 'Juego de caracteres');
-@define('PLUGIN_EVENT_HTMLVALIDATOR_CHARSETDESC', 'El juego de caracteres usual de tus artículos');
-@define('PLUGIN_EVENT_HTMLVALIDATOR_DOCTYPE', 'Tipo de documento');
-@define('PLUGIN_EVENT_HTMLVALIDATOR_DOCTYPEDESC', 'El tipo de documento usual de tus artículos');
-@define('PLUGIN_EVENT_HTMLVALIDATOR_VALIDATE', 'Validar en cada previsualización');
-@define('PLUGIN_EVENT_HTMLVALIDATOR_GOVALIDATE', 'Mostrar validador HTML al previsualizar');
-
-?>
\ No newline at end of file
+++ /dev/null
-<?php # $Id$
-
-##########################################################################
-# serendipity - another blogger... #
-##########################################################################
-# #
-# (c) 2003 Jannis Hermanns <J@hacked.it> #
-# http://www.jannis.to/programming/serendipity.html #
-# #
-# Translated by #
-# Sebastian Mordziol <argh@php-tools.net> #
-# http://sebastian.mordziol.de #
-# #
-##########################################################################
-
-@define('PLUGIN_EVENT_HTMLVALIDATOR_NAME', 'Validateur HTML');
-@define('PLUGIN_EVENT_HTMLVALIDATOR_DESC', 'Valide le contenu des billets pour assurer la validité de la syntaxe XML.');
-@define('PLUGIN_EVENT_HTMLVALIDATOR_CHARSET', 'Jeu de caractères');
-@define('PLUGIN_EVENT_HTMLVALIDATOR_CHARSETDESC', 'Le jeu de caractères principalement utilisé dans vos billets');
-@define('PLUGIN_EVENT_HTMLVALIDATOR_DOCTYPE', 'Déclaration de type (doctype)');
-@define('PLUGIN_EVENT_HTMLVALIDATOR_DOCTYPEDESC', 'Le type de document principalement utilisé dans vos billets');
-@define('PLUGIN_EVENT_HTMLVALIDATOR_VALIDATE', 'Valider chaque prévisualisation');
-@define('PLUGIN_EVENT_HTMLVALIDATOR_GOVALIDATE', 'Afficher le validateur lors d\'une prévisualisation');
-
-/* vim: set sts=4 ts=4 expandtab : */
-?>
\ No newline at end of file
+++ /dev/null
-<?php # $Id: lang_ja.inc.php 693 2005-11-13 07:25:16Z elf2000 $
-
-/**
- * @version $Revision$
- * @author Tadashi Jokagi <elf2000@users.sourceforge.net>
- * EN-Revision: 690
- */
-
-@define('PLUGIN_EVENT_HTMLVALIDATOR_NAME', 'HTML 検証システム');
-@define('PLUGIN_EVENT_HTMLVALIDATOR_DESC', 'XML 準拠のエントリを検証します。');
-@define('PLUGIN_EVENT_HTMLVALIDATOR_CHARSET', '文字コード');
-@define('PLUGIN_EVENT_HTMLVALIDATOR_CHARSETDESC', '通常の記事の文字コードを指定します。');
-@define('PLUGIN_EVENT_HTMLVALIDATOR_DOCTYPE', 'ドキュメントタイプ');
-@define('PLUGIN_EVENT_HTMLVALIDATOR_DOCTYPEDESC', '通常の記事のドキュメントタイプを指定します。');
-@define('PLUGIN_EVENT_HTMLVALIDATOR_VALIDATE', '各プレビュー時に検証する');
-@define('PLUGIN_EVENT_HTMLVALIDATOR_GOVALIDATE', 'プレビューで HTML 検証を表示');
-
-?>
+++ /dev/null
-<?php # $Id: lang_ko.inc.php,v 1.0 2005/06/29 13:41:13 garvinhicking Exp $
-# Translated by: Wesley Hwang-Chung <wesley96@gmail.com>
-# (c) 2005 http://www.tool-box.info/
-
- @define('PLUGIN_EVENT_HTMLVALIDATOR_NAME', 'HTML 적합성 검사');
- @define('PLUGIN_EVENT_HTMLVALIDATOR_DESC', '글이 XML 규격을 따르는지 적합성 검사를 실시함');
- @define('PLUGIN_EVENT_HTMLVALIDATOR_CHARSET', '문자열 종류');
- @define('PLUGIN_EVENT_HTMLVALIDATOR_CHARSETDESC', '글을 작성할 때 사용한 문자열의 종류');
- @define('PLUGIN_EVENT_HTMLVALIDATOR_DOCTYPE', '문서 종류');
- @define('PLUGIN_EVENT_HTMLVALIDATOR_DOCTYPEDESC', '글을 작성할 때 사용한 문서의 종류');
- @define('PLUGIN_EVENT_HTMLVALIDATOR_VALIDATE', '미리보기 할 때 검사');
- @define('PLUGIN_EVENT_HTMLVALIDATOR_GOVALIDATE', '미리보기에 HTML 적합성 검사 보여주기');
-
-?>
+++ /dev/null
-<?php # $Id:$
-# Copyright (c) 2003-2005, Jannis Hermanns (on behalf the Serendipity Developer Team)
-# All rights reserved. See LICENSE file for licensing details
-# Translation (c) by Joao P Matos <jmatos@math.ist.utl.pt>
-/* vim: set sts=4 ts=4 expandtab : */
-
-@define('PLUGIN_EVENT_HTMLVALIDATOR_NAME', 'Validador HTML');
-@define('PLUGIN_EVENT_HTMLVALIDATOR_DESC', 'Valida a conformidade do XML das entradas');
-@define('PLUGIN_EVENT_HTMLVALIDATOR_CHARSET', 'Codificação de caracteres');
-@define('PLUGIN_EVENT_HTMLVALIDATOR_CHARSETDESC', 'A codificação de caracteres usual nos seus artigos');
-@define('PLUGIN_EVENT_HTMLVALIDATOR_DOCTYPE', 'Tipo de documento');
-@define('PLUGIN_EVENT_HTMLVALIDATOR_DOCTYPEDESC', 'O tipo de documento usual dos seus artigos');
-@define('PLUGIN_EVENT_HTMLVALIDATOR_VALIDATE', 'Validar em cada pré-visualização');
-@define('PLUGIN_EVENT_HTMLVALIDATOR_GOVALIDATE', 'Mostrar validador HTML na pré-visualização');
-
-?>
+++ /dev/null
-<?php # $Id: $\r
-##########################################################################\r
-# Copyright (c) 2003-2005, Jannis Hermanns (on behalf the Serendipity #\r
-# Developer Team) All rights reserved. See LICENSE file for licensing #\r
-# details #\r
-# #\r
-# (c) 2003 Jannis Hermanns <J@hacked.it> #\r
-# http://www.jannis.to/programming/serendipity.html #\r
-# #\r
-# Translated by #\r
-# (c) 2004-2005 CapriSkye <admin@capriskye.com> #\r
-# http://open.38.com #\r
-##########################################################################\r
-\r
- @define('PLUGIN_EVENT_HTMLVALIDATOR_NAME', 'HTML 查驗');\r
- @define('PLUGIN_EVENT_HTMLVALIDATOR_DESC', '以 XML 標準查驗文章');\r
- @define('PLUGIN_EVENT_HTMLVALIDATOR_CHARSET', '編碼');\r
- @define('PLUGIN_EVENT_HTMLVALIDATOR_CHARSETDESC', '文章使用的編碼');\r
- @define('PLUGIN_EVENT_HTMLVALIDATOR_DOCTYPE', 'Doctype');\r
- @define('PLUGIN_EVENT_HTMLVALIDATOR_DOCTYPEDESC', '使用的文章類型 (Doctype)');\r
- @define('PLUGIN_EVENT_HTMLVALIDATOR_VALIDATE', '預覽時進行查驗');\r
- @define('PLUGIN_EVENT_HTMLVALIDATOR_GOVALIDATE', '預覽時顯示 HTML 查驗');\r
-?>
\ No newline at end of file
+++ /dev/null
-<?php # $Id$
-
-/**
- * @version $Revision$
- * @author Ivan Cenov jwalker@abv.bg
- * EN-Revision: 690
- */
-
-@define('PLUGIN_EVENT_HTMLVALIDATOR_NAME', 'HTML âàëèäàòîð');
-@define('PLUGIN_EVENT_HTMLVALIDATOR_DESC', 'Âàëèäèðà ñòàòèèòå çà XML ñúâìåñòèìîñò');
-@define('PLUGIN_EVENT_HTMLVALIDATOR_CHARSET', 'Charset (ñèìâîëíà òàáëèöà)');
-@define('PLUGIN_EVENT_HTMLVALIDATOR_CHARSETDESC', 'Îáè÷àéíàòà ñèìâîëíà òàáëèöà íà âàøèòå ñòàòèè.');
-@define('PLUGIN_EVENT_HTMLVALIDATOR_DOCTYPE', 'Doctype (äîêóìåíòåí òèï)');
-@define('PLUGIN_EVENT_HTMLVALIDATOR_DOCTYPEDESC', 'Îáè÷àéíèÿò äîêóìåíòåí òèï íà âàøèòå ñòàòèè.');
-@define('PLUGIN_EVENT_HTMLVALIDATOR_VALIDATE', 'Âàëèäèðàíå ïðè âñåêè ïðåäâàðèòåëåí ïðåãëåä');
-@define('PLUGIN_EVENT_HTMLVALIDATOR_GOVALIDATE', 'Ïîêàçâàíå íà HTML Âàëèäàòîð ïðè ïðåäâàðèòåëåí ïðåãëåä');
-
-?>
+++ /dev/null
-<?php # $Id: serendipity_event_htmlvalidator.php 235 2005-07-08 13:29:39Z garvinhicking $
-
- @define('PLUGIN_EVENT_HTMLVALIDATOR_NAME', 'HTML Validator');
- @define('PLUGIN_EVENT_HTMLVALIDATOR_DESC', 'Überprüft, ob ein Artikel XML-konform ist');
- @define('PLUGIN_EVENT_HTMLVALIDATOR_CHARSET', 'Zeichensatz');
- @define('PLUGIN_EVENT_HTMLVALIDATOR_CHARSETDESC', 'Der übliche Zeichensatz Ihrer Einträge');
- @define('PLUGIN_EVENT_HTMLVALIDATOR_DOCTYPE', 'Dokumenttyp');
- @define('PLUGIN_EVENT_HTMLVALIDATOR_DOCTYPEDESC', 'Der übliche Dokumenttyp Ihrer Einträge');
- @define('PLUGIN_EVENT_HTMLVALIDATOR_VALIDATE', 'Bei jeder Vorschau aktiviert');
- @define('PLUGIN_EVENT_HTMLVALIDATOR_GOVALIDATE', 'HTML-Validator bei der Vorschau ausführen');
+++ /dev/null
-<?php # $Id$
-
-/**
- * @version $Revision$
- * @author Translator Name <yourmail@example.com>
- * EN-Revision: Revision of lang_en.inc.php
- */
-
-@define('PLUGIN_EVENT_HTMLVALIDATOR_NAME', 'HTML Validator');
-@define('PLUGIN_EVENT_HTMLVALIDATOR_DESC', 'Validates entries on their XML-conformity');
-@define('PLUGIN_EVENT_HTMLVALIDATOR_CHARSET', 'Charset');
-@define('PLUGIN_EVENT_HTMLVALIDATOR_CHARSETDESC', 'The usual charset of your articles');
-@define('PLUGIN_EVENT_HTMLVALIDATOR_DOCTYPE', 'Doctype');
-@define('PLUGIN_EVENT_HTMLVALIDATOR_DOCTYPEDESC', 'The usual document type of your articles');
-@define('PLUGIN_EVENT_HTMLVALIDATOR_VALIDATE', 'Validate on each preview');
-@define('PLUGIN_EVENT_HTMLVALIDATOR_GOVALIDATE', 'Show HTML-Validator on preview');
-
-?>
+++ /dev/null
-<?php # $Id: lang_es.inc.php,v 1.0 2005/08/20 11:37:42 garvinhicking Exp $
-/**
- * @version $Revision: 690 $
- * @author Rodrigo Lazo Paz <rlazo.paz@gmail.com>
- * EN-Revision: 690
- */
-
-@define('PLUGIN_EVENT_HTMLVALIDATOR_NAME', 'Validador HTML');
-@define('PLUGIN_EVENT_HTMLVALIDATOR_DESC', 'Valida la conformidad XML de las entradas');
-@define('PLUGIN_EVENT_HTMLVALIDATOR_CHARSET', 'Juego de caracteres');
-@define('PLUGIN_EVENT_HTMLVALIDATOR_CHARSETDESC', 'El juego de caracteres usual de tus artículos');
-@define('PLUGIN_EVENT_HTMLVALIDATOR_DOCTYPE', 'Tipo de documento');
-@define('PLUGIN_EVENT_HTMLVALIDATOR_DOCTYPEDESC', 'El tipo de documento usual de tus artículos');
-@define('PLUGIN_EVENT_HTMLVALIDATOR_VALIDATE', 'Validar en cada previsualización');
-@define('PLUGIN_EVENT_HTMLVALIDATOR_GOVALIDATE', 'Mostrar validador HTML al previsualizar');
-
-?>
\ No newline at end of file
+++ /dev/null
-<?php # $Id$
-
-##########################################################################
-# serendipity - another blogger... #
-##########################################################################
-# #
-# (c) 2003 Jannis Hermanns <J@hacked.it> #
-# http://www.jannis.to/programming/serendipity.html #
-# #
-# Translated by #
-# Sebastian Mordziol <argh@php-tools.net> #
-# http://sebastian.mordziol.de #
-# #
-##########################################################################
-
-@define('PLUGIN_EVENT_HTMLVALIDATOR_NAME', 'Validateur HTML');
-@define('PLUGIN_EVENT_HTMLVALIDATOR_DESC', 'Valide le contenu des billets pour assurer la validité de la syntaxe XML.');
-@define('PLUGIN_EVENT_HTMLVALIDATOR_CHARSET', 'Jeu de caractères');
-@define('PLUGIN_EVENT_HTMLVALIDATOR_CHARSETDESC', 'Le jeu de caractères principalement utilisé dans vos billets');
-@define('PLUGIN_EVENT_HTMLVALIDATOR_DOCTYPE', 'Déclaration de type (doctype)');
-@define('PLUGIN_EVENT_HTMLVALIDATOR_DOCTYPEDESC', 'Le type de document principalement utilisé dans vos billets');
-@define('PLUGIN_EVENT_HTMLVALIDATOR_VALIDATE', 'Valider chaque prévisualisation');
-@define('PLUGIN_EVENT_HTMLVALIDATOR_GOVALIDATE', 'Afficher le validateur lors d\'une prévisualisation');
-
-/* vim: set sts=4 ts=4 expandtab : */
-?>
\ No newline at end of file
+++ /dev/null
-<?php # $Id$
-
-/**
- * @version $Revision$
- * @author Tadashi Jokagi <elf2000@users.sourceforge.net>
- * EN-Revision: 690
- */
-
-@define('PLUGIN_EVENT_HTMLVALIDATOR_NAME', 'HTML 検証システム');
-@define('PLUGIN_EVENT_HTMLVALIDATOR_DESC', 'XML 準拠のエントリを検証します。');
-@define('PLUGIN_EVENT_HTMLVALIDATOR_CHARSET', '文字コード');
-@define('PLUGIN_EVENT_HTMLVALIDATOR_CHARSETDESC', '通常の記事の文字コードを指定します。');
-@define('PLUGIN_EVENT_HTMLVALIDATOR_DOCTYPE', 'ドキュメントタイプ');
-@define('PLUGIN_EVENT_HTMLVALIDATOR_DOCTYPEDESC', '通常の記事のドキュメントタイプを指定します。');
-@define('PLUGIN_EVENT_HTMLVALIDATOR_VALIDATE', '各プレビュー時に検証する');
-@define('PLUGIN_EVENT_HTMLVALIDATOR_GOVALIDATE', 'プレビューで HTML 検証を表示');
-
-?>
+++ /dev/null
-<?php # $Id: lang_ko.inc.php,v 1.0 2005/06/29 13:41:13 garvinhicking Exp $
-# Translated by: Wesley Hwang-Chung <wesley96@gmail.com>
-# (c) 2005 http://www.tool-box.info/
-
- @define('PLUGIN_EVENT_HTMLVALIDATOR_NAME', 'HTML 적합성 검사');
- @define('PLUGIN_EVENT_HTMLVALIDATOR_DESC', '글이 XML 규격을 따르는지 적합성 검사를 실시함');
- @define('PLUGIN_EVENT_HTMLVALIDATOR_CHARSET', '문자열 종류');
- @define('PLUGIN_EVENT_HTMLVALIDATOR_CHARSETDESC', '글을 작성할 때 사용한 문자열의 종류');
- @define('PLUGIN_EVENT_HTMLVALIDATOR_DOCTYPE', '문서 종류');
- @define('PLUGIN_EVENT_HTMLVALIDATOR_DOCTYPEDESC', '글을 작성할 때 사용한 문서의 종류');
- @define('PLUGIN_EVENT_HTMLVALIDATOR_VALIDATE', '미리보기 할 때 검사');
- @define('PLUGIN_EVENT_HTMLVALIDATOR_GOVALIDATE', '미리보기에 HTML 적합성 검사 보여주기');
-
-?>
+++ /dev/null
-<?php # $Id:$
-# Copyright (c) 2003-2005, Jannis Hermanns (on behalf the Serendipity Developer Team)
-# All rights reserved. See LICENSE file for licensing details
-# Translation (c) by Joao P Matos <jmatos@math.ist.utl.pt>
-/* vim: set sts=4 ts=4 expandtab : */
-
-@define('PLUGIN_EVENT_HTMLVALIDATOR_NAME', 'Validador HTML');
-@define('PLUGIN_EVENT_HTMLVALIDATOR_DESC', 'Valida a conformidade do XML das entradas');
-@define('PLUGIN_EVENT_HTMLVALIDATOR_CHARSET', 'Codificação de caracteres');
-@define('PLUGIN_EVENT_HTMLVALIDATOR_CHARSETDESC', 'A codificação de caracteres usual nos seus artigos');
-@define('PLUGIN_EVENT_HTMLVALIDATOR_DOCTYPE', 'Tipo de documento');
-@define('PLUGIN_EVENT_HTMLVALIDATOR_DOCTYPEDESC', 'O tipo de documento usual dos seus artigos');
-@define('PLUGIN_EVENT_HTMLVALIDATOR_VALIDATE', 'Validar em cada pré-visualização');
-@define('PLUGIN_EVENT_HTMLVALIDATOR_GOVALIDATE', 'Mostrar validador HTML na pré-visualização');
-
-?>
+++ /dev/null
-<?php # $Id: $\r
-##########################################################################\r
-# Copyright (c) 2003-2005, Jannis Hermanns (on behalf the Serendipity #\r
-# Developer Team) All rights reserved. See LICENSE file for licensing #\r
-# details #\r
-# #\r
-# (c) 2003 Jannis Hermanns <J@hacked.it> #\r
-# http://www.jannis.to/programming/serendipity.html #\r
-# #\r
-# Translated by #\r
-# (c) 2004-2005 CapriSkye <admin@capriskye.com> #\r
-# http://open.38.com #\r
-##########################################################################\r
-\r
- @define('PLUGIN_EVENT_HTMLVALIDATOR_NAME', 'HTML 查驗');\r
- @define('PLUGIN_EVENT_HTMLVALIDATOR_DESC', '以 XML 標準查驗文章');\r
- @define('PLUGIN_EVENT_HTMLVALIDATOR_CHARSET', '編碼');\r
- @define('PLUGIN_EVENT_HTMLVALIDATOR_CHARSETDESC', '文章使用的編碼');\r
- @define('PLUGIN_EVENT_HTMLVALIDATOR_DOCTYPE', 'Doctype');\r
- @define('PLUGIN_EVENT_HTMLVALIDATOR_DOCTYPEDESC', '使用的文章類型 (Doctype)');\r
- @define('PLUGIN_EVENT_HTMLVALIDATOR_VALIDATE', '預覽時進行查驗');\r
- @define('PLUGIN_EVENT_HTMLVALIDATOR_GOVALIDATE', '預覽時顯示 HTML 查驗');\r
-?>
\ No newline at end of file
+++ /dev/null
-<?php # $Id$
-
-// Probe for a language include with constants. Still include defines later on, if some constants were missing
-$probelang = dirname(__FILE__) . '/' . $serendipity['charset'] . 'lang_' . $serendipity['lang'] . '.inc.php';
-if (file_exists($probelang)) {
- include $probelang;
-}
-
-include dirname(__FILE__) . '/lang_en.inc.php';
-
-class serendipity_event_htmlvalidator extends serendipity_event
-{
- var $title = PLUGIN_EVENT_HTMLVALIDATOR_NAME;
-
- function introspect(&$propbag)
- {
- global $serendipity;
-
- $propbag->add('name', PLUGIN_EVENT_HTMLVALIDATOR_NAME);
- $propbag->add('description', PLUGIN_EVENT_HTMLVALIDATOR_DESC);
- $propbag->add('stackable', false);
- $propbag->add('author', 'Garvin Hicking');
- $propbag->add('version', '1.0');
- $propbag->add('requirements', array(
- 'serendipity' => '0.8',
- 'smarty' => '2.6.7',
- 'php' => '4.1.0'
- ));
- $propbag->add('event_hooks', array(
- 'backend_preview' => true,
- 'backend_display' => true,
- ));
-
- $propbag->add('configuration', array('charset', 'doctype', 'default_validate'));
- $propbag->add('groups', array('BACKEND_EDITOR'));
- }
-
- function introspect_config_item($name, &$propbag)
- {
- switch($name) {
- case 'default_validate':
- $propbag->add('type', 'boolean');
- $propbag->add('name', PLUGIN_EVENT_HTMLVALIDATOR_VALIDATE);
- $propbag->add('description', PLUGIN_EVENT_HTMLVALIDATOR_VALIDATE);
- $propbag->add('default', 'false');
- break;
-
- case 'charset':
- $propbag->add('type', 'select');
- $propbag->add('name', PLUGIN_EVENT_HTMLVALIDATOR_CHARSET);
- $propbag->add('description', PLUGIN_EVENT_HTMLVALIDATOR_CHARSETDESC);
- $propbag->add('default', '(detect automatically)');
- $propbag->add('select_values', array(
- '(detect automatically)' => '(detect automatically)',
- 'utf-8 (Unicode, worldwide)' => 'utf-8 (Unicode, worldwide)',
- 'utf-16 (Unicode, worldwide)' => 'utf-16 (Unicode, worldwide)',
- 'iso-8859-1 (Western Europe)' => 'iso-8859-1 (Western Europe)',
- 'iso-8859-2 (Central Europe)' => 'iso-8859-2 (Central Europe)',
- 'iso-8859-3 (Southern Europe)' => 'iso-8859-3 (Southern Europe)',
- 'iso-8859-4 (Baltic Rim)' => 'iso-8859-4 (Baltic Rim)',
- 'iso-8859-5 (Cyrillic)' => 'iso-8859-5 (Cyrillic)',
- 'iso-8859-6-i (Arabic)' => 'iso-8859-6-i (Arabic)',
- 'iso-8859-7 (Greek)' => 'iso-8859-7 (Greek)',
- 'iso-8859-8-i (Hebrew)' => 'so-8859-8-i (Hebrew)',
- 'iso-8859-9 (Turkish)' => 'iso-8859-9 (Turkish)',
- 'iso-8859-10 (Latin 6)' => 'iso-8859-10 (Latin 6)',
- 'iso-8859-13 (Latin 7)' => 'iso-8859-13 (Latin 7)',
- 'iso-8859-14 (Celtic)' => 'iso-8859-14 (Celtic)',
- 'iso-8859-15 (Latin 9)' => 'iso-8859-15 (Latin 9)',
- 'us-ascii (basic English)' => 'us-ascii (basic English)',
- 'euc-jp (Japanese, Unix)' => 'euc-jp (Japanese, Unix)',
- 'shift_jis (Japanese, Win/Mac)' => 'shift_jis (Japanese, Win/Mac)',
- 'iso-2022-jp (Japanese, email)' => 'iso-2022-jp (Japanese, email)',
- 'euc-kr (Korean)' => 'euc-kr (Korean)',
- 'gb2312 (Chinese, simplified)' => 'gb2312 (Chinese, simplified)',
- 'gb18030 (Chinese, simplified)' => 'gb18030 (Chinese, simplified)',
- 'big5 (Chinese, traditional)' => 'big5 (Chinese, traditional)',
- 'tis-620 (Thai)' => 'tis-620 (Thai)',
- 'koi8-r (Russian)' => 'koi8-r (Russian)',
- 'koi8-u (Ukrainian)' => 'koi8-u (Ukrainian)',
- 'macintosh (MacRoman)' => 'macintosh (MacRoman)',
- 'windows-1250 (Central Europe)' => 'windows-1250 (Central Europe)',
- 'windows-1251 (Cyrillic)' => 'windows-1251 (Cyrillic)',
- 'windows-1252 (Western Europe)' => 'windows-1252 (Western Europe)',
- 'windows-1253 (Greek)' => 'windows-1253 (Greek)',
- 'windows-1254 (Turkish)' => 'windows-1254 (Turkish)',
- 'windows-1255 (Hebrew)' => 'windows-1255 (Hebrew)',
- 'windows-1256 (Arabic)' => 'windows-1256 (Arabic)',
- 'windows-1257 (Baltic Rim)' => 'windows-1257 (Baltic Rim)'
- ));
- break;
-
- case 'doctype':
- $propbag->add('type', 'select');
- $propbag->add('name', PLUGIN_EVENT_HTMLVALIDATOR_DOCTYPE);
- $propbag->add('description', PLUGIN_EVENT_HTMLVALIDATOR_DOCTYPEDESC);
- $propbag->add('default', 'Inline');
- $propbag->add('select_values', array(
- 'Inline' => '(detect automatically)',
- 'XHTML 1.1' => 'XHTML 1.1',
- 'XHTML Basic 1.0' => 'XHTML Basic 1.0',
- 'XHTML 1.0 Strict' => 'XHTML 1.0 Strict',
- 'XHTML 1.0 Transitional' => 'XHTML 1.0 Transitional',
- 'XHTML 1.0 Frameset' => 'XHTML 1.0 Frameset',
- 'HTML 4.01 Strict' => 'HTML 4.01 Strict',
- 'HTML 4.01 Transitional' => 'HTML 4.01 Transitional',
- 'HTML 4.01 Frameset' => 'HTML 4.01 Frameset',
- 'HTML 3.2' => 'HTML 3.2',
- 'HTML 2.0' => 'HTML 2.0'
- ));
- break;
-
- default:
- return false;
- }
- return true;
- }
-
- function generate_content(&$title) {
- $title = $this->title;
- }
-
- function event_hook($event, &$bag, &$eventData) {
- global $serendipity;
-
- $hooks = &$bag->get('event_hooks');
-
- if (isset($hooks[$event])) {
- switch($event) {
- case 'backend_display':
-?>
- <fieldset style="margin: 5px">
- <legend><?php echo PLUGIN_EVENT_HTMLVALIDATOR_NAME; ?></legend>
-<?php
- $selected = (($serendipity['POST']['chk_timestamp'] && $serendipity['POST']['default_validate']) || (!isset($serendipity['POST']['chk_timestamp']) && $this->get_config('default_validate') == 'true') ? 'checked="checked"' : '');
-?>
- <input style="margin: 0px; padding: 0px; vertical-align: bottom;" type="checkbox" name="serendipity[default_validate]" id="serendipity[default_validate]" value="true" <?php echo $selected; ?> />
- <label style="vertical-align: bottom; margin: 0px; padding: 0px;" for="serendipity[default_validate]"> <?php echo PLUGIN_EVENT_HTMLVALIDATOR_GOVALIDATE; ?> </label>
- </fieldset>
-<?php
- break;
-
- case 'backend_preview':
- if (!$serendipity['POST']['default_validate']) {
- return true;
- }
-
- $url = 'validator.w3.org';
- $path = '/check';
- $fp = fsockopen($url, 80, $errno, $errstr, 30);
-
- $doctype = $this->get_config('doctype');
- $charset = $this->get_config('charset');
-
- if (empty($doctype)) {
- $doctype = 'XHTML 1.1';
- }
-
- if (empty($charset)) {
- $charset = 'iso-8859-1 (Western Europe)';
- }
-
- $data = '<html><head><title>s9y</title></head><body><div>'
- . $eventData
- . '</div></body></html>';
- $request_data .= '-----------------------------24464570528145
-Content-Disposition: form-data; name="uploaded_file"; filename="s9y.htm"
-Content-Type: text/html
-
-' . $data . '
------------------------------24464570528145
-Content-Disposition: form-data; name="charset"
-
-' . $charset . '
------------------------------24464570528145
-Content-Disposition: form-data; name="doctype"
-
-' . $doctype . '
------------------------------24464570528145
-Content-Disposition: form-data; name="verbose"
-
-1
------------------------------24464570528145--';
-
- $request_length = strlen($request_data);
- $REQUEST = array();
- $REQUEST[] = 'POST ' . $path . ' HTTP/1.0';
- $REQUEST[] = 'Host: ' . $url;
- $REQUEST[] = 'User-Agent: serendipity/' . $serendipity['version'];
- $REQUEST[] = 'Referer: http://validator.w3.org/';
- $REQUEST[] = 'Content-Type: multipart/form-data; boundary=---------------------------24464570528145';
- $REQUEST[] = 'Content-Length: ' . $request_length;
- $REQUEST[] = 'Connection: close' . "\r\n";
- $REQUEST[] = $request_data;
-
- $REQUEST_STRING = implode("\r\n", $REQUEST);
- fputs($fp, $REQUEST_STRING);
-
- $line = fgets($fp, 1024);
- if (preg_match('@^HTTP/1\.. (2|3)0(2|0)@', $line)) {
- $out = '';
- $inheader = 1;
- while(!feof($fp) && strlen($out) < 200000) {
- $line = fgets($fp,1024);
- if ($inheader && ($line == "\n" || $line == "\r\n")) {
- $inheader = 0;
- } elseif (!$inheader) {
- $out .= $line;
- }
- }
- }
- fclose($fp);
-
- preg_match('@<table class="header">.+</table>.+</div>.+(<h2 .+)</body>@ms', $out, $html);
-
- // Cut the waste
- $html[1] = preg_replace(
- array(
- '@<address>.+</address>@ms',
- '@<dl class="tip">.+</dl>@ms',
- '@<div id="source".+>.+</div>@msU'
- ),
-
- array(
- '',
- '',
- ''
- ),
-
- $html[1]
- );
-
- echo '<div style="border: 1px solid red; margin: 10px; padding: 5px; "><div>' . $html[1] . '</div>';
- return true;
- break;
-
- default:
- return false;
- break;
- }
- } else {
- return false;
- }
- }
-}
-
-/* vim: set sts=4 ts=4 expandtab : */
-?>