├── .gitignore ├── LICENSE.txt ├── README.md ├── admin ├── assets │ ├── css │ │ ├── base.css │ │ ├── login.css │ │ └── style.css │ └── images │ │ ├── addarticle.jpg │ │ ├── addchallenge2.PNG │ │ ├── addclass.png │ │ ├── adduser.png │ │ ├── articlemanager.jpg │ │ ├── challengemanager.jpg │ │ ├── configuration.jpg │ │ ├── login-sprite.png │ │ ├── manageclass.png │ │ ├── usermanager.jpg │ │ └── whiteGradient.png ├── controller │ ├── class.AddArticleController.php │ ├── class.AddChallengeController.php │ ├── class.AddClassController.php │ ├── class.AddUserController.php │ ├── class.ArticleManagerController.php │ ├── class.BackendController.php │ ├── class.ChallengeManagerController.php │ ├── class.ClassChallengesController.php │ ├── class.ClassManagerController.php │ ├── class.ClassMembershipsController.php │ ├── class.DashboardController.php │ ├── class.DownloadController.php │ ├── class.EditArticleController.php │ ├── class.EditChallengeController.php │ ├── class.EditCodeController.php │ ├── class.EditUserController.php │ ├── class.HackademicBackendController.php │ ├── class.LoginController.php │ ├── class.LogoutController.php │ ├── class.MenuController.php │ ├── class.ScoringRulesController.php │ ├── class.ShowClassController.php │ └── class.UserManagerController.php ├── index.php ├── model │ ├── class.ArticleBackend.php │ ├── class.ChallengeBackend.php │ ├── class.ClassChallenges.php │ ├── class.ClassMemberships.php │ ├── class.Classes.php │ ├── class.ScoringRuleBackend.php │ └── class.UserChallenges.php ├── pages │ ├── addarticle.php │ ├── addchallenge.php │ ├── addclass.php │ ├── adduser.php │ ├── articlemanager.php │ ├── challengemanager.php │ ├── classchallenges.php │ ├── classmemberships.php │ ├── dashboard.php │ ├── download.php │ ├── editarticle.php │ ├── editchallenge.php │ ├── editcode.php │ ├── edituser.php │ ├── login.php │ ├── logout.php │ ├── manageclass.php │ ├── scoringrules.php │ ├── showclass.php │ └── usermanager.php └── view │ ├── _footer.tpl │ ├── _header.tpl │ ├── _pagination.tpl │ ├── _usermessage.tpl │ ├── addchallenge.tpl │ ├── addclass.tpl │ ├── adduser.tpl │ ├── admin_login.tpl │ ├── articlemanager.tpl │ ├── challengemanager.tpl │ ├── classchallenges.tpl │ ├── classmanager.tpl │ ├── classmembership.tpl │ ├── dashboard.tpl │ ├── editarticle.tpl │ ├── editchallenge.tpl │ ├── editcode.tpl │ ├── editor.tpl │ ├── edituser.tpl │ ├── scoringrules.tpl │ ├── showclass.tpl │ └── usermanager.tpl ├── assets ├── css │ ├── base.css │ ├── pagination.css │ └── style.css └── images │ ├── favicon.png │ ├── logo.png │ └── owasp.png ├── behat.yml ├── challenges ├── Example │ ├── example.xml │ └── index.php ├── ch001 │ ├── ch001.xml │ ├── index.php │ ├── logo2.gif │ └── main │ │ ├── Diaxirisths.php │ │ ├── Pubpro.htm │ │ ├── Sociability.htm │ │ ├── VBanner.php │ │ ├── ajv_home_page.htm │ │ ├── banner.gif │ │ ├── expa.htm │ │ ├── index.php │ │ ├── mails.php │ │ ├── main.htm │ │ └── secret_area_ │ │ ├── mails.gif │ │ └── mails.txt ├── ch002 │ ├── ch002.css │ ├── ch002.xml │ └── index.php ├── ch003 │ ├── ch003.xml │ ├── index.php │ └── xssme1.png ├── ch004 │ ├── ch004.xml │ ├── index.php │ └── xssme2.png ├── ch005 │ ├── ch005.xml │ ├── index.php │ └── p0wnb.png ├── ch006 │ ├── ch006.xml │ └── index.php ├── ch007 │ ├── ch007.php │ ├── ch007.xml │ ├── index.php │ └── index_files │ │ ├── background.jpg │ │ ├── lastlogin.txt │ │ └── logo.png ├── ch008 │ ├── b64.txt │ ├── ch008.xml │ ├── index.php │ └── l7s.png ├── ch009 │ ├── adminpanel.php │ ├── ch009.xml │ ├── index.php │ ├── sUpErDuPErL33T.txt │ ├── slagoff.png │ └── tyj0rL.php ├── ch010 │ ├── ch010.xml │ ├── index.php │ └── ninja_eyes.png ├── ch011 │ ├── __MACOSX │ │ └── files │ │ │ ├── ciphertext.txt │ │ │ └── frequency.jpg │ ├── ch011.xml │ ├── css │ │ └── main.css │ ├── files │ │ ├── ciphertext.txt │ │ └── frequency.jpg │ └── index.php ├── ch012 │ ├── __MACOSX │ │ └── files │ │ │ └── radar.png │ ├── ch012.xml │ ├── css │ │ └── main.css │ ├── files │ │ └── radar.png │ └── index.php ├── ch013 │ ├── __MACOSX │ │ ├── images │ │ │ ├── .DS_Store │ │ │ ├── cascade_nmac.png │ │ │ └── nmac.jpg │ │ └── js │ │ │ └── jquery-2.1.1.min.js │ ├── ch013.xml │ ├── css │ │ └── main.css │ ├── images │ │ ├── .DS_Store │ │ ├── cascade_nmac.png │ │ └── nmac.jpg │ ├── index.php │ └── js │ │ ├── jquery-2.1.1.min.js │ │ ├── sha1.js │ │ └── utf8.js ├── ch014 │ ├── ch014.xml │ ├── css │ │ └── main.css │ └── index.php ├── ch015 │ ├── __MACOSX │ │ └── files │ │ │ └── sanity_check.txt │ ├── ch015.xml │ ├── css │ │ └── main.css │ ├── files │ │ └── sanity_check.txt │ └── index.php ├── ch016 │ ├── ch016.xml │ ├── css │ │ └── main.css │ └── index.php ├── ch017 │ ├── ch017.xml │ ├── css │ │ ├── main.css │ │ └── main.css~ │ └── index.php ├── ch018 │ ├── ch018.xml │ ├── css │ │ ├── main.css │ │ └── main.css~ │ └── index.php ├── ch020 │ ├── ch020.xml │ ├── css │ │ └── main.css │ └── index.php ├── cookiEng │ ├── cookiEng.xml │ ├── guns.jpg │ ├── index.php │ ├── t0psec.php │ └── test │ │ └── testoutput │ │ └── ESAPI_logging_file_test ├── example.zip ├── index.php └── izon │ ├── LICENSE │ ├── README.md │ ├── config.inc.php │ ├── css │ ├── bootstrap-responsive.css │ ├── bootstrap-responsive.min.css │ ├── bootstrap.css │ └── bootstrap.min.css │ ├── img │ ├── favicon.ico │ ├── glyphicons-halflings-white.png │ ├── glyphicons-halflings.png │ └── izon.png │ ├── index.php │ ├── izon.xml │ ├── js │ ├── bootstrap.js │ ├── bootstrap.min.js │ └── obfuscate.php │ ├── login.php │ ├── logout.php │ └── otp.php ├── composer.json ├── controller ├── class.ChallengeListController.php ├── class.ChallengeMenuController.php ├── class.ChallengeMonitorController.php ├── class.ForgotPasswordController.php ├── class.FrontendMenuController.php ├── class.HackademicController.php ├── class.LandingPageController.php ├── class.LoginController.php ├── class.LogoutController.php ├── class.MainLoginController.php ├── class.ProgressReportController.php ├── class.RankingsController.php ├── class.ReadArticleController.php ├── class.RegisterUserController.php ├── class.ResetPasswordController.php ├── class.ShowChallengeController.php ├── class.TryChallengeController.php └── class.UserMenuController.php ├── esapi ├── ESAPI.xml ├── class.Esapi_Utils.php ├── impl │ ├── class.Encoder.php │ ├── class.HTTPUtilities.php │ └── class.Randomizer.php ├── lib │ ├── apache-log4php │ │ ├── site │ │ │ ├── apidocs │ │ │ │ ├── blank.html │ │ │ │ ├── classtrees_log4php.html │ │ │ │ ├── elementindex.html │ │ │ │ ├── elementindex_log4php.html │ │ │ │ ├── errors.html │ │ │ │ ├── index.html │ │ │ │ ├── li_log4php.html │ │ │ │ ├── log4php │ │ │ │ │ ├── Logger.html │ │ │ │ │ ├── LoggerAppender.html │ │ │ │ │ ├── LoggerAppenderSkeleton.html │ │ │ │ │ ├── LoggerBasicConfigurator.html │ │ │ │ │ ├── LoggerHierarchy.html │ │ │ │ │ ├── LoggerLayout.html │ │ │ │ │ ├── LoggerLevel.html │ │ │ │ │ ├── LoggerLog.html │ │ │ │ │ ├── LoggerMDC.html │ │ │ │ │ ├── LoggerManager.html │ │ │ │ │ ├── LoggerNDC.html │ │ │ │ │ ├── LoggerPropertyConfigurator.html │ │ │ │ │ ├── LoggerRoot.html │ │ │ │ │ ├── _Logger.php.html │ │ │ │ │ ├── _LoggerAppender.php.html │ │ │ │ │ ├── _LoggerAppenderSkeleton.php.html │ │ │ │ │ ├── _LoggerBasicConfigurator.php.html │ │ │ │ │ ├── _LoggerDefaultCategoryFactory.php.html │ │ │ │ │ ├── _LoggerHierarchy.php.html │ │ │ │ │ ├── _LoggerLayout.php.html │ │ │ │ │ ├── _LoggerLevel.php.html │ │ │ │ │ ├── _LoggerLog.php.html │ │ │ │ │ ├── _LoggerMDC.php.html │ │ │ │ │ ├── _LoggerManager.php.html │ │ │ │ │ ├── _LoggerNDC.php.html │ │ │ │ │ ├── _LoggerPropertyConfigurator.php.html │ │ │ │ │ ├── _LoggerRoot.php.html │ │ │ │ │ ├── appender │ │ │ │ │ │ └── LoggerAppenderConsole.html │ │ │ │ │ ├── appenders │ │ │ │ │ │ ├── LoggerAppenderAdodb.html │ │ │ │ │ │ ├── LoggerAppenderDailyFile.html │ │ │ │ │ │ ├── LoggerAppenderDb.html │ │ │ │ │ │ ├── LoggerAppenderEcho.html │ │ │ │ │ │ ├── LoggerAppenderFile.html │ │ │ │ │ │ ├── LoggerAppenderMail.html │ │ │ │ │ │ ├── LoggerAppenderMailEvent.html │ │ │ │ │ │ ├── LoggerAppenderNull.html │ │ │ │ │ │ ├── LoggerAppenderPhp.html │ │ │ │ │ │ ├── LoggerAppenderRollingFile.html │ │ │ │ │ │ ├── LoggerAppenderSocket.html │ │ │ │ │ │ ├── LoggerAppenderSyslog.html │ │ │ │ │ │ ├── _appenders---LoggerAppenderAdodb.php.html │ │ │ │ │ │ ├── _appenders---LoggerAppenderConsole.php.html │ │ │ │ │ │ ├── _appenders---LoggerAppenderDailyFile.php.html │ │ │ │ │ │ ├── _appenders---LoggerAppenderDb.php.html │ │ │ │ │ │ ├── _appenders---LoggerAppenderEcho.php.html │ │ │ │ │ │ ├── _appenders---LoggerAppenderFile.php.html │ │ │ │ │ │ ├── _appenders---LoggerAppenderMail.php.html │ │ │ │ │ │ ├── _appenders---LoggerAppenderMailEvent.php.html │ │ │ │ │ │ ├── _appenders---LoggerAppenderNull.php.html │ │ │ │ │ │ ├── _appenders---LoggerAppenderPhp.php.html │ │ │ │ │ │ ├── _appenders---LoggerAppenderRollingFile.php.html │ │ │ │ │ │ ├── _appenders---LoggerAppenderSocket.php.html │ │ │ │ │ │ └── _appenders---LoggerAppenderSyslog.php.html │ │ │ │ │ ├── config │ │ │ │ │ │ ├── LoggerPropertyGetter.html │ │ │ │ │ │ ├── LoggerPropertySetter.html │ │ │ │ │ │ ├── _config---LoggerPropertyGetter.php.html │ │ │ │ │ │ └── _config---LoggerPropertySetter.php.html │ │ │ │ │ ├── helpers │ │ │ │ │ │ ├── LoggerBasicPatternConverter.html │ │ │ │ │ │ ├── LoggerCategoryPatternConverter.html │ │ │ │ │ │ ├── LoggerClassNamePatternConverter.html │ │ │ │ │ │ ├── LoggerDatePatternConverter.html │ │ │ │ │ │ ├── LoggerLiteralPatternConverter.html │ │ │ │ │ │ ├── LoggerLocationPatternConverter.html │ │ │ │ │ │ ├── LoggerMDCPatternConverter.html │ │ │ │ │ │ ├── LoggerNamedPatternConverter.html │ │ │ │ │ │ ├── LoggerOptionConverter.html │ │ │ │ │ │ ├── LoggerPatternConverter.html │ │ │ │ │ │ ├── LoggerPatternParser.html │ │ │ │ │ │ ├── LoggerTransform.html │ │ │ │ │ │ ├── _helpers---LoggerFormattingInfo.php.html │ │ │ │ │ │ ├── _helpers---LoggerOptionConverter.php.html │ │ │ │ │ │ ├── _helpers---LoggerPatternConverter.php.html │ │ │ │ │ │ ├── _helpers---LoggerPatternParser.php.html │ │ │ │ │ │ └── _helpers---LoggerTransform.php.html │ │ │ │ │ ├── layouts │ │ │ │ │ │ ├── LoggerLayoutHtml.html │ │ │ │ │ │ ├── LoggerLayoutSimple.html │ │ │ │ │ │ ├── LoggerLayoutTTCC.html │ │ │ │ │ │ ├── LoggerPatternLayout.html │ │ │ │ │ │ ├── LoggerXmlLayout.html │ │ │ │ │ │ ├── _layouts---LoggerLayoutHtml.php.html │ │ │ │ │ │ ├── _layouts---LoggerLayoutSimple.php.html │ │ │ │ │ │ ├── _layouts---LoggerLayoutTTCC.php.html │ │ │ │ │ │ ├── _layouts---LoggerPatternLayout.php.html │ │ │ │ │ │ └── _layouts---LoggerXmlLayout.php.html │ │ │ │ │ ├── or │ │ │ │ │ │ ├── LoggerDefaultRenderer.html │ │ │ │ │ │ ├── LoggerObjectRenderer.html │ │ │ │ │ │ ├── LoggerRendererMap.html │ │ │ │ │ │ ├── _or---LoggerDefaultRenderer.php.html │ │ │ │ │ │ ├── _or---LoggerObjectRenderer.php.html │ │ │ │ │ │ └── _or---LoggerRendererMap.php.html │ │ │ │ │ ├── spi │ │ │ │ │ │ ├── LoggerConfigurator.html │ │ │ │ │ │ ├── LoggerDefaultCategoryFactory.html │ │ │ │ │ │ ├── LoggerFactory.html │ │ │ │ │ │ ├── LoggerFilter.html │ │ │ │ │ │ ├── LoggerFormattingInfo.html │ │ │ │ │ │ ├── LoggerLocationInfo.html │ │ │ │ │ │ ├── LoggerLoggingEvent.html │ │ │ │ │ │ ├── _spi---LoggerConfigurator.php.html │ │ │ │ │ │ ├── _spi---LoggerFactory.php.html │ │ │ │ │ │ ├── _spi---LoggerFilter.php.html │ │ │ │ │ │ ├── _spi---LoggerLocationInfo.php.html │ │ │ │ │ │ └── _spi---LoggerLoggingEvent.php.html │ │ │ │ │ ├── varia │ │ │ │ │ │ ├── LoggerDenyAllFilter.html │ │ │ │ │ │ ├── LoggerLevelMatchFilter.html │ │ │ │ │ │ ├── LoggerLevelRangeFilter.html │ │ │ │ │ │ ├── LoggerStringMatchFilter.html │ │ │ │ │ │ ├── _varia---LoggerDenyAllFilter.php.html │ │ │ │ │ │ ├── _varia---LoggerLevelMatchFilter.php.html │ │ │ │ │ │ ├── _varia---LoggerLevelRangeFilter.php.html │ │ │ │ │ │ └── _varia---LoggerStringMatchFilter.php.html │ │ │ │ │ └── xml │ │ │ │ │ │ ├── LoggerDOMConfigurator.html │ │ │ │ │ │ └── _xml---LoggerDOMConfigurator.php.html │ │ │ │ ├── media │ │ │ │ │ ├── banner.css │ │ │ │ │ └── stylesheet.css │ │ │ │ ├── packages.html │ │ │ │ └── todolist.html │ │ │ ├── changes-report.html │ │ │ ├── contributors.html │ │ │ ├── css │ │ │ │ ├── maven-base.css │ │ │ │ ├── maven-theme.css │ │ │ │ ├── print.css │ │ │ │ └── site.css │ │ │ ├── dependencies.html │ │ │ ├── documentation.html │ │ │ ├── download.html │ │ │ ├── images │ │ │ │ ├── add.gif │ │ │ │ ├── collapsed.gif │ │ │ │ ├── expanded.gif │ │ │ │ ├── external.png │ │ │ │ ├── fix.gif │ │ │ │ ├── icon_error_sml.gif │ │ │ │ ├── icon_help_sml.gif │ │ │ │ ├── icon_info_sml.gif │ │ │ │ ├── icon_success_sml.gif │ │ │ │ ├── icon_warning_sml.gif │ │ │ │ ├── logo.jpg │ │ │ │ ├── logos │ │ │ │ │ └── maven-feather.png │ │ │ │ ├── ls-logo.jpg │ │ │ │ ├── newwindow.png │ │ │ │ ├── remove.gif │ │ │ │ ├── rss.png │ │ │ │ └── update.gif │ │ │ ├── index.html │ │ │ ├── issue-tracking.html │ │ │ ├── license.html │ │ │ ├── mail-lists.html │ │ │ ├── news.html │ │ │ ├── project-info.html │ │ │ ├── project-reports.html │ │ │ ├── qsg.html │ │ │ ├── roadmap.html │ │ │ ├── source-repository.html │ │ │ ├── stylesheets │ │ │ │ └── project.html │ │ │ └── usage.html │ │ └── trunk │ │ │ ├── CHANGELOG │ │ │ ├── INSTALL │ │ │ ├── LICENSE │ │ │ ├── NOTICE │ │ │ ├── README │ │ │ ├── build.xml │ │ │ ├── package-config.php │ │ │ ├── package.php │ │ │ ├── pom.xml │ │ │ └── src │ │ │ ├── assembly │ │ │ └── bin.xml │ │ │ ├── changes │ │ │ └── changes.xml │ │ │ ├── examples │ │ │ ├── php │ │ │ │ ├── cache.php │ │ │ │ ├── client.php │ │ │ │ ├── console.php │ │ │ │ ├── dailyfile.php │ │ │ │ ├── echo.php │ │ │ │ ├── file.php │ │ │ │ ├── levelmatchfilter.php │ │ │ │ ├── levelrangefilter.php │ │ │ │ ├── mail.php │ │ │ │ ├── mdc.php │ │ │ │ ├── ndc.php │ │ │ │ ├── php.php │ │ │ │ ├── server.php │ │ │ │ ├── simple.php │ │ │ │ ├── stringmatchfilter.php │ │ │ │ └── syslog.php │ │ │ └── resources │ │ │ │ ├── cache.properties │ │ │ │ ├── client.properties │ │ │ │ ├── console.properties │ │ │ │ ├── dailyfile.properties │ │ │ │ ├── echo.properties │ │ │ │ ├── file.properties │ │ │ │ ├── levelmatchfilter.xml │ │ │ │ ├── levelrangefilter.xml │ │ │ │ ├── mail.properties │ │ │ │ ├── mdc.properties │ │ │ │ ├── ndc.properties │ │ │ │ ├── php.properties │ │ │ │ ├── server.properties │ │ │ │ ├── stringmatchfilter.xml │ │ │ │ └── syslog.properties │ │ │ ├── main │ │ │ └── php │ │ │ │ ├── Logger.php │ │ │ │ ├── LoggerAppender.php │ │ │ │ ├── LoggerAppenderPool.php │ │ │ │ ├── LoggerConfigurator.php │ │ │ │ ├── LoggerException.php │ │ │ │ ├── LoggerFilter.php │ │ │ │ ├── LoggerHierarchy.php │ │ │ │ ├── LoggerLayout.php │ │ │ │ ├── LoggerLevel.php │ │ │ │ ├── LoggerLocationInfo.php │ │ │ │ ├── LoggerLoggingEvent.php │ │ │ │ ├── LoggerMDC.php │ │ │ │ ├── LoggerNDC.php │ │ │ │ ├── LoggerReflectionUtils.php │ │ │ │ ├── LoggerRoot.php │ │ │ │ ├── appenders │ │ │ │ ├── LoggerAppenderAdodb.php │ │ │ │ ├── LoggerAppenderConsole.php │ │ │ │ ├── LoggerAppenderDailyFile.php │ │ │ │ ├── LoggerAppenderEcho.php │ │ │ │ ├── LoggerAppenderFile.php │ │ │ │ ├── LoggerAppenderMail.php │ │ │ │ ├── LoggerAppenderMailEvent.php │ │ │ │ ├── LoggerAppenderNull.php │ │ │ │ ├── LoggerAppenderPDO.php │ │ │ │ ├── LoggerAppenderPhp.php │ │ │ │ ├── LoggerAppenderRollingFile.php │ │ │ │ ├── LoggerAppenderSocket.php │ │ │ │ └── LoggerAppenderSyslog.php │ │ │ │ ├── configurators │ │ │ │ ├── LoggerConfiguratorBasic.php │ │ │ │ ├── LoggerConfiguratorIni.php │ │ │ │ ├── LoggerConfiguratorPhp.php │ │ │ │ └── LoggerConfiguratorXml.php │ │ │ │ ├── filters │ │ │ │ ├── LoggerFilterDenyAll.php │ │ │ │ ├── LoggerFilterLevelMatch.php │ │ │ │ ├── LoggerFilterLevelRange.php │ │ │ │ └── LoggerFilterStringMatch.php │ │ │ │ ├── helpers │ │ │ │ ├── LoggerBasicPatternConverter.php │ │ │ │ ├── LoggerCategoryPatternConverter.php │ │ │ │ ├── LoggerClassNamePatternConverter.php │ │ │ │ ├── LoggerDatePatternConverter.php │ │ │ │ ├── LoggerFormattingInfo.php │ │ │ │ ├── LoggerLiteralPatternConverter.php │ │ │ │ ├── LoggerLocationPatternConverter.php │ │ │ │ ├── LoggerMDCPatternConverter.php │ │ │ │ ├── LoggerNamedPatternConverter.php │ │ │ │ ├── LoggerOptionConverter.php │ │ │ │ ├── LoggerPatternConverter.php │ │ │ │ └── LoggerPatternParser.php │ │ │ │ ├── layouts │ │ │ │ ├── LoggerLayoutHtml.php │ │ │ │ ├── LoggerLayoutPattern.php │ │ │ │ ├── LoggerLayoutSimple.php │ │ │ │ ├── LoggerLayoutTTCC.php │ │ │ │ └── LoggerLayoutXml.php │ │ │ │ ├── renderers │ │ │ │ ├── LoggerRendererDefault.php │ │ │ │ ├── LoggerRendererMap.php │ │ │ │ └── LoggerRendererObject.php │ │ │ │ └── xml │ │ │ │ └── log4php.dtd │ │ │ ├── site │ │ │ ├── apt │ │ │ │ ├── contributingpatches.apt │ │ │ │ ├── download.apt │ │ │ │ ├── index.apt │ │ │ │ ├── install.apt │ │ │ │ ├── quickstart.apt │ │ │ │ ├── roadmap.apt │ │ │ │ ├── showcase.apt │ │ │ │ ├── upgrading.apt │ │ │ │ ├── usage.apt │ │ │ │ └── volunteering.apt │ │ │ ├── resources │ │ │ │ ├── css │ │ │ │ │ └── site.css │ │ │ │ └── images │ │ │ │ │ ├── apache-incubator-logo.png │ │ │ │ │ ├── logo.jpg │ │ │ │ │ └── ls-logo.jpg │ │ │ └── site.xml │ │ │ └── test │ │ │ ├── config │ │ │ └── phpunit_to_surefire.xslt │ │ │ └── php │ │ │ ├── LoggerExceptionTest.php │ │ │ ├── LoggerFilterTest.php │ │ │ ├── LoggerHierarchyTest.php │ │ │ ├── LoggerLevelTest.php │ │ │ ├── LoggerLoggingEventTest.php │ │ │ ├── LoggerReflectionUtilsTest.php │ │ │ ├── LoggerRootTest.php │ │ │ ├── LoggerTest.php │ │ │ ├── LoggerTest.properties │ │ │ ├── appenders │ │ │ ├── LoggerAppenderConsoleTest.php │ │ │ ├── LoggerAppenderEchoTest.php │ │ │ ├── LoggerAppenderFileTest.php │ │ │ ├── LoggerAppenderNullTest.php │ │ │ ├── LoggerAppenderPDOTest.php │ │ │ └── LoggerAppenderPhpTest.php │ │ │ ├── bootstrap.php │ │ │ ├── configurators │ │ │ ├── LoggerConfiguratorBasicTest.php │ │ │ ├── LoggerConfiguratorIniTest.php │ │ │ ├── LoggerConfiguratorPhpTest.php │ │ │ ├── LoggerConfiguratorXmlTest.php │ │ │ ├── test1.php │ │ │ ├── test1.properties │ │ │ ├── test1.xml │ │ │ ├── test2.properties │ │ │ └── test3.properties │ │ │ ├── filters │ │ │ ├── LoggerFilterDenyAllTest.php │ │ │ ├── LoggerFilterLevelMatchTest.php │ │ │ ├── LoggerFilterLevelRangeTest.php │ │ │ └── LoggerFilterStringMatchTest.php │ │ │ ├── helpers │ │ │ └── LoggerPatternParserTest.php │ │ │ ├── layouts │ │ │ ├── LoggerLayoutHtmlTest.php │ │ │ ├── LoggerLayoutPatternTest.php │ │ │ ├── LoggerLayoutSimpleTest.php │ │ │ ├── LoggerLayoutTTCCTest.php │ │ │ └── LoggerLayoutXmlTest.php │ │ │ ├── phpunit.xml │ │ │ └── renderers │ │ │ ├── LoggerRendererDefaultTest.php │ │ │ ├── LoggerRendererMapTest.php │ │ │ └── LoggerRendererObjectTest.php │ └── htmlpurifier │ │ ├── HTMLPurifier.auto.php │ │ ├── HTMLPurifier.autoload.php │ │ ├── HTMLPurifier.func.php │ │ ├── HTMLPurifier.includes.php │ │ ├── HTMLPurifier.kses.php │ │ ├── HTMLPurifier.path.php │ │ ├── HTMLPurifier.php │ │ ├── HTMLPurifier.safe-includes.php │ │ └── HTMLPurifier │ │ ├── AttrCollections.php │ │ ├── AttrDef.php │ │ ├── AttrDef │ │ ├── CSS.php │ │ ├── CSS │ │ │ ├── AlphaValue.php │ │ │ ├── Background.php │ │ │ ├── BackgroundPosition.php │ │ │ ├── Border.php │ │ │ ├── Color.php │ │ │ ├── Composite.php │ │ │ ├── DenyElementDecorator.php │ │ │ ├── Filter.php │ │ │ ├── Font.php │ │ │ ├── FontFamily.php │ │ │ ├── ImportantDecorator.php │ │ │ ├── Length.php │ │ │ ├── ListStyle.php │ │ │ ├── Multiple.php │ │ │ ├── Number.php │ │ │ ├── Percentage.php │ │ │ ├── TextDecoration.php │ │ │ └── URI.php │ │ ├── Enum.php │ │ ├── HTML │ │ │ ├── Bool.php │ │ │ ├── Class.php │ │ │ ├── Color.php │ │ │ ├── FrameTarget.php │ │ │ ├── ID.php │ │ │ ├── Length.php │ │ │ ├── LinkTypes.php │ │ │ ├── MultiLength.php │ │ │ ├── Nmtokens.php │ │ │ └── Pixels.php │ │ ├── Integer.php │ │ ├── Lang.php │ │ ├── Switch.php │ │ ├── Text.php │ │ ├── URI.php │ │ └── URI │ │ │ ├── Email.php │ │ │ ├── Email │ │ │ └── SimpleCheck.php │ │ │ ├── Host.php │ │ │ ├── IPv4.php │ │ │ └── IPv6.php │ │ ├── AttrTransform.php │ │ ├── AttrTransform │ │ ├── Background.php │ │ ├── BdoDir.php │ │ ├── BgColor.php │ │ ├── BoolToCSS.php │ │ ├── Border.php │ │ ├── EnumToCSS.php │ │ ├── ImgRequired.php │ │ ├── ImgSpace.php │ │ ├── Input.php │ │ ├── Lang.php │ │ ├── Length.php │ │ ├── Name.php │ │ ├── NameSync.php │ │ ├── SafeEmbed.php │ │ ├── SafeObject.php │ │ ├── SafeParam.php │ │ ├── ScriptRequired.php │ │ └── Textarea.php │ │ ├── AttrTypes.php │ │ ├── AttrValidator.php │ │ ├── Bootstrap.php │ │ ├── CSSDefinition.php │ │ ├── ChildDef.php │ │ ├── ChildDef │ │ ├── Chameleon.php │ │ ├── Custom.php │ │ ├── Empty.php │ │ ├── Optional.php │ │ ├── Required.php │ │ ├── StrictBlockquote.php │ │ └── Table.php │ │ ├── Config.php │ │ ├── ConfigSchema.php │ │ ├── ConfigSchema │ │ ├── Builder │ │ │ ├── ConfigSchema.php │ │ │ └── Xml.php │ │ ├── Exception.php │ │ ├── Interchange.php │ │ ├── Interchange │ │ │ ├── Directive.php │ │ │ └── Id.php │ │ ├── InterchangeBuilder.php │ │ ├── Validator.php │ │ ├── ValidatorAtom.php │ │ ├── schema.ser │ │ └── schema │ │ │ ├── Attr.AllowedClasses.txt │ │ │ ├── Attr.AllowedFrameTargets.txt │ │ │ ├── Attr.AllowedRel.txt │ │ │ ├── Attr.AllowedRev.txt │ │ │ ├── Attr.ClassUseCDATA.txt │ │ │ ├── Attr.DefaultImageAlt.txt │ │ │ ├── Attr.DefaultInvalidImage.txt │ │ │ ├── Attr.DefaultInvalidImageAlt.txt │ │ │ ├── Attr.DefaultTextDir.txt │ │ │ ├── Attr.EnableID.txt │ │ │ ├── Attr.ForbiddenClasses.txt │ │ │ ├── Attr.IDBlacklist.txt │ │ │ ├── Attr.IDBlacklistRegexp.txt │ │ │ ├── Attr.IDPrefix.txt │ │ │ ├── Attr.IDPrefixLocal.txt │ │ │ ├── AutoFormat.AutoParagraph.txt │ │ │ ├── AutoFormat.Custom.txt │ │ │ ├── AutoFormat.DisplayLinkURI.txt │ │ │ ├── AutoFormat.Linkify.txt │ │ │ ├── AutoFormat.PurifierLinkify.DocURL.txt │ │ │ ├── AutoFormat.PurifierLinkify.txt │ │ │ ├── AutoFormat.RemoveEmpty.RemoveNbsp.Exceptions.txt │ │ │ ├── AutoFormat.RemoveEmpty.RemoveNbsp.txt │ │ │ ├── AutoFormat.RemoveEmpty.txt │ │ │ ├── CSS.AllowImportant.txt │ │ │ ├── CSS.AllowTricky.txt │ │ │ ├── CSS.AllowedProperties.txt │ │ │ ├── CSS.DefinitionRev.txt │ │ │ ├── CSS.MaxImgLength.txt │ │ │ ├── CSS.Proprietary.txt │ │ │ ├── Cache.DefinitionImpl.txt │ │ │ ├── Cache.SerializerPath.txt │ │ │ ├── Core.AggressivelyFixLt.txt │ │ │ ├── Core.CollectErrors.txt │ │ │ ├── Core.ColorKeywords.txt │ │ │ ├── Core.ConvertDocumentToFragment.txt │ │ │ ├── Core.DirectLexLineNumberSyncInterval.txt │ │ │ ├── Core.Encoding.txt │ │ │ ├── Core.EscapeInvalidChildren.txt │ │ │ ├── Core.EscapeInvalidTags.txt │ │ │ ├── Core.EscapeNonASCIICharacters.txt │ │ │ ├── Core.HiddenElements.txt │ │ │ ├── Core.Language.txt │ │ │ ├── Core.LexerImpl.txt │ │ │ ├── Core.MaintainLineNumbers.txt │ │ │ ├── Core.RemoveInvalidImg.txt │ │ │ ├── Core.RemoveScriptContents.txt │ │ │ ├── Filter.Custom.txt │ │ │ ├── Filter.ExtractStyleBlocks.Escaping.txt │ │ │ ├── Filter.ExtractStyleBlocks.Scope.txt │ │ │ ├── Filter.ExtractStyleBlocks.TidyImpl.txt │ │ │ ├── Filter.ExtractStyleBlocks.txt │ │ │ ├── Filter.YouTube.txt │ │ │ ├── HTML.Allowed.txt │ │ │ ├── HTML.AllowedAttributes.txt │ │ │ ├── HTML.AllowedElements.txt │ │ │ ├── HTML.AllowedModules.txt │ │ │ ├── HTML.Attr.Name.UseCDATA.txt │ │ │ ├── HTML.BlockWrapper.txt │ │ │ ├── HTML.CoreModules.txt │ │ │ ├── HTML.CustomDoctype.txt │ │ │ ├── HTML.DefinitionID.txt │ │ │ ├── HTML.DefinitionRev.txt │ │ │ ├── HTML.Doctype.txt │ │ │ ├── HTML.ForbiddenAttributes.txt │ │ │ ├── HTML.ForbiddenElements.txt │ │ │ ├── HTML.MaxImgLength.txt │ │ │ ├── HTML.Parent.txt │ │ │ ├── HTML.Proprietary.txt │ │ │ ├── HTML.SafeEmbed.txt │ │ │ ├── HTML.SafeObject.txt │ │ │ ├── HTML.Strict.txt │ │ │ ├── HTML.TidyAdd.txt │ │ │ ├── HTML.TidyLevel.txt │ │ │ ├── HTML.TidyRemove.txt │ │ │ ├── HTML.Trusted.txt │ │ │ ├── HTML.XHTML.txt │ │ │ ├── Output.CommentScriptContents.txt │ │ │ ├── Output.Newline.txt │ │ │ ├── Output.SortAttr.txt │ │ │ ├── Output.TidyFormat.txt │ │ │ ├── Test.ForceNoIconv.txt │ │ │ ├── URI.AllowedSchemes.txt │ │ │ ├── URI.Base.txt │ │ │ ├── URI.DefaultScheme.txt │ │ │ ├── URI.DefinitionID.txt │ │ │ ├── URI.DefinitionRev.txt │ │ │ ├── URI.Disable.txt │ │ │ ├── URI.DisableExternal.txt │ │ │ ├── URI.DisableExternalResources.txt │ │ │ ├── URI.DisableResources.txt │ │ │ ├── URI.Host.txt │ │ │ ├── URI.HostBlacklist.txt │ │ │ ├── URI.MakeAbsolute.txt │ │ │ ├── URI.Munge.txt │ │ │ ├── URI.MungeResources.txt │ │ │ ├── URI.MungeSecretKey.txt │ │ │ ├── URI.OverrideAllowedSchemes.txt │ │ │ └── info.ini │ │ ├── ContentSets.php │ │ ├── Context.php │ │ ├── Definition.php │ │ ├── DefinitionCache.php │ │ ├── DefinitionCache │ │ ├── Decorator.php │ │ ├── Decorator │ │ │ ├── Cleanup.php │ │ │ ├── Memory.php │ │ │ └── Template.php.in │ │ ├── Null.php │ │ ├── Serializer.php │ │ └── Serializer │ │ │ └── README │ │ ├── DefinitionCacheFactory.php │ │ ├── Doctype.php │ │ ├── DoctypeRegistry.php │ │ ├── ElementDef.php │ │ ├── Encoder.php │ │ ├── EntityLookup.php │ │ ├── EntityLookup │ │ └── entities.ser │ │ ├── EntityParser.php │ │ ├── ErrorCollector.php │ │ ├── ErrorStruct.php │ │ ├── Exception.php │ │ ├── Filter.php │ │ ├── Filter │ │ ├── ExtractStyleBlocks.php │ │ └── YouTube.php │ │ ├── Generator.php │ │ ├── HTMLDefinition.php │ │ ├── HTMLModule.php │ │ ├── HTMLModule │ │ ├── Bdo.php │ │ ├── CommonAttributes.php │ │ ├── Edit.php │ │ ├── Forms.php │ │ ├── Hypertext.php │ │ ├── Image.php │ │ ├── Legacy.php │ │ ├── List.php │ │ ├── Name.php │ │ ├── NonXMLCommonAttributes.php │ │ ├── Object.php │ │ ├── Presentation.php │ │ ├── Proprietary.php │ │ ├── Ruby.php │ │ ├── SafeEmbed.php │ │ ├── SafeObject.php │ │ ├── Scripting.php │ │ ├── StyleAttribute.php │ │ ├── Tables.php │ │ ├── Target.php │ │ ├── Text.php │ │ ├── Tidy.php │ │ ├── Tidy │ │ │ ├── Name.php │ │ │ ├── Proprietary.php │ │ │ ├── Strict.php │ │ │ ├── Transitional.php │ │ │ ├── XHTML.php │ │ │ └── XHTMLAndHTML4.php │ │ └── XMLCommonAttributes.php │ │ ├── HTMLModuleManager.php │ │ ├── IDAccumulator.php │ │ ├── Injector.php │ │ ├── Injector │ │ ├── AutoParagraph.php │ │ ├── DisplayLinkURI.php │ │ ├── Linkify.php │ │ ├── PurifierLinkify.php │ │ ├── RemoveEmpty.php │ │ └── SafeObject.php │ │ ├── Language.php │ │ ├── Language │ │ ├── classes │ │ │ └── en-x-test.php │ │ └── messages │ │ │ ├── en-x-test.php │ │ │ ├── en-x-testmini.php │ │ │ └── en.php │ │ ├── LanguageFactory.php │ │ ├── Length.php │ │ ├── Lexer.php │ │ ├── Lexer │ │ ├── DOMLex.php │ │ ├── DirectLex.php │ │ ├── PEARSax3.php │ │ └── PH5P.php │ │ ├── PercentEncoder.php │ │ ├── Printer.php │ │ ├── Printer │ │ ├── CSSDefinition.php │ │ ├── ConfigForm.css │ │ ├── ConfigForm.js │ │ ├── ConfigForm.php │ │ └── HTMLDefinition.php │ │ ├── PropertyList.php │ │ ├── PropertyListIterator.php │ │ ├── Strategy.php │ │ ├── Strategy │ │ ├── Composite.php │ │ ├── Core.php │ │ ├── FixNesting.php │ │ ├── MakeWellFormed.php │ │ ├── RemoveForeignElements.php │ │ └── ValidateAttributes.php │ │ ├── StringHash.php │ │ ├── StringHashParser.php │ │ ├── TagTransform.php │ │ ├── TagTransform │ │ ├── Font.php │ │ └── Simple.php │ │ ├── Token.php │ │ ├── Token │ │ ├── Comment.php │ │ ├── Empty.php │ │ ├── End.php │ │ ├── Start.php │ │ ├── Tag.php │ │ └── Text.php │ │ ├── TokenFactory.php │ │ ├── URI.php │ │ ├── URIDefinition.php │ │ ├── URIFilter.php │ │ ├── URIFilter │ │ ├── DisableExternal.php │ │ ├── DisableExternalResources.php │ │ ├── HostBlacklist.php │ │ ├── MakeAbsolute.php │ │ └── Munge.php │ │ ├── URIParser.php │ │ ├── URIScheme.php │ │ ├── URIScheme │ │ ├── ftp.php │ │ ├── http.php │ │ ├── https.php │ │ ├── mailto.php │ │ ├── news.php │ │ └── nntp.php │ │ ├── URISchemeRegistry.php │ │ ├── UnitConverter.php │ │ ├── VarParser.php │ │ ├── VarParser │ │ ├── Flexible.php │ │ └── Native.php │ │ └── VarParserException.php └── src │ ├── AccessController.php │ ├── AccessReferenceMap.php │ ├── Auditor.php │ ├── AuditorFactory.php │ ├── ESAPI.php │ ├── Encoder.php │ ├── Executor.php │ ├── HTTPUtilities.php │ ├── IntrusionDetector.php │ ├── Randomizer.php │ ├── SafeFile.php │ ├── Sanitizer.php │ ├── SecurityConfiguration.php │ ├── StringUtilities.php │ ├── ValidationErrorList.php │ ├── ValidationRule.php │ ├── Validator.php │ ├── codecs │ ├── Base64Codec.php │ ├── CSSCodec.php │ ├── Codec.php │ ├── CodecDebug.php │ ├── HTMLEntityCodec.php │ ├── JavaScriptCodec.php │ ├── MySQLCodec.php │ ├── OracleCodec.php │ ├── PercentCodec.php │ ├── UnixCodec.php │ ├── VBScriptCodec.php │ ├── WindowsCodec.php │ └── XMLEntityCodec.php │ ├── errors │ ├── AccessControlException.php │ ├── AuthenticationAccountsException.php │ ├── AuthenticationCredentialsException.php │ ├── AuthenticationException.php │ ├── AuthenticationHostException.php │ ├── AuthenticationLoginException.php │ ├── AvailabilityException.php │ ├── CertificateException.php │ ├── EncodingException.php │ ├── EncryptionException.php │ ├── EnterpriseSecurityException.php │ ├── ExecutorException.php │ ├── IntegrityException.php │ ├── IntrusionException.php │ ├── ValidationAvailabilityException.php │ ├── ValidationException.php │ └── ValidationUploadException.php │ ├── filters │ └── SafeRequest.php │ └── reference │ ├── DefaultAuditor.php │ ├── DefaultAuditorFactory.php │ ├── DefaultEncoder.php │ ├── DefaultExecutor.php │ ├── DefaultHTTPUtilities.php │ ├── DefaultIntrusionDetector.php │ ├── DefaultRandomizer.php │ ├── DefaultSanitizer.php │ ├── DefaultSecurityConfiguration.php │ ├── DefaultUser.php │ ├── DefaultValidator.php │ ├── FileBasedAccessController.php │ ├── FileBasedAuthenticator.php │ ├── IntegerAccessReferenceMap.php │ ├── RandomAccessReferenceMap.php │ └── validation │ ├── BaseValidationRule.php │ ├── CreditCardValidationRule.php │ ├── DateFormat.php │ ├── DateValidationRule.php │ ├── EmailAddressValidationRule.php │ ├── HTMLValidationRule.php │ ├── IntegerValidationRule.php │ ├── NumberValidationRule.php │ ├── StringValidationRule.php │ ├── URLValidationRule.php │ └── WordValidationRule.php ├── extlib ├── Smarty-3.1.8 │ ├── COPYING.lib │ ├── README │ ├── SMARTY_2_BC_NOTES.txt │ ├── SMARTY_3.0_BC_NOTES.txt │ ├── SMARTY_3.1_NOTES.txt │ ├── change_log.txt │ ├── demo │ │ ├── configs │ │ │ └── test.conf │ │ ├── index.php │ │ ├── plugins │ │ │ ├── cacheresource.apc.php │ │ │ ├── cacheresource.memcache.php │ │ │ ├── cacheresource.mysql.php │ │ │ ├── resource.extendsall.php │ │ │ ├── resource.mysql.php │ │ │ └── resource.mysqls.php │ │ └── templates │ │ │ ├── footer.tpl │ │ │ ├── header.tpl │ │ │ └── index.tpl │ └── libs │ │ ├── Smarty.class.php │ │ ├── SmartyBC.class.php │ │ ├── debug.tpl │ │ ├── plugins │ │ ├── block.textformat.php │ │ ├── function.counter.php │ │ ├── function.cycle.php │ │ ├── function.fetch.php │ │ ├── function.html_checkboxes.php │ │ ├── function.html_image.php │ │ ├── function.html_options.php │ │ ├── function.html_radios.php │ │ ├── function.html_select_date.php │ │ ├── function.html_select_time.php │ │ ├── function.html_table.php │ │ ├── function.mailto.php │ │ ├── function.math.php │ │ ├── modifier.capitalize.php │ │ ├── modifier.date_format.php │ │ ├── modifier.debug_print_var.php │ │ ├── modifier.escape.php │ │ ├── modifier.regex_replace.php │ │ ├── modifier.replace.php │ │ ├── modifier.spacify.php │ │ ├── modifier.truncate.php │ │ ├── modifiercompiler.cat.php │ │ ├── modifiercompiler.count_characters.php │ │ ├── modifiercompiler.count_paragraphs.php │ │ ├── modifiercompiler.count_sentences.php │ │ ├── modifiercompiler.count_words.php │ │ ├── modifiercompiler.default.php │ │ ├── modifiercompiler.escape.php │ │ ├── modifiercompiler.from_charset.php │ │ ├── modifiercompiler.indent.php │ │ ├── modifiercompiler.lower.php │ │ ├── modifiercompiler.noprint.php │ │ ├── modifiercompiler.string_format.php │ │ ├── modifiercompiler.strip.php │ │ ├── modifiercompiler.strip_tags.php │ │ ├── modifiercompiler.to_charset.php │ │ ├── modifiercompiler.unescape.php │ │ ├── modifiercompiler.upper.php │ │ ├── modifiercompiler.wordwrap.php │ │ ├── outputfilter.trimwhitespace.php │ │ ├── shared.escape_special_chars.php │ │ ├── shared.literal_compiler_param.php │ │ ├── shared.make_timestamp.php │ │ ├── shared.mb_str_replace.php │ │ ├── shared.mb_unicode.php │ │ ├── shared.mb_wordwrap.php │ │ └── variablefilter.htmlspecialchars.php │ │ └── sysplugins │ │ ├── smarty_cacheresource.php │ │ ├── smarty_cacheresource_custom.php │ │ ├── smarty_cacheresource_keyvaluestore.php │ │ ├── smarty_config_source.php │ │ ├── smarty_internal_cacheresource_file.php │ │ ├── smarty_internal_compile_append.php │ │ ├── smarty_internal_compile_assign.php │ │ ├── smarty_internal_compile_block.php │ │ ├── smarty_internal_compile_break.php │ │ ├── smarty_internal_compile_call.php │ │ ├── smarty_internal_compile_capture.php │ │ ├── smarty_internal_compile_config_load.php │ │ ├── smarty_internal_compile_continue.php │ │ ├── smarty_internal_compile_debug.php │ │ ├── smarty_internal_compile_eval.php │ │ ├── smarty_internal_compile_extends.php │ │ ├── smarty_internal_compile_for.php │ │ ├── smarty_internal_compile_foreach.php │ │ ├── smarty_internal_compile_function.php │ │ ├── smarty_internal_compile_if.php │ │ ├── smarty_internal_compile_include.php │ │ ├── smarty_internal_compile_include_php.php │ │ ├── smarty_internal_compile_insert.php │ │ ├── smarty_internal_compile_ldelim.php │ │ ├── smarty_internal_compile_nocache.php │ │ ├── smarty_internal_compile_private_block_plugin.php │ │ ├── smarty_internal_compile_private_function_plugin.php │ │ ├── smarty_internal_compile_private_modifier.php │ │ ├── smarty_internal_compile_private_object_block_function.php │ │ ├── smarty_internal_compile_private_object_function.php │ │ ├── smarty_internal_compile_private_print_expression.php │ │ ├── smarty_internal_compile_private_registered_block.php │ │ ├── smarty_internal_compile_private_registered_function.php │ │ ├── smarty_internal_compile_private_special_variable.php │ │ ├── smarty_internal_compile_rdelim.php │ │ ├── smarty_internal_compile_section.php │ │ ├── smarty_internal_compile_setfilter.php │ │ ├── smarty_internal_compile_while.php │ │ ├── smarty_internal_compilebase.php │ │ ├── smarty_internal_config.php │ │ ├── smarty_internal_config_file_compiler.php │ │ ├── smarty_internal_configfilelexer.php │ │ ├── smarty_internal_configfileparser.php │ │ ├── smarty_internal_data.php │ │ ├── smarty_internal_debug.php │ │ ├── smarty_internal_filter_handler.php │ │ ├── smarty_internal_function_call_handler.php │ │ ├── smarty_internal_get_include_path.php │ │ ├── smarty_internal_nocache_insert.php │ │ ├── smarty_internal_parsetree.php │ │ ├── smarty_internal_resource_eval.php │ │ ├── smarty_internal_resource_extends.php │ │ ├── smarty_internal_resource_file.php │ │ ├── smarty_internal_resource_php.php │ │ ├── smarty_internal_resource_registered.php │ │ ├── smarty_internal_resource_stream.php │ │ ├── smarty_internal_resource_string.php │ │ ├── smarty_internal_smartytemplatecompiler.php │ │ ├── smarty_internal_template.php │ │ ├── smarty_internal_templatebase.php │ │ ├── smarty_internal_templatecompilerbase.php │ │ ├── smarty_internal_templatelexer.php │ │ ├── smarty_internal_templateparser.php │ │ ├── smarty_internal_utility.php │ │ ├── smarty_internal_write_file.php │ │ ├── smarty_resource.php │ │ ├── smarty_resource_custom.php │ │ ├── smarty_resource_recompiled.php │ │ ├── smarty_resource_uncompiled.php │ │ └── smarty_security.php ├── jQuery │ └── jquery1.7.2.min.js └── tinymce │ ├── changelog.txt │ ├── examples │ ├── accessibility.html │ ├── css │ │ ├── content.css │ │ └── word.css │ ├── custom_formats.html │ ├── full.html │ ├── index.html │ ├── lists │ │ ├── image_list.js │ │ ├── link_list.js │ │ ├── media_list.js │ │ └── template_list.js │ ├── media │ │ ├── logo.jpg │ │ ├── logo_over.jpg │ │ ├── sample.avi │ │ ├── sample.dcr │ │ ├── sample.flv │ │ ├── sample.mov │ │ ├── sample.ram │ │ ├── sample.rm │ │ └── sample.swf │ ├── menu.html │ ├── simple.html │ ├── skins.html │ ├── templates │ │ ├── layout1.htm │ │ └── snippet1.htm │ └── word.html │ └── jscripts │ └── tiny_mce │ ├── langs │ └── en.js │ ├── license.txt │ ├── plugins │ ├── advhr │ │ ├── css │ │ │ └── advhr.css │ │ ├── editor_plugin.js │ │ ├── editor_plugin_src.js │ │ ├── js │ │ │ └── rule.js │ │ ├── langs │ │ │ └── en_dlg.js │ │ └── rule.htm │ ├── advimage │ │ ├── css │ │ │ └── advimage.css │ │ ├── editor_plugin.js │ │ ├── editor_plugin_src.js │ │ ├── image.htm │ │ ├── img │ │ │ └── sample.gif │ │ ├── js │ │ │ └── image.js │ │ └── langs │ │ │ └── en_dlg.js │ ├── advlink │ │ ├── css │ │ │ └── advlink.css │ │ ├── editor_plugin.js │ │ ├── editor_plugin_src.js │ │ ├── js │ │ │ └── advlink.js │ │ ├── langs │ │ │ └── en_dlg.js │ │ └── link.htm │ ├── advlist │ │ ├── editor_plugin.js │ │ └── editor_plugin_src.js │ ├── autolink │ │ ├── editor_plugin.js │ │ └── editor_plugin_src.js │ ├── autoresize │ │ ├── editor_plugin.js │ │ └── editor_plugin_src.js │ ├── autosave │ │ ├── editor_plugin.js │ │ ├── editor_plugin_src.js │ │ └── langs │ │ │ └── en.js │ ├── bbcode │ │ ├── editor_plugin.js │ │ └── editor_plugin_src.js │ ├── contextmenu │ │ ├── editor_plugin.js │ │ └── editor_plugin_src.js │ ├── directionality │ │ ├── editor_plugin.js │ │ └── editor_plugin_src.js │ ├── emotions │ │ ├── editor_plugin.js │ │ ├── editor_plugin_src.js │ │ ├── emotions.htm │ │ ├── img │ │ │ ├── smiley-cool.gif │ │ │ ├── smiley-cry.gif │ │ │ ├── smiley-embarassed.gif │ │ │ ├── smiley-foot-in-mouth.gif │ │ │ ├── smiley-frown.gif │ │ │ ├── smiley-innocent.gif │ │ │ ├── smiley-kiss.gif │ │ │ ├── smiley-laughing.gif │ │ │ ├── smiley-money-mouth.gif │ │ │ ├── smiley-sealed.gif │ │ │ ├── smiley-smile.gif │ │ │ ├── smiley-surprised.gif │ │ │ ├── smiley-tongue-out.gif │ │ │ ├── smiley-undecided.gif │ │ │ ├── smiley-wink.gif │ │ │ └── smiley-yell.gif │ │ ├── js │ │ │ └── emotions.js │ │ └── langs │ │ │ └── en_dlg.js │ ├── example │ │ ├── dialog.htm │ │ ├── editor_plugin.js │ │ ├── editor_plugin_src.js │ │ ├── img │ │ │ └── example.gif │ │ ├── js │ │ │ └── dialog.js │ │ └── langs │ │ │ ├── en.js │ │ │ └── en_dlg.js │ ├── example_dependency │ │ ├── editor_plugin.js │ │ └── editor_plugin_src.js │ ├── fullpage │ │ ├── css │ │ │ └── fullpage.css │ │ ├── editor_plugin.js │ │ ├── editor_plugin_src.js │ │ ├── fullpage.htm │ │ ├── js │ │ │ └── fullpage.js │ │ └── langs │ │ │ └── en_dlg.js │ ├── fullscreen │ │ ├── editor_plugin.js │ │ ├── editor_plugin_src.js │ │ └── fullscreen.htm │ ├── iespell │ │ ├── editor_plugin.js │ │ └── editor_plugin_src.js │ ├── inlinepopups │ │ ├── editor_plugin.js │ │ ├── editor_plugin_src.js │ │ ├── skins │ │ │ └── clearlooks2 │ │ │ │ ├── img │ │ │ │ ├── alert.gif │ │ │ │ ├── button.gif │ │ │ │ ├── buttons.gif │ │ │ │ ├── confirm.gif │ │ │ │ ├── corners.gif │ │ │ │ ├── horizontal.gif │ │ │ │ └── vertical.gif │ │ │ │ └── window.css │ │ └── template.htm │ ├── insertdatetime │ │ ├── editor_plugin.js │ │ └── editor_plugin_src.js │ ├── layer │ │ ├── editor_plugin.js │ │ └── editor_plugin_src.js │ ├── legacyoutput │ │ ├── editor_plugin.js │ │ └── editor_plugin_src.js │ ├── lists │ │ ├── editor_plugin.js │ │ └── editor_plugin_src.js │ ├── media │ │ ├── css │ │ │ └── media.css │ │ ├── editor_plugin.js │ │ ├── editor_plugin_src.js │ │ ├── js │ │ │ ├── embed.js │ │ │ └── media.js │ │ ├── langs │ │ │ └── en_dlg.js │ │ ├── media.htm │ │ └── moxieplayer.swf │ ├── nonbreaking │ │ ├── editor_plugin.js │ │ └── editor_plugin_src.js │ ├── noneditable │ │ ├── editor_plugin.js │ │ └── editor_plugin_src.js │ ├── pagebreak │ │ ├── editor_plugin.js │ │ └── editor_plugin_src.js │ ├── paste │ │ ├── editor_plugin.js │ │ ├── editor_plugin_src.js │ │ ├── js │ │ │ ├── pastetext.js │ │ │ └── pasteword.js │ │ ├── langs │ │ │ └── en_dlg.js │ │ ├── pastetext.htm │ │ └── pasteword.htm │ ├── preview │ │ ├── editor_plugin.js │ │ ├── editor_plugin_src.js │ │ ├── example.html │ │ ├── jscripts │ │ │ └── embed.js │ │ └── preview.html │ ├── print │ │ ├── editor_plugin.js │ │ └── editor_plugin_src.js │ ├── save │ │ ├── editor_plugin.js │ │ └── editor_plugin_src.js │ ├── searchreplace │ │ ├── css │ │ │ └── searchreplace.css │ │ ├── editor_plugin.js │ │ ├── editor_plugin_src.js │ │ ├── js │ │ │ └── searchreplace.js │ │ ├── langs │ │ │ └── en_dlg.js │ │ └── searchreplace.htm │ ├── spellchecker │ │ ├── css │ │ │ └── content.css │ │ ├── editor_plugin.js │ │ ├── editor_plugin_src.js │ │ └── img │ │ │ └── wline.gif │ ├── style │ │ ├── css │ │ │ └── props.css │ │ ├── editor_plugin.js │ │ ├── editor_plugin_src.js │ │ ├── js │ │ │ └── props.js │ │ ├── langs │ │ │ └── en_dlg.js │ │ ├── props.htm │ │ └── readme.txt │ ├── tabfocus │ │ ├── editor_plugin.js │ │ └── editor_plugin_src.js │ ├── table │ │ ├── cell.htm │ │ ├── css │ │ │ ├── cell.css │ │ │ ├── row.css │ │ │ └── table.css │ │ ├── editor_plugin.js │ │ ├── editor_plugin_src.js │ │ ├── js │ │ │ ├── cell.js │ │ │ ├── merge_cells.js │ │ │ ├── row.js │ │ │ └── table.js │ │ ├── langs │ │ │ └── en_dlg.js │ │ ├── merge_cells.htm │ │ ├── row.htm │ │ └── table.htm │ ├── template │ │ ├── blank.htm │ │ ├── css │ │ │ └── template.css │ │ ├── editor_plugin.js │ │ ├── editor_plugin_src.js │ │ ├── js │ │ │ └── template.js │ │ ├── langs │ │ │ └── en_dlg.js │ │ └── template.htm │ ├── visualblocks │ │ ├── css │ │ │ └── visualblocks.css │ │ ├── editor_plugin.js │ │ └── editor_plugin_src.js │ ├── visualchars │ │ ├── editor_plugin.js │ │ └── editor_plugin_src.js │ ├── wordcount │ │ ├── editor_plugin.js │ │ └── editor_plugin_src.js │ └── xhtmlxtras │ │ ├── abbr.htm │ │ ├── acronym.htm │ │ ├── attributes.htm │ │ ├── cite.htm │ │ ├── css │ │ ├── attributes.css │ │ └── popup.css │ │ ├── del.htm │ │ ├── editor_plugin.js │ │ ├── editor_plugin_src.js │ │ ├── ins.htm │ │ ├── js │ │ ├── abbr.js │ │ ├── acronym.js │ │ ├── attributes.js │ │ ├── cite.js │ │ ├── del.js │ │ ├── element_common.js │ │ └── ins.js │ │ └── langs │ │ └── en_dlg.js │ ├── themes │ ├── advanced │ │ ├── about.htm │ │ ├── anchor.htm │ │ ├── charmap.htm │ │ ├── color_picker.htm │ │ ├── editor_template.js │ │ ├── editor_template_src.js │ │ ├── image.htm │ │ ├── img │ │ │ ├── colorpicker.jpg │ │ │ ├── flash.gif │ │ │ ├── icons.gif │ │ │ ├── iframe.gif │ │ │ ├── pagebreak.gif │ │ │ ├── quicktime.gif │ │ │ ├── realmedia.gif │ │ │ ├── shockwave.gif │ │ │ ├── trans.gif │ │ │ ├── video.gif │ │ │ └── windowsmedia.gif │ │ ├── js │ │ │ ├── about.js │ │ │ ├── anchor.js │ │ │ ├── charmap.js │ │ │ ├── color_picker.js │ │ │ ├── image.js │ │ │ ├── link.js │ │ │ └── source_editor.js │ │ ├── langs │ │ │ ├── en.js │ │ │ └── en_dlg.js │ │ ├── link.htm │ │ ├── shortcuts.htm │ │ ├── skins │ │ │ ├── default │ │ │ │ ├── content.css │ │ │ │ ├── dialog.css │ │ │ │ ├── img │ │ │ │ │ ├── buttons.png │ │ │ │ │ ├── items.gif │ │ │ │ │ ├── menu_arrow.gif │ │ │ │ │ ├── menu_check.gif │ │ │ │ │ ├── progress.gif │ │ │ │ │ └── tabs.gif │ │ │ │ └── ui.css │ │ │ ├── highcontrast │ │ │ │ ├── content.css │ │ │ │ ├── dialog.css │ │ │ │ └── ui.css │ │ │ └── o2k7 │ │ │ │ ├── content.css │ │ │ │ ├── dialog.css │ │ │ │ ├── img │ │ │ │ ├── button_bg.png │ │ │ │ ├── button_bg_black.png │ │ │ │ └── button_bg_silver.png │ │ │ │ ├── ui.css │ │ │ │ ├── ui_black.css │ │ │ │ └── ui_silver.css │ │ └── source_editor.htm │ └── simple │ │ ├── editor_template.js │ │ ├── editor_template_src.js │ │ ├── img │ │ └── icons.gif │ │ ├── langs │ │ └── en.js │ │ └── skins │ │ ├── default │ │ ├── content.css │ │ └── ui.css │ │ └── o2k7 │ │ ├── content.css │ │ ├── img │ │ └── button_bg.png │ │ └── ui.css │ ├── tiny_mce.js │ ├── tiny_mce_popup.js │ ├── tiny_mce_src.js │ └── utils │ ├── editable_selects.js │ ├── form_utils.js │ ├── mctabs.js │ └── validate.js ├── features ├── Student.feature └── bootstrap │ └── FeatureContext.php ├── index.php ├── init.php ├── installation ├── index.php ├── install.php ├── installer │ ├── Installer.php │ ├── Installer_Template.php │ ├── PasswordHash.php │ ├── class.Utils.php │ ├── data │ │ ├── database.php │ │ ├── index.php │ │ ├── lang │ │ │ ├── english.php │ │ │ └── index.php │ │ └── templates │ │ │ ├── admin.phtml │ │ │ ├── config.phtml │ │ │ ├── db.phtml │ │ │ ├── dbdone.phtml │ │ │ ├── error.phtml │ │ │ ├── error_db.phtml │ │ │ ├── finish.phtml │ │ │ ├── images │ │ │ ├── Thumbs.db │ │ │ ├── active.gif │ │ │ ├── approve.gif │ │ │ ├── background.jpg │ │ │ ├── bullet.gif │ │ │ ├── button.gif │ │ │ ├── delete.gif │ │ │ ├── divider.gif │ │ │ ├── edit.gif │ │ │ ├── error.gif │ │ │ ├── footer.jpg │ │ │ ├── negative.gif │ │ │ ├── note.gif │ │ │ ├── positive.gif │ │ │ ├── sidebody.gif │ │ │ ├── sidehead.gif │ │ │ ├── success.gif │ │ │ ├── userbox.gif │ │ │ ├── visitwebsite.gif │ │ │ ├── warning.gif │ │ │ └── wrapper.gif │ │ │ ├── index.phtml │ │ │ ├── layout.phtml │ │ │ ├── rtl.css │ │ │ └── style.css │ └── index.php └── sql │ ├── db.sql │ └── temp.sql ├── misc_scripts └── add_Guest_to_every_class.php ├── model └── common │ ├── PasswordHash.php │ ├── class.Article.php │ ├── class.Bcrypt.php │ ├── class.Challenge.php │ ├── class.ChallengeAttempts.php │ ├── class.Debug.php │ ├── class.HackademicDB.php │ ├── class.Loader.php │ ├── class.Mailer.php │ ├── class.ScoringRule.php │ ├── class.Session.php │ ├── class.SmartyHackademic.php │ ├── class.User.php │ ├── class.UserHasChallengeToken.php │ ├── class.UserScore.php │ └── class.Utils.php ├── pages ├── challenge_monitor.php ├── challengelist.php ├── challengesfrontend.php ├── forgotpassword.php ├── home.php ├── index.php ├── login.php ├── logout.php ├── mainlogin.php ├── progress.php ├── ranking.php ├── readarticle.php ├── register.php ├── resetpassword.php ├── showchallenges.php └── trychallenge.php ├── sample.config.inc.php └── view ├── _footer_frontend.tpl ├── _header_frontend.tpl ├── _pagination_frontend.tpl ├── challenge_list.tpl ├── forgotpw.tpl ├── frontendChallengeMenu.tpl ├── landingpage.tpl ├── mainlogin.tpl ├── progressreport.tpl ├── rankings.tpl ├── readarticle.tpl ├── register_user.tpl ├── resetpw.tpl ├── showChallenge.tpl ├── trychallenge.tpl └── user_login.tpl /.gitignore: -------------------------------------------------------------------------------- 1 | config.inc.php 2 | view/compiled_view/ 3 | pages/test/ 4 | test 5 | -------------------------------------------------------------------------------- /admin/assets/images/addarticle.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/admin/assets/images/addarticle.jpg -------------------------------------------------------------------------------- /admin/assets/images/addchallenge2.PNG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/admin/assets/images/addchallenge2.PNG -------------------------------------------------------------------------------- /admin/assets/images/addclass.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/admin/assets/images/addclass.png -------------------------------------------------------------------------------- /admin/assets/images/adduser.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/admin/assets/images/adduser.png -------------------------------------------------------------------------------- /admin/assets/images/articlemanager.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/admin/assets/images/articlemanager.jpg -------------------------------------------------------------------------------- /admin/assets/images/challengemanager.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/admin/assets/images/challengemanager.jpg -------------------------------------------------------------------------------- /admin/assets/images/configuration.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/admin/assets/images/configuration.jpg -------------------------------------------------------------------------------- /admin/assets/images/login-sprite.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/admin/assets/images/login-sprite.png -------------------------------------------------------------------------------- /admin/assets/images/manageclass.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/admin/assets/images/manageclass.png -------------------------------------------------------------------------------- /admin/assets/images/usermanager.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/admin/assets/images/usermanager.jpg -------------------------------------------------------------------------------- /admin/assets/images/whiteGradient.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/admin/assets/images/whiteGradient.png -------------------------------------------------------------------------------- /admin/view/_footer.tpl: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /admin/view/_usermessage.tpl: -------------------------------------------------------------------------------- 1 | {if isset($successmsg) && $successmsg!=''} 2 |

