2 |
--------------------------------------------------------------------------------
/TODO.TXT:
--------------------------------------------------------------------------------
1 | 1 Visit the installation process, make more precise and show errors, rather than assume
2 | everything works fine
3 |
4 | 2 Edit all forms and add placeholders
--------------------------------------------------------------------------------
/libraries/purifier/HTMLPurifier/DefinitionCache/Serializer/README:
--------------------------------------------------------------------------------
1 | This is a dummy file to prevent Git from ignoring this empty directory.
2 |
3 | vim: et sw=4 sts=4
4 |
--------------------------------------------------------------------------------
/.buildpath:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/views/comments/post.php:
--------------------------------------------------------------------------------
1 |
2 | -
3 |
--------------------------------------------------------------------------------
/.htaccess:
--------------------------------------------------------------------------------
1 |
2 | RewriteEngine On
3 | RewriteCond %{REQUEST_FILENAME} !-d
4 | RewriteCond %{REQUEST_FILENAME} !-f
5 | RewriteRule ^(.*)$ index.php/$1 [QSA,L]
6 |
--------------------------------------------------------------------------------
/libraries/purifier/HTMLPurifier/ConfigSchema/schema/Attr.IDBlacklist.txt:
--------------------------------------------------------------------------------
1 | Attr.IDBlacklist
2 | TYPE: list
3 | DEFAULT: array()
4 | DESCRIPTION: Array of IDs not allowed in the document.
5 | --# vim: et sw=4 sts=4
6 |
--------------------------------------------------------------------------------
/libraries/purifier/HTMLPurifier/Printer/ConfigForm.js:
--------------------------------------------------------------------------------
1 | function toggleWriteability(id_of_patient, checked) {
2 | document.getElementById(id_of_patient).disabled = checked;
3 | }
4 |
5 | // vim: et sw=4 sts=4
6 |
--------------------------------------------------------------------------------
/libraries/purifier/HTMLPurifier/Token/Empty.php:
--------------------------------------------------------------------------------
1 |
2 | |
3 |
--------------------------------------------------------------------------------
/libraries/purifier/HTMLPurifier/ConfigSchema/schema/HTML.TidyAdd.txt:
--------------------------------------------------------------------------------
1 | HTML.TidyAdd
2 | TYPE: lookup
3 | VERSION: 2.0.0
4 | DEFAULT: array()
5 | --DESCRIPTION--
6 |
7 | Fixes to add to the default set of Tidy fixes as per your level.
8 | --# vim: et sw=4 sts=4
9 |
--------------------------------------------------------------------------------
/libraries/purifier/HTMLPurifier/Language/classes/en-x-test.php:
--------------------------------------------------------------------------------
1 |
8 | Whether or not to allow safe, proprietary CSS values.
9 |
10 | --# vim: et sw=4 sts=4
11 |
--------------------------------------------------------------------------------
/libraries/purifier/HTMLPurifier/Language/messages/en-x-test.php:
--------------------------------------------------------------------------------
1 | 'HTML Purifier X'
9 | );
10 |
11 | // vim: et sw=4 sts=4
12 |
--------------------------------------------------------------------------------
/libraries/purifier/HTMLPurifier/ConfigSchema/schema/Test.ForceNoIconv.txt:
--------------------------------------------------------------------------------
1 | Test.ForceNoIconv
2 | TYPE: bool
3 | DEFAULT: false
4 | --DESCRIPTION--
5 | When set to true, HTMLPurifier_Encoder will act as if iconv does not exist
6 | and use only pure PHP implementations.
7 | --# vim: et sw=4 sts=4
8 |
--------------------------------------------------------------------------------
/libraries/purifier/HTMLPurifier/ConfigSchema/schema/Core.EscapeInvalidTags.txt:
--------------------------------------------------------------------------------
1 | Core.EscapeInvalidTags
2 | TYPE: bool
3 | DEFAULT: false
4 | --DESCRIPTION--
5 | When true, invalid tags will be written back to the document as plain text.
6 | Otherwise, they are silently dropped.
7 | --# vim: et sw=4 sts=4
8 |
--------------------------------------------------------------------------------
/libraries/purifier/HTMLPurifier/URIScheme/https.php:
--------------------------------------------------------------------------------
1 |
8 | Revision identifier for your custom definition. See
9 | %HTML.DefinitionRev for details.
10 |
11 | --# vim: et sw=4 sts=4
12 |
--------------------------------------------------------------------------------
/libraries/purifier/HTMLPurifier/ConfigSchema/schema/URI.DefinitionRev.txt:
--------------------------------------------------------------------------------
1 | URI.DefinitionRev
2 | TYPE: int
3 | VERSION: 2.1.0
4 | DEFAULT: 1
5 | --DESCRIPTION--
6 |
7 |
8 | Revision identifier for your custom definition. See
9 | %HTML.DefinitionRev for details.
10 |
8 | This directive turns on linkification, auto-linking http, ftp and
9 | https URLs. a tags with the href attribute
10 | must be allowed.
11 |
12 | --# vim: et sw=4 sts=4
13 |
--------------------------------------------------------------------------------
/libraries/purifier/HTMLPurifier/ConfigSchema/schema/Attr.AllowedRel.txt:
--------------------------------------------------------------------------------
1 | Attr.AllowedRel
2 | TYPE: lookup
3 | VERSION: 1.6.0
4 | DEFAULT: array()
5 | --DESCRIPTION--
6 | List of allowed forward document relationships in the rel attribute. Common
7 | values may be nofollow or print. By default, this is empty, meaning that no
8 | document relationships are allowed.
9 | --# vim: et sw=4 sts=4
10 |
--------------------------------------------------------------------------------
/libraries/purifier/HTMLPurifier/Printer/ConfigForm.css:
--------------------------------------------------------------------------------
1 |
2 | .hp-config {}
3 |
4 | .hp-config tbody th {text-align:right; padding-right:0.5em;}
5 | .hp-config thead, .hp-config .namespace {background:#3C578C; color:#FFF;}
6 | .hp-config .namespace th {text-align:center;}
7 | .hp-config .verbose {display:none;}
8 | .hp-config .controls {text-align:center;}
9 |
10 | /* vim: et sw=4 sts=4 */
11 |
--------------------------------------------------------------------------------
/libraries/purifier/HTMLPurifier/ConfigSchema/schema/Core.Language.txt:
--------------------------------------------------------------------------------
1 | Core.Language
2 | TYPE: string
3 | VERSION: 2.0.0
4 | DEFAULT: 'en'
5 | --DESCRIPTION--
6 |
7 | ISO 639 language code for localizable things in HTML Purifier to use,
8 | which is mainly error reporting. There is currently only an English (en)
9 | translation, so this directive is currently useless.
10 | --# vim: et sw=4 sts=4
11 |
--------------------------------------------------------------------------------
/libraries/purifier/HTMLPurifier/ConfigSchema/schema/Output.CommentScriptContents.txt:
--------------------------------------------------------------------------------
1 | Output.CommentScriptContents
2 | TYPE: bool
3 | VERSION: 2.0.0
4 | DEFAULT: true
5 | --DESCRIPTION--
6 | Determines whether or not HTML Purifier should attempt to fix up the
7 | contents of script tags for legacy browsers with comments.
8 | --ALIASES--
9 | Core.CommentScriptContents
10 | --# vim: et sw=4 sts=4
11 |
--------------------------------------------------------------------------------
/libraries/purifier/HTMLPurifier/ConfigSchema/schema/URI.Disable.txt:
--------------------------------------------------------------------------------
1 | URI.Disable
2 | TYPE: bool
3 | VERSION: 1.3.0
4 | DEFAULT: false
5 | --DESCRIPTION--
6 |
7 |
8 | Disables all URIs in all forms. Not sure why you'd want to do that
9 | (after all, the Internet's founded on the notion of a hyperlink).
10 |
11 |
12 | --ALIASES--
13 | Attr.DisableURI
14 | --# vim: et sw=4 sts=4
15 |
--------------------------------------------------------------------------------
/libraries/purifier/HTMLPurifier/ConfigSchema/schema/Attr.DefaultInvalidImageAlt.txt:
--------------------------------------------------------------------------------
1 | Attr.DefaultInvalidImageAlt
2 | TYPE: string
3 | DEFAULT: 'Invalid image'
4 | --DESCRIPTION--
5 | This is the content of the alt tag of an invalid image if the user had not
6 | previously specified an alt attribute. It has no effect when the image is
7 | valid but there was no alt attribute present.
8 | --# vim: et sw=4 sts=4
9 |
--------------------------------------------------------------------------------
/libraries/purifier/HTMLPurifier/HTMLModule/XMLCommonAttributes.php:
--------------------------------------------------------------------------------
1 | array(
9 | 'xml:lang' => 'LanguageCode',
10 | )
11 | );
12 | }
13 |
14 | // vim: et sw=4 sts=4
15 |
--------------------------------------------------------------------------------
/libraries/purifier/HTMLPurifier/AttrDef/URI/Email.php:
--------------------------------------------------------------------------------
1 |
9 | This directive enables HTML Purifier to remove not only script tags
10 | but all of their contents.
11 |
12 | --# vim: et sw=4 sts=4
13 |
--------------------------------------------------------------------------------
/libraries/purifier/HTMLPurifier/HTMLModule/NonXMLCommonAttributes.php:
--------------------------------------------------------------------------------
1 | array(
9 | 'lang' => 'LanguageCode',
10 | )
11 | );
12 | }
13 |
14 | // vim: et sw=4 sts=4
15 |
--------------------------------------------------------------------------------
/libraries/purifier/HTMLPurifier/ConfigSchema/schema/URI.DisableResources.txt:
--------------------------------------------------------------------------------
1 | URI.DisableResources
2 | TYPE: bool
3 | VERSION: 1.3.0
4 | DEFAULT: false
5 | --DESCRIPTION--
6 |
7 |
8 | Disables embedding resources, essentially meaning no pictures. You can
9 | still link to them though. See %URI.DisableExternalResources for why
10 | this might be a good idea.
11 |
7 | This directive can be used to add custom filters; it is nearly the
8 | equivalent of the now deprecated HTMLPurifier->addFilter()
9 | method. Specify an array of concrete implementations.
10 |
11 | --# vim: et sw=4 sts=4
12 |
--------------------------------------------------------------------------------
/libraries/purifier/HTMLPurifier/ConfigSchema/schema/URI.HostBlacklist.txt:
--------------------------------------------------------------------------------
1 | URI.HostBlacklist
2 | TYPE: list
3 | VERSION: 1.3.0
4 | DEFAULT: array()
5 | --DESCRIPTION--
6 | List of strings that are forbidden in the host of any URI. Use it to kill
7 | domain names of spam, etc. Note that it will catch anything in the domain,
8 | so moo.com will catch moo.com.example.com.
9 | --# vim: et sw=4 sts=4
10 |
--------------------------------------------------------------------------------
/libraries/purifier/HTMLPurifier/ConfigSchema/schema/AutoFormat.Custom.txt:
--------------------------------------------------------------------------------
1 | AutoFormat.Custom
2 | TYPE: list
3 | VERSION: 2.0.1
4 | DEFAULT: array()
5 | --DESCRIPTION--
6 |
7 |
8 | This directive can be used to add custom auto-format injectors.
9 | Specify an array of injector names (class name minus the prefix)
10 | or concrete implementations. Injector class must exist.
11 |
12 | --# vim: et sw=4 sts=4
13 |
--------------------------------------------------------------------------------
/libraries/purifier/HTMLPurifier/DefinitionCache/Serializer/URI/4.0.0,05c766101e813c246917b022f97b5e6e,1.ser:
--------------------------------------------------------------------------------
1 | O:26:"HTMLPurifier_URIDefinition":7:{s:4:"type";s:3:"URI";s:10:" * filters";a:1:{s:13:"HostBlacklist";O:36:"HTMLPurifier_URIFilter_HostBlacklist":3:{s:4:"name";s:13:"HostBlacklist";s:12:" * blacklist";a:0:{}s:4:"post";b:0;}}s:14:" * postFilters";a:0:{}s:4:"base";N;s:4:"host";N;s:13:"defaultScheme";s:4:"http";s:5:"setup";b:1;}
--------------------------------------------------------------------------------
/libraries/purifier/HTMLPurifier/ConfigSchema/schema/Attr.IDBlacklistRegexp.txt:
--------------------------------------------------------------------------------
1 | Attr.IDBlacklistRegexp
2 | TYPE: string/null
3 | VERSION: 1.6.0
4 | DEFAULT: NULL
5 | --DESCRIPTION--
6 | PCRE regular expression to be matched against all IDs. If the expression is
7 | matches, the ID is rejected. Use this with care: may cause significant
8 | degradation. ID matching is done after all other validation.
9 | --# vim: et sw=4 sts=4
10 |
--------------------------------------------------------------------------------
/libraries/purifier/HTMLPurifier/ConfigSchema/schema/HTML.Parent.txt:
--------------------------------------------------------------------------------
1 | HTML.Parent
2 | TYPE: string
3 | VERSION: 1.3.0
4 | DEFAULT: 'div'
5 | --DESCRIPTION--
6 |
7 |
8 | String name of element that HTML fragment passed to library will be
9 | inserted in. An interesting variation would be using span as the
10 | parent element, meaning that only inline tags would be allowed.
11 |
12 | --# vim: et sw=4 sts=4
13 |
--------------------------------------------------------------------------------
/libraries/purifier/HTMLPurifier/ConfigSchema/schema/Attr.DefaultInvalidImage.txt:
--------------------------------------------------------------------------------
1 | Attr.DefaultInvalidImage
2 | TYPE: string
3 | DEFAULT: ''
4 | --DESCRIPTION--
5 | This is the default image an img tag will be pointed to if it does not have
6 | a valid src attribute. In future versions, we may allow the image tag to
7 | be removed completely, but due to design issues, this is not possible right
8 | now.
9 | --# vim: et sw=4 sts=4
10 |
--------------------------------------------------------------------------------
/libraries/purifier/HTMLPurifier/ConfigSchema/schema/AutoFormat.PurifierLinkify.txt:
--------------------------------------------------------------------------------
1 | AutoFormat.PurifierLinkify
2 | TYPE: bool
3 | VERSION: 2.0.1
4 | DEFAULT: false
5 | --DESCRIPTION--
6 |
7 |
8 | Internal auto-formatter that converts configuration directives in
9 | syntax %Namespace.Directive to links. a tags
10 | with the href attribute must be allowed.
11 |
7 | This directive enables YouTube video embedding in HTML Purifier. Check
8 | this document
9 | on embedding videos for more information on what this filter does.
10 |
7 | This directive turns on the in-text display of URIs in <a> tags, and disables
8 | those links. For example, example becomes
9 | example (http://example.com).
10 |
11 | --# vim: et sw=4 sts=4
12 |
--------------------------------------------------------------------------------
/libraries/purifier/HTMLPurifier/ConfigSchema/schema/URI.OverrideAllowedSchemes.txt:
--------------------------------------------------------------------------------
1 | URI.OverrideAllowedSchemes
2 | TYPE: bool
3 | DEFAULT: true
4 | --DESCRIPTION--
5 | If this is set to true (which it is by default), you can override
6 | %URI.AllowedSchemes by simply registering a HTMLPurifier_URIScheme to the
7 | registry. If false, you will also have to update that directive in order
8 | to add more schemes.
9 | --# vim: et sw=4 sts=4
10 |
--------------------------------------------------------------------------------
/libraries/purifier/HTMLPurifier/ConfigSchema/schema/HTML.Proprietary.txt:
--------------------------------------------------------------------------------
1 | HTML.Proprietary
2 | TYPE: bool
3 | VERSION: 3.1.0
4 | DEFAULT: false
5 | --DESCRIPTION--
6 |
7 | Whether or not to allow proprietary elements and attributes in your
8 | documents, as per HTMLPurifier_HTMLModule_Proprietary.
9 | Warning: This can cause your documents to stop
10 | validating!
11 |
8 | Absolute path with no trailing slash to store serialized definitions in.
9 | Default is within the
10 | HTML Purifier library inside DefinitionCache/Serializer. This
11 | path must be writable by the webserver.
12 |
8 | This directive enables pre-emptive URI checking in img
9 | tags, as the attribute validation strategy is not authorized to
10 | remove elements from the document. Revert to pre-1.3.0 behavior by setting to false.
11 |
8 | Location of configuration documentation to link to, let %s substitute
9 | into the configuration's namespace and directive names sans the percent
10 | sign.
11 |
12 | --# vim: et sw=4 sts=4
13 |
--------------------------------------------------------------------------------
/db/2.txt:
--------------------------------------------------------------------------------
1 | ALTER TABLE `users` ADD COLUMN `name` VARCHAR(255) NOT NULL AFTER `password`,
2 | ADD COLUMN `email` VARCHAR(255) NOT NULL AFTER `name`,
3 | ADD COLUMN `points` INTEGER UNSIGNED NOT NULL AFTER `email`,
4 | ADD COLUMN `moderator` INTEGER UNSIGNED NOT NULL AFTER `points`;
5 | ALTER TABLE `users` DROP COLUMN `username`;
6 |
7 | ALTER TABLE `users` ADD COLUMN `created` DATETIME NOT NULL AFTER `moderator`,
8 | ADD COLUMN `lastactivity` DATETIME NOT NULL AFTER `created`;
9 |
--------------------------------------------------------------------------------
/libraries/purifier/HTMLPurifier/URIFilter/DisableExternalResources.php:
--------------------------------------------------------------------------------
1 | get('EmbeddedURI', true)) return true;
8 | return parent::filter($uri, $config, $context);
9 | }
10 | }
11 |
12 | // vim: et sw=4 sts=4
13 |
--------------------------------------------------------------------------------
/libraries/purifier/HTMLPurifier/ConfigSchema/schema/Output.Newline.txt:
--------------------------------------------------------------------------------
1 | Output.Newline
2 | TYPE: string/null
3 | VERSION: 2.0.1
4 | DEFAULT: NULL
5 | --DESCRIPTION--
6 |
7 |
8 | Newline string to format final output with. If left null, HTML Purifier
9 | will auto-detect the default newline type of the system and use that;
10 | you can manually override it here. Remember, \r\n is Windows, \r
11 | is Mac, and \n is Unix.
12 |
13 | --# vim: et sw=4 sts=4
14 |
--------------------------------------------------------------------------------
/libraries/purifier/HTMLPurifier/ConfigSchema/schema/URI.AllowedSchemes.txt:
--------------------------------------------------------------------------------
1 | URI.AllowedSchemes
2 | TYPE: lookup
3 | --DEFAULT--
4 | array (
5 | 'http' => true,
6 | 'https' => true,
7 | 'mailto' => true,
8 | 'ftp' => true,
9 | 'nntp' => true,
10 | 'news' => true,
11 | )
12 | --DESCRIPTION--
13 | Whitelist that defines the schemes that a URI is allowed to have. This
14 | prevents XSS attacks from using pseudo-schemes like javascript or mocha.
15 | --# vim: et sw=4 sts=4
16 |
--------------------------------------------------------------------------------
/libraries/purifier/HTMLPurifier/AttrTransform/ScriptRequired.php:
--------------------------------------------------------------------------------
1 |
5 | */
6 | class HTMLPurifier_AttrTransform_ScriptRequired extends HTMLPurifier_AttrTransform
7 | {
8 | public function transform($attr, $config, $context) {
9 | if (!isset($attr['type'])) {
10 | $attr['type'] = 'text/javascript';
11 | }
12 | return $attr;
13 | }
14 | }
15 |
16 | // vim: et sw=4 sts=4
17 |
--------------------------------------------------------------------------------
/libraries/purifier/HTMLPurifier/AttrTransform/SafeEmbed.php:
--------------------------------------------------------------------------------
1 | true, 'th' => true)
5 | --DESCRIPTION--
6 |
7 | When %AutoFormat.RemoveEmpty and %AutoFormat.RemoveEmpty.RemoveNbsp
8 | are enabled, this directive defines what HTML elements should not be
9 | removede if they have only a non-breaking space in them.
10 |
11 | --# vim: et sw=4 sts=4
12 |
--------------------------------------------------------------------------------
/libraries/purifier/HTMLPurifier/ConfigSchema/schema/Cache.DefinitionImpl.txt:
--------------------------------------------------------------------------------
1 | Cache.DefinitionImpl
2 | TYPE: string/null
3 | VERSION: 2.0.0
4 | DEFAULT: 'Serializer'
5 | --DESCRIPTION--
6 |
7 | This directive defines which method to use when caching definitions,
8 | the complex data-type that makes HTML Purifier tick. Set to null
9 | to disable caching (not recommended, as you will see a definite
10 | performance degradation).
11 |
12 | --ALIASES--
13 | Core.DefinitionCache
14 | --# vim: et sw=4 sts=4
15 |
--------------------------------------------------------------------------------
/libraries/purifier/HTMLPurifier/ConfigSchema/schema/URI.MakeAbsolute.txt:
--------------------------------------------------------------------------------
1 | URI.MakeAbsolute
2 | TYPE: bool
3 | VERSION: 2.1.0
4 | DEFAULT: false
5 | --DESCRIPTION--
6 |
7 |
8 | Converts all URIs into absolute forms. This is useful when the HTML
9 | being filtered assumes a specific base path, but will actually be
10 | viewed in a different context (and setting an alternate base URI is
11 | not possible). %URI.Base must be set for this directive to work.
12 |
12 |
13 |
14 |
--------------------------------------------------------------------------------
/libraries/purifier/HTMLPurifier/AttrTransform/Textarea.php:
--------------------------------------------------------------------------------
1 |
5 | */
6 | class HTMLPurifier_AttrTransform_Textarea extends HTMLPurifier_AttrTransform
7 | {
8 |
9 | public function transform($attr, $config, $context) {
10 | // Calculated from Firefox
11 | if (!isset($attr['cols'])) $attr['cols'] = '22';
12 | if (!isset($attr['rows'])) $attr['rows'] = '3';
13 | return $attr;
14 | }
15 |
16 | }
17 |
18 | // vim: et sw=4 sts=4
19 |
--------------------------------------------------------------------------------
/libraries/purifier/HTMLPurifier/ConfigSchema/schema/Core.CollectErrors.txt:
--------------------------------------------------------------------------------
1 | Core.CollectErrors
2 | TYPE: bool
3 | VERSION: 2.0.0
4 | DEFAULT: false
5 | --DESCRIPTION--
6 |
7 | Whether or not to collect errors found while filtering the document. This
8 | is a useful way to give feedback to your users. Warning:
9 | Currently this feature is very patchy and experimental, with lots of
10 | possible error messages not yet implemented. It will not cause any
11 | problems, but it may not help your users either.
12 | --# vim: et sw=4 sts=4
13 |
--------------------------------------------------------------------------------
/views/users/login.php:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/libraries/purifier/HTMLPurifier/ConfigSchema/schema/URI.DisableExternal.txt:
--------------------------------------------------------------------------------
1 | URI.DisableExternal
2 | TYPE: bool
3 | VERSION: 1.2.0
4 | DEFAULT: false
5 | --DESCRIPTION--
6 | Disables links to external websites. This is a highly effective anti-spam
7 | and anti-pagerank-leech measure, but comes at a hefty price: nolinks or
8 | images outside of your domain will be allowed. Non-linkified URIs will
9 | still be preserved. If you want to be able to link to subdomains or use
10 | absolute URIs, specify %URI.Host for your website.
11 | --# vim: et sw=4 sts=4
12 |
--------------------------------------------------------------------------------
/libraries/purifier/HTMLPurifier/Token/End.php:
--------------------------------------------------------------------------------
1 | display:none; is considered a tricky property that
10 | will only be allowed if this directive is set to true.
11 | --# vim: et sw=4 sts=4
12 |
--------------------------------------------------------------------------------
/libraries/purifier/HTMLPurifier/ConfigSchema/schema/Core.ConvertDocumentToFragment.txt:
--------------------------------------------------------------------------------
1 | Core.ConvertDocumentToFragment
2 | TYPE: bool
3 | DEFAULT: true
4 | --DESCRIPTION--
5 |
6 | This parameter determines whether or not the filter should convert
7 | input that is a full document with html and body tags to a fragment
8 | of just the contents of a body tag. This parameter is simply something
9 | HTML Purifier can do during an edge-case: for most inputs, this
10 | processing is not necessary.
11 |
12 | --ALIASES--
13 | Core.AcceptFullDocuments
14 | --# vim: et sw=4 sts=4
15 |
--------------------------------------------------------------------------------
/libraries/purifier/HTMLPurifier/URIScheme/http.php:
--------------------------------------------------------------------------------
1 | userinfo = null;
15 | return true;
16 | }
17 |
18 | }
19 |
20 | // vim: et sw=4 sts=4
21 |
--------------------------------------------------------------------------------
/libraries/purifier/HTMLPurifier/ConfigSchema/schema/HTML.Doctype.txt:
--------------------------------------------------------------------------------
1 | HTML.Doctype
2 | TYPE: string/null
3 | DEFAULT: NULL
4 | --DESCRIPTION--
5 | Doctype to use during filtering. Technically speaking this is not actually
6 | a doctype (as it does not identify a corresponding DTD), but we are using
7 | this name for sake of simplicity. When non-blank, this will override any
8 | older directives like %HTML.XHTML or %HTML.Strict.
9 | --ALLOWED--
10 | 'HTML 4.01 Transitional', 'HTML 4.01 Strict', 'XHTML 1.0 Transitional', 'XHTML 1.0 Strict', 'XHTML 1.1'
11 | --# vim: et sw=4 sts=4
12 |
--------------------------------------------------------------------------------
/js/prettify/lang-lua.js:
--------------------------------------------------------------------------------
1 | PR.registerLangHandler(PR.createSimpleLexer([["pln",/^[\t\n\r \xA0]+/,null,"\t\n\r \u00a0"],["str",/^(?:\"(?:[^\"\\]|\\[\s\S])*(?:\"|$)|\'(?:[^\'\\]|\\[\s\S])*(?:\'|$))/,null,"\"'"]],[["com",/^--(?:\[(=*)\[[\s\S]*?(?:\]\1\]|$)|[^\r\n]*)/],["str",/^\[(=*)\[[\s\S]*?(?:\]\1\]|$)/],["kwd",/^(?:and|break|do|else|elseif|end|false|for|function|if|in|local|nil|not|or|repeat|return|then|true|until|while)\b/,null],["lit",/^[+-]?(?:0x[\da-f]+|(?:(?:\.\d+|\d+(?:\.\d*)?)(?:e[+\-]?\d+)?))/i],["pln",/^[a-z_]\w*/i],
2 | ["pun",/^[^\w\t\n\r \xA0][^\w\t\n\r \xA0\"\-\+=]*/]]),["lua"]);
3 |
--------------------------------------------------------------------------------
/js/prettify/lang-wiki.js:
--------------------------------------------------------------------------------
1 | PR.registerLangHandler(PR.createSimpleLexer([["pln",/^[\t \xA0a-gi-z0-9]+/,null,"\t \u00a0abcdefgijklmnopqrstuvwxyz0123456789"],["pun",/^[=*~\^\[\]]+/,null,"=*~^[]"]],[["lang-wiki.meta",/(?:^^|\r\n?|\n)(#[a-z]+)\b/],["lit",/^(?:[A-Z][a-z][a-z0-9]+[A-Z][a-z][a-zA-Z0-9]+)\b/],["lang-",/^\{\{\{([\s\S]+?)\}\}\}/],["lang-",/^`([^\r\n`]+)`/],["str",/^https?:\/\/[^\/?#\s]*(?:\/[^?#\s]*)?(?:\?[^#\s]*)?(?:#\S*)?/i],["pln",/^(?:\r\n|[\s\S])[^#=*~^A-Zh\{`\[\r\n]*/]]),["wiki"]);
2 | PR.registerLangHandler(PR.createSimpleLexer([["kwd",/^#[a-z]+/i,null,"#"]],[]),["wiki.meta"]);
3 |
--------------------------------------------------------------------------------
/libraries/purifier/HTMLPurifier/URIScheme/nntp.php:
--------------------------------------------------------------------------------
1 | userinfo = null;
14 | $uri->query = null;
15 | return true;
16 | }
17 |
18 | }
19 |
20 | // vim: et sw=4 sts=4
21 |
--------------------------------------------------------------------------------
/libraries/purifier/HTMLPurifier/ConfigSchema/schema/Attr.IDPrefix.txt:
--------------------------------------------------------------------------------
1 | Attr.IDPrefix
2 | TYPE: string
3 | VERSION: 1.2.0
4 | DEFAULT: ''
5 | --DESCRIPTION--
6 | String to prefix to IDs. If you have no idea what IDs your pages may use,
7 | you may opt to simply add a prefix to all user-submitted ID attributes so
8 | that they are still usable, but will not conflict with core page IDs.
9 | Example: setting the directive to 'user_' will result in a user submitted
10 | 'foo' to become 'user_foo' Be sure to set %HTML.EnableAttrID to true
11 | before using this.
12 | --# vim: et sw=4 sts=4
13 |
--------------------------------------------------------------------------------
/libraries/purifier/HTMLPurifier/ConfigSchema/schema/HTML.Attr.Name.UseCDATA.txt:
--------------------------------------------------------------------------------
1 | HTML.Attr.Name.UseCDATA
2 | TYPE: bool
3 | DEFAULT: false
4 | VERSION: 4.0.0
5 | --DESCRIPTION--
6 | The W3C specification DTD defines the name attribute to be CDATA, not ID, due
7 | to limitations of DTD. In certain documents, this relaxed behavior is desired,
8 | whether it is to specify duplicate names, or to specify names that would be
9 | illegal IDs (for example, names that begin with a digit.) Set this configuration
10 | directive to true to use the relaxed parsing rules.
11 | --# vim: et sw=4 sts=4
12 |
--------------------------------------------------------------------------------
/libraries/purifier/HTMLPurifier/ConfigSchema/schema/Attr.DefaultImageAlt.txt:
--------------------------------------------------------------------------------
1 | Attr.DefaultImageAlt
2 | TYPE: string/null
3 | DEFAULT: null
4 | VERSION: 3.2.0
5 | --DESCRIPTION--
6 | This is the content of the alt tag of an image if the user had not
7 | previously specified an alt attribute. This applies to all images without
8 | a valid alt attribute, as opposed to %Attr.DefaultInvalidImageAlt, which
9 | only applies to invalid images, and overrides in the case of an invalid image.
10 | Default behavior with null is to use the basename of the src tag for the alt.
11 | --# vim: et sw=4 sts=4
12 |
--------------------------------------------------------------------------------
/.project:
--------------------------------------------------------------------------------
1 |
2 |
3 | qwench_new
4 |
5 |
6 |
7 |
8 |
9 | org.eclipse.wst.validation.validationbuilder
10 |
11 |
12 |
13 |
14 | org.eclipse.dltk.core.scriptbuilder
15 |
16 |
17 |
18 |
19 |
20 | org.eclipse.php.core.PHPNature
21 |
22 |
23 |
--------------------------------------------------------------------------------
/libraries/purifier/HTMLPurifier/AttrTransform/BdoDir.php:
--------------------------------------------------------------------------------
1 | get('Attr.DefaultTextDir');
14 | return $attr;
15 | }
16 |
17 | }
18 |
19 | // vim: et sw=4 sts=4
20 |
--------------------------------------------------------------------------------
/libraries/purifier/HTMLPurifier/ConfigSchema/schema/AutoFormat.RemoveEmpty.RemoveNbsp.txt:
--------------------------------------------------------------------------------
1 | AutoFormat.RemoveEmpty.RemoveNbsp
2 | TYPE: bool
3 | VERSION: 4.0.0
4 | DEFAULT: false
5 | --DESCRIPTION--
6 |
7 | When enabled, HTML Purifier will treat any elements that contain only
8 | non-breaking spaces as well as regular whitespace as empty, and remove
9 | them when %AutoForamt.RemoveEmpty is enabled.
10 |
11 |
12 | See %AutoFormat.RemoveEmpty.RemoveNbsp.Exceptions for a list of elements
13 | that don't have this behavior applied to them.
14 |
7 | Whether or not to permit embed tags in documents, with a number of extra
8 | security features added to prevent script execution. This is similar to
9 | what websites like MySpace do to embed tags. Embed is a proprietary
10 | element and will cause your website to stop validating. You probably want
11 | to enable this with %HTML.SafeObject.
12 | Highly experimental.
13 |
7 | This directive controls the maximum number of pixels in the width and
8 | height attributes in img tags. This is
9 | in place to prevent imagecrash attacks, disable with null at your own risk.
10 | This directive is similar to %CSS.MaxImgLength, and both should be
11 | concurrently edited, although there are
12 | subtle differences in the input format (the HTML max is an integer).
13 |
9 | Whether or not to escape the dangerous characters <, > and &
10 | as \3C, \3E and \26, respectively. This is can be safely set to false
11 | if the contents of StyleBlocks will be placed in an external stylesheet,
12 | where there is no risk of it being interpreted as HTML.
13 |
7 | If true, HTML Purifier will sort attributes by name before writing them back
8 | to the document, converting a tag like: <el b="" a="" c="" />
9 | to <el a="" b="" c="" />. This is a workaround for
10 | a bug in FCKeditor which causes it to swap attributes order, adding noise
11 | to text diffs. If you're not seeing this bug, chances are, you don't need
12 | this directive.
13 |
7 | Whether or not to permit object tags in documents, with a number of extra
8 | security features added to prevent script execution. This is similar to
9 | what websites like MySpace do to object tags. You may also want to
10 | enable %HTML.SafeEmbed for maximum interoperability with Internet Explorer,
11 | although embed tags will cause your website to stop validating.
12 | Highly experimental.
13 |
8 | Revision identifier for your custom definition specified in
9 | %HTML.DefinitionID. This serves the same purpose: uniquely identifying
10 | your custom definition, but this one does so in a chronological
11 | context: revision 3 is more up-to-date then revision 2. Thus, when
12 | this gets incremented, the cache handling is smart enough to clean
13 | up any older revisions of your definition as well as flush the
14 | cache.
15 |
16 | --# vim: et sw=4 sts=4
17 |
--------------------------------------------------------------------------------
/libraries/purifier/HTMLPurifier.func.php:
--------------------------------------------------------------------------------
1 | purify($html, $config);
21 | }
22 |
23 | // vim: et sw=4 sts=4
24 |
--------------------------------------------------------------------------------
/libraries/purifier/HTMLPurifier/AttrTransform/Background.php:
--------------------------------------------------------------------------------
1 | confiscateAttr($attr, 'background');
13 | // some validation should happen here
14 |
15 | $this->prependCSS($attr, "background-image:url($background);");
16 |
17 | return $attr;
18 |
19 | }
20 |
21 | }
22 |
23 | // vim: et sw=4 sts=4
24 |
--------------------------------------------------------------------------------
/libraries/purifier/HTMLPurifier/ConfigSchema/schema/URI.DisableExternalResources.txt:
--------------------------------------------------------------------------------
1 | URI.DisableExternalResources
2 | TYPE: bool
3 | VERSION: 1.3.0
4 | DEFAULT: false
5 | --DESCRIPTION--
6 | Disables the embedding of external resources, preventing users from
7 | embedding things like images from other hosts. This prevents access
8 | tracking (good for email viewers), bandwidth leeching, cross-site request
9 | forging, goatse.cx posting, and other nasties, but also results in a loss
10 | of end-user functionality (they can't directly post a pic they posted from
11 | Flickr anymore). Use it if you don't have a robust user-content moderation
12 | team.
13 | --# vim: et sw=4 sts=4
14 |
--------------------------------------------------------------------------------
/libraries/purifier/HTMLPurifier/ConfigSchema/schema/Core.EscapeNonASCIICharacters.txt:
--------------------------------------------------------------------------------
1 | Core.EscapeNonASCIICharacters
2 | TYPE: bool
3 | VERSION: 1.4.0
4 | DEFAULT: false
5 | --DESCRIPTION--
6 | This directive overcomes a deficiency in %Core.Encoding by blindly
7 | converting all non-ASCII characters into decimal numeric entities before
8 | converting it to its native encoding. This means that even characters that
9 | can be expressed in the non-UTF-8 encoding will be entity-ized, which can
10 | be a real downer for encodings like Big5. It also assumes that the ASCII
11 | repetoire is available, although this is the case for almost all encodings.
12 | Anyway, use UTF-8!
13 | --# vim: et sw=4 sts=4
14 |
--------------------------------------------------------------------------------
/libraries/purifier/HTMLPurifier/ConfigSchema/schema/Core.MaintainLineNumbers.txt:
--------------------------------------------------------------------------------
1 | Core.MaintainLineNumbers
2 | TYPE: bool/null
3 | VERSION: 2.0.0
4 | DEFAULT: NULL
5 | --DESCRIPTION--
6 |
7 |
8 | If true, HTML Purifier will add line number information to all tokens.
9 | This is useful when error reporting is turned on, but can result in
10 | significant performance degradation and should not be used when
11 | unnecessary. This directive must be used with the DirectLex lexer,
12 | as the DOMLex lexer does not (yet) support this functionality.
13 | If the value is null, an appropriate value will be selected based
14 | on other configuration.
15 |
16 | --# vim: et sw=4 sts=4
17 |
--------------------------------------------------------------------------------
/libraries/purifier/HTMLPurifier/ConfigSchema/schema/Attr.AllowedFrameTargets.txt:
--------------------------------------------------------------------------------
1 | Attr.AllowedFrameTargets
2 | TYPE: lookup
3 | DEFAULT: array()
4 | --DESCRIPTION--
5 | Lookup table of all allowed link frame targets. Some commonly used link
6 | targets include _blank, _self, _parent and _top. Values should be
7 | lowercase, as validation will be done in a case-sensitive manner despite
8 | W3C's recommendation. XHTML 1.0 Strict does not permit the target attribute
9 | so this directive will have no effect in that doctype. XHTML 1.1 does not
10 | enable the Target module by default, you will have to manually enable it
11 | (see the module documentation for more details.)
12 | --# vim: et sw=4 sts=4
13 |
--------------------------------------------------------------------------------
/libraries/purifier/HTMLPurifier/AttrDef/CSS/AlphaValue.php:
--------------------------------------------------------------------------------
1 | 1.0) $result = '1';
16 | return $result;
17 | }
18 |
19 | }
20 |
21 | // vim: et sw=4 sts=4
22 |
--------------------------------------------------------------------------------
/libraries/purifier/HTMLPurifier/Strategy/Composite.php:
--------------------------------------------------------------------------------
1 | strategies as $strategy) {
18 | $tokens = $strategy->execute($tokens, $config, $context);
19 | }
20 | return $tokens;
21 | }
22 |
23 | }
24 |
25 | // vim: et sw=4 sts=4
26 |
--------------------------------------------------------------------------------
/libraries/purifier/HTMLPurifier/AttrDef/HTML/FrameTarget.php:
--------------------------------------------------------------------------------
1 | valid_values === false) $this->valid_values = $config->get('Attr.AllowedFrameTargets');
16 | return parent::validate($string, $config, $context);
17 | }
18 |
19 | }
20 |
21 | // vim: et sw=4 sts=4
22 |
--------------------------------------------------------------------------------
/libraries/purifier/HTMLPurifier/ConfigSchema/schema/HTML.BlockWrapper.txt:
--------------------------------------------------------------------------------
1 | HTML.BlockWrapper
2 | TYPE: string
3 | VERSION: 1.3.0
4 | DEFAULT: 'p'
5 | --DESCRIPTION--
6 |
7 |
8 | String name of element to wrap inline elements that are inside a block
9 | context. This only occurs in the children of blockquote in strict mode.
10 |
11 |
12 | Example: by default value,
13 | <blockquote>Foo</blockquote> would become
14 | <blockquote><p>Foo</p></blockquote>.
15 | The <p> tags can be replaced with whatever you desire,
16 | as long as it is a block level element.
17 |
11 | This directive is a lookup array of elements which should have their
12 | contents removed when they are not allowed by the HTML definition.
13 | For example, the contents of a script tag are not
14 | normally shown in a document, so if script tags are to be removed,
15 | their contents should be removed to. This is opposed to a b
16 | tag, which defines some presentational changes but does not hide its
17 | contents.
18 |
8 | If left NULL, HTML Purifier will attempt to instantiate a csstidy
9 | class to use for internal cleaning. This will usually be good enough.
10 |
11 |
12 | However, for trusted user input, you can set this to false to
13 | disable cleaning. In addition, you can supply your own concrete implementation
14 | of Tidy's interface to use, although I don't know why you'd want to do that.
15 |
7 | If true, any URI munging directives like %URI.Munge
8 | will also apply to embedded resources, such as <img src="">.
9 | Be careful enabling this directive if you have a redirector script
10 | that does not use the Location HTTP header; all of your images
11 | and other embedded resources will break.
12 |
13 |
14 | Warning: It is strongly advised you use this in conjunction
15 | %URI.MungeSecretKey to mitigate the security risk of an open redirector.
16 |
17 | --# vim: et sw=4 sts=4
18 |
--------------------------------------------------------------------------------
/libraries/purifier/HTMLPurifier/ChildDef/Empty.php:
--------------------------------------------------------------------------------
1 |
8 | If HTML Purifier's style attributes set is unsatisfactory for your needs,
9 | you can overload it with your own list of tags to allow. Note that this
10 | method is subtractive: it does its job by taking away from HTML Purifier
11 | usual feature set, so you cannot add an attribute that HTML Purifier never
12 | supported in the first place.
13 |
14 |
15 | Warning: If another directive conflicts with the
16 | elements here, that directive will win and override.
17 |
7 | This parameter sets the maximum allowed length on img tags,
8 | effectively the width and height properties.
9 | Only absolute units of measurement (in, pt, pc, mm, cm) and pixels (px) are allowed. This is
10 | in place to prevent imagecrash attacks, disable with null at your own risk.
11 | This directive is similar to %HTML.MaxImgLength, and both should be
12 | concurrently edited, although there are
13 | subtle differences in the input format (the CSS max is a number with
14 | a unit).
15 |
16 | --# vim: et sw=4 sts=4
17 |
--------------------------------------------------------------------------------
/libraries/purifier/HTMLPurifier.autoload.php:
--------------------------------------------------------------------------------
1 |
8 | If HTML Purifier's attribute set is unsatisfactory, overload it!
9 | The syntax is "tag.attr" or "*.attr" for the global attributes
10 | (style, id, class, dir, lang, xml:lang).
11 |
12 |
13 | Warning: If another directive conflicts with the
14 | elements here, that directive will win and override. For
15 | example, %HTML.EnableAttrID will take precedence over *.id in this
16 | directive. You must set that directive to true before you can use
17 | IDs at all.
18 |
19 | --# vim: et sw=4 sts=4
20 |
--------------------------------------------------------------------------------
/libraries/purifier/HTMLPurifier/HTMLModule/Tidy/Strict.php:
--------------------------------------------------------------------------------
1 | content_model_type != 'strictblockquote') return parent::getChildDef($def);
17 | return new HTMLPurifier_ChildDef_StrictBlockquote($def->content_model);
18 | }
19 | }
20 |
21 | // vim: et sw=4 sts=4
22 |
--------------------------------------------------------------------------------
/libraries/purifier/HTMLPurifier/ConfigSchema/schema/Attr.EnableID.txt:
--------------------------------------------------------------------------------
1 | Attr.EnableID
2 | TYPE: bool
3 | DEFAULT: false
4 | VERSION: 1.2.0
5 | --DESCRIPTION--
6 | Allows the ID attribute in HTML. This is disabled by default due to the
7 | fact that without proper configuration user input can easily break the
8 | validation of a webpage by specifying an ID that is already on the
9 | surrounding HTML. If you don't mind throwing caution to the wind, enable
10 | this directive, but I strongly recommend you also consider blacklisting IDs
11 | you use (%Attr.IDBlacklist) or prefixing all user supplied IDs
12 | (%Attr.IDPrefix). When set to true HTML Purifier reverts to the behavior of
13 | pre-1.2.0 versions.
14 | --ALIASES--
15 | HTML.EnableAttrID
16 | --# vim: et sw=4 sts=4
17 |
--------------------------------------------------------------------------------
/libraries/purifier/HTMLPurifier/HTMLModule/CommonAttributes.php:
--------------------------------------------------------------------------------
1 | array(
9 | 0 => array('Style'),
10 | // 'xml:space' => false,
11 | 'class' => 'Class',
12 | 'id' => 'ID',
13 | 'title' => 'CDATA',
14 | ),
15 | 'Lang' => array(),
16 | 'I18N' => array(
17 | 0 => array('Lang'), // proprietary, for xml:lang/lang
18 | ),
19 | 'Common' => array(
20 | 0 => array('Core', 'I18N')
21 | )
22 | );
23 |
24 | }
25 |
26 | // vim: et sw=4 sts=4
27 |
--------------------------------------------------------------------------------
/libraries/purifier/HTMLPurifier/ConfigSchema/schema/Attr.IDPrefixLocal.txt:
--------------------------------------------------------------------------------
1 | Attr.IDPrefixLocal
2 | TYPE: string
3 | VERSION: 1.2.0
4 | DEFAULT: ''
5 | --DESCRIPTION--
6 | Temporary prefix for IDs used in conjunction with %Attr.IDPrefix. If you
7 | need to allow multiple sets of user content on web page, you may need to
8 | have a seperate prefix that changes with each iteration. This way,
9 | seperately submitted user content displayed on the same page doesn't
10 | clobber each other. Ideal values are unique identifiers for the content it
11 | represents (i.e. the id of the row in the database). Be sure to add a
12 | seperator (like an underscore) at the end. Warning: this directive will
13 | not work unless %Attr.IDPrefix is set to a non-empty value!
14 | --# vim: et sw=4 sts=4
15 |
--------------------------------------------------------------------------------
/libraries/purifier/HTMLPurifier/ConfigSchema/schema/URI.Base.txt:
--------------------------------------------------------------------------------
1 | URI.Base
2 | TYPE: string/null
3 | VERSION: 2.1.0
4 | DEFAULT: NULL
5 | --DESCRIPTION--
6 |
7 |
8 | The base URI is the URI of the document this purified HTML will be
9 | inserted into. This information is important if HTML Purifier needs
10 | to calculate absolute URIs from relative URIs, such as when %URI.MakeAbsolute
11 | is on. You may use a non-absolute URI for this value, but behavior
12 | may vary (%URI.MakeAbsolute deals nicely with both absolute and
13 | relative paths, but forwards-compatibility is not guaranteed).
14 | Warning: If set, the scheme on this URI
15 | overrides the one specified by %URI.DefaultScheme.
16 |
8 | Specifies the number of tokens the DirectLex line number tracking
9 | implementations should process before attempting to resyncronize the
10 | current line count by manually counting all previous new-lines. When
11 | at 0, this functionality is disabled. Lower values will decrease
12 | performance, and this is only strictly necessary if the counting
13 | algorithm is buggy (in which case you should report it as a bug).
14 | This has no effect when %Core.MaintainLineNumbers is disabled or DirectLex is
15 | not being used.
16 |
17 | Certain modularized doctypes (XHTML, namely), have certain modules
18 | that must be included for the doctype to be an conforming document
19 | type: put those modules here. By default, XHTML's core modules
20 | are used. You can set this to a blank array to disable core module
21 | protection, but this is not recommended.
22 |
General level of cleanliness the Tidy module should enforce.
8 | There are four allowed values:
9 |
10 |
none
11 |
No extra tidying should be done
12 |
light
13 |
Only fix elements that would be discarded otherwise due to
14 | lack of support in doctype
15 |
medium
16 |
Enforce best practices
17 |
heavy
18 |
Transform all deprecated elements and attributes to standards
19 | compliant equivalents
20 |
21 |
22 | --ALLOWED--
23 | 'none', 'light', 'medium', 'heavy'
24 | --# vim: et sw=4 sts=4
25 |
--------------------------------------------------------------------------------
/js/prettify/lang-lisp.js:
--------------------------------------------------------------------------------
1 | (function(){var a=null;
2 | PR.registerLangHandler(PR.createSimpleLexer([["opn",/^\(/,a,"("],["clo",/^\)/,a,")"],["com",/^;[^\r\n]*/,a,";"],["pln",/^[\t\n\r \xA0]+/,a,"\t\n\r \u00a0"],["str",/^\"(?:[^\"\\]|\\[\s\S])*(?:\"|$)/,a,'"']],[["kwd",/^(?:block|c[ad]+r|catch|cons|defun|do|eq|eql|equal|equalp|eval-when|flet|format|go|if|labels|lambda|let|load-time-value|locally|macrolet|multiple-value-call|nil|progn|progv|quote|require|return-from|setq|symbol-macrolet|t|tagbody|the|throw|unwind)\b/,a],["lit",/^[+\-]?(?:0x[0-9a-f]+|\d+\/\d+|(?:\.\d+|\d+(?:\.\d*)?)(?:[ed][+\-]?\d+)?)/i],["lit",
3 | /^\'(?:-*(?:\w|\\[\x21-\x7e])(?:[\w-]*|\\[\x21-\x7e])[=!?]?)?/],["pln",/^-*(?:[a-z_]|\\[\x21-\x7e])(?:[\w-]*|\\[\x21-\x7e])[=!?]?/i],["pun",/^[^\w\t\n\r \xA0()\"\\\';]+/]]),["cl","el","lisp","scm"])})()
--------------------------------------------------------------------------------
/libraries/purifier/HTMLPurifier/HTMLModule/Tidy/Name.php:
--------------------------------------------------------------------------------
1 |
7 | This directive enables aggressive pre-filter fixes HTML Purifier can
8 | perform in order to ensure that open angled-brackets do not get killed
9 | during parsing stage. Enabling this will result in two preg_replace_callback
10 | calls and at least two preg_replace calls for every HTML document parsed;
11 | if your users make very well-formed HTML, you can set this directive false.
12 | This has no effect when DirectLex is used.
13 |
14 |
15 | Notice: This directive's default turned from false to true
16 | in HTML Purifier 3.2.0.
17 |
18 | --# vim: et sw=4 sts=4
19 |
--------------------------------------------------------------------------------
/libraries/purifier/HTMLPurifier/HTMLModule/StyleAttribute.php:
--------------------------------------------------------------------------------
1 | array('style' => false), // see constructor
15 | 'Core' => array(0 => array('Style'))
16 | );
17 |
18 | public function setup($config) {
19 | $this->attr_collections['Style']['style'] = new HTMLPurifier_AttrDef_CSS();
20 | }
21 |
22 | }
23 |
24 | // vim: et sw=4 sts=4
25 |
--------------------------------------------------------------------------------
/libraries/purifier/HTMLPurifier/VarParser/Native.php:
--------------------------------------------------------------------------------
1 | evalExpression($var);
13 | }
14 |
15 | protected function evalExpression($expr) {
16 | $var = null;
17 | $result = eval("\$var = $expr;");
18 | if ($result === false) {
19 | throw new HTMLPurifier_VarParserException("Fatal error in evaluated code");
20 | }
21 | return $var;
22 | }
23 |
24 | }
25 |
26 | // vim: et sw=4 sts=4
27 |
--------------------------------------------------------------------------------
/libraries/purifier/HTMLPurifier/Strategy.php:
--------------------------------------------------------------------------------
1 |
7 | If HTML Purifier's tag set is unsatisfactory for your needs, you
8 | can overload it with your own list of tags to allow. Note that this
9 | method is subtractive: it does its job by taking away from HTML Purifier
10 | usual feature set, so you cannot add a tag that HTML Purifier never
11 | supported in the first place (like embed, form or head). If you
12 | change this, you probably also want to change %HTML.AllowedAttributes.
13 |
14 |
15 | Warning: If another directive conflicts with the
16 | elements here, that directive will win and override.
17 |
8 | A doctype comes with a set of usual modules to use. Without having
9 | to mucking about with the doctypes, you can quickly activate or
10 | disable these modules by specifying which modules you wish to allow
11 | with this directive. This is most useful for unit testing specific
12 | modules, although end users may find it useful for their own ends.
13 |
14 |
15 | If you specify a module that does not exist, the manager will silently
16 | fail to use it, so be careful! User-defined modules are not affected
17 | by this directive. Modules defined in %HTML.CoreModules are not
18 | affected by this directive.
19 |
20 | --# vim: et sw=4 sts=4
21 |
--------------------------------------------------------------------------------
/libraries/purifier/HTMLPurifier/DefinitionCache/Null.php:
--------------------------------------------------------------------------------
1 | feature that automatically resolves all
11 | entities), making it pretty useless for anything except the most I18N-blind
12 | applications, although %Core.EscapeNonASCIICharacters offers fixes this
13 | trouble with another tradeoff. This directive only accepts ISO-8859-1 if
14 | iconv is not enabled.
15 | --# vim: et sw=4 sts=4
16 |
--------------------------------------------------------------------------------
/libraries/purifier/HTMLPurifier/ConfigSchema/schema/HTML.ForbiddenElements.txt:
--------------------------------------------------------------------------------
1 | HTML.ForbiddenElements
2 | TYPE: lookup
3 | VERSION: 3.1.0
4 | DEFAULT: array()
5 | --DESCRIPTION--
6 |
7 | This was, perhaps, the most requested feature ever in HTML
8 | Purifier. Please don't abuse it! This is the logical inverse of
9 | %HTML.AllowedElements, and it will override that directive, or any
10 | other directive.
11 |
12 |
13 | If possible, %HTML.Allowed is recommended over this directive, because it
14 | can sometimes be difficult to tell whether or not you've forbidden all of
15 | the behavior you would like to disallow. If you forbid img
16 | with the expectation of preventing images on your site, you'll be in for
17 | a nasty surprise when people start using the background-image
18 | CSS property.
19 |
20 | --# vim: et sw=4 sts=4
21 |
--------------------------------------------------------------------------------
/libraries/purifier/HTMLPurifier/PropertyListIterator.php:
--------------------------------------------------------------------------------
1 | l = strlen($filter);
19 | $this->filter = $filter;
20 | }
21 |
22 | public function accept() {
23 | $key = $this->getInnerIterator()->key();
24 | if( strncmp($key, $this->filter, $this->l) !== 0 ) {
25 | return false;
26 | }
27 | return true;
28 | }
29 |
30 | }
31 |
32 | // vim: et sw=4 sts=4
33 |
--------------------------------------------------------------------------------
/db/3.txt:
--------------------------------------------------------------------------------
1 | CREATE TABLE `activities` (
2 | `id` INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
3 | `userid` INTEGER UNSIGNED NOT NULL,
4 | `activity` INTEGER UNSIGNED NOT NULL,
5 | `points` INTEGER NOT NULL,
6 | PRIMARY KEY (`id`)
7 | )
8 | ENGINE = MyISAM
9 | CHARACTER SET utf8 COLLATE utf8_general_ci;
10 |
11 |
12 | ALTER TABLE `questions` ADD COLUMN `accepted` INTEGER UNSIGNED NOT NULL DEFAULT 0 AFTER `votes`,
13 | ADD COLUMN `answers` INTEGER UNSIGNED NOT NULL DEFAULT 0 AFTER `accepted`,
14 | ADD COLUMN `kb` INTEGER UNSIGNED NOT NULL DEFAULT 0 AFTER `answers`;
15 |
16 | ALTER TABLE `activities` MODIFY COLUMN `activity` VARCHAR(255) NOT NULL DEFAULT '';
17 |
18 | ALTER TABLE `activities` ADD COLUMN `created` DATETIME NOT NULL AFTER `points`;
19 | ALTER TABLE `activities` ADD COLUMN `activityid` INTEGER UNSIGNED NOT NULL AFTER `created`;
20 |
21 | ALTER TABLE `users` MODIFY COLUMN `points` INTEGER NOT NULL DEFAULT 0;
22 |
--------------------------------------------------------------------------------
/js/prettify/lang-css.js:
--------------------------------------------------------------------------------
1 | PR.registerLangHandler(PR.createSimpleLexer([["pln",/^[ \t\r\n\f]+/,null," \t\r\n\u000c"]],[["str",/^\"(?:[^\n\r\f\\\"]|\\(?:\r\n?|\n|\f)|\\[\s\S])*\"/,null],["str",/^\'(?:[^\n\r\f\\\']|\\(?:\r\n?|\n|\f)|\\[\s\S])*\'/,null],["lang-css-str",/^url\(([^\)\"\']*)\)/i],["kwd",/^(?:url|rgb|\!important|@import|@page|@media|@charset|inherit)(?=[^\-\w]|$)/i,null],["lang-css-kw",/^(-?(?:[_a-z]|(?:\\[0-9a-f]+ ?))(?:[_a-z0-9\-]|\\(?:\\[0-9a-f]+ ?))*)\s*:/i],["com",/^\/\*[^*]*\*+(?:[^\/*][^*]*\*+)*\//],["com",
2 | /^(?:'.
34 | '';
35 |
36 | }
37 | }
38 |
39 | // vim: et sw=4 sts=4
40 |
--------------------------------------------------------------------------------
/libraries/template.class.php:
--------------------------------------------------------------------------------
1 | _controller = $controller;
10 | $this->_action = $action;
11 | }
12 |
13 | /** Set Variables **/
14 |
15 | function set($name,$value) {
16 | $this->variables[$name] = $value;
17 | }
18 |
19 | function overrideController($controller) {
20 | $this->_controller = $controller;
21 | }
22 |
23 | function overrideAction($action) {
24 | $this->_action = $action;
25 | }
26 |
27 | /** Display Template **/
28 |
29 | function render($doNotRenderHeader = 0) {
30 |
31 | extract($this->variables);
32 |
33 | if ($doNotRenderHeader == 0) {
34 |
35 | if (file_exists(ROOT . DS . 'views' . DS . $this->_controller . DS . 'header.php')) {
36 | include (ROOT . DS . 'views' . DS . $this->_controller . DS . 'header.php');
37 | } else {
38 | include (ROOT . DS . 'views' . DS . 'header.php');
39 | }
40 | }
41 |
42 | if (file_exists(ROOT . DS . 'views' . DS . $this->_controller . DS . $this->_action . '.php')) {
43 | include (ROOT . DS . 'views' . DS . $this->_controller . DS . $this->_action . '.php');
44 | }
45 |
46 | if ($doNotRenderHeader == 0) {
47 | if (file_exists(ROOT . DS . DS . $this->_controller . DS . 'footer.php')) {
48 | include (ROOT . DS . DS . $this->_controller . DS . 'footer.php');
49 | } else {
50 | include (ROOT . DS . 'views' . DS . 'footer.php');
51 | }
52 | }
53 | exit();
54 | }
55 |
56 | }
--------------------------------------------------------------------------------
/libraries/purifier/HTMLPurifier/AttrDef/CSS/Length.php:
--------------------------------------------------------------------------------
1 | min = $min !== null ? HTMLPurifier_Length::make($min) : null;
17 | $this->max = $max !== null ? HTMLPurifier_Length::make($max) : null;
18 | }
19 |
20 | public function validate($string, $config, $context) {
21 | $string = $this->parseCDATA($string);
22 |
23 | // Optimizations
24 | if ($string === '') return false;
25 | if ($string === '0') return '0';
26 | if (strlen($string) === 1) return false;
27 |
28 | $length = HTMLPurifier_Length::make($string);
29 | if (!$length->isValid()) return false;
30 |
31 | if ($this->min) {
32 | $c = $length->compareTo($this->min);
33 | if ($c === false) return false;
34 | if ($c < 0) return false;
35 | }
36 | if ($this->max) {
37 | $c = $length->compareTo($this->max);
38 | if ($c === false) return false;
39 | if ($c > 0) return false;
40 | }
41 |
42 | return $length->toString();
43 | }
44 |
45 | }
46 |
47 | // vim: et sw=4 sts=4
48 |
--------------------------------------------------------------------------------
/libraries/purifier/HTMLPurifier/DefinitionCache/Decorator/Memory.php:
--------------------------------------------------------------------------------
1 | definitions[$this->generateKey($config)] = $def;
22 | return $status;
23 | }
24 |
25 | public function set($def, $config) {
26 | $status = parent::set($def, $config);
27 | if ($status) $this->definitions[$this->generateKey($config)] = $def;
28 | return $status;
29 | }
30 |
31 | public function replace($def, $config) {
32 | $status = parent::replace($def, $config);
33 | if ($status) $this->definitions[$this->generateKey($config)] = $def;
34 | return $status;
35 | }
36 |
37 | public function get($config) {
38 | $key = $this->generateKey($config);
39 | if (isset($this->definitions[$key])) return $this->definitions[$key];
40 | $this->definitions[$key] = parent::get($config);
41 | return $this->definitions[$key];
42 | }
43 |
44 | }
45 |
46 | // vim: et sw=4 sts=4
47 |
--------------------------------------------------------------------------------
/libraries/purifier/HTMLPurifier/Injector/PurifierLinkify.php:
--------------------------------------------------------------------------------
1 | array('href'));
13 |
14 | public function prepare($config, $context) {
15 | $this->docURL = $config->get('AutoFormat.PurifierLinkify.DocURL');
16 | return parent::prepare($config, $context);
17 | }
18 |
19 | public function handleText(&$token) {
20 | if (!$this->allowsElement('a')) return;
21 | if (strpos($token->data, '%') === false) return;
22 |
23 | $bits = preg_split('#%([a-z0-9]+\.[a-z0-9]+)#Si', $token->data, -1, PREG_SPLIT_DELIM_CAPTURE);
24 | $token = array();
25 |
26 | // $i = index
27 | // $c = count
28 | // $l = is link
29 | for ($i = 0, $c = count($bits), $l = false; $i < $c; $i++, $l = !$l) {
30 | if (!$l) {
31 | if ($bits[$i] === '') continue;
32 | $token[] = new HTMLPurifier_Token_Text($bits[$i]);
33 | } else {
34 | $token[] = new HTMLPurifier_Token_Start('a',
35 | array('href' => str_replace('%s', $bits[$i], $this->docURL)));
36 | $token[] = new HTMLPurifier_Token_Text('%' . $bits[$i]);
37 | $token[] = new HTMLPurifier_Token_End('a');
38 | }
39 | }
40 |
41 | }
42 |
43 | }
44 |
45 | // vim: et sw=4 sts=4
46 |
--------------------------------------------------------------------------------
/js/prettify/lang-sql.js:
--------------------------------------------------------------------------------
1 | PR.registerLangHandler(PR.createSimpleLexer([["pln",/^[\t\n\r \xA0]+/,null,"\t\n\r \u00a0"],["str",/^(?:"(?:[^\"\\]|\\.)*"|'(?:[^\'\\]|\\.)*')/,null,"\"'"]],[["com",/^(?:--[^\r\n]*|\/\*[\s\S]*?(?:\*\/|$))/],["kwd",/^(?:ADD|ALL|ALTER|AND|ANY|AS|ASC|AUTHORIZATION|BACKUP|BEGIN|BETWEEN|BREAK|BROWSE|BULK|BY|CASCADE|CASE|CHECK|CHECKPOINT|CLOSE|CLUSTERED|COALESCE|COLLATE|COLUMN|COMMIT|COMPUTE|CONSTRAINT|CONTAINS|CONTAINSTABLE|CONTINUE|CONVERT|CREATE|CROSS|CURRENT|CURRENT_DATE|CURRENT_TIME|CURRENT_TIMESTAMP|CURRENT_USER|CURSOR|DATABASE|DBCC|DEALLOCATE|DECLARE|DEFAULT|DELETE|DENY|DESC|DISK|DISTINCT|DISTRIBUTED|DOUBLE|DROP|DUMMY|DUMP|ELSE|END|ERRLVL|ESCAPE|EXCEPT|EXEC|EXECUTE|EXISTS|EXIT|FETCH|FILE|FILLFACTOR|FOR|FOREIGN|FREETEXT|FREETEXTTABLE|FROM|FULL|FUNCTION|GOTO|GRANT|GROUP|HAVING|HOLDLOCK|IDENTITY|IDENTITYCOL|IDENTITY_INSERT|IF|IN|INDEX|INNER|INSERT|INTERSECT|INTO|IS|JOIN|KEY|KILL|LEFT|LIKE|LINENO|LOAD|NATIONAL|NOCHECK|NONCLUSTERED|NOT|NULL|NULLIF|OF|OFF|OFFSETS|ON|OPEN|OPENDATASOURCE|OPENQUERY|OPENROWSET|OPENXML|OPTION|OR|ORDER|OUTER|OVER|PERCENT|PLAN|PRECISION|PRIMARY|PRINT|PROC|PROCEDURE|PUBLIC|RAISERROR|READ|READTEXT|RECONFIGURE|REFERENCES|REPLICATION|RESTORE|RESTRICT|RETURN|REVOKE|RIGHT|ROLLBACK|ROWCOUNT|ROWGUIDCOL|RULE|SAVE|SCHEMA|SELECT|SESSION_USER|SET|SETUSER|SHUTDOWN|SOME|STATISTICS|SYSTEM_USER|TABLE|TEXTSIZE|THEN|TO|TOP|TRAN|TRANSACTION|TRIGGER|TRUNCATE|TSEQUAL|UNION|UNIQUE|UPDATE|UPDATETEXT|USE|USER|VALUES|VARYING|VIEW|WAITFOR|WHEN|WHERE|WHILE|WITH|WRITETEXT)(?=[^\w-]|$)/i,
2 | null],["lit",/^[+-]?(?:0x[\da-f]+|(?:(?:\.\d+|\d+(?:\.\d*)?)(?:e[+\-]?\d+)?))/i],["pln",/^[a-z_][\w-]*/i],["pun",/^[^\w\t\n\r \xA0]+/]]),["sql"]);
3 |
--------------------------------------------------------------------------------
/libraries/purifier/HTMLPurifier/ChildDef.php:
--------------------------------------------------------------------------------
1 | elements;
33 | }
34 |
35 | /**
36 | * Validates nodes according to definition and returns modification.
37 | *
38 | * @param $tokens_of_children Array of HTMLPurifier_Token
39 | * @param $config HTMLPurifier_Config object
40 | * @param $context HTMLPurifier_Context object
41 | * @return bool true to leave nodes as is
42 | * @return bool false to remove parent node
43 | * @return array of replacement child tokens
44 | */
45 | abstract public function validateChildren($tokens_of_children, $config, $context);
46 | }
47 |
48 | // vim: et sw=4 sts=4
49 |
--------------------------------------------------------------------------------
/libraries/purifier/HTMLPurifier/URIScheme/ftp.php:
--------------------------------------------------------------------------------
1 | query = null;
15 |
16 | // typecode check
17 | $semicolon_pos = strrpos($uri->path, ';'); // reverse
18 | if ($semicolon_pos !== false) {
19 | $type = substr($uri->path, $semicolon_pos + 1); // no semicolon
20 | $uri->path = substr($uri->path, 0, $semicolon_pos);
21 | $type_ret = '';
22 | if (strpos($type, '=') !== false) {
23 | // figure out whether or not the declaration is correct
24 | list($key, $typecode) = explode('=', $type, 2);
25 | if ($key !== 'type') {
26 | // invalid key, tack it back on encoded
27 | $uri->path .= '%3B' . $type;
28 | } elseif ($typecode === 'a' || $typecode === 'i' || $typecode === 'd') {
29 | $type_ret = ";type=$typecode";
30 | }
31 | } else {
32 | $uri->path .= '%3B' . $type;
33 | }
34 | $uri->path = str_replace(';', '%3B', $uri->path);
35 | $uri->path .= $type_ret;
36 | }
37 |
38 | return true;
39 | }
40 |
41 | }
42 |
43 | // vim: et sw=4 sts=4
44 |
--------------------------------------------------------------------------------
/libraries/purifier/HTMLPurifier/Injector/Linkify.php:
--------------------------------------------------------------------------------
1 | array('href'));
11 |
12 | public function handleText(&$token) {
13 | if (!$this->allowsElement('a')) return;
14 |
15 | if (strpos($token->data, '://') === false) {
16 | // our really quick heuristic failed, abort
17 | // this may not work so well if we want to match things like
18 | // "google.com", but then again, most people don't
19 | return;
20 | }
21 |
22 | // there is/are URL(s). Let's split the string:
23 | // Note: this regex is extremely permissive
24 | $bits = preg_split('#((?:https?|ftp)://[^\s\'"<>()]+)#S', $token->data, -1, PREG_SPLIT_DELIM_CAPTURE);
25 |
26 | $token = array();
27 |
28 | // $i = index
29 | // $c = count
30 | // $l = is link
31 | for ($i = 0, $c = count($bits), $l = false; $i < $c; $i++, $l = !$l) {
32 | if (!$l) {
33 | if ($bits[$i] === '') continue;
34 | $token[] = new HTMLPurifier_Token_Text($bits[$i]);
35 | } else {
36 | $token[] = new HTMLPurifier_Token_Start('a', array('href' => $bits[$i]));
37 | $token[] = new HTMLPurifier_Token_Text($bits[$i]);
38 | $token[] = new HTMLPurifier_Token_End('a');
39 | }
40 | }
41 |
42 | }
43 |
44 | }
45 |
46 | // vim: et sw=4 sts=4
47 |
--------------------------------------------------------------------------------
/libraries/purifier/HTMLPurifier/AttrDef/HTML/LinkTypes.php:
--------------------------------------------------------------------------------
1 | 'AllowedRel',
18 | 'rev' => 'AllowedRev'
19 | );
20 | if (!isset($configLookup[$name])) {
21 | trigger_error('Unrecognized attribute name for link '.
22 | 'relationship.', E_USER_ERROR);
23 | return;
24 | }
25 | $this->name = $configLookup[$name];
26 | }
27 |
28 | public function validate($string, $config, $context) {
29 |
30 | $allowed = $config->get('Attr.' . $this->name);
31 | if (empty($allowed)) return false;
32 |
33 | $string = $this->parseCDATA($string);
34 | $parts = explode(' ', $string);
35 |
36 | // lookup to prevent duplicates
37 | $ret_lookup = array();
38 | foreach ($parts as $part) {
39 | $part = strtolower(trim($part));
40 | if (!isset($allowed[$part])) continue;
41 | $ret_lookup[$part] = true;
42 | }
43 |
44 | if (empty($ret_lookup)) return false;
45 | $string = implode(' ', array_keys($ret_lookup));
46 |
47 | return $string;
48 |
49 | }
50 |
51 | }
52 |
53 | // vim: et sw=4 sts=4
54 |
--------------------------------------------------------------------------------
/libraries/purifier/HTMLPurifier/Doctype.php:
--------------------------------------------------------------------------------
1 | renderDoctype.
7 | * If structure changes, please update that function.
8 | */
9 | class HTMLPurifier_Doctype
10 | {
11 | /**
12 | * Full name of doctype
13 | */
14 | public $name;
15 |
16 | /**
17 | * List of standard modules (string identifiers or literal objects)
18 | * that this doctype uses
19 | */
20 | public $modules = array();
21 |
22 | /**
23 | * List of modules to use for tidying up code
24 | */
25 | public $tidyModules = array();
26 |
27 | /**
28 | * Is the language derived from XML (i.e. XHTML)?
29 | */
30 | public $xml = true;
31 |
32 | /**
33 | * List of aliases for this doctype
34 | */
35 | public $aliases = array();
36 |
37 | /**
38 | * Public DTD identifier
39 | */
40 | public $dtdPublic;
41 |
42 | /**
43 | * System DTD identifier
44 | */
45 | public $dtdSystem;
46 |
47 | public function __construct($name = null, $xml = true, $modules = array(),
48 | $tidyModules = array(), $aliases = array(), $dtd_public = null, $dtd_system = null
49 | ) {
50 | $this->name = $name;
51 | $this->xml = $xml;
52 | $this->modules = $modules;
53 | $this->tidyModules = $tidyModules;
54 | $this->aliases = $aliases;
55 | $this->dtdPublic = $dtd_public;
56 | $this->dtdSystem = $dtd_system;
57 | }
58 | }
59 |
60 | // vim: et sw=4 sts=4
61 |
--------------------------------------------------------------------------------
/views/users/register.php:
--------------------------------------------------------------------------------
1 |
2 |
44 |
45 |
--------------------------------------------------------------------------------
/libraries/purifier/HTMLPurifier/DefinitionCache/Decorator.php:
--------------------------------------------------------------------------------
1 | copy();
19 | // reference is necessary for mocks in PHP 4
20 | $decorator->cache =& $cache;
21 | $decorator->type = $cache->type;
22 | return $decorator;
23 | }
24 |
25 | /**
26 | * Cross-compatible clone substitute
27 | */
28 | public function copy() {
29 | return new HTMLPurifier_DefinitionCache_Decorator();
30 | }
31 |
32 | public function add($def, $config) {
33 | return $this->cache->add($def, $config);
34 | }
35 |
36 | public function set($def, $config) {
37 | return $this->cache->set($def, $config);
38 | }
39 |
40 | public function replace($def, $config) {
41 | return $this->cache->replace($def, $config);
42 | }
43 |
44 | public function get($config) {
45 | return $this->cache->get($config);
46 | }
47 |
48 | public function remove($config) {
49 | return $this->cache->remove($config);
50 | }
51 |
52 | public function flush($config) {
53 | return $this->cache->flush($config);
54 | }
55 |
56 | public function cleanup($config) {
57 | return $this->cache->cleanup($config);
58 | }
59 |
60 | }
61 |
62 | // vim: et sw=4 sts=4
63 |
--------------------------------------------------------------------------------
/libraries/purifier/HTMLPurifier/AttrTransform/EnumToCSS.php:
--------------------------------------------------------------------------------
1 | attr = $attr;
33 | $this->enumToCSS = $enum_to_css;
34 | $this->caseSensitive = (bool) $case_sensitive;
35 | }
36 |
37 | public function transform($attr, $config, $context) {
38 |
39 | if (!isset($attr[$this->attr])) return $attr;
40 |
41 | $value = trim($attr[$this->attr]);
42 | unset($attr[$this->attr]);
43 |
44 | if (!$this->caseSensitive) $value = strtolower($value);
45 |
46 | if (!isset($this->enumToCSS[$value])) {
47 | return $attr;
48 | }
49 |
50 | $this->prependCSS($attr, $this->enumToCSS[$value]);
51 |
52 | return $attr;
53 |
54 | }
55 |
56 | }
57 |
58 | // vim: et sw=4 sts=4
59 |
--------------------------------------------------------------------------------
/js/prettify/lang-vb.js:
--------------------------------------------------------------------------------
1 | PR.registerLangHandler(PR.createSimpleLexer([["pln",/^[\t\n\r \xA0\u2028\u2029]+/,null,"\t\n\r \u00a0\u2028\u2029"],["str",/^(?:[\"\u201C\u201D](?:[^\"\u201C\u201D]|[\"\u201C\u201D]{2})(?:[\"\u201C\u201D]c|$)|[\"\u201C\u201D](?:[^\"\u201C\u201D]|[\"\u201C\u201D]{2})*(?:[\"\u201C\u201D]|$))/i,null,'"\u201c\u201d'],["com",/^[\'\u2018\u2019][^\r\n\u2028\u2029]*/,null,"'\u2018\u2019"]],[["kwd",/^(?:AddHandler|AddressOf|Alias|And|AndAlso|Ansi|As|Assembly|Auto|Boolean|ByRef|Byte|ByVal|Call|Case|Catch|CBool|CByte|CChar|CDate|CDbl|CDec|Char|CInt|Class|CLng|CObj|Const|CShort|CSng|CStr|CType|Date|Decimal|Declare|Default|Delegate|Dim|DirectCast|Do|Double|Each|Else|ElseIf|End|EndIf|Enum|Erase|Error|Event|Exit|Finally|For|Friend|Function|Get|GetType|GoSub|GoTo|Handles|If|Implements|Imports|In|Inherits|Integer|Interface|Is|Let|Lib|Like|Long|Loop|Me|Mod|Module|MustInherit|MustOverride|MyBase|MyClass|Namespace|New|Next|Not|NotInheritable|NotOverridable|Object|On|Option|Optional|Or|OrElse|Overloads|Overridable|Overrides|ParamArray|Preserve|Private|Property|Protected|Public|RaiseEvent|ReadOnly|ReDim|RemoveHandler|Resume|Return|Select|Set|Shadows|Shared|Short|Single|Static|Step|Stop|String|Structure|Sub|SyncLock|Then|Throw|To|Try|TypeOf|Unicode|Until|Variant|Wend|When|While|With|WithEvents|WriteOnly|Xor|EndIf|GoSub|Let|Variant|Wend)\b/i,
2 | null],["com",/^REM[^\r\n\u2028\u2029]*/i],["lit",/^(?:True\b|False\b|Nothing\b|\d+(?:E[+\-]?\d+[FRD]?|[FRDSIL])?|(?:&H[0-9A-F]+|&O[0-7]+)[SIL]?|\d*\.\d+(?:E[+\-]?\d+)?[FRD]?|#\s+(?:\d+[\-\/]\d+[\-\/]\d+(?:\s+\d+:\d+(?::\d+)?(\s*(?:AM|PM))?)?|\d+:\d+(?::\d+)?(\s*(?:AM|PM))?)\s+#)/i],["pln",/^(?:(?:[a-z]|_\w)\w*|\[(?:[a-z]|_\w)\w*\])/i],["pun",/^[^\w\t\n\r \"\'\[\]\xA0\u2018\u2019\u201C\u201D\u2028\u2029]+/],["pun",/^(?:\[|\])/]]),["vb","vbs"]);
3 |
--------------------------------------------------------------------------------
/libraries/purifier/HTMLPurifier/ChildDef/Chameleon.php:
--------------------------------------------------------------------------------
1 | inline = new HTMLPurifier_ChildDef_Optional($inline);
33 | $this->block = new HTMLPurifier_ChildDef_Optional($block);
34 | $this->elements = $this->block->elements;
35 | }
36 |
37 | public function validateChildren($tokens_of_children, $config, $context) {
38 | if ($context->get('IsInline') === false) {
39 | return $this->block->validateChildren(
40 | $tokens_of_children, $config, $context);
41 | } else {
42 | return $this->inline->validateChildren(
43 | $tokens_of_children, $config, $context);
44 | }
45 | }
46 | }
47 |
48 | // vim: et sw=4 sts=4
49 |
--------------------------------------------------------------------------------
/index.php:
--------------------------------------------------------------------------------
1 | render($noheader);
64 | }
--------------------------------------------------------------------------------
/libraries/purifier/HTMLPurifier/IDAccumulator.php:
--------------------------------------------------------------------------------
1 | load($config->get('Attr.IDBlacklist'));
27 | return $id_accumulator;
28 | }
29 |
30 | /**
31 | * Add an ID to the lookup table.
32 | * @param $id ID to be added.
33 | * @return Bool status, true if success, false if there's a dupe
34 | */
35 | public function add($id) {
36 | if (isset($this->ids[$id])) return false;
37 | return $this->ids[$id] = true;
38 | }
39 |
40 | /**
41 | * Load a list of IDs into the lookup table
42 | * @param $array_of_ids Array of IDs to load
43 | * @note This function doesn't care about duplicates
44 | */
45 | public function load($array_of_ids) {
46 | foreach ($array_of_ids as $id) {
47 | $this->ids[$id] = true;
48 | }
49 | }
50 |
51 | }
52 |
53 | // vim: et sw=4 sts=4
54 |
--------------------------------------------------------------------------------