3 | {$successmsg} 4 |

5 | {/if} 6 | {if isset($errormsg)} 7 |

8 | {$errormsg} 9 |

10 | {/if} 11 | -------------------------------------------------------------------------------- /admin/view/addclass.tpl: -------------------------------------------------------------------------------- 1 | {include file="_header.tpl"} 2 | 3 |
4 |
5 |

Add Class

6 |

7 |
{include file="_usermessage.tpl"}
8 | 9 |
10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 | 20 | 21 |
18 |

19 |
22 |
23 |
24 |
25 | {include file="_footer.tpl"} -------------------------------------------------------------------------------- /admin/view/admin_login.tpl: -------------------------------------------------------------------------------- 1 | {include file="_header.tpl"} 2 | 3 |
4 |
{include file="_usermessage.tpl"}
5 |
6 |

Log In

7 |
8 | 9 | 10 |
11 |
12 | 13 |
14 |
15 |
16 | {include file="_footer.tpl"} -------------------------------------------------------------------------------- /assets/images/favicon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/assets/images/favicon.png -------------------------------------------------------------------------------- /assets/images/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/assets/images/logo.png -------------------------------------------------------------------------------- /assets/images/owasp.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/assets/images/owasp.png -------------------------------------------------------------------------------- /behat.yml: -------------------------------------------------------------------------------- 1 | # behat.yml 2 | default: 3 | extensions: 4 | Behat\MinkExtension: 5 | base_url: 'http://localhost/Hackademic/' 6 | goutte: ~ 7 | selenium2: ~ 8 | -------------------------------------------------------------------------------- /challenges/ch001/logo2.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/challenges/ch001/logo2.gif -------------------------------------------------------------------------------- /challenges/ch001/main/Sociability.htm: -------------------------------------------------------------------------------- 1 | 10 | 11 | 12 | Sociability 13 |
14 | Our members must develop a high public activity in all fields.

Through public appearances in social places they will earn the trust of our rich, prospective customers.

15 | 16 | 17 |
18 |

Home

19 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /challenges/ch001/main/banner.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/challenges/ch001/main/banner.gif -------------------------------------------------------------------------------- /challenges/ch001/main/main.htm: -------------------------------------------------------------------------------- 1 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 |

You have entered a Secure Area 21 |

Here you can either view or update the records in the company's Database. 22 |

Warning: All actions are logged! 23 | 24 | 25 | -------------------------------------------------------------------------------- /challenges/ch001/main/secret_area_/mails.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/challenges/ch001/main/secret_area_/mails.gif -------------------------------------------------------------------------------- /challenges/ch001/main/secret_area_/mails.txt: -------------------------------------------------------------------------------- 1 | Everyone is here... xexexe! 2 | ---------------------------------------- 3 | Crazy Alice Alice@InWonderland.com 4 | Nebu Chadnezzar NebuChadnezzar@OldKing.edu 5 | Jo Raimontilinekergrobelar ShortName@badmail.com 6 | Web Killer WebMurder@killer.ever.com 7 | Don Quixote windmill@mail.spain 8 | Crazy priest Exorcist@hotmail.com 9 | Jasson Killer Friday13@JasonLives.com 10 | Everything All AllweSaid@mail.com 11 | Thiseas Sparrow Pirates@mail.gr 12 | Black Dreamer SupaHacka@mail.com 13 | Bond James MyNameIsBond@JamesBond.com 14 | Poor Boy Millionaire@fmail.com 15 | Blind Lynxeyed Linxblind@siou.com 16 | Earl Dracula CarpathianServers@Blood.com 17 | Tea Coffee sugar@dring.com 18 | Whisky Vodka drink@drunk.com 19 | -------------------------------------------------------------------------------- /challenges/ch002/ch002.css: -------------------------------------------------------------------------------- 1 | /* CSS layout */ 2 | #masthead { 3 | } 4 | #top_nav { 5 | } 6 | #page_content { 7 | } 8 | #footer { 9 | } -------------------------------------------------------------------------------- /challenges/ch002/ch002.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Challenge 2 4 | 5 | Andreas Venieris, 6 | Konstantinos Papapanagiotou, 7 | Anastasios Stasinopoulos, 8 | Vasilios Vlachos, 9 | Alexandros Papanikolaou 10 | 11 | web 12 | 13 |
15 | You must therefore succeed in finding the password of this military SITE.

Good luck! 16 | ]]> 17 |
18 |
-------------------------------------------------------------------------------- /challenges/ch003/ch003.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Challenge 3 4 | 5 | Andreas Venieris, 6 | Konstantinos Papapanagiotou, 7 | Anastasios Stasinopoulos, 8 | Vasilios Vlachos, 9 | Alexandros Papanikolaou 10 | 11 | web 12 | 13 |
Your objective is to make an alert box appear HERE bearing the message: "XSS!".]]> 15 |
16 |
-------------------------------------------------------------------------------- /challenges/ch003/xssme1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/challenges/ch003/xssme1.png -------------------------------------------------------------------------------- /challenges/ch004/ch004.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Challenge 4 4 | 5 | Andreas Venieris, 6 | Konstantinos Papapanagiotou, 7 | Anastasios Stasinopoulos, 8 | Vasilios Vlachos, 9 | Alexandros Papanikolaou 10 | 11 | web 12 | 13 | this site suffers from an XSS-like type of vulnerability. Unfortunately, he lost the notes he had written regarding how exactly did he exploit the aforementioned vulnerability.
Your objective is to make an alert box appear, bearing the message "XSS!". It should be noted, however, that this site has some protection against such attacks. 15 | ]]> 16 |
17 |
-------------------------------------------------------------------------------- /challenges/ch004/xssme2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/challenges/ch004/xssme2.png -------------------------------------------------------------------------------- /challenges/ch005/ch005.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Challenge 5 4 | 5 | Andreas Venieris, 6 | Konstantinos Papapanagiotou, 7 | Anastasios Stasinopoulos, 8 | Vasilios Vlachos, 9 | Alexandros Papanikolaou 10 | 11 | web 12 | 13 | SITE. In order to achieve this, however, you must buy the "p0wnBrowser" web browser. Since it is too expensive, you will have to "fool" the system in some way, so that it let you read the site's contents. 15 | ]]> 16 | 17 | -------------------------------------------------------------------------------- /challenges/ch005/p0wnb.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/challenges/ch005/p0wnb.png -------------------------------------------------------------------------------- /challenges/ch006/ch006.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Challenge 6 4 | 5 | Andreas Venieris, 6 | Konstantinos Papapanagiotou, 7 | Anastasios Stasinopoulos, 8 | Vasilios Vlachos, 9 | Alexandros Papanikolaou 10 | 11 | web 12 | 13 | Your mission is to infiltrate their SITE. There is a small problem, however... We don't know the password!
Perhaps you could find it?
Let's see!
g00d luck dudes! 15 | ]]> 16 |
17 |
-------------------------------------------------------------------------------- /challenges/ch007/index_files/background.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/challenges/ch007/index_files/background.jpg -------------------------------------------------------------------------------- /challenges/ch007/index_files/lastlogin.txt: -------------------------------------------------------------------------------- 1 | Last Login user: 2 | Irene Pretty : Irene 3 | at 14/3/2000 10:59:00am 4 | -------------------------------------------------------------------------------- /challenges/ch007/index_files/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/challenges/ch007/index_files/logo.png -------------------------------------------------------------------------------- /challenges/ch008/b64.txt: -------------------------------------------------------------------------------- 1 | LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NClVzZXJuYW1lOiByb290IA0KUGFzc3dvcmQ6IGcwdHIwMHQNCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t 2 | -------------------------------------------------------------------------------- /challenges/ch008/ch008.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Challenge 8 4 | 5 | Andreas Venieris, 6 | Konstantinos Papapanagiotou, 7 | Anastasios Stasinopoulos, 8 | Vasilios Vlachos, 9 | Alexandros Papanikolaou 10 | 11 | web 12 | 13 | trytohack.gr

The problem is that, in order to execute the majority of the commands (on the machine running the backdoor) you must have super-user rights (root).

Your aim is to obtain root rights. 15 | ]]> 16 |
17 |
-------------------------------------------------------------------------------- /challenges/ch008/l7s.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/challenges/ch008/l7s.png -------------------------------------------------------------------------------- /challenges/ch009/sUpErDuPErL33T.txt: -------------------------------------------------------------------------------- 1 | Top Secret Information: 2 | --------------------------------------- 3 | username: Admin 4 | password: teh_n1nj4_pwn3r 5 | email : admin@prwtoftyari.gr 6 | --------------------------------------- 7 | -------------------------------------------------------------------------------- /challenges/ch009/slagoff.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/challenges/ch009/slagoff.png -------------------------------------------------------------------------------- /challenges/ch010/ninja_eyes.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/challenges/ch010/ninja_eyes.png -------------------------------------------------------------------------------- /challenges/ch011/__MACOSX/files/ciphertext.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/challenges/ch011/__MACOSX/files/ciphertext.txt -------------------------------------------------------------------------------- /challenges/ch011/__MACOSX/files/frequency.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/challenges/ch011/__MACOSX/files/frequency.jpg -------------------------------------------------------------------------------- /challenges/ch011/ch011.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Fun with Frequencies 4 | 5 | Subhayan RoyMoulick, Dan Myshkin, Spyros Gasteratos 6 | 7 | crypto 8 | 9 | You are given a file that has been encrypted with a substitution cipher using some key permutation P. 10 | And a mysterious ciphertext, that has also been encrypted with the same key permutation P. 11 | Everything you need to know is explained in the challenge. 12 | 13 | Your Objective: give us the decryption of the mysterious ciphertext, should you choose to accept it. 14 | 15 | 16 | 17 | 2 18 | 60 19 | 20 | -------------------------------------------------------------------------------- /challenges/ch011/files/frequency.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/challenges/ch011/files/frequency.jpg -------------------------------------------------------------------------------- /challenges/ch012/__MACOSX/files/radar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/challenges/ch012/__MACOSX/files/radar.png -------------------------------------------------------------------------------- /challenges/ch012/ch012.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | OTP Challenge 4 | 5 | Subhayan RoyMoulick, Dan Myshkin, Spyros Gasteratos 6 | 7 | crypto 8 | 9 | You are given ciphertexts of various messages, encrypted with the same key using a XOR Cipher or Vernam or One Time Pad. 10 | 11 | However we know the OTP is secure for encrypting only one message. And we are confident it is possible to break the scheme now. 12 | 13 | Given a set of ciphertexts, we are interested in knowing only one. 14 | 15 | Your Objective: Decipher the asked ciphertext and suggest us a strategy for action. 16 | 17 | 18 | 4 19 | 45 20 | 21 | -------------------------------------------------------------------------------- /challenges/ch012/files/radar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/challenges/ch012/files/radar.png -------------------------------------------------------------------------------- /challenges/ch013/__MACOSX/images/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/challenges/ch013/__MACOSX/images/.DS_Store -------------------------------------------------------------------------------- /challenges/ch013/__MACOSX/images/cascade_nmac.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/challenges/ch013/__MACOSX/images/cascade_nmac.png -------------------------------------------------------------------------------- /challenges/ch013/__MACOSX/images/nmac.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/challenges/ch013/__MACOSX/images/nmac.jpg -------------------------------------------------------------------------------- /challenges/ch013/__MACOSX/js/jquery-2.1.1.min.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/challenges/ch013/__MACOSX/js/jquery-2.1.1.min.js -------------------------------------------------------------------------------- /challenges/ch013/ch013.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Silly MACs 4 | 5 | Subhayan RoyMoulick, Dan Myshkin, Spyros Gasteratos 6 | 7 | crypto 8 | 9 | Our adversaries use a primitive and insecure mode of operation to obtain Message Authentication Codes for communication. While they use a secure block cipher, F, to obtain MACs for one block, when it comes to multiple blocks their scheme can be easily manupulted and broken. 10 | 11 | Your Objective : Help us forge a valid MAC to confuse them. 12 | 13 | 14 | 15 | 4 16 | 17 | 18 | 30 19 | 20 | 21 | -------------------------------------------------------------------------------- /challenges/ch013/images/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/challenges/ch013/images/.DS_Store -------------------------------------------------------------------------------- /challenges/ch013/images/cascade_nmac.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/challenges/ch013/images/cascade_nmac.png -------------------------------------------------------------------------------- /challenges/ch013/images/nmac.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/challenges/ch013/images/nmac.jpg -------------------------------------------------------------------------------- /challenges/ch014/ch014.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | RSA Challenge I: Bad Primes 4 | 5 | Subhayan RoyMoulick, Dan Myshkin, Spyros Gasteratos 6 | 7 | crypto 8 | 9 | We have an RSA encrypted message. 10 | All we know is that the program that generated the RSA primes, p,q uses a bad PRG, so we are confindent |p-q| leq 10000 (decimal). 11 | Your Objective : Factor N, and tell us the originial messeage. 12 | 13 | 14 | 6 15 | 90 16 | 17 | -------------------------------------------------------------------------------- /challenges/ch015/__MACOSX/files/sanity_check.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/challenges/ch015/__MACOSX/files/sanity_check.txt -------------------------------------------------------------------------------- /challenges/ch015/ch015.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | RSA Challenge II: Common Modulas 4 | 5 | Subhayan RoyMoulick, Dan Myshkin, Spyros Gasteratos 6 | 7 | crypto 8 | 9 | We have a single message m, that was encrpted, using RSA, and sent to several people. 10 | All reciepents have the same RSA modulas N (N=pq). 11 | We are however only interested in the message. 12 | 13 | Your Objective : Reveal the originial message. (Assume m le N) 14 | 15 | 16 | 6 17 | 120 18 | 19 | -------------------------------------------------------------------------------- /challenges/ch016/ch016.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | RSA Challenge III: Low Encryption Exponent 4 | 5 | Subhayan RoyMoulick, Dan Myshkin, Spyros Gasteratos 6 | 7 | crypto 8 | 9 | We have a single message m, that was encrpted, using RSA, and sent to three people. 10 | All reciepents have the same RSA ecryption modulas e (e=3), (notice it also matches the no. of recipients ;) ). 11 | We are interested in the message. 12 | 13 | Your Objective : Reveal the originial message 14 | 15 | 16 | 7 17 | 120 18 | 19 | -------------------------------------------------------------------------------- /challenges/ch017/ch017.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Meet in the Middle 4 | 5 | Subhayan RoyMoulick, Dan Myshkin, Spyros Gasteratos 6 | 7 | crypto 8 | 9 | We have a few ciphertexts we are interested to decrypt. These ciphertexts are "made of" messages containting non-padded prime products. 10 | Your Objective : Reveal the originial messages 11 | 12 | 13 | 8 14 | 180 15 | 16 | -------------------------------------------------------------------------------- /challenges/ch017/css/main.css~: -------------------------------------------------------------------------------- 1 | 2 | .mathcal { 3 | font-family: "Comic Sans MS",cursive,sans-serif; 4 | } 5 | 6 | .content { 7 | max-width: 850; 8 | margin: auto; 9 | border: 2px solid red; 10 | padding: 25px; 11 | background: #fefcea 12 | } 13 | 14 | h1 { 15 | text-align: center; 16 | color: red; 17 | } 18 | 19 | .chal_sub { 20 | text-align: center; 21 | } 22 | 23 | .help_RAT { 24 | border: 1px solid blue; 25 | font-size: 13px; 26 | max-width: 400; 27 | padding: 0 30; 28 | } 29 | 30 | h3 { 31 | text-align: center; 32 | color: blue; 33 | } 34 | 35 | .submit { 36 | color: #fed; 37 | padding: 10 20; 38 | border-radius: 10; 39 | background-color: black; 40 | } 41 | 42 | .submit:hover{ 43 | color: red; 44 | background: white ; 45 | } 46 | 47 | h5 { 48 | text-align: center; 49 | } 50 | -------------------------------------------------------------------------------- /challenges/ch018/ch018.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Blinding Signatures 4 | 5 | Subhayan RoyMoulick, Dan Myshkin, Spyros Gasteratos 6 | 7 | crypto 8 | 9 | We have a message m, for which we want a valid signature. While we have access to a Sign Oracle to query signatures, it will not respond and sign the challenge message for which we want the signature. 10 | Your Mission, should you choose to accept it, is to forge a signature on the challenge message, using the oracle (or otherwise). 11 | 12 | 13 | 6 14 | 60 15 | 16 | -------------------------------------------------------------------------------- /challenges/ch020/ch020.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | RSA Challenge IV: Low Private Exponent 4 | 5 | Subhayan RoyMoulick, Dan Myshkin, Spyros Gasteratos 6 | 7 | crypto 8 | 9 | You are asked to audit a system that uses a Low Private Exponent (i.e. the Private Key), to save time decryption/signing. 10 | We think it is a bad idea and the Private Exponent can be approximated. 11 | Your Goal: Approximate the Private Exponent. 12 | 13 | 7 14 | 120 15 | 16 | -------------------------------------------------------------------------------- /challenges/cookiEng/cookiEng.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | cookiEng 4 | 5 | Nikos Danopoulos 6 | 7 | web 8 | 9 |

Hello, we have heard that you are one of the best hackers in our country.We need your services.
You must visit an underground site and find 10 | a form's password. With this password we will cancel 100k+ illegal gun and drug deals! The good news are that we have the password's directory. It's here "/t0psec". The bad news are that we don't have access there. Only administrator does. Go and find the password for us! 11 |


12 | Good luck! 13 |
14 | 15 | 16 | -------------------------------------------------------------------------------- /challenges/cookiEng/guns.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/challenges/cookiEng/guns.jpg -------------------------------------------------------------------------------- /challenges/cookiEng/t0psec.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | Forbidden! You are not authed. Please leave this page.'); 7 | print("Your forbidden attempt to access this page has been recorded"); 8 | } 9 | else 10 | { 11 | print('

Hello Admin, your password in order to continue is the following <<48bb6e862e54f2a795ffc4e541caed4d>>. Do not forget to decrypt it!

'); 12 | } 13 | ?> -------------------------------------------------------------------------------- /challenges/cookiEng/test/testoutput/ESAPI_logging_file_test: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/challenges/cookiEng/test/testoutput/ESAPI_logging_file_test -------------------------------------------------------------------------------- /challenges/example.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/challenges/example.zip -------------------------------------------------------------------------------- /challenges/index.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /challenges/izon/img/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/challenges/izon/img/favicon.ico -------------------------------------------------------------------------------- /challenges/izon/img/glyphicons-halflings-white.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/challenges/izon/img/glyphicons-halflings-white.png -------------------------------------------------------------------------------- /challenges/izon/img/glyphicons-halflings.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/challenges/izon/img/glyphicons-halflings.png -------------------------------------------------------------------------------- /challenges/izon/img/izon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/challenges/izon/img/izon.png -------------------------------------------------------------------------------- /challenges/izon/js/obfuscate.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /challenges/izon/logout.php: -------------------------------------------------------------------------------- 1 | 11 | 12 | -------------------------------------------------------------------------------- /composer.json: -------------------------------------------------------------------------------- 1 | { 2 | "require-dev": { 3 | "behat/behat": "^3.0", 4 | "behat/mink-extension": "^2.2", 5 | "behat/mink-goutte-driver": "^1.2", 6 | "behat/mink-selenium2-driver": "^1.3" 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /esapi/lib/apache-log4php/site/apidocs/blank.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | Generated Documentation 4 | 5 | 6 | 7 | 8 |

Generated Documentation

9 | Welcome to log4php!
10 |
11 | This documentation was generated by phpDocumentor v1.3.2
12 | 13 | -------------------------------------------------------------------------------- /esapi/lib/apache-log4php/site/apidocs/media/banner.css: -------------------------------------------------------------------------------- 1 | body 2 | { 3 | background-color: #CCCCFF; 4 | margin: 0px; 5 | padding: 0px; 6 | } 7 | 8 | /* Banner (top bar) classes */ 9 | 10 | .banner { } 11 | 12 | .banner-menu 13 | { 14 | clear: both; 15 | padding: .5em; 16 | border-top: 2px solid #6666AA; 17 | } 18 | 19 | .banner-title 20 | { 21 | text-align: right; 22 | font-size: 20pt; 23 | font-weight: bold; 24 | margin: .2em; 25 | } 26 | 27 | .package-selector 28 | { 29 | background-color: #AAAADD; 30 | border: 1px solid black; 31 | color: yellow; 32 | } 33 | -------------------------------------------------------------------------------- /esapi/lib/apache-log4php/site/css/print.css: -------------------------------------------------------------------------------- 1 | #banner, #footer, #leftcol, #breadcrumbs, .docs #toc, .docs .courtesylinks, #leftColumn, #navColumn { 2 | display: none !important; 3 | } 4 | #bodyColumn, body.docs div.docs { 5 | margin: 0 !important; 6 | border: none !important 7 | } 8 | -------------------------------------------------------------------------------- /esapi/lib/apache-log4php/site/css/site.css: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /esapi/lib/apache-log4php/site/images/add.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/esapi/lib/apache-log4php/site/images/add.gif -------------------------------------------------------------------------------- /esapi/lib/apache-log4php/site/images/collapsed.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/esapi/lib/apache-log4php/site/images/collapsed.gif -------------------------------------------------------------------------------- /esapi/lib/apache-log4php/site/images/expanded.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/esapi/lib/apache-log4php/site/images/expanded.gif -------------------------------------------------------------------------------- /esapi/lib/apache-log4php/site/images/external.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/esapi/lib/apache-log4php/site/images/external.png -------------------------------------------------------------------------------- /esapi/lib/apache-log4php/site/images/fix.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/esapi/lib/apache-log4php/site/images/fix.gif -------------------------------------------------------------------------------- /esapi/lib/apache-log4php/site/images/icon_error_sml.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/esapi/lib/apache-log4php/site/images/icon_error_sml.gif -------------------------------------------------------------------------------- /esapi/lib/apache-log4php/site/images/icon_help_sml.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/esapi/lib/apache-log4php/site/images/icon_help_sml.gif -------------------------------------------------------------------------------- /esapi/lib/apache-log4php/site/images/icon_info_sml.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/esapi/lib/apache-log4php/site/images/icon_info_sml.gif -------------------------------------------------------------------------------- /esapi/lib/apache-log4php/site/images/icon_success_sml.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/esapi/lib/apache-log4php/site/images/icon_success_sml.gif -------------------------------------------------------------------------------- /esapi/lib/apache-log4php/site/images/icon_warning_sml.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/esapi/lib/apache-log4php/site/images/icon_warning_sml.gif -------------------------------------------------------------------------------- /esapi/lib/apache-log4php/site/images/logo.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/esapi/lib/apache-log4php/site/images/logo.jpg -------------------------------------------------------------------------------- /esapi/lib/apache-log4php/site/images/logos/maven-feather.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/esapi/lib/apache-log4php/site/images/logos/maven-feather.png -------------------------------------------------------------------------------- /esapi/lib/apache-log4php/site/images/ls-logo.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/esapi/lib/apache-log4php/site/images/ls-logo.jpg -------------------------------------------------------------------------------- /esapi/lib/apache-log4php/site/images/newwindow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/esapi/lib/apache-log4php/site/images/newwindow.png -------------------------------------------------------------------------------- /esapi/lib/apache-log4php/site/images/remove.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/esapi/lib/apache-log4php/site/images/remove.gif -------------------------------------------------------------------------------- /esapi/lib/apache-log4php/site/images/rss.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/esapi/lib/apache-log4php/site/images/rss.png -------------------------------------------------------------------------------- /esapi/lib/apache-log4php/site/images/update.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/esapi/lib/apache-log4php/site/images/update.gif -------------------------------------------------------------------------------- /esapi/lib/apache-log4php/trunk/NOTICE: -------------------------------------------------------------------------------- 1 | Apache log4php 2 | Copyright 2004-2007 The Apache Software Foundation 3 | 4 | This product includes software developed by 5 | The Apache Software Foundation (http://www.apache.org/). 6 | 7 | -------------------------------------------------------------------------------- /esapi/lib/apache-log4php/trunk/README: -------------------------------------------------------------------------------- 1 | Apache log4php is an effort undergoing incubation at The Apache 2 | Software Foundation (ASF), sponsored by the Logging Services Project. 3 | Incubation is required of all newly accepted projects until a further 4 | review indicates that the infrastructure, communications, and 5 | decision making process have stabilized in a manner consistent 6 | with other successful ASF projects. While incubation status 7 | is not necessarily a reflection of the completeness or 8 | stability of the code, it does indicate that the project has yet 9 | to be fully endorsed by the ASF. 10 | 11 | -------------------------------------------------------------------------------- /esapi/lib/apache-log4php/trunk/src/site/resources/css/site.css: -------------------------------------------------------------------------------- 1 | /* 2 | Licensed to the Apache Software Foundation (ASF) under one or more 3 | contributor license agreements. See the NOTICE file distributed with 4 | this work for additional information regarding copyright ownership. 5 | The ASF licenses this file to You under the Apache License, Version 2.0 6 | (the "License"); you may not use this file except in compliance with 7 | the License. You may obtain a copy of the License at 8 | 9 | http://www.apache.org/licenses/LICENSE-2.0 10 | 11 | Unless required by applicable law or agreed to in writing, software 12 | distributed under the License is distributed on an "AS IS" BASIS, 13 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | See the License for the specific language governing permissions and 15 | limitations under the License. 16 | 17 | */ 18 | 19 | -------------------------------------------------------------------------------- /esapi/lib/apache-log4php/trunk/src/site/resources/images/apache-incubator-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/esapi/lib/apache-log4php/trunk/src/site/resources/images/apache-incubator-logo.png -------------------------------------------------------------------------------- /esapi/lib/apache-log4php/trunk/src/site/resources/images/logo.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/esapi/lib/apache-log4php/trunk/src/site/resources/images/logo.jpg -------------------------------------------------------------------------------- /esapi/lib/apache-log4php/trunk/src/site/resources/images/ls-logo.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/esapi/lib/apache-log4php/trunk/src/site/resources/images/ls-logo.jpg -------------------------------------------------------------------------------- /esapi/lib/apache-log4php/trunk/src/test/php/configurators/test2.properties: -------------------------------------------------------------------------------- 1 | ; Licensed to the Apache Software Foundation (ASF) under one or more 2 | ; contributor license agreements. See the NOTICE file distributed with 3 | ; this work for additional information regarding copyright ownership. 4 | ; The ASF licenses this file to You under the Apache License, Version 2.0 5 | ; (the "License"); you may not use this file except in compliance with 6 | ; the License. You may obtain a copy of the License at 7 | ; 8 | ; http://www.apache.org/licenses/LICENSE-2.0 9 | ; 10 | ; Unless required by applicable law or agreed to in writing, software 11 | ; distributed under the License is distributed on an "AS IS" BASIS, 12 | ; WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | ; See the License for the specific language governing permissions and 14 | ; limitations under the License. 15 | ; 16 | ; EMPTY PROPERTIES -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/HTMLPurifier.auto.php: -------------------------------------------------------------------------------- 1 | purify($html, $config); 21 | } 22 | 23 | // vim: et sw=4 sts=4 24 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/HTMLPurifier.path.php: -------------------------------------------------------------------------------- 1 | 1.0) $result = '1'; 16 | return $result; 17 | } 18 | 19 | } 20 | 21 | // vim: et sw=4 sts=4 22 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/HTMLPurifier/AttrDef/HTML/Bool.php: -------------------------------------------------------------------------------- 1 | name = $name;} 13 | 14 | public function validate($string, $config, $context) { 15 | if (empty($string)) return false; 16 | return $this->name; 17 | } 18 | 19 | /** 20 | * @param $string Name of attribute 21 | */ 22 | public function make($string) { 23 | return new HTMLPurifier_AttrDef_HTML_Bool($string); 24 | } 25 | 26 | } 27 | 28 | // vim: et sw=4 sts=4 29 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/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 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/HTMLPurifier/AttrDef/Text.php: -------------------------------------------------------------------------------- 1 | parseCDATA($string); 11 | } 12 | 13 | } 14 | 15 | // vim: et sw=4 sts=4 16 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/HTMLPurifier/AttrDef/URI/Email.php: -------------------------------------------------------------------------------- 1 | " 12 | // that needs more percent encoding to be done 13 | if ($string == '') return false; 14 | $string = trim($string); 15 | $result = preg_match('/^[A-Z0-9._%-]+@[A-Z0-9.-]+\.[A-Z]{2,4}$/i', $string); 16 | return $result ? $string : false; 17 | } 18 | 19 | } 20 | 21 | // vim: et sw=4 sts=4 22 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/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 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/HTMLPurifier/AttrTransform/BdoDir.php: -------------------------------------------------------------------------------- 1 | get('Attr.DefaultTextDir'); 14 | return $attr; 15 | } 16 | 17 | } 18 | 19 | // vim: et sw=4 sts=4 20 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/HTMLPurifier/AttrTransform/BgColor.php: -------------------------------------------------------------------------------- 1 | confiscateAttr($attr, 'bgcolor'); 13 | // some validation should happen here 14 | 15 | $this->prependCSS($attr, "background-color:$bgcolor;"); 16 | 17 | return $attr; 18 | 19 | } 20 | 21 | } 22 | 23 | // vim: et sw=4 sts=4 24 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/HTMLPurifier/AttrTransform/Border.php: -------------------------------------------------------------------------------- 1 | confiscateAttr($attr, 'border'); 11 | // some validation should happen here 12 | $this->prependCSS($attr, "border:{$border_width}px solid;"); 13 | return $attr; 14 | } 15 | 16 | } 17 | 18 | // vim: et sw=4 sts=4 19 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/HTMLPurifier/AttrTransform/Lang.php: -------------------------------------------------------------------------------- 1 | name = $name; 14 | $this->cssName = $css_name ? $css_name : $name; 15 | } 16 | 17 | public function transform($attr, $config, $context) { 18 | if (!isset($attr[$this->name])) return $attr; 19 | $length = $this->confiscateAttr($attr, $this->name); 20 | if(ctype_digit($length)) $length .= 'px'; 21 | $this->prependCSS($attr, $this->cssName . ":$length;"); 22 | return $attr; 23 | } 24 | 25 | } 26 | 27 | // vim: et sw=4 sts=4 28 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/HTMLPurifier/AttrTransform/Name.php: -------------------------------------------------------------------------------- 1 | get('HTML.Attr.Name.UseCDATA')) return $attr; 12 | if (!isset($attr['name'])) return $attr; 13 | $id = $this->confiscateAttr($attr, 'name'); 14 | if ( isset($attr['id'])) return $attr; 15 | $attr['id'] = $id; 16 | return $attr; 17 | } 18 | 19 | } 20 | 21 | // vim: et sw=4 sts=4 22 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/HTMLPurifier/AttrTransform/SafeEmbed.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 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/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 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/HTMLPurifier/ChildDef/Empty.php: -------------------------------------------------------------------------------- 1 | 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 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/HTMLPurifier/ConfigSchema/schema/AutoFormat.DisplayLinkURI.txt: -------------------------------------------------------------------------------- 1 | AutoFormat.DisplayLinkURI 2 | TYPE: bool 3 | VERSION: 3.2.0 4 | DEFAULT: false 5 | --DESCRIPTION-- 6 |

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 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/HTMLPurifier/ConfigSchema/schema/AutoFormat.Linkify.txt: -------------------------------------------------------------------------------- 1 | AutoFormat.Linkify 2 | TYPE: bool 3 | VERSION: 2.0.1 4 | DEFAULT: false 5 | --DESCRIPTION-- 6 | 7 |

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 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/HTMLPurifier/ConfigSchema/schema/AutoFormat.PurifierLinkify.DocURL.txt: -------------------------------------------------------------------------------- 1 | AutoFormat.PurifierLinkify.DocURL 2 | TYPE: string 3 | VERSION: 2.0.1 4 | DEFAULT: '#%s' 5 | ALIASES: AutoFormatParam.PurifierLinkifyDocURL 6 | --DESCRIPTION-- 7 |

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 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/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 |

12 | --# vim: et sw=4 sts=4 13 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/HTMLPurifier/ConfigSchema/schema/AutoFormat.RemoveEmpty.RemoveNbsp.Exceptions.txt: -------------------------------------------------------------------------------- 1 | AutoFormat.RemoveEmpty.RemoveNbsp.Exceptions 2 | TYPE: lookup 3 | VERSION: 4.0.0 4 | DEFAULT: array('td' => 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 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/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 |

15 | --# vim: et sw=4 sts=4 16 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/HTMLPurifier/ConfigSchema/schema/CSS.AllowImportant.txt: -------------------------------------------------------------------------------- 1 | CSS.AllowImportant 2 | TYPE: bool 3 | DEFAULT: false 4 | VERSION: 3.1.0 5 | --DESCRIPTION-- 6 | This parameter determines whether or not !important cascade modifiers should 7 | be allowed in user CSS. If false, !important will stripped. 8 | --# vim: et sw=4 sts=4 9 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/HTMLPurifier/ConfigSchema/schema/CSS.AllowTricky.txt: -------------------------------------------------------------------------------- 1 | CSS.AllowTricky 2 | TYPE: bool 3 | DEFAULT: false 4 | VERSION: 3.1.0 5 | --DESCRIPTION-- 6 | This parameter determines whether or not to allow "tricky" CSS properties and 7 | values. Tricky CSS properties/values can drastically modify page layout or 8 | be used for deceptive practices but do not directly constitute a security risk. 9 | For example, 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 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/HTMLPurifier/ConfigSchema/schema/CSS.AllowedProperties.txt: -------------------------------------------------------------------------------- 1 | CSS.AllowedProperties 2 | TYPE: lookup/null 3 | VERSION: 3.1.0 4 | DEFAULT: NULL 5 | --DESCRIPTION-- 6 | 7 |

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 |

18 | --# vim: et sw=4 sts=4 19 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/HTMLPurifier/ConfigSchema/schema/CSS.DefinitionRev.txt: -------------------------------------------------------------------------------- 1 | CSS.DefinitionRev 2 | TYPE: int 3 | VERSION: 2.0.0 4 | DEFAULT: 1 5 | --DESCRIPTION-- 6 | 7 |

8 | Revision identifier for your custom definition. See 9 | %HTML.DefinitionRev for details. 10 |

11 | --# vim: et sw=4 sts=4 12 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/HTMLPurifier/ConfigSchema/schema/CSS.MaxImgLength.txt: -------------------------------------------------------------------------------- 1 | CSS.MaxImgLength 2 | TYPE: string/null 3 | DEFAULT: '1200px' 4 | VERSION: 3.1.1 5 | --DESCRIPTION-- 6 |

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 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/HTMLPurifier/ConfigSchema/schema/CSS.Proprietary.txt: -------------------------------------------------------------------------------- 1 | CSS.Proprietary 2 | TYPE: bool 3 | VERSION: 3.0.0 4 | DEFAULT: false 5 | --DESCRIPTION-- 6 | 7 |

8 | Whether or not to allow safe, proprietary CSS values. 9 |

10 | --# vim: et sw=4 sts=4 11 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/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 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/HTMLPurifier/ConfigSchema/schema/Cache.SerializerPath.txt: -------------------------------------------------------------------------------- 1 | Cache.SerializerPath 2 | TYPE: string/null 3 | VERSION: 2.0.0 4 | DEFAULT: NULL 5 | --DESCRIPTION-- 6 | 7 |

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 |

13 | --# vim: et sw=4 sts=4 14 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/HTMLPurifier/ConfigSchema/schema/Core.AggressivelyFixLt.txt: -------------------------------------------------------------------------------- 1 | Core.AggressivelyFixLt 2 | TYPE: bool 3 | VERSION: 2.1.0 4 | DEFAULT: true 5 | --DESCRIPTION-- 6 |

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 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/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 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/HTMLPurifier/ConfigSchema/schema/Core.ColorKeywords.txt: -------------------------------------------------------------------------------- 1 | Core.ColorKeywords 2 | TYPE: hash 3 | VERSION: 2.0.0 4 | --DEFAULT-- 5 | array ( 6 | 'maroon' => '#800000', 7 | 'red' => '#FF0000', 8 | 'orange' => '#FFA500', 9 | 'yellow' => '#FFFF00', 10 | 'olive' => '#808000', 11 | 'purple' => '#800080', 12 | 'fuchsia' => '#FF00FF', 13 | 'white' => '#FFFFFF', 14 | 'lime' => '#00FF00', 15 | 'green' => '#008000', 16 | 'navy' => '#000080', 17 | 'blue' => '#0000FF', 18 | 'aqua' => '#00FFFF', 19 | 'teal' => '#008080', 20 | 'black' => '#000000', 21 | 'silver' => '#C0C0C0', 22 | 'gray' => '#808080', 23 | ) 24 | --DESCRIPTION-- 25 | 26 | Lookup array of color names to six digit hexadecimal number corresponding 27 | to color, with preceding hash mark. Used when parsing colors. 28 | --# vim: et sw=4 sts=4 29 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/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 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/HTMLPurifier/ConfigSchema/schema/Core.DirectLexLineNumberSyncInterval.txt: -------------------------------------------------------------------------------- 1 | Core.DirectLexLineNumberSyncInterval 2 | TYPE: int 3 | VERSION: 2.0.0 4 | DEFAULT: 0 5 | --DESCRIPTION-- 6 | 7 |

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 | --# vim: et sw=4 sts=4 18 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/HTMLPurifier/ConfigSchema/schema/Core.Encoding.txt: -------------------------------------------------------------------------------- 1 | Core.Encoding 2 | TYPE: istring 3 | DEFAULT: 'utf-8' 4 | --DESCRIPTION-- 5 | If for some reason you are unable to convert all webpages to UTF-8, you can 6 | use this directive as a stop-gap compatibility change to let HTML Purifier 7 | deal with non UTF-8 input. This technique has notable deficiencies: 8 | absolutely no characters outside of the selected character encoding will be 9 | preserved, not even the ones that have been ampersand escaped (this is due 10 | to a UTF-8 specific 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 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/HTMLPurifier/ConfigSchema/schema/Core.EscapeInvalidChildren.txt: -------------------------------------------------------------------------------- 1 | Core.EscapeInvalidChildren 2 | TYPE: bool 3 | DEFAULT: false 4 | --DESCRIPTION-- 5 | When true, a child is found that is not allowed in the context of the 6 | parent element will be transformed into text as if it were ASCII. When 7 | false, that element and all internal tags will be dropped, though text will 8 | be preserved. There is no option for dropping the element but preserving 9 | child nodes. 10 | --# vim: et sw=4 sts=4 11 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/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 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/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 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/HTMLPurifier/ConfigSchema/schema/Core.HiddenElements.txt: -------------------------------------------------------------------------------- 1 | Core.HiddenElements 2 | TYPE: lookup 3 | --DEFAULT-- 4 | array ( 5 | 'script' => true, 6 | 'style' => true, 7 | ) 8 | --DESCRIPTION-- 9 | 10 |

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 |

19 | --# vim: et sw=4 sts=4 20 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/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 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/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 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/HTMLPurifier/ConfigSchema/schema/Core.RemoveInvalidImg.txt: -------------------------------------------------------------------------------- 1 | Core.RemoveInvalidImg 2 | TYPE: bool 3 | DEFAULT: true 4 | VERSION: 1.3.0 5 | --DESCRIPTION-- 6 | 7 |

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 |

12 | --# vim: et sw=4 sts=4 13 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/HTMLPurifier/ConfigSchema/schema/Core.RemoveScriptContents.txt: -------------------------------------------------------------------------------- 1 | Core.RemoveScriptContents 2 | TYPE: bool/null 3 | DEFAULT: NULL 4 | VERSION: 2.0.0 5 | DEPRECATED-VERSION: 2.1.0 6 | DEPRECATED-USE: Core.HiddenElements 7 | --DESCRIPTION-- 8 |

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 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/HTMLPurifier/ConfigSchema/schema/Filter.Custom.txt: -------------------------------------------------------------------------------- 1 | Filter.Custom 2 | TYPE: list 3 | VERSION: 3.1.0 4 | DEFAULT: array() 5 | --DESCRIPTION-- 6 |

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 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/HTMLPurifier/ConfigSchema/schema/Filter.ExtractStyleBlocks.Escaping.txt: -------------------------------------------------------------------------------- 1 | Filter.ExtractStyleBlocks.Escaping 2 | TYPE: bool 3 | VERSION: 3.0.0 4 | DEFAULT: true 5 | ALIASES: Filter.ExtractStyleBlocksEscaping, FilterParam.ExtractStyleBlocksEscaping 6 | --DESCRIPTION-- 7 | 8 |

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 |

14 | --# vim: et sw=4 sts=4 15 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/HTMLPurifier/ConfigSchema/schema/Filter.ExtractStyleBlocks.TidyImpl.txt: -------------------------------------------------------------------------------- 1 | Filter.ExtractStyleBlocks.TidyImpl 2 | TYPE: mixed/null 3 | VERSION: 3.1.0 4 | DEFAULT: NULL 5 | ALIASES: FilterParam.ExtractStyleBlocksTidyImpl 6 | --DESCRIPTION-- 7 |

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 |

16 | --# vim: et sw=4 sts=4 17 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/HTMLPurifier/ConfigSchema/schema/Filter.YouTube.txt: -------------------------------------------------------------------------------- 1 | Filter.YouTube 2 | TYPE: bool 3 | VERSION: 3.1.0 4 | DEFAULT: false 5 | --DESCRIPTION-- 6 |

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 |

11 | --# vim: et sw=4 sts=4 12 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/HTMLPurifier/ConfigSchema/schema/HTML.AllowedAttributes.txt: -------------------------------------------------------------------------------- 1 | HTML.AllowedAttributes 2 | TYPE: lookup/null 3 | VERSION: 1.3.0 4 | DEFAULT: NULL 5 | --DESCRIPTION-- 6 | 7 |

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 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/HTMLPurifier/ConfigSchema/schema/HTML.AllowedElements.txt: -------------------------------------------------------------------------------- 1 | HTML.AllowedElements 2 | TYPE: lookup/null 3 | VERSION: 1.3.0 4 | DEFAULT: NULL 5 | --DESCRIPTION-- 6 |

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 |

18 | --# vim: et sw=4 sts=4 19 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/HTMLPurifier/ConfigSchema/schema/HTML.AllowedModules.txt: -------------------------------------------------------------------------------- 1 | HTML.AllowedModules 2 | TYPE: lookup/null 3 | VERSION: 2.0.0 4 | DEFAULT: NULL 5 | --DESCRIPTION-- 6 | 7 |

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 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/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 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/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 |

18 | --# vim: et sw=4 sts=4 19 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/HTMLPurifier/ConfigSchema/schema/HTML.CoreModules.txt: -------------------------------------------------------------------------------- 1 | HTML.CoreModules 2 | TYPE: lookup 3 | VERSION: 2.0.0 4 | --DEFAULT-- 5 | array ( 6 | 'Structure' => true, 7 | 'Text' => true, 8 | 'Hypertext' => true, 9 | 'List' => true, 10 | 'NonXMLCommonAttributes' => true, 11 | 'XMLCommonAttributes' => true, 12 | 'CommonAttributes' => true, 13 | ) 14 | --DESCRIPTION-- 15 | 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 |

23 | --# vim: et sw=4 sts=4 24 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/HTMLPurifier/ConfigSchema/schema/HTML.CustomDoctype.txt: -------------------------------------------------------------------------------- 1 | HTML.CustomDoctype 2 | TYPE: string/null 3 | VERSION: 2.0.1 4 | DEFAULT: NULL 5 | --DESCRIPTION-- 6 | 7 | A custom doctype for power-users who defined there own document 8 | type. This directive only applies when %HTML.Doctype is blank. 9 | --# vim: et sw=4 sts=4 10 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/HTMLPurifier/ConfigSchema/schema/HTML.DefinitionRev.txt: -------------------------------------------------------------------------------- 1 | HTML.DefinitionRev 2 | TYPE: int 3 | VERSION: 2.0.0 4 | DEFAULT: 1 5 | --DESCRIPTION-- 6 | 7 |

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 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/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 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/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 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/HTMLPurifier/ConfigSchema/schema/HTML.MaxImgLength.txt: -------------------------------------------------------------------------------- 1 | HTML.MaxImgLength 2 | TYPE: int/null 3 | DEFAULT: 1200 4 | VERSION: 3.1.1 5 | --DESCRIPTION-- 6 |

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 |

14 | --# vim: et sw=4 sts=4 15 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/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 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/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 |

12 | --# vim: et sw=4 sts=4 13 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/HTMLPurifier/ConfigSchema/schema/HTML.SafeEmbed.txt: -------------------------------------------------------------------------------- 1 | HTML.SafeEmbed 2 | TYPE: bool 3 | VERSION: 3.1.1 4 | DEFAULT: false 5 | --DESCRIPTION-- 6 |

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 |

14 | --# vim: et sw=4 sts=4 15 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/HTMLPurifier/ConfigSchema/schema/HTML.SafeObject.txt: -------------------------------------------------------------------------------- 1 | HTML.SafeObject 2 | TYPE: bool 3 | VERSION: 3.1.1 4 | DEFAULT: false 5 | --DESCRIPTION-- 6 |

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 |

14 | --# vim: et sw=4 sts=4 15 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/HTMLPurifier/ConfigSchema/schema/HTML.Strict.txt: -------------------------------------------------------------------------------- 1 | HTML.Strict 2 | TYPE: bool 3 | VERSION: 1.3.0 4 | DEFAULT: false 5 | DEPRECATED-VERSION: 1.7.0 6 | DEPRECATED-USE: HTML.Doctype 7 | --DESCRIPTION-- 8 | Determines whether or not to use Transitional (loose) or Strict rulesets. 9 | --# vim: et sw=4 sts=4 10 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/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 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/HTMLPurifier/ConfigSchema/schema/HTML.TidyLevel.txt: -------------------------------------------------------------------------------- 1 | HTML.TidyLevel 2 | TYPE: string 3 | VERSION: 2.0.0 4 | DEFAULT: 'medium' 5 | --DESCRIPTION-- 6 | 7 |

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 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/HTMLPurifier/ConfigSchema/schema/HTML.TidyRemove.txt: -------------------------------------------------------------------------------- 1 | HTML.TidyRemove 2 | TYPE: lookup 3 | VERSION: 2.0.0 4 | DEFAULT: array() 5 | --DESCRIPTION-- 6 | 7 | Fixes to remove from the default set of Tidy fixes as per your level. 8 | --# vim: et sw=4 sts=4 9 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/HTMLPurifier/ConfigSchema/schema/HTML.Trusted.txt: -------------------------------------------------------------------------------- 1 | HTML.Trusted 2 | TYPE: bool 3 | VERSION: 2.0.0 4 | DEFAULT: false 5 | --DESCRIPTION-- 6 | Indicates whether or not the user input is trusted or not. If the input is 7 | trusted, a more expansive set of allowed tags and attributes will be used. 8 | --# vim: et sw=4 sts=4 9 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/HTMLPurifier/ConfigSchema/schema/HTML.XHTML.txt: -------------------------------------------------------------------------------- 1 | HTML.XHTML 2 | TYPE: bool 3 | DEFAULT: true 4 | VERSION: 1.1.0 5 | DEPRECATED-VERSION: 1.7.0 6 | DEPRECATED-USE: HTML.Doctype 7 | --DESCRIPTION-- 8 | Determines whether or not output is XHTML 1.0 or HTML 4.01 flavor. 9 | --ALIASES-- 10 | Core.XHTML 11 | --# vim: et sw=4 sts=4 12 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/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 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/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 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/HTMLPurifier/ConfigSchema/schema/Output.SortAttr.txt: -------------------------------------------------------------------------------- 1 | Output.SortAttr 2 | TYPE: bool 3 | VERSION: 3.2.0 4 | DEFAULT: false 5 | --DESCRIPTION-- 6 |

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 |

14 | --# vim: et sw=4 sts=4 15 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/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 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/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 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/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 |

17 | --# vim: et sw=4 sts=4 18 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/HTMLPurifier/ConfigSchema/schema/URI.DefaultScheme.txt: -------------------------------------------------------------------------------- 1 | URI.DefaultScheme 2 | TYPE: string 3 | DEFAULT: 'http' 4 | --DESCRIPTION-- 5 | 6 |

7 | Defines through what scheme the output will be served, in order to 8 | select the proper object validator when no scheme information is present. 9 |

10 | --# vim: et sw=4 sts=4 11 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/HTMLPurifier/ConfigSchema/schema/URI.DefinitionID.txt: -------------------------------------------------------------------------------- 1 | URI.DefinitionID 2 | TYPE: string/null 3 | VERSION: 2.1.0 4 | DEFAULT: NULL 5 | --DESCRIPTION-- 6 | 7 |

8 | Unique identifier for a custom-built URI definition. If you want 9 | to add custom URIFilters, you must specify this value. 10 |

11 | --# vim: et sw=4 sts=4 12 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/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 |

11 | --# vim: et sw=4 sts=4 12 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/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 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/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 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/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 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/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 |

12 | --# vim: et sw=4 sts=4 13 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/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 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/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 |

13 | --# vim: et sw=4 sts=4 14 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/HTMLPurifier/ConfigSchema/schema/URI.MungeResources.txt: -------------------------------------------------------------------------------- 1 | URI.MungeResources 2 | TYPE: bool 3 | VERSION: 3.1.1 4 | DEFAULT: false 5 | --DESCRIPTION-- 6 |

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 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/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 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/HTMLPurifier/ConfigSchema/schema/info.ini: -------------------------------------------------------------------------------- 1 | name = "HTML Purifier" 2 | 3 | ; vim: et sw=4 sts=4 4 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/HTMLPurifier/DefinitionCache/Null.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 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/HTMLPurifier/HTMLModule/Name.php: -------------------------------------------------------------------------------- 1 | addBlankElement($name); 12 | $element->attr['name'] = 'CDATA'; 13 | if (!$config->get('HTML.Attr.Name.UseCDATA')) { 14 | $element->attr_transform_post['NameSync'] = new HTMLPurifier_AttrTransform_NameSync(); 15 | } 16 | } 17 | } 18 | 19 | } 20 | 21 | // vim: et sw=4 sts=4 22 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/HTMLPurifier/HTMLModule/NonXMLCommonAttributes.php: -------------------------------------------------------------------------------- 1 | array( 9 | 'lang' => 'LanguageCode', 10 | ) 11 | ); 12 | } 13 | 14 | // vim: et sw=4 sts=4 15 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/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 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/HTMLPurifier/HTMLModule/Target.php: -------------------------------------------------------------------------------- 1 | addBlankElement($name); 15 | $e->attr = array( 16 | 'target' => new HTMLPurifier_AttrDef_HTML_FrameTarget() 17 | ); 18 | } 19 | } 20 | 21 | } 22 | 23 | // vim: et sw=4 sts=4 24 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/HTMLPurifier/HTMLModule/Tidy/Name.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 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/HTMLPurifier/HTMLModule/Tidy/Transitional.php: -------------------------------------------------------------------------------- 1 | array( 9 | 'xml:lang' => 'LanguageCode', 10 | ) 11 | ); 12 | } 13 | 14 | // vim: et sw=4 sts=4 15 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/HTMLPurifier/Injector/DisplayLinkURI.php: -------------------------------------------------------------------------------- 1 | start->attr['href'])){ 17 | $url = $token->start->attr['href']; 18 | unset($token->start->attr['href']); 19 | $token = array($token, new HTMLPurifier_Token_Text(" ($url)")); 20 | } else { 21 | // nothing to display 22 | } 23 | } 24 | } 25 | 26 | // vim: et sw=4 sts=4 27 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/HTMLPurifier/Language/classes/en-x-test.php: -------------------------------------------------------------------------------- 1 | 'HTML Purifier X' 9 | ); 10 | 11 | // vim: et sw=4 sts=4 12 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/HTMLPurifier/Language/messages/en-x-testmini.php: -------------------------------------------------------------------------------- 1 | 'HTML Purifier XNone' 10 | ); 11 | 12 | // vim: et sw=4 sts=4 13 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/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 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/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 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/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 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/HTMLPurifier/Strategy.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 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/HTMLPurifier/Strategy/Core.php: -------------------------------------------------------------------------------- 1 | strategies[] = new HTMLPurifier_Strategy_RemoveForeignElements(); 11 | $this->strategies[] = new HTMLPurifier_Strategy_MakeWellFormed(); 12 | $this->strategies[] = new HTMLPurifier_Strategy_FixNesting(); 13 | $this->strategies[] = new HTMLPurifier_Strategy_ValidateAttributes(); 14 | } 15 | 16 | } 17 | 18 | // vim: et sw=4 sts=4 19 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/HTMLPurifier/Token/Comment.php: -------------------------------------------------------------------------------- 1 | data = $data; 17 | $this->line = $line; 18 | $this->col = $col; 19 | } 20 | } 21 | 22 | // vim: et sw=4 sts=4 23 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/HTMLPurifier/Token/Empty.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 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/HTMLPurifier/URIFilter/HostBlacklist.php: -------------------------------------------------------------------------------- 1 | blacklist = $config->get('URI.HostBlacklist'); 9 | return true; 10 | } 11 | public function filter(&$uri, $config, $context) { 12 | foreach($this->blacklist as $blacklisted_host_fragment) { 13 | if (strpos($uri->host, $blacklisted_host_fragment) !== false) { 14 | return false; 15 | } 16 | } 17 | return true; 18 | } 19 | } 20 | 21 | // vim: et sw=4 sts=4 22 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/HTMLPurifier/URIScheme/http.php: -------------------------------------------------------------------------------- 1 | userinfo = null; 15 | return true; 16 | } 17 | 18 | } 19 | 20 | // vim: et sw=4 sts=4 21 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/HTMLPurifier/URIScheme/https.php: -------------------------------------------------------------------------------- 1 | userinfo = null; 19 | $uri->host = null; 20 | $uri->port = null; 21 | // we need to validate path against RFC 2368's addr-spec 22 | return true; 23 | } 24 | 25 | } 26 | 27 | // vim: et sw=4 sts=4 28 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/HTMLPurifier/URIScheme/news.php: -------------------------------------------------------------------------------- 1 | userinfo = null; 13 | $uri->host = null; 14 | $uri->port = null; 15 | $uri->query = null; 16 | // typecode check needed on path 17 | return true; 18 | } 19 | 20 | } 21 | 22 | // vim: et sw=4 sts=4 23 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/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 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/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 | -------------------------------------------------------------------------------- /esapi/lib/htmlpurifier/HTMLPurifier/VarParserException.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /extlib/Smarty-3.1.8/demo/templates/header.tpl: -------------------------------------------------------------------------------- 1 | 2 | 3 | {$title} - {$Name} 4 | 5 | 6 | -------------------------------------------------------------------------------- /extlib/Smarty-3.1.8/libs/plugins/modifier.spacify.php: -------------------------------------------------------------------------------- 1 | 12 | * Name: spacify
13 | * Purpose: add spaces between characters in a string 14 | * 15 | * @link http://smarty.php.net/manual/en/language.modifier.spacify.php spacify (Smarty online manual) 16 | * @author Monte Ohrt 17 | * @param string $string input string 18 | * @param string $spacify_char string to insert between characters. 19 | * @return string 20 | */ 21 | function smarty_modifier_spacify($string, $spacify_char = ' ') 22 | { 23 | // well… what about charsets besides latin and UTF-8? 24 | return implode($spacify_char, preg_split('//' . Smarty::$_UTF8_MODIFIER, $string, -1, PREG_SPLIT_NO_EMPTY)); 25 | } 26 | 27 | ?> -------------------------------------------------------------------------------- /extlib/Smarty-3.1.8/libs/plugins/modifiercompiler.cat.php: -------------------------------------------------------------------------------- 1 | 13 | * Name: cat
14 | * Date: Feb 24, 2003
15 | * Purpose: catenate a value to a variable
16 | * Input: string to catenate
17 | * Example: {$var|cat:"foo"} 18 | * 19 | * @link http://smarty.php.net/manual/en/language.modifier.cat.php cat 20 | * (Smarty online manual) 21 | * @author Uwe Tews 22 | * @param array $params parameters 23 | * @return string with compiled code 24 | */ 25 | function smarty_modifiercompiler_cat($params, $compiler) 26 | { 27 | return '('.implode(').(', $params).')'; 28 | } 29 | 30 | ?> -------------------------------------------------------------------------------- /extlib/Smarty-3.1.8/libs/plugins/modifiercompiler.count_paragraphs.php: -------------------------------------------------------------------------------- 1 | 13 | * Name: count_paragraphs
14 | * Purpose: count the number of paragraphs in a text 15 | * 16 | * @link http://www.smarty.net/manual/en/language.modifier.count.paragraphs.php 17 | * count_paragraphs (Smarty online manual) 18 | * @author Uwe Tews 19 | * @param array $params parameters 20 | * @return string with compiled code 21 | */ 22 | function smarty_modifiercompiler_count_paragraphs($params, $compiler) 23 | { 24 | // count \r or \n characters 25 | return '(preg_match_all(\'#[\r\n]+#\', ' . $params[0] . ', $tmp)+1)'; 26 | } 27 | 28 | ?> -------------------------------------------------------------------------------- /extlib/Smarty-3.1.8/libs/plugins/modifiercompiler.indent.php: -------------------------------------------------------------------------------- 1 | 12 | * Name: indent
13 | * Purpose: indent lines of text 14 | * 15 | * @link http://www.smarty.net/manual/en/language.modifier.indent.php indent (Smarty online manual) 16 | * @author Uwe Tews 17 | * @param array $params parameters 18 | * @return string with compiled code 19 | */ 20 | 21 | function smarty_modifiercompiler_indent($params, $compiler) 22 | { 23 | if (!isset($params[1])) { 24 | $params[1] = 4; 25 | } 26 | if (!isset($params[2])) { 27 | $params[2] = "' '"; 28 | } 29 | return 'preg_replace(\'!^!m\',str_repeat(' . $params[2] . ',' . $params[1] . '),' . $params[0] . ')'; 30 | } 31 | 32 | ?> -------------------------------------------------------------------------------- /extlib/Smarty-3.1.8/libs/plugins/modifiercompiler.lower.php: -------------------------------------------------------------------------------- 1 | 12 | * Name: lower
13 | * Purpose: convert string to lowercase 14 | * 15 | * @link http://www.smarty.net/manual/en/language.modifier.lower.php lower (Smarty online manual) 16 | * @author Monte Ohrt 17 | * @author Uwe Tews 18 | * @param array $params parameters 19 | * @return string with compiled code 20 | */ 21 | 22 | function smarty_modifiercompiler_lower($params, $compiler) 23 | { 24 | if (Smarty::$_MBSTRING) { 25 | return 'mb_strtolower(' . $params[0] . ', \'' . addslashes(Smarty::$_CHARSET) . '\')' ; 26 | } 27 | // no MBString fallback 28 | return 'strtolower(' . $params[0] . ')'; 29 | } 30 | 31 | ?> -------------------------------------------------------------------------------- /extlib/Smarty-3.1.8/libs/plugins/modifiercompiler.noprint.php: -------------------------------------------------------------------------------- 1 | 13 | * Name: noprint
14 | * Purpose: return an empty string 15 | * 16 | * @author Uwe Tews 17 | * @param array $params parameters 18 | * @return string with compiled code 19 | */ 20 | function smarty_modifiercompiler_noprint($params, $compiler) 21 | { 22 | return "''"; 23 | } 24 | 25 | ?> -------------------------------------------------------------------------------- /extlib/Smarty-3.1.8/libs/plugins/modifiercompiler.string_format.php: -------------------------------------------------------------------------------- 1 | 13 | * Name: string_format
14 | * Purpose: format strings via sprintf 15 | * 16 | * @link http://www.smarty.net/manual/en/language.modifier.string.format.php string_format (Smarty online manual) 17 | * @author Uwe Tews 18 | * @param array $params parameters 19 | * @return string with compiled code 20 | */ 21 | function smarty_modifiercompiler_string_format($params, $compiler) 22 | { 23 | return 'sprintf(' . $params[1] . ',' . $params[0] . ')'; 24 | } 25 | 26 | ?> -------------------------------------------------------------------------------- /extlib/Smarty-3.1.8/libs/plugins/modifiercompiler.upper.php: -------------------------------------------------------------------------------- 1 | 13 | * Name: lower
14 | * Purpose: convert string to uppercase 15 | * 16 | * @link http://smarty.php.net/manual/en/language.modifier.upper.php lower (Smarty online manual) 17 | * @author Uwe Tews 18 | * @param array $params parameters 19 | * @return string with compiled code 20 | */ 21 | function smarty_modifiercompiler_upper($params, $compiler) 22 | { 23 | if (Smarty::$_MBSTRING) { 24 | return 'mb_strtoupper(' . $params[0] . ', \'' . addslashes(Smarty::$_CHARSET) . '\')' ; 25 | } 26 | // no MBString fallback 27 | return 'strtoupper(' . $params[0] . ')'; 28 | } 29 | 30 | ?> -------------------------------------------------------------------------------- /extlib/Smarty-3.1.8/libs/plugins/variablefilter.htmlspecialchars.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /extlib/Smarty-3.1.8/libs/sysplugins/smarty_internal_compile_block.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/extlib/Smarty-3.1.8/libs/sysplugins/smarty_internal_compile_block.php -------------------------------------------------------------------------------- /extlib/tinymce/changelog.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/extlib/tinymce/changelog.txt -------------------------------------------------------------------------------- /extlib/tinymce/examples/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | TinyMCE examples 5 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /extlib/tinymce/examples/lists/image_list.js: -------------------------------------------------------------------------------- 1 | // This list may be created by a server logic page PHP/ASP/ASPX/JSP in some backend system. 2 | // There images will be displayed as a dropdown in all image dialogs if the "external_link_image_url" 3 | // option is defined in TinyMCE init. 4 | 5 | var tinyMCEImageList = new Array( 6 | // Name, URL 7 | ["Logo 1", "media/logo.jpg"], 8 | ["Logo 2 Over", "media/logo_over.jpg"] 9 | ); 10 | -------------------------------------------------------------------------------- /extlib/tinymce/examples/lists/link_list.js: -------------------------------------------------------------------------------- 1 | // This list may be created by a server logic page PHP/ASP/ASPX/JSP in some backend system. 2 | // There links will be displayed as a dropdown in all link dialogs if the "external_link_list_url" 3 | // option is defined in TinyMCE init. 4 | 5 | var tinyMCELinkList = new Array( 6 | // Name, URL 7 | ["Moxiecode", "http://www.moxiecode.com"], 8 | ["Freshmeat", "http://www.freshmeat.com"], 9 | ["Sourceforge", "http://www.sourceforge.com"] 10 | ); 11 | -------------------------------------------------------------------------------- /extlib/tinymce/examples/lists/media_list.js: -------------------------------------------------------------------------------- 1 | // This list may be created by a server logic page PHP/ASP/ASPX/JSP in some backend system. 2 | // There flash movies will be displayed as a dropdown in all media dialog if the "media_external_list_url" 3 | // option is defined in TinyMCE init. 4 | 5 | var tinyMCEMediaList = [ 6 | // Name, URL 7 | ["Some Flash", "media/sample.swf"], 8 | ["Some Quicktime", "media/sample.mov"], 9 | ["Some AVI", "media/sample.avi"], 10 | ["Some RealMedia", "media/sample.rm"], 11 | ["Some Shockwave", "media/sample.dcr"], 12 | ["Some Video", "media/sample.mp4"], 13 | ["Some FLV", "media/sample.flv"] 14 | ]; -------------------------------------------------------------------------------- /extlib/tinymce/examples/lists/template_list.js: -------------------------------------------------------------------------------- 1 | // This list may be created by a server logic page PHP/ASP/ASPX/JSP in some backend system. 2 | // There templates will be displayed as a dropdown in all media dialog if the "template_external_list_url" 3 | // option is defined in TinyMCE init. 4 | 5 | var tinyMCETemplateList = [ 6 | // Name, URL, Description 7 | ["Simple snippet", "templates/snippet1.htm", "Simple HTML snippet."], 8 | ["Layout", "templates/layout1.htm", "HTML Layout."] 9 | ]; -------------------------------------------------------------------------------- /extlib/tinymce/examples/media/logo.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/extlib/tinymce/examples/media/logo.jpg -------------------------------------------------------------------------------- /extlib/tinymce/examples/media/logo_over.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/extlib/tinymce/examples/media/logo_over.jpg -------------------------------------------------------------------------------- /extlib/tinymce/examples/media/sample.avi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/extlib/tinymce/examples/media/sample.avi -------------------------------------------------------------------------------- /extlib/tinymce/examples/media/sample.dcr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/extlib/tinymce/examples/media/sample.dcr -------------------------------------------------------------------------------- /extlib/tinymce/examples/media/sample.flv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/extlib/tinymce/examples/media/sample.flv -------------------------------------------------------------------------------- /extlib/tinymce/examples/media/sample.mov: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/extlib/tinymce/examples/media/sample.mov -------------------------------------------------------------------------------- /extlib/tinymce/examples/media/sample.ram: -------------------------------------------------------------------------------- 1 | http://streaming.uga.edu/samples/ayp_lan.rm -------------------------------------------------------------------------------- /extlib/tinymce/examples/media/sample.rm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/extlib/tinymce/examples/media/sample.rm -------------------------------------------------------------------------------- /extlib/tinymce/examples/media/sample.swf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/extlib/tinymce/examples/media/sample.swf -------------------------------------------------------------------------------- /extlib/tinymce/examples/menu.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Menu 5 | 8 | 9 | 10 |

Examples

11 | Full featured 12 | Simple theme 13 | Skin support 14 | Word processor 15 | Custom formats 16 | Accessibility Options 17 | 18 | 19 | -------------------------------------------------------------------------------- /extlib/tinymce/examples/templates/layout1.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 |
Column 1Column 2
Username: {$username}Staffid: {$staffid}
16 | -------------------------------------------------------------------------------- /extlib/tinymce/examples/templates/snippet1.htm: -------------------------------------------------------------------------------- 1 | This is just some code. 2 | -------------------------------------------------------------------------------- /extlib/tinymce/jscripts/tiny_mce/plugins/advhr/css/advhr.css: -------------------------------------------------------------------------------- 1 | input.radio {border:1px none #000; background:transparent; vertical-align:middle;} 2 | .panel_wrapper div.current {height:80px;} 3 | #width {width:50px; vertical-align:middle;} 4 | #width2 {width:50px; vertical-align:middle;} 5 | #size {width:100px;} 6 | -------------------------------------------------------------------------------- /extlib/tinymce/jscripts/tiny_mce/plugins/advhr/editor_plugin.js: -------------------------------------------------------------------------------- 1 | (function(){tinymce.create("tinymce.plugins.AdvancedHRPlugin",{init:function(a,b){a.addCommand("mceAdvancedHr",function(){a.windowManager.open({file:b+"/rule.htm",width:250+parseInt(a.getLang("advhr.delta_width",0)),height:160+parseInt(a.getLang("advhr.delta_height",0)),inline:1},{plugin_url:b})});a.addButton("advhr",{title:"advhr.advhr_desc",cmd:"mceAdvancedHr"});a.onNodeChange.add(function(d,c,e){c.setActive("advhr",e.nodeName=="HR")});a.onClick.add(function(c,d){d=d.target;if(d.nodeName==="HR"){c.selection.select(d)}})},getInfo:function(){return{longname:"Advanced HR",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/advhr",version:tinymce.majorVersion+"."+tinymce.minorVersion}}});tinymce.PluginManager.add("advhr",tinymce.plugins.AdvancedHRPlugin)})(); -------------------------------------------------------------------------------- /extlib/tinymce/jscripts/tiny_mce/plugins/advhr/langs/en_dlg.js: -------------------------------------------------------------------------------- 1 | tinyMCE.addI18n('en.advhr_dlg',{size:"Height",noshade:"No Shadow",width:"Width",normal:"Normal",widthunits:"Units"}); -------------------------------------------------------------------------------- /extlib/tinymce/jscripts/tiny_mce/plugins/advimage/css/advimage.css: -------------------------------------------------------------------------------- 1 | #src_list, #over_list, #out_list {width:280px;} 2 | .mceActionPanel {margin-top:7px;} 3 | .alignPreview {border:1px solid #000; width:140px; height:140px; overflow:hidden; padding:5px;} 4 | .checkbox {border:0;} 5 | .panel_wrapper div.current {height:305px;} 6 | #prev {margin:0; border:1px solid #000; width:428px; height:150px; overflow:auto;} 7 | #align, #classlist {width:150px;} 8 | #width, #height {vertical-align:middle; width:50px; text-align:center;} 9 | #vspace, #hspace, #border {vertical-align:middle; width:30px; text-align:center;} 10 | #class_list {width:180px;} 11 | input {width: 280px;} 12 | #constrain, #onmousemovecheck {width:auto;} 13 | #id, #dir, #lang, #usemap, #longdesc {width:200px;} 14 | -------------------------------------------------------------------------------- /extlib/tinymce/jscripts/tiny_mce/plugins/advimage/editor_plugin.js: -------------------------------------------------------------------------------- 1 | (function(){tinymce.create("tinymce.plugins.AdvancedImagePlugin",{init:function(a,b){a.addCommand("mceAdvImage",function(){if(a.dom.getAttrib(a.selection.getNode(),"class","").indexOf("mceItem")!=-1){return}a.windowManager.open({file:b+"/image.htm",width:480+parseInt(a.getLang("advimage.delta_width",0)),height:385+parseInt(a.getLang("advimage.delta_height",0)),inline:1},{plugin_url:b})});a.addButton("image",{title:"advimage.image_desc",cmd:"mceAdvImage"})},getInfo:function(){return{longname:"Advanced image",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/advimage",version:tinymce.majorVersion+"."+tinymce.minorVersion}}});tinymce.PluginManager.add("advimage",tinymce.plugins.AdvancedImagePlugin)})(); -------------------------------------------------------------------------------- /extlib/tinymce/jscripts/tiny_mce/plugins/advimage/img/sample.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/extlib/tinymce/jscripts/tiny_mce/plugins/advimage/img/sample.gif -------------------------------------------------------------------------------- /extlib/tinymce/jscripts/tiny_mce/plugins/advlink/css/advlink.css: -------------------------------------------------------------------------------- 1 | .mceLinkList, .mceAnchorList, #targetlist {width:280px;} 2 | .mceActionPanel {margin-top:7px;} 3 | .panel_wrapper div.current {height:320px;} 4 | #classlist, #title, #href {width:280px;} 5 | #popupurl, #popupname {width:200px;} 6 | #popupwidth, #popupheight, #popupleft, #popuptop {width:30px;vertical-align:middle;text-align:center;} 7 | #id, #style, #classes, #target, #dir, #hreflang, #lang, #charset, #type, #rel, #rev, #tabindex, #accesskey {width:200px;} 8 | #events_panel input {width:200px;} 9 | -------------------------------------------------------------------------------- /extlib/tinymce/jscripts/tiny_mce/plugins/autosave/langs/en.js: -------------------------------------------------------------------------------- 1 | tinyMCE.addI18n('en.autosave',{ 2 | restore_content: "Restore auto-saved content", 3 | warning_message: "If you restore the saved content, you will lose all the content that is currently in the editor.\n\nAre you sure you want to restore the saved content?" 4 | }); -------------------------------------------------------------------------------- /extlib/tinymce/jscripts/tiny_mce/plugins/emotions/editor_plugin.js: -------------------------------------------------------------------------------- 1 | (function(a){a.create("tinymce.plugins.EmotionsPlugin",{init:function(b,c){b.addCommand("mceEmotion",function(){b.windowManager.open({file:c+"/emotions.htm",width:250+parseInt(b.getLang("emotions.delta_width",0)),height:160+parseInt(b.getLang("emotions.delta_height",0)),inline:1},{plugin_url:c})});b.addButton("emotions",{title:"emotions.emotions_desc",cmd:"mceEmotion"})},getInfo:function(){return{longname:"Emotions",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/emotions",version:a.majorVersion+"."+a.minorVersion}}});a.PluginManager.add("emotions",a.plugins.EmotionsPlugin)})(tinymce); -------------------------------------------------------------------------------- /extlib/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-cool.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/extlib/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-cool.gif -------------------------------------------------------------------------------- /extlib/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-cry.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/extlib/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-cry.gif -------------------------------------------------------------------------------- /extlib/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-embarassed.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/extlib/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-embarassed.gif -------------------------------------------------------------------------------- /extlib/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-foot-in-mouth.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/extlib/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-foot-in-mouth.gif -------------------------------------------------------------------------------- /extlib/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-frown.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/extlib/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-frown.gif -------------------------------------------------------------------------------- /extlib/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-innocent.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/extlib/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-innocent.gif -------------------------------------------------------------------------------- /extlib/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-kiss.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/extlib/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-kiss.gif -------------------------------------------------------------------------------- /extlib/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-laughing.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/extlib/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-laughing.gif -------------------------------------------------------------------------------- /extlib/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-money-mouth.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/extlib/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-money-mouth.gif -------------------------------------------------------------------------------- /extlib/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-sealed.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/extlib/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-sealed.gif -------------------------------------------------------------------------------- /extlib/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-smile.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/extlib/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-smile.gif -------------------------------------------------------------------------------- /extlib/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-surprised.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/extlib/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-surprised.gif -------------------------------------------------------------------------------- /extlib/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-tongue-out.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/extlib/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-tongue-out.gif -------------------------------------------------------------------------------- /extlib/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-undecided.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/extlib/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-undecided.gif -------------------------------------------------------------------------------- /extlib/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-wink.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/extlib/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-wink.gif -------------------------------------------------------------------------------- /extlib/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-yell.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/extlib/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-yell.gif -------------------------------------------------------------------------------- /extlib/tinymce/jscripts/tiny_mce/plugins/emotions/langs/en_dlg.js: -------------------------------------------------------------------------------- 1 | tinyMCE.addI18n('en.emotions_dlg',{cry:"Cry",cool:"Cool",desc:"Emotions",title:"Insert Emotion",usage:"Use left and right arrows to navigate.",yell:"Yell",wink:"Wink",undecided:"Undecided","tongue_out":"Tongue Out",surprised:"Surprised",smile:"Smile",sealed:"Sealed","money_mouth":"Money Mouth",laughing:"Laughing",kiss:"Kiss",innocent:"Innocent",frown:"Frown","foot_in_mouth":"Foot in Mouth",embarassed:"Embarassed"}); 2 | -------------------------------------------------------------------------------- /extlib/tinymce/jscripts/tiny_mce/plugins/example/editor_plugin.js: -------------------------------------------------------------------------------- 1 | (function(){tinymce.PluginManager.requireLangPack("example");tinymce.create("tinymce.plugins.ExamplePlugin",{init:function(a,b){a.addCommand("mceExample",function(){a.windowManager.open({file:b+"/dialog.htm",width:320+parseInt(a.getLang("example.delta_width",0)),height:120+parseInt(a.getLang("example.delta_height",0)),inline:1},{plugin_url:b,some_custom_arg:"custom arg"})});a.addButton("example",{title:"example.desc",cmd:"mceExample",image:b+"/img/example.gif"});a.onNodeChange.add(function(d,c,e){c.setActive("example",e.nodeName=="IMG")})},createControl:function(b,a){return null},getInfo:function(){return{longname:"Example plugin",author:"Some author",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/example",version:"1.0"}}});tinymce.PluginManager.add("example",tinymce.plugins.ExamplePlugin)})(); -------------------------------------------------------------------------------- /extlib/tinymce/jscripts/tiny_mce/plugins/example/img/example.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/extlib/tinymce/jscripts/tiny_mce/plugins/example/img/example.gif -------------------------------------------------------------------------------- /extlib/tinymce/jscripts/tiny_mce/plugins/example/js/dialog.js: -------------------------------------------------------------------------------- 1 | tinyMCEPopup.requireLangPack(); 2 | 3 | var ExampleDialog = { 4 | init : function() { 5 | var f = document.forms[0]; 6 | 7 | // Get the selected contents as text and place it in the input 8 | f.someval.value = tinyMCEPopup.editor.selection.getContent({format : 'text'}); 9 | f.somearg.value = tinyMCEPopup.getWindowArg('some_custom_arg'); 10 | }, 11 | 12 | insert : function() { 13 | // Insert the contents from the input into the document 14 | tinyMCEPopup.editor.execCommand('mceInsertContent', false, document.forms[0].someval.value); 15 | tinyMCEPopup.close(); 16 | } 17 | }; 18 | 19 | tinyMCEPopup.onInit.add(ExampleDialog.init, ExampleDialog); 20 | -------------------------------------------------------------------------------- /extlib/tinymce/jscripts/tiny_mce/plugins/example/langs/en.js: -------------------------------------------------------------------------------- 1 | tinyMCE.addI18n('en.example',{ 2 | desc : 'This is just a template button' 3 | }); 4 | -------------------------------------------------------------------------------- /extlib/tinymce/jscripts/tiny_mce/plugins/example/langs/en_dlg.js: -------------------------------------------------------------------------------- 1 | tinyMCE.addI18n('en.example_dlg',{ 2 | title : 'This is just a example title' 3 | }); 4 | -------------------------------------------------------------------------------- /extlib/tinymce/jscripts/tiny_mce/plugins/example_dependency/editor_plugin.js: -------------------------------------------------------------------------------- 1 | (function(){tinymce.create("tinymce.plugins.ExampleDependencyPlugin",{init:function(a,b){},getInfo:function(){return{longname:"Example Dependency plugin",author:"Some author",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/example_dependency",version:"1.0"}}});tinymce.PluginManager.add("example_dependency",tinymce.plugins.ExampleDependencyPlugin,["example"])})(); -------------------------------------------------------------------------------- /extlib/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/alert.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/extlib/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/alert.gif -------------------------------------------------------------------------------- /extlib/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/button.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/extlib/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/button.gif -------------------------------------------------------------------------------- /extlib/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/buttons.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/extlib/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/buttons.gif -------------------------------------------------------------------------------- /extlib/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/confirm.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/extlib/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/confirm.gif -------------------------------------------------------------------------------- /extlib/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/corners.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/extlib/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/corners.gif -------------------------------------------------------------------------------- /extlib/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/horizontal.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/extlib/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/horizontal.gif -------------------------------------------------------------------------------- /extlib/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/vertical.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/extlib/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/vertical.gif -------------------------------------------------------------------------------- /extlib/tinymce/jscripts/tiny_mce/plugins/media/moxieplayer.swf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/extlib/tinymce/jscripts/tiny_mce/plugins/media/moxieplayer.swf -------------------------------------------------------------------------------- /extlib/tinymce/jscripts/tiny_mce/plugins/paste/langs/en_dlg.js: -------------------------------------------------------------------------------- 1 | tinyMCE.addI18n('en.paste_dlg',{"word_title":"Use Ctrl+V on your keyboard to paste the text into the window.","text_linebreaks":"Keep Linebreaks","text_title":"Use Ctrl+V on your keyboard to paste the text into the window."}); -------------------------------------------------------------------------------- /extlib/tinymce/jscripts/tiny_mce/plugins/paste/pasteword.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | {#paste.paste_word_desc} 4 | 5 | 6 | 7 | 8 |
9 |
{#paste.paste_word_desc}
10 | 11 |
{#paste_dlg.word_title}
12 | 13 |
14 | 15 |
16 | 17 | 18 |
19 |
20 | 21 | 22 | -------------------------------------------------------------------------------- /extlib/tinymce/jscripts/tiny_mce/plugins/preview/example.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 18 | Example of a custom preview page 19 | 20 | 21 | 22 | Editor contents:
23 |
24 | 25 |
26 | 27 | 28 | 29 | -------------------------------------------------------------------------------- /extlib/tinymce/jscripts/tiny_mce/plugins/preview/preview.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 10 | {#preview.preview_desc} 11 | 12 | 13 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /extlib/tinymce/jscripts/tiny_mce/plugins/print/editor_plugin.js: -------------------------------------------------------------------------------- 1 | (function(){tinymce.create("tinymce.plugins.Print",{init:function(a,b){a.addCommand("mcePrint",function(){a.getWin().print()});a.addButton("print",{title:"print.print_desc",cmd:"mcePrint"})},getInfo:function(){return{longname:"Print",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/print",version:tinymce.majorVersion+"."+tinymce.minorVersion}}});tinymce.PluginManager.add("print",tinymce.plugins.Print)})(); -------------------------------------------------------------------------------- /extlib/tinymce/jscripts/tiny_mce/plugins/searchreplace/css/searchreplace.css: -------------------------------------------------------------------------------- 1 | .panel_wrapper {height:85px;} 2 | .panel_wrapper div.current {height:85px;} 3 | 4 | /* IE */ 5 | * html .panel_wrapper {height:100px;} 6 | * html .panel_wrapper div.current {height:100px;} 7 | -------------------------------------------------------------------------------- /extlib/tinymce/jscripts/tiny_mce/plugins/searchreplace/langs/en_dlg.js: -------------------------------------------------------------------------------- 1 | tinyMCE.addI18n('en.searchreplace_dlg',{findwhat:"Find What",replacewith:"Replace with",direction:"Direction",up:"Up",down:"Down",mcase:"Match Case",findnext:"Find Next",allreplaced:"All occurrences of the search string were replaced.","searchnext_desc":"Find Again",notfound:"The search has been completed. The search string could not be found.","search_title":"Find","replace_title":"Find/Replace",replaceall:"Replace All",replace:"Replace"}); -------------------------------------------------------------------------------- /extlib/tinymce/jscripts/tiny_mce/plugins/spellchecker/css/content.css: -------------------------------------------------------------------------------- 1 | .mceItemHiddenSpellWord {background:url(../img/wline.gif) repeat-x bottom left; cursor:default;} 2 | -------------------------------------------------------------------------------- /extlib/tinymce/jscripts/tiny_mce/plugins/spellchecker/editor_plugin.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/extlib/tinymce/jscripts/tiny_mce/plugins/spellchecker/editor_plugin.js -------------------------------------------------------------------------------- /extlib/tinymce/jscripts/tiny_mce/plugins/spellchecker/editor_plugin_src.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/extlib/tinymce/jscripts/tiny_mce/plugins/spellchecker/editor_plugin_src.js -------------------------------------------------------------------------------- /extlib/tinymce/jscripts/tiny_mce/plugins/spellchecker/img/wline.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/extlib/tinymce/jscripts/tiny_mce/plugins/spellchecker/img/wline.gif -------------------------------------------------------------------------------- /extlib/tinymce/jscripts/tiny_mce/plugins/table/css/cell.css: -------------------------------------------------------------------------------- 1 | /* CSS file for cell dialog in the table plugin */ 2 | 3 | .panel_wrapper div.current { 4 | height: 200px; 5 | } 6 | 7 | .advfield { 8 | width: 200px; 9 | } 10 | 11 | #action { 12 | margin-bottom: 3px; 13 | } 14 | 15 | #class { 16 | width: 150px; 17 | } -------------------------------------------------------------------------------- /extlib/tinymce/jscripts/tiny_mce/plugins/table/css/row.css: -------------------------------------------------------------------------------- 1 | /* CSS file for row dialog in the table plugin */ 2 | 3 | .panel_wrapper div.current { 4 | height: 200px; 5 | } 6 | 7 | .advfield { 8 | width: 200px; 9 | } 10 | 11 | #action { 12 | margin-bottom: 3px; 13 | } 14 | 15 | #rowtype,#align,#valign,#class,#height { 16 | width: 150px; 17 | } 18 | 19 | #height { 20 | width: 50px; 21 | } 22 | 23 | .col2 { 24 | padding-left: 20px; 25 | } 26 | -------------------------------------------------------------------------------- /extlib/tinymce/jscripts/tiny_mce/plugins/table/css/table.css: -------------------------------------------------------------------------------- 1 | /* CSS file for table dialog in the table plugin */ 2 | 3 | .panel_wrapper div.current { 4 | height: 245px; 5 | } 6 | 7 | .advfield { 8 | width: 200px; 9 | } 10 | 11 | #class { 12 | width: 150px; 13 | } 14 | -------------------------------------------------------------------------------- /extlib/tinymce/jscripts/tiny_mce/plugins/table/js/merge_cells.js: -------------------------------------------------------------------------------- 1 | tinyMCEPopup.requireLangPack(); 2 | 3 | var MergeCellsDialog = { 4 | init : function() { 5 | var f = document.forms[0]; 6 | 7 | f.numcols.value = tinyMCEPopup.getWindowArg('cols', 1); 8 | f.numrows.value = tinyMCEPopup.getWindowArg('rows', 1); 9 | }, 10 | 11 | merge : function() { 12 | var func, f = document.forms[0]; 13 | 14 | tinyMCEPopup.restoreSelection(); 15 | 16 | func = tinyMCEPopup.getWindowArg('onaction'); 17 | 18 | func({ 19 | cols : f.numcols.value, 20 | rows : f.numrows.value 21 | }); 22 | 23 | tinyMCEPopup.close(); 24 | } 25 | }; 26 | 27 | tinyMCEPopup.onInit.add(MergeCellsDialog.init, MergeCellsDialog); 28 | -------------------------------------------------------------------------------- /extlib/tinymce/jscripts/tiny_mce/plugins/template/blank.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | blank_page 4 | 5 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /extlib/tinymce/jscripts/tiny_mce/plugins/template/css/template.css: -------------------------------------------------------------------------------- 1 | #frmbody { 2 | padding: 10px; 3 | background-color: #FFF; 4 | border: 1px solid #CCC; 5 | } 6 | 7 | .frmRow { 8 | margin-bottom: 10px; 9 | } 10 | 11 | #templatesrc { 12 | border: none; 13 | width: 320px; 14 | height: 240px; 15 | } 16 | 17 | .title { 18 | padding-bottom: 5px; 19 | } 20 | 21 | .mceActionPanel { 22 | padding-top: 5px; 23 | } 24 | -------------------------------------------------------------------------------- /extlib/tinymce/jscripts/tiny_mce/plugins/template/langs/en_dlg.js: -------------------------------------------------------------------------------- 1 | tinyMCE.addI18n('en.template_dlg',{title:"Templates",label:"Template","desc_label":"Description",desc:"Insert Predefined Template Content",select:"Select a Template",preview:"Preview",warning:"Warning: Updating a template with a different one may cause data loss.","mdate_format":"%Y-%m-%d %H:%M:%S","cdate_format":"%Y-%m-%d %H:%M:%S","months_long":"January,February,March,April,May,June,July,August,September,October,November,December","months_short":"Jan,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,Dec","day_long":"Sunday,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday,Sunday","day_short":"Sun,Mon,Tue,Wed,Thu,Fri,Sat,Sun"}); -------------------------------------------------------------------------------- /extlib/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/css/attributes.css: -------------------------------------------------------------------------------- 1 | .panel_wrapper div.current { 2 | height: 290px; 3 | } 4 | 5 | #id, #style, #title, #dir, #hreflang, #lang, #classlist, #tabindex, #accesskey { 6 | width: 200px; 7 | } 8 | 9 | #events_panel input { 10 | width: 200px; 11 | } 12 | -------------------------------------------------------------------------------- /extlib/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/css/popup.css: -------------------------------------------------------------------------------- 1 | input.field, select.field {width:200px;} 2 | input.picker {width:179px; margin-left: 5px;} 3 | input.disabled {border-color:#F2F2F2;} 4 | img.picker {vertical-align:text-bottom; cursor:pointer;} 5 | h1 {padding: 0 0 5px 0;} 6 | .panel_wrapper div.current {height:160px;} 7 | #xhtmlxtrasdel .panel_wrapper div.current, #xhtmlxtrasins .panel_wrapper div.current {height: 230px;} 8 | a.browse span {display:block; width:20px; height:20px; background:url('../../../themes/advanced/img/icons.gif') -140px -20px;} 9 | #datetime {width:180px;} 10 | -------------------------------------------------------------------------------- /extlib/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/js/abbr.js: -------------------------------------------------------------------------------- 1 | /** 2 | * abbr.js 3 | * 4 | * Copyright 2009, Moxiecode Systems AB 5 | * Released under LGPL License. 6 | * 7 | * License: http://tinymce.moxiecode.com/license 8 | * Contributing: http://tinymce.moxiecode.com/contributing 9 | */ 10 | 11 | function init() { 12 | SXE.initElementDialog('abbr'); 13 | if (SXE.currentAction == "update") { 14 | SXE.showRemoveButton(); 15 | } 16 | } 17 | 18 | function insertAbbr() { 19 | SXE.insertElement('abbr'); 20 | tinyMCEPopup.close(); 21 | } 22 | 23 | function removeAbbr() { 24 | SXE.removeElement('abbr'); 25 | tinyMCEPopup.close(); 26 | } 27 | 28 | tinyMCEPopup.onInit.add(init); 29 | -------------------------------------------------------------------------------- /extlib/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/js/acronym.js: -------------------------------------------------------------------------------- 1 | /** 2 | * acronym.js 3 | * 4 | * Copyright 2009, Moxiecode Systems AB 5 | * Released under LGPL License. 6 | * 7 | * License: http://tinymce.moxiecode.com/license 8 | * Contributing: http://tinymce.moxiecode.com/contributing 9 | */ 10 | 11 | function init() { 12 | SXE.initElementDialog('acronym'); 13 | if (SXE.currentAction == "update") { 14 | SXE.showRemoveButton(); 15 | } 16 | } 17 | 18 | function insertAcronym() { 19 | SXE.insertElement('acronym'); 20 | tinyMCEPopup.close(); 21 | } 22 | 23 | function removeAcronym() { 24 | SXE.removeElement('acronym'); 25 | tinyMCEPopup.close(); 26 | } 27 | 28 | tinyMCEPopup.onInit.add(init); 29 | -------------------------------------------------------------------------------- /extlib/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/js/cite.js: -------------------------------------------------------------------------------- 1 | /** 2 | * cite.js 3 | * 4 | * Copyright 2009, Moxiecode Systems AB 5 | * Released under LGPL License. 6 | * 7 | * License: http://tinymce.moxiecode.com/license 8 | * Contributing: http://tinymce.moxiecode.com/contributing 9 | */ 10 | 11 | function init() { 12 | SXE.initElementDialog('cite'); 13 | if (SXE.currentAction == "update") { 14 | SXE.showRemoveButton(); 15 | } 16 | } 17 | 18 | function insertCite() { 19 | SXE.insertElement('cite'); 20 | tinyMCEPopup.close(); 21 | } 22 | 23 | function removeCite() { 24 | SXE.removeElement('cite'); 25 | tinyMCEPopup.close(); 26 | } 27 | 28 | tinyMCEPopup.onInit.add(init); 29 | -------------------------------------------------------------------------------- /extlib/tinymce/jscripts/tiny_mce/themes/advanced/img/colorpicker.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/extlib/tinymce/jscripts/tiny_mce/themes/advanced/img/colorpicker.jpg -------------------------------------------------------------------------------- /extlib/tinymce/jscripts/tiny_mce/themes/advanced/img/flash.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/extlib/tinymce/jscripts/tiny_mce/themes/advanced/img/flash.gif -------------------------------------------------------------------------------- /extlib/tinymce/jscripts/tiny_mce/themes/advanced/img/icons.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/extlib/tinymce/jscripts/tiny_mce/themes/advanced/img/icons.gif -------------------------------------------------------------------------------- /extlib/tinymce/jscripts/tiny_mce/themes/advanced/img/iframe.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/extlib/tinymce/jscripts/tiny_mce/themes/advanced/img/iframe.gif -------------------------------------------------------------------------------- /extlib/tinymce/jscripts/tiny_mce/themes/advanced/img/pagebreak.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/extlib/tinymce/jscripts/tiny_mce/themes/advanced/img/pagebreak.gif -------------------------------------------------------------------------------- /extlib/tinymce/jscripts/tiny_mce/themes/advanced/img/quicktime.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/extlib/tinymce/jscripts/tiny_mce/themes/advanced/img/quicktime.gif -------------------------------------------------------------------------------- /extlib/tinymce/jscripts/tiny_mce/themes/advanced/img/realmedia.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/extlib/tinymce/jscripts/tiny_mce/themes/advanced/img/realmedia.gif -------------------------------------------------------------------------------- /extlib/tinymce/jscripts/tiny_mce/themes/advanced/img/shockwave.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/extlib/tinymce/jscripts/tiny_mce/themes/advanced/img/shockwave.gif -------------------------------------------------------------------------------- /extlib/tinymce/jscripts/tiny_mce/themes/advanced/img/trans.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/extlib/tinymce/jscripts/tiny_mce/themes/advanced/img/trans.gif -------------------------------------------------------------------------------- /extlib/tinymce/jscripts/tiny_mce/themes/advanced/img/video.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/extlib/tinymce/jscripts/tiny_mce/themes/advanced/img/video.gif -------------------------------------------------------------------------------- /extlib/tinymce/jscripts/tiny_mce/themes/advanced/img/windowsmedia.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/extlib/tinymce/jscripts/tiny_mce/themes/advanced/img/windowsmedia.gif -------------------------------------------------------------------------------- /extlib/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/buttons.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/extlib/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/buttons.png -------------------------------------------------------------------------------- /extlib/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/items.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/extlib/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/items.gif -------------------------------------------------------------------------------- /extlib/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/menu_arrow.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/extlib/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/menu_arrow.gif -------------------------------------------------------------------------------- /extlib/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/menu_check.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/extlib/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/menu_check.gif -------------------------------------------------------------------------------- /extlib/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/progress.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/extlib/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/progress.gif -------------------------------------------------------------------------------- /extlib/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/tabs.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/extlib/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/tabs.gif -------------------------------------------------------------------------------- /extlib/tinymce/jscripts/tiny_mce/themes/advanced/skins/o2k7/img/button_bg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/extlib/tinymce/jscripts/tiny_mce/themes/advanced/skins/o2k7/img/button_bg.png -------------------------------------------------------------------------------- /extlib/tinymce/jscripts/tiny_mce/themes/advanced/skins/o2k7/img/button_bg_black.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/extlib/tinymce/jscripts/tiny_mce/themes/advanced/skins/o2k7/img/button_bg_black.png -------------------------------------------------------------------------------- /extlib/tinymce/jscripts/tiny_mce/themes/advanced/skins/o2k7/img/button_bg_silver.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/extlib/tinymce/jscripts/tiny_mce/themes/advanced/skins/o2k7/img/button_bg_silver.png -------------------------------------------------------------------------------- /extlib/tinymce/jscripts/tiny_mce/themes/advanced/skins/o2k7/ui_silver.css: -------------------------------------------------------------------------------- 1 | /* Silver */ 2 | .o2k7SkinSilver .mceToolbar .mceToolbarStart span, .o2k7SkinSilver .mceButton, .o2k7SkinSilver .mceSplitButton, .o2k7SkinSilver .mceSeparator, .o2k7SkinSilver .mceSplitButton a.mceOpen, .o2k7SkinSilver .mceListBox a.mceOpen {background-image:url(img/button_bg_silver.png)} 3 | .o2k7SkinSilver td.mceToolbar, .o2k7SkinSilver td.mceStatusbar, .o2k7SkinSilver .mceMenuItemTitle a {background:#eee} 4 | .o2k7SkinSilver .mceListBox .mceText {background:#FFF} 5 | .o2k7SkinSilver .mceExternalToolbar, .o2k7SkinSilver .mceListBox .mceText, .o2k7SkinSilver div.mceMenu, .o2k7SkinSilver table.mceLayout, .o2k7SkinSilver .mceMenuItemTitle a, .o2k7SkinSilver table.mceLayout tr.mceFirst td, .o2k7SkinSilver table.mceLayout, .o2k7SkinSilver .mceMenuItemTitle a, .o2k7SkinSilver table.mceLayout tr.mceLast td, .o2k7SkinSilver .mceIframeContainer {border-color: #bbb} 6 | -------------------------------------------------------------------------------- /extlib/tinymce/jscripts/tiny_mce/themes/simple/img/icons.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/extlib/tinymce/jscripts/tiny_mce/themes/simple/img/icons.gif -------------------------------------------------------------------------------- /extlib/tinymce/jscripts/tiny_mce/themes/simple/langs/en.js: -------------------------------------------------------------------------------- 1 | tinyMCE.addI18n('en.simple',{"cleanup_desc":"Cleanup Messy Code","redo_desc":"Redo (Ctrl+Y)","undo_desc":"Undo (Ctrl+Z)","numlist_desc":"Insert/Remove Numbered List","bullist_desc":"Insert/Remove Bulleted List","striketrough_desc":"Strikethrough","underline_desc":"Underline (Ctrl+U)","italic_desc":"Italic (Ctrl+I)","bold_desc":"Bold (Ctrl+B)"}); -------------------------------------------------------------------------------- /extlib/tinymce/jscripts/tiny_mce/themes/simple/skins/default/content.css: -------------------------------------------------------------------------------- 1 | body, td, pre { 2 | font-family: Verdana, Arial, Helvetica, sans-serif; 3 | font-size: 10px; 4 | } 5 | 6 | body { 7 | background-color: #FFFFFF; 8 | } 9 | 10 | .mceVisualAid { 11 | border: 1px dashed #BBBBBB; 12 | } 13 | 14 | /* MSIE specific */ 15 | 16 | * html body { 17 | scrollbar-3dlight-color: #F0F0EE; 18 | scrollbar-arrow-color: #676662; 19 | scrollbar-base-color: #F0F0EE; 20 | scrollbar-darkshadow-color: #DDDDDD; 21 | scrollbar-face-color: #E0E0DD; 22 | scrollbar-highlight-color: #F0F0EE; 23 | scrollbar-shadow-color: #F0F0EE; 24 | scrollbar-track-color: #F5F5F5; 25 | } 26 | -------------------------------------------------------------------------------- /extlib/tinymce/jscripts/tiny_mce/themes/simple/skins/o2k7/content.css: -------------------------------------------------------------------------------- 1 | body, td, pre {font-family:Verdana, Arial, Helvetica, sans-serif; font-size:10px;} 2 | 3 | body {background: #FFF;} 4 | .mceVisualAid {border: 1px dashed #BBB;} 5 | 6 | /* IE */ 7 | 8 | * html body { 9 | scrollbar-3dlight-color: #F0F0EE; 10 | scrollbar-arrow-color: #676662; 11 | scrollbar-base-color: #F0F0EE; 12 | scrollbar-darkshadow-color: #DDDDDD; 13 | scrollbar-face-color: #E0E0DD; 14 | scrollbar-highlight-color: #F0F0EE; 15 | scrollbar-shadow-color: #F0F0EE; 16 | scrollbar-track-color: #F5F5F5; 17 | } 18 | -------------------------------------------------------------------------------- /extlib/tinymce/jscripts/tiny_mce/themes/simple/skins/o2k7/img/button_bg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/extlib/tinymce/jscripts/tiny_mce/themes/simple/skins/o2k7/img/button_bg.png -------------------------------------------------------------------------------- /installation/index.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/installation/index.php -------------------------------------------------------------------------------- /installation/installer/data/index.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/installation/installer/data/index.php -------------------------------------------------------------------------------- /installation/installer/data/lang/index.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/installation/installer/data/lang/index.php -------------------------------------------------------------------------------- /installation/installer/data/templates/dbdone.phtml: -------------------------------------------------------------------------------- 1 |
2 |

{#I-15#}

3 |

4 |
5 |
6 | 7 | 8 | {#message#} 9 | 10 | 11 |
12 |

13 |
14 | 15 |
16 |
-------------------------------------------------------------------------------- /installation/installer/data/templates/error.phtml: -------------------------------------------------------------------------------- 1 |
2 |

{#I-12#}

3 |

4 | 5 |

{#ERROR#}

6 | 7 |

{#I-13#}

-------------------------------------------------------------------------------- /installation/installer/data/templates/error_db.phtml: -------------------------------------------------------------------------------- 1 |
2 |

{#I-12#}

3 |

4 | 5 |

{#ERROR#}

6 | 7 |

{#I-13#}

8 | 9 |
10 | 11 |
12 |

13 |
14 | 15 |
-------------------------------------------------------------------------------- /installation/installer/data/templates/finish.phtml: -------------------------------------------------------------------------------- 1 |
2 |

{#I-21#}

3 |

4 | 5 |

{#I-22#} {#I-31#}
{#login_path#}

-------------------------------------------------------------------------------- /installation/installer/data/templates/images/Thumbs.db: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/installation/installer/data/templates/images/Thumbs.db -------------------------------------------------------------------------------- /installation/installer/data/templates/images/active.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/installation/installer/data/templates/images/active.gif -------------------------------------------------------------------------------- /installation/installer/data/templates/images/approve.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/installation/installer/data/templates/images/approve.gif -------------------------------------------------------------------------------- /installation/installer/data/templates/images/background.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/installation/installer/data/templates/images/background.jpg -------------------------------------------------------------------------------- /installation/installer/data/templates/images/bullet.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/installation/installer/data/templates/images/bullet.gif -------------------------------------------------------------------------------- /installation/installer/data/templates/images/button.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/installation/installer/data/templates/images/button.gif -------------------------------------------------------------------------------- /installation/installer/data/templates/images/delete.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/installation/installer/data/templates/images/delete.gif -------------------------------------------------------------------------------- /installation/installer/data/templates/images/divider.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/installation/installer/data/templates/images/divider.gif -------------------------------------------------------------------------------- /installation/installer/data/templates/images/edit.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/installation/installer/data/templates/images/edit.gif -------------------------------------------------------------------------------- /installation/installer/data/templates/images/error.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/installation/installer/data/templates/images/error.gif -------------------------------------------------------------------------------- /installation/installer/data/templates/images/footer.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/installation/installer/data/templates/images/footer.jpg -------------------------------------------------------------------------------- /installation/installer/data/templates/images/negative.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/installation/installer/data/templates/images/negative.gif -------------------------------------------------------------------------------- /installation/installer/data/templates/images/note.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/installation/installer/data/templates/images/note.gif -------------------------------------------------------------------------------- /installation/installer/data/templates/images/positive.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/installation/installer/data/templates/images/positive.gif -------------------------------------------------------------------------------- /installation/installer/data/templates/images/sidebody.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/installation/installer/data/templates/images/sidebody.gif -------------------------------------------------------------------------------- /installation/installer/data/templates/images/sidehead.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/installation/installer/data/templates/images/sidehead.gif -------------------------------------------------------------------------------- /installation/installer/data/templates/images/success.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/installation/installer/data/templates/images/success.gif -------------------------------------------------------------------------------- /installation/installer/data/templates/images/userbox.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/installation/installer/data/templates/images/userbox.gif -------------------------------------------------------------------------------- /installation/installer/data/templates/images/visitwebsite.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/installation/installer/data/templates/images/visitwebsite.gif -------------------------------------------------------------------------------- /installation/installer/data/templates/images/warning.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/installation/installer/data/templates/images/warning.gif -------------------------------------------------------------------------------- /installation/installer/data/templates/images/wrapper.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/installation/installer/data/templates/images/wrapper.gif -------------------------------------------------------------------------------- /installation/installer/data/templates/index.phtml: -------------------------------------------------------------------------------- 1 |
2 |

{#I-01#}

3 |

4 | 5 |
6 |
7 | 8 |

{#I-02#}

9 | 10 | 11 |
12 |

13 |
14 | 15 |
16 |
17 | -------------------------------------------------------------------------------- /installation/installer/data/templates/rtl.css: -------------------------------------------------------------------------------- 1 | 2 | body, #wrapper .buffer { 3 | text-align: right; 4 | direction: rtl; 5 | font-family: Arial; 6 | } 7 | 8 | #sidebar ul li { 9 | font-size:1.0em; 10 | } 11 | 12 | #footer p {text-align: right;} -------------------------------------------------------------------------------- /installation/installer/index.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/installation/installer/index.php -------------------------------------------------------------------------------- /misc_scripts/add_Guest_to_every_class.php: -------------------------------------------------------------------------------- 1 | id); 10 | 11 | foreach($class_arr as $cls){ 12 | $member=false; 13 | foreach($memberships as $mem) 14 | if($cls->id == $mem["class_id"]){ 15 | $member = true; 16 | } 17 | if(!$member){ 18 | ClassMemberships::AddMembership($user->id,$cls->id); 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /pages/index.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hackademic/hackademic/873d8b31222ff6cee8b0cbe149295e226d25396d/pages/index.php -------------------------------------------------------------------------------- /view/forgotpw.tpl: -------------------------------------------------------------------------------- 1 | {include file="_header_frontend.tpl"} 2 |
3 |
4 |

Forgot Your Password?

5 |


6 | 7 |
8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 | 18 | 19 |
16 |

17 |
20 |
21 |
22 |
23 | {include file="_footer_frontend.tpl"} -------------------------------------------------------------------------------- /view/frontendChallengeMenu.tpl: -------------------------------------------------------------------------------- 1 | {include file="_header_frontend.tpl"} 2 | 3 | 4 | 5 | 8 | 9 | 10 |
6 | {$challenge->pkg_name} 7 |
11 | {include file="_footer_frontend.tpl"} -------------------------------------------------------------------------------- /view/mainlogin.tpl: -------------------------------------------------------------------------------- 1 | {include file="_header_frontend.tpl"} 2 |
3 | {include file="user_login.tpl"} 4 |
5 | {include file="_footer_frontend.tpl"} -------------------------------------------------------------------------------- /view/readarticle.tpl: -------------------------------------------------------------------------------- 1 | {include file="_header_frontend.tpl"} 2 | 3 | 4 | 5 | 9 | 10 | 11 | 12 | 13 | 14 |
6 |

{$article->title}

7 |
{$article->date_posted|date_format}
8 |
{$article->content}
15 | {include file="_footer_frontend.tpl"} -------------------------------------------------------------------------------- /view/showChallenge.tpl: -------------------------------------------------------------------------------- 1 | {include file="_header_frontend.tpl"} 2 |
3 |
4 |

{$challenge->title}

5 |

6 | 7 | 8 | 9 | 10 | {if isset($is_logged_in) && isset($is_allowed)} 11 | 12 | 15 | 16 | {/if} 17 |
{$challenge->description}

13 |

Try it!

14 |
18 |
19 | {include file="_footer_frontend.tpl"} 20 | -------------------------------------------------------------------------------- /view/user_login.tpl: -------------------------------------------------------------------------------- 1 |
2 | 14 |
--------------------------------------------------------------------------------