diff --git a/.gitattributes b/.gitattributes old mode 100644 new mode 100755 diff --git a/.gitignore b/.gitignore old mode 100644 new mode 100755 diff --git a/.htaccess b/.htaccess deleted file mode 100755 index 87ddc0bf..00000000 --- a/.htaccess +++ /dev/null @@ -1,18 +0,0 @@ -# Custom error pages -ErrorDocument 403 /view/errors/403.html -ErrorDocument 404 /view/errors/404.html -ErrorDocument 500 /view/errors/500.html -ErrorDocument 509 /view/errors/509.html - -# Disable directory indexing -Options All -Indexes - -# Turn off Server Side Includes and CGI Execution -Options -Includes -Options -ExecCGI - -# Deny access to .htaccess file - -order allow,deny -deny from all - diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md old mode 100644 new mode 100755 diff --git a/Vagrantfile b/Vagrantfile new file mode 100755 index 00000000..9031393a --- /dev/null +++ b/Vagrantfile @@ -0,0 +1,84 @@ +# -*- mode: ruby -*- +# vi: set ft=ruby : + +# All Vagrant configuration is done below. The "2" in Vagrant.configure +# configures the configuration version (we support older styles for +# backwards compatibility). Please don't change it unless you know what +# you're doing. +Vagrant.configure(2) do |config| + # The most common configuration options are documented and commented below. + # For a complete reference, please see the online documentation at + # https://docs.vagrantup.com. + + # Every Vagrant development environment requires a box. You can search for + # boxes at https://atlas.hashicorp.com/search. + config.vm.box = "waratek/kali-mini" + + # Disable automatic box update checking. If you disable this, then + # boxes will only be checked for updates when the user runs + # `vagrant box outdated`. This is not recommended. + # config.vm.box_check_update = false + + # Create a forwarded port mapping which allows access to a specific port + # within the machine from a port on the host machine. In the example below, + # accessing "localhost:8080" will access port 80 on the guest machine. + config.vm.network "forwarded_port", guest: 80, host: 8008 + + config.vm.provision "shell", + inline: "sudo rm -rf /var/www/html" + config.vm.provision "shell", + inline: "sudo ln -s /vagrant /var/www/html" + config.vm.provision "shell", + inline: "sudo chmod -R 777 /var/www/html" + config.vm.provision "shell", + inline: "cd /var/www/html" + config.vm.provision "shell", + inline: "sudo chmod 777 ." + config.vm.provision "shell", + inline: "sudo service apache2 start && sudo mysqld_safe --skip-grant-tables" + + # Create a private network, which allows host-only access to the machine + # using a specific IP. + # config.vm.network "private_network", ip: "192.168.33.10" + + # Create a public network, which generally matched to bridged network. + # Bridged networks make the machine appear as another physical device on + # your network. + # config.vm.network "public_network" + + # Share an additional folder to the guest VM. The first argument is + # the path on the host to the actual folder. The second argument is + # the path on the guest to mount the folder. And the optional third + # argument is a set of non-required options. + # config.vm.synced_folder "../data", "/vagrant_data" + + # Provider-specific configuration so you can fine-tune various + # backing providers for Vagrant. These expose provider-specific options. + # Example for VirtualBox: + # + # config.vm.provider "virtualbox" do |vb| + # # Display the VirtualBox GUI when booting the machine + # vb.gui = true + # + # # Customize the amount of memory on the VM: + # vb.memory = "1024" + # end + # + # View the documentation for the provider you are using for more + # information on available options. + + # Define a Vagrant Push strategy for pushing to Atlas. Other push strategies + # such as FTP and Heroku are also available. See the documentation at + # https://docs.vagrantup.com/v2/push/atlas.html for more information. + # config.push.define "atlas" do |push| + # push.app = "YOUR_ATLAS_USERNAME/YOUR_APPLICATION_NAME" + # end + + # Enable provisioning with a shell script. Additional provisioners such as + # Puppet, Chef, Ansible, Salt, and Docker are also available. Please see the + # documentation for more information about their specific syntax and use. + # config.vm.provision "shell", inline: <<-SHELL + # sudo apt-get update + # sudo apt-get install -y apache2 + # SHELL +end diff --git a/admin/assets/css/nestable.css b/admin/assets/css/nestable.css old mode 100644 new mode 100755 diff --git a/admin/assets/js/jquery-1.10.2.min.js b/admin/assets/js/jquery-1.10.2.min.js old mode 100644 new mode 100755 diff --git a/admin/assets/js/jquery.nestable.js b/admin/assets/js/jquery.nestable.js old mode 100644 new mode 100755 diff --git a/admin/controller/class.AddUserController.php b/admin/controller/class.AddUserController.php old mode 100644 new mode 100755 diff --git a/admin/controller/class.OptionsController.php b/admin/controller/class.OptionsController.php old mode 100644 new mode 100755 diff --git a/admin/controller/class.ShowClassController.php b/admin/controller/class.ShowClassController.php old mode 100644 new mode 100755 diff --git a/admin/model/class.ClassChallenges.php b/admin/model/class.ClassChallenges.php old mode 100644 new mode 100755 diff --git a/admin/model/class.ClassMemberships.php b/admin/model/class.ClassMemberships.php old mode 100644 new mode 100755 diff --git a/admin/model/class.Classes.php b/admin/model/class.Classes.php old mode 100644 new mode 100755 diff --git a/admin/model/class.MenuBackend.php b/admin/model/class.MenuBackend.php old mode 100644 new mode 100755 diff --git a/admin/model/class.Options.php b/admin/model/class.Options.php old mode 100644 new mode 100755 diff --git a/admin/model/class.PageBackend.php b/admin/model/class.PageBackend.php old mode 100644 new mode 100755 diff --git a/admin/model/class.ScoringRuleBackend.php b/admin/model/class.ScoringRuleBackend.php old mode 100644 new mode 100755 diff --git a/admin/model/class.UserChallenges.php b/admin/model/class.UserChallenges.php old mode 100644 new mode 100755 diff --git a/admin/pages/menumanager.php b/admin/pages/menumanager.php old mode 100644 new mode 100755 diff --git a/admin/pages/options.php b/admin/pages/options.php old mode 100644 new mode 100755 diff --git a/admin/view/dashboard.tpl b/admin/view/dashboard.tpl old mode 100644 new mode 100755 diff --git a/admin/view/menumanager.tpl b/admin/view/menumanager.tpl old mode 100644 new mode 100755 diff --git a/admin/view/options.tpl b/admin/view/options.tpl old mode 100644 new mode 100755 diff --git a/admin/view/showclass.tpl b/admin/view/showclass.tpl old mode 100644 new mode 100755 diff --git a/assets/css/index.php b/assets/css/index.php old mode 100644 new mode 100755 diff --git a/assets/images/index.php b/assets/images/index.php old mode 100644 new mode 100755 diff --git a/assets/index.php b/assets/index.php old mode 100644 new mode 100755 diff --git a/challenges/README b/challenges/README old mode 100644 new mode 100755 diff --git a/challenges/ch002/index.php b/challenges/ch002/index.php old mode 100644 new mode 100755 diff --git a/challenges/ch003/index.php b/challenges/ch003/index.php old mode 100644 new mode 100755 diff --git a/challenges/ch004/index.php b/challenges/ch004/index.php old mode 100644 new mode 100755 diff --git a/challenges/ch009/index.php b/challenges/ch009/index.php old mode 100644 new mode 100755 diff --git a/challenges/ch021/backup/passwds b/challenges/ch021/backup/passwds old mode 100644 new mode 100755 diff --git a/challenges/ch021/backup/seo1.png b/challenges/ch021/backup/seo1.png old mode 100644 new mode 100755 diff --git a/challenges/ch021/ch021.xml b/challenges/ch021/ch021.xml old mode 100644 new mode 100755 diff --git a/challenges/ch021/index.php b/challenges/ch021/index.php old mode 100644 new mode 100755 diff --git a/challenges/ch022/auth.php.txt b/challenges/ch022/auth.php.txt old mode 100644 new mode 100755 diff --git a/challenges/ch022/ch022.xml b/challenges/ch022/ch022.xml old mode 100644 new mode 100755 diff --git a/challenges/ch022/index.php b/challenges/ch022/index.php old mode 100644 new mode 100755 diff --git a/challenges/ch023/.htaccess b/challenges/ch023/.htaccess old mode 100644 new mode 100755 diff --git a/challenges/ch023/ch023.xml b/challenges/ch023/ch023.xml old mode 100644 new mode 100755 diff --git a/challenges/ch023/hidden/.htaccess b/challenges/ch023/hidden/.htaccess old mode 100644 new mode 100755 diff --git a/challenges/ch023/hidden/index.php b/challenges/ch023/hidden/index.php old mode 100644 new mode 100755 diff --git a/challenges/ch023/hidden_key/.htpasswd b/challenges/ch023/hidden_key/.htpasswd old mode 100644 new mode 100755 diff --git a/challenges/ch023/hint_1492.txt b/challenges/ch023/hint_1492.txt old mode 100644 new mode 100755 diff --git a/challenges/ch023/hints.jpeg b/challenges/ch023/hints.jpeg old mode 100644 new mode 100755 diff --git a/challenges/ch023/hints.txt b/challenges/ch023/hints.txt old mode 100644 new mode 100755 diff --git a/challenges/ch023/index.php b/challenges/ch023/index.php old mode 100644 new mode 100755 diff --git a/challenges/ch023/logo.png b/challenges/ch023/logo.png old mode 100644 new mode 100755 diff --git a/challenges/ch023/rules.txt b/challenges/ch023/rules.txt old mode 100644 new mode 100755 diff --git a/challenges/ch023/rules2.jpeg b/challenges/ch023/rules2.jpeg old mode 100644 new mode 100755 diff --git a/challenges/ch023/winner.jpeg b/challenges/ch023/winner.jpeg old mode 100644 new mode 100755 diff --git a/challenges/ch023/winner.txt b/challenges/ch023/winner.txt old mode 100644 new mode 100755 diff --git a/challenges/ch024/ch024.xml b/challenges/ch024/ch024.xml old mode 100644 new mode 100755 diff --git a/challenges/ch024/index.php b/challenges/ch024/index.php old mode 100644 new mode 100755 diff --git a/challenges/ch024/logo2.png b/challenges/ch024/logo2.png old mode 100644 new mode 100755 diff --git a/challenges/ch024/logs.pcap b/challenges/ch024/logs.pcap old mode 100644 new mode 100755 diff --git a/challenges/ch024/products/2.jpg b/challenges/ch024/products/2.jpg old mode 100644 new mode 100755 diff --git a/challenges/ch024/products/3.jpg b/challenges/ch024/products/3.jpg old mode 100644 new mode 100755 diff --git a/challenges/ch024/products/4.jpg b/challenges/ch024/products/4.jpg old mode 100644 new mode 100755 diff --git a/challenges/ch024/products/5.jpg b/challenges/ch024/products/5.jpg old mode 100644 new mode 100755 diff --git a/challenges/ch025/back.jpg b/challenges/ch025/back.jpg old mode 100644 new mode 100755 diff --git a/challenges/ch025/ch025.xml b/challenges/ch025/ch025.xml old mode 100644 new mode 100755 diff --git a/challenges/ch025/index.php b/challenges/ch025/index.php old mode 100644 new mode 100755 diff --git a/challenges/ch025/login.jpg b/challenges/ch025/login.jpg old mode 100644 new mode 100755 diff --git a/challenges/ch025/logo2.png b/challenges/ch025/logo2.png old mode 100644 new mode 100755 diff --git a/challenges/ch025/logo3.png b/challenges/ch025/logo3.png old mode 100644 new mode 100755 diff --git a/challenges/ch025/sc.php b/challenges/ch025/sc.php old mode 100644 new mode 100755 diff --git a/challenges/ch026/1lt.png b/challenges/ch026/1lt.png old mode 100644 new mode 100755 diff --git a/challenges/ch026/1rt.png b/challenges/ch026/1rt.png old mode 100644 new mode 100755 diff --git a/challenges/ch026/2lt.png b/challenges/ch026/2lt.png old mode 100644 new mode 100755 diff --git a/challenges/ch026/2rt.png b/challenges/ch026/2rt.png old mode 100644 new mode 100755 diff --git a/challenges/ch026/alice.png b/challenges/ch026/alice.png old mode 100644 new mode 100755 diff --git a/challenges/ch026/ch026.xml b/challenges/ch026/ch026.xml old mode 100644 new mode 100755 diff --git a/challenges/ch026/eve.png b/challenges/ch026/eve.png old mode 100644 new mode 100755 diff --git a/challenges/ch026/index.php b/challenges/ch026/index.php old mode 100644 new mode 100755 diff --git a/challenges/ch027/ch027.xml b/challenges/ch027/ch027.xml old mode 100644 new mode 100755 diff --git a/challenges/ch027/index.php b/challenges/ch027/index.php old mode 100644 new mode 100755 diff --git a/challenges/ch027/logo2.png b/challenges/ch027/logo2.png old mode 100644 new mode 100755 diff --git a/challenges/ch027/newspaper.jpg b/challenges/ch027/newspaper.jpg old mode 100644 new mode 100755 diff --git a/challenges/ch027/results.txt b/challenges/ch027/results.txt old mode 100644 new mode 100755 diff --git a/challenges/ch028/1lt.png b/challenges/ch028/1lt.png old mode 100644 new mode 100755 diff --git a/challenges/ch028/1rt.png b/challenges/ch028/1rt.png old mode 100644 new mode 100755 diff --git a/challenges/ch028/2lt.png b/challenges/ch028/2lt.png old mode 100644 new mode 100755 diff --git a/challenges/ch028/2rt.png b/challenges/ch028/2rt.png old mode 100644 new mode 100755 diff --git a/challenges/ch028/alice.png b/challenges/ch028/alice.png old mode 100644 new mode 100755 diff --git a/challenges/ch028/ch028.xml b/challenges/ch028/ch028.xml old mode 100644 new mode 100755 diff --git a/challenges/ch028/eve.png b/challenges/ch028/eve.png old mode 100644 new mode 100755 diff --git a/challenges/ch028/index.php b/challenges/ch028/index.php old mode 100644 new mode 100755 diff --git a/challenges/ch029/ch029.xml b/challenges/ch029/ch029.xml old mode 100644 new mode 100755 diff --git a/challenges/ch029/forum.php b/challenges/ch029/forum.php old mode 100644 new mode 100755 diff --git a/challenges/ch029/forum.png b/challenges/ch029/forum.png old mode 100644 new mode 100755 diff --git a/challenges/ch029/index.php b/challenges/ch029/index.php old mode 100644 new mode 100755 diff --git a/challenges/ch029/rt.png b/challenges/ch029/rt.png old mode 100644 new mode 100755 diff --git a/challenges/ch030/ch030.xml b/challenges/ch030/ch030.xml old mode 100644 new mode 100755 diff --git a/challenges/ch030/cipher.txt b/challenges/ch030/cipher.txt old mode 100644 new mode 100755 diff --git a/challenges/ch030/index.php b/challenges/ch030/index.php old mode 100644 new mode 100755 diff --git a/challenges/ch030/logo.png b/challenges/ch030/logo.png old mode 100644 new mode 100755 diff --git a/challenges/ch030/public.txt b/challenges/ch030/public.txt old mode 100644 new mode 100755 diff --git a/challenges/ch031/ch031.xml b/challenges/ch031/ch031.xml old mode 100644 new mode 100755 diff --git a/challenges/ch031/checkmyluck.c b/challenges/ch031/checkmyluck.c old mode 100644 new mode 100755 diff --git a/challenges/ch031/index.php b/challenges/ch031/index.php old mode 100644 new mode 100755 diff --git a/challenges/ch031/lucky_draw1.jpg b/challenges/ch031/lucky_draw1.jpg old mode 100644 new mode 100755 diff --git a/challenges/ch032/ch032.xml b/challenges/ch032/ch032.xml old mode 100644 new mode 100755 diff --git a/challenges/ch032/help.jpg b/challenges/ch032/help.jpg old mode 100644 new mode 100755 diff --git a/challenges/ch032/index.php b/challenges/ch032/index.php old mode 100644 new mode 100755 diff --git a/challenges/ch032/scripts/Debugging: Output of GDB.txt b/challenges/ch032/scripts/Debugging: Output of GDB.txt old mode 100644 new mode 100755 diff --git a/challenges/ch032/scripts/main-file-thats-executed.c b/challenges/ch032/scripts/main-file-thats-executed.c old mode 100644 new mode 100755 diff --git a/challenges/ch033/.goutputstream-PDFBHX b/challenges/ch033/.goutputstream-PDFBHX old mode 100644 new mode 100755 diff --git a/challenges/ch033/ch033.xml b/challenges/ch033/ch033.xml old mode 100644 new mode 100755 diff --git a/challenges/ch033/index.php b/challenges/ch033/index.php old mode 100644 new mode 100755 diff --git a/challenges/ch033/qsazlkd.php b/challenges/ch033/qsazlkd.php old mode 100644 new mode 100755 diff --git a/challenges/ch033/save_planet.png b/challenges/ch033/save_planet.png old mode 100644 new mode 100755 diff --git a/challenges/ch034/ch014.xml~ b/challenges/ch034/ch014.xml~ old mode 100644 new mode 100755 diff --git a/challenges/ch034/ch034.xml b/challenges/ch034/ch034.xml old mode 100644 new mode 100755 diff --git a/challenges/ch034/index.php b/challenges/ch034/index.php old mode 100644 new mode 100755 diff --git a/challenges/ch034/index.php~ b/challenges/ch034/index.php~ old mode 100644 new mode 100755 diff --git a/challenges/ch034/logos/1.jpg b/challenges/ch034/logos/1.jpg old mode 100644 new mode 100755 diff --git a/challenges/ch034/logos/2.jpg b/challenges/ch034/logos/2.jpg old mode 100644 new mode 100755 diff --git a/challenges/ch034/logos/3.jpg b/challenges/ch034/logos/3.jpg old mode 100644 new mode 100755 diff --git a/challenges/ch034/mobi_store.png b/challenges/ch034/mobi_store.png old mode 100644 new mode 100755 diff --git a/challenges/ch034/start_db.php b/challenges/ch034/start_db.php old mode 100644 new mode 100755 diff --git a/challenges/ch034/stop_db.php b/challenges/ch034/stop_db.php old mode 100644 new mode 100755 diff --git a/challenges/ch035/ch035.xml b/challenges/ch035/ch035.xml old mode 100644 new mode 100755 diff --git a/challenges/ch035/index.php b/challenges/ch035/index.php old mode 100644 new mode 100755 diff --git a/challenges/ch036/alien.php b/challenges/ch036/alien.php old mode 100644 new mode 100755 diff --git a/challenges/ch036/announcement.png b/challenges/ch036/announcement.png old mode 100644 new mode 100755 diff --git a/challenges/ch036/ch036.xml b/challenges/ch036/ch036.xml old mode 100644 new mode 100755 diff --git a/challenges/ch036/index.php b/challenges/ch036/index.php old mode 100644 new mode 100755 diff --git a/challenges/ch036/text_replacer.png b/challenges/ch036/text_replacer.png old mode 100644 new mode 100755 diff --git a/challenges/ch037/background.jpg b/challenges/ch037/background.jpg old mode 100644 new mode 100755 diff --git a/challenges/ch037/cal.txt b/challenges/ch037/cal.txt old mode 100644 new mode 100755 diff --git a/challenges/ch037/cal2.txt b/challenges/ch037/cal2.txt old mode 100644 new mode 100755 diff --git a/challenges/ch037/calendar.png b/challenges/ch037/calendar.png old mode 100644 new mode 100755 diff --git a/challenges/ch037/ch037.xml b/challenges/ch037/ch037.xml old mode 100644 new mode 100755 diff --git a/challenges/ch037/index.php b/challenges/ch037/index.php old mode 100644 new mode 100755 diff --git a/challenges/ch037/savedpassword.txt b/challenges/ch037/savedpassword.txt old mode 100644 new mode 100755 diff --git a/challenges/ch038/.htaccess b/challenges/ch038/.htaccess old mode 100644 new mode 100755 diff --git a/challenges/ch038/ch038.xml b/challenges/ch038/ch038.xml old mode 100644 new mode 100755 diff --git a/challenges/ch038/index.php b/challenges/ch038/index.php old mode 100644 new mode 100755 diff --git a/challenges/ch038/key.txt b/challenges/ch038/key.txt old mode 100644 new mode 100755 diff --git a/challenges/ch038/spell.png b/challenges/ch038/spell.png old mode 100644 new mode 100755 diff --git a/challenges/ch038/spell.shtml b/challenges/ch038/spell.shtml old mode 100644 new mode 100755 diff --git a/challenges/ch039/ch039.xml b/challenges/ch039/ch039.xml old mode 100644 new mode 100755 diff --git a/challenges/ch039/encrypted1.txt b/challenges/ch039/encrypted1.txt old mode 100644 new mode 100755 diff --git a/challenges/ch039/encrypted2.txt b/challenges/ch039/encrypted2.txt old mode 100644 new mode 100755 diff --git a/challenges/ch039/index.php b/challenges/ch039/index.php old mode 100644 new mode 100755 diff --git a/challenges/ch039/index.php~ b/challenges/ch039/index.php~ old mode 100644 new mode 100755 diff --git a/challenges/ch039/plain1.txt b/challenges/ch039/plain1.txt old mode 100644 new mode 100755 diff --git a/challenges/ch039/xor1.png b/challenges/ch039/xor1.png old mode 100644 new mode 100755 diff --git a/challenges/ch040/backup_secret/emails b/challenges/ch040/backup_secret/emails old mode 100644 new mode 100755 diff --git a/challenges/ch040/backup_secret/mapping b/challenges/ch040/backup_secret/mapping old mode 100644 new mode 100755 diff --git a/challenges/ch040/backup_secret/passwds b/challenges/ch040/backup_secret/passwds old mode 100644 new mode 100755 diff --git a/challenges/ch040/ch040.xml b/challenges/ch040/ch040.xml old mode 100644 new mode 100755 diff --git a/challenges/ch040/index.php b/challenges/ch040/index.php old mode 100644 new mode 100755 diff --git a/challenges/ch040/robots.txt b/challenges/ch040/robots.txt old mode 100644 new mode 100755 diff --git a/challenges/ch040/seo1.png b/challenges/ch040/seo1.png old mode 100644 new mode 100755 diff --git a/challenges/ch041/football2.jpg b/challenges/ch041/football2.jpg new file mode 100755 index 00000000..7d23ce10 Binary files /dev/null and b/challenges/ch041/football2.jpg differ diff --git a/challenges/ch041/happy.jpg b/challenges/ch041/happy.jpg new file mode 100755 index 00000000..6067ec95 Binary files /dev/null and b/challenges/ch041/happy.jpg differ diff --git a/challenges/ch041/images/happy.jpg b/challenges/ch041/images/happy.jpg new file mode 100755 index 00000000..6067ec95 Binary files /dev/null and b/challenges/ch041/images/happy.jpg differ diff --git a/challenges/ch041/images/images.jpg b/challenges/ch041/images/images.jpg new file mode 100755 index 00000000..84fe154e Binary files /dev/null and b/challenges/ch041/images/images.jpg differ diff --git a/challenges/ch041/images/sad.jpg b/challenges/ch041/images/sad.jpg new file mode 100755 index 00000000..3f4b0183 Binary files /dev/null and b/challenges/ch041/images/sad.jpg differ diff --git a/challenges/ch041/index.php b/challenges/ch041/index.php new file mode 100755 index 00000000..16840f95 --- /dev/null +++ b/challenges/ch041/index.php @@ -0,0 +1,23198 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +Sample 1 + + + + + +

Admin

+ +

+

+ +

Login page

+

+ + +
+
+ + + + +
+
+ + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+
+

+
+
+
+ + + + + diff --git a/challenges/ch041/newchallenge1.xml b/challenges/ch041/newchallenge1.xml new file mode 100755 index 00000000..876bae82 --- /dev/null +++ b/challenges/ch041/newchallenge1.xml @@ -0,0 +1,20 @@ + + + New Challenge 1 + + Andreas Venieris, + Konstantinos Papapanagiotou, + Anastasios Stasinopoulos, + Vasilios Vlachos, + Alexandros Papanikolaou + + web + + FootbalLovers ] and has challenged you to get the admin privileges to the website by setting up a ctf type challenge. All you have to do is find out the login credentials of the website and login as admin.

+ ]]> +Hints and tips : +First thing you will notice is, that this admin page has right click disabled on it (or rather both the clicks). This is a little annoying thing, but some web developers use it to hide their source code and maybe some private images. You would have to bypass this and get your way around to the credentials, maybe hidden or encrypted. There are some more hints as you proceed through the challenge. Here's one : "Images can reveal way too much". All the Best, don't lose hope !!

reference_1
+ +
+
diff --git a/challenges/ch041/pwd2.php b/challenges/ch041/pwd2.php new file mode 100755 index 00000000..4292dcc6 --- /dev/null +++ b/challenges/ch041/pwd2.php @@ -0,0 +1,34 @@ + + + + + +DeskTest : Funrally Axis Cube Black Base +
+
+
+


Congratulations :D

You NAILED IT !
"; + + die(); + } + + else + { + + echo "



Nice Try..

Invalid Username/Password. Try Again !!
"; + + die(); + } + +?> + + + diff --git a/challenges/ch041/sad.jpg b/challenges/ch041/sad.jpg new file mode 100755 index 00000000..3f4b0183 Binary files /dev/null and b/challenges/ch041/sad.jpg differ diff --git a/challenges/ch041/style.css b/challenges/ch041/style.css new file mode 100755 index 00000000..ad58ac03 --- /dev/null +++ b/challenges/ch041/style.css @@ -0,0 +1,15 @@ +body { +width: 600px; + background-image: url("football2.jpg"); +padding:30px; +font-size: 9pt; +font-family: fixedsys, LucidaTerminal, monospace; +color: #FFFFFF; +text-align: left; +overflow:auto; +border: 5px solid #FFFFFF; +margin-left:200px; +margin-top:50px; +margin-bottom:50px; +} +h1 {margin-bottom:-10px;margin-top:-10px;} diff --git a/challenges/ch042/index.php b/challenges/ch042/index.php new file mode 100755 index 00000000..d44b433e --- /dev/null +++ b/challenges/ch042/index.php @@ -0,0 +1,5 @@ + diff --git a/challenges/ch042/inside/contact.css b/challenges/ch042/inside/contact.css new file mode 100755 index 00000000..9b1ff6cf --- /dev/null +++ b/challenges/ch042/inside/contact.css @@ -0,0 +1,637 @@ +html { + font-family: 'Gentium Book Basic', serif; + height:100%; + background-color: #FFF; + font-size: 100%; +} + +body{ + height: 100%; + margin: 0px; + min-width: 350px; + width: 100%; +} + +#sideCarNav{ + position: fixed; + width: 260px; + z-index: -1; + top: 0; + right: 0; + bottom: 0; + height: 100%; + line-height: 1em; + text-align: left; + overflow: auto; + visibility: hidden; + background-color: #FFF; + box-sizing:border-box; + transition:height 0s linear 0.14s, visibility 0s linear 0.14s; +} + +.clearfix:after{ + clear: both; +} + +.clearfix:before, .clearfix:after{ + content: " "; + display: table; +} + +#siteWrapper{ + background-color:#FFF; + position: relative; + padding: 0px; + box-sizing:border-box; + font-size: 1.125em; + line-height: 1.6em; + letter-spacing: 0; + font-weight: 400; + font-style: normal; + color: rgba(26, 26, 26, 0.6); + +} + +#header { + background-color: transparent; + position: absolute; + width: 100%; + padding: 0px 1.0256%; + box-sizing:border-box; + z-index: 1000; + top: 0; + left: 0; + line-height: 1em; /* inherited from #siteWrapper was 1.6em; */ +} + +header, nav, figure, main, #content, #prefooter, footer { + display: block; +} + +.inner-header{ + padding: 20px 0px; + display: table; + width: 100%; + box-sizing:border-box; + /*animation:1s ease-in-out 0s normal none 1 running header-anim;*/ /*keyframes part missing */ +} + +.inner-header { + margin: auto; +} + + +#header #logoWrapper, #header #headernav{ + box-sizing:border-box; + display: table-cell; + vertical-align: middle; +} + +#header #logoWrapper, #header #logoImage { + width: 140px; +} + +#logoImage { + margin: 0; + max-width: 100%; +} + +h1:first-child, h2:first-child, h3:first-child, .entry-title:first-child{ + margin-top: 0px; +} + +h1, h2, h3, .entry-title { + margin: 1em 0 0.5em; +} + +.nav-wrapper nav > div { + display: inline-block; + vertical-align: middle; + margin: 0px; +} + +#headernav nav .active > a { + color: #FFF; +} + +#headernav nav a{ + display: inline-block; + position: relative; + font-family: 'Gentium Book Basic', serif; + font-size: 0.7em; + text-transform: uppercase; + text-decoration: none; + letter-spacing: 2px; + font-weight: 400; + font-style: normal; + line-height: 1em; + color: rgba(255, 255, 255, 0.8); +} + +.nav-wrapper nav > div a { + display: block; + padding: 0.75em 1em; + -moz-transition:color 0.1s ease-in-out 0s; + -webkit-transition:color 0.1s ease-in-out 0s; +} + +.nav-wrapper nav > div a:hover { + color: rgba(255, 255, 255, 1); +} + + +h1, .entry-title { + color: rgba(26, 26, 26, 0.9); +} + +h1, .entry-title{ + line-height: 1.2em; + font-family: 'Gentium Book Basic', serif; + text-transform: none; + letter-spacing: 0; + font-weight: 400; + font-style: normal; +} + +h1, h2, h3 { + text-rendering:optimizelegibility; +} + +#logoImage a { + display: block; +} + +#header a{ + text-decoration: none; +} + +a { + text-decoration: none; + color: rgba(26, 26, 26, 0.6); + background: none repeat scroll 0% 0% transparent; +} + +#header #headernav { + text-align: right; +} + +#headernav { + vertical-align: top !important; + white-space: nowrap; +} + +#header #mainNavWrapper { + position: relative; + z-index: 1000; +} +#mainNavWrapper{ + margin-top: 24px; +} + +#headernav nav > div:last-child a { + background-color: transparent; + border: 2px solid #FFF; + color:#FFF; +} + +#headernav nav > div:last-child a { + font-family: 'Gentium Book Basic', serif; + text-transform: uppercase; + text-decoration: none; + letter-spacing: 2px; + font-weight: 400; + font-style: normal; + margin-left: 1em; + padding: 1em 1.5em !important; + display: block; + -moz-transition: background-color 0.1s ease-in-out 0s, color 0.1s ease-in-out 0s; + -webkit-transition: background-color 0.1s ease-in-out 0s, color 0.1s ease-in-out 0s; +} + +#headernav nav > div:last-child a:hover { + background-color: #FFF; + color: #575757; +} + +.banner-thumbnail-wrapper { + position: absolute; + background-color: rgba(0, 0, 0, 0.7); + z-index: 99; + background: url("images/bg23.jpg") no-repeat center center fixed; + -webkit-background-size:cover; + background-size: cover; +} + +#thumbnail { + position: absolute; + top: 0px; + right: 0px; + bottom: 0px; + left: 0px; + animation:0.6s ease-in-out 0s normal none 1 running feature-bg-anim; +} + + +.banner-thumbnail-wrapper{ + position: relative; + overflow: hidden; + width: 100%; + min-height: 0; + padding: 155px 0; +} + +figure { + margin: 0; +} + +img { + +} + +.desc-wrapper{ + text-rendering:optimizelegibility; + text-align: center; + padding: 32px; + margin: 0 auto; + box-sizing:border-box; + max-width: 956px; + width: 100%; + position: relative; + z-index: 100; + animation:0.75s ease-in-out 0s normal none 1 running feature-text-anim; +} + +.desc-wrapper p{ + line-height: 1.5em; + font-family: 'Gentium Book Basic', serif; + font-size: 24px; + text-transform: none; + letter-spacing: 1px; + font-weight: 400; + font-style: italic; + color: #FFF; + margin: 20px auto; +} + +.desc-wrapper p:first-child { + /*visibility: hidden;*/ +} +.desc-wrapper p > strong { + display: block; + line-height: 1em; + font-family: 'Gentium Book Basic', serif; + font-size: 3em; + text-transform: uppercase; + font-weight: 700; + font-style: normal; + color: #FFF; +} + +.desc-wrapper p a{ + color: #FFF; + border-bottom: 1px solid #FFF; +} + +.desc-wrapper p:last-child > a{ + box-sizing:border-box; + font-family: 'Gentium Book Basic', serif; + font-size: 15px; /*change*/ + text-transform: uppercase; + letter-spacing: 2px; + font-weight: 400; + font-style: normal; + text-decoration: none; + padding: 1em 1.75em; + background: #FFF; + display: inline-block; + line-height: 1em; + margin: 10px 0px; + color: #FFF; + border: medium none; + -moz-transition:background-color 0.1s ease-in-out 0s, color 0.1s ease-in-out 0s; + -webkit-transition:background-color 0.1s ease-in-out 0s, color 0.1s ease-in-out 0s; +} + +.desc-wrapper p:last-child > a:hover { + background-color: #FFF; + color: #575757; +} + +.desc-wrapper p:last-child > a{ + background-color: transparent; + border: 2px solid #FFF !important; + color: #FFF; +} + + + + +/* grid starts*/ +.image-grid-container{ + width: 100%; + max-width: 1500px; + text-align: center; + margin: 0 auto; +} +.row { + width: 100%; +} +.row:before, .row:after{ + content: ""; + display: table; + clear: both; +} + +[class*='col-'] { + float: left; + min-height: 1px; + display: block; + padding: auto; + overflow: hidden; + margin: 0; + text-align: center; +} + +.col-3 { + width: 33.33%; +} +.col-100{ + width: 100%; +} +.col-40{ + width: 40%; +} +.col-60{ + width: 60%; +} +/* grid ends*/ + + + +/*button css starts*/ +.button-wrapper{ + padding: 17px 0px; + margin: 0; +} + +.button { + text-align: center; +} + +.button-element{ + display: inline-block; + width: 50%; + height: auto; + padding: 13px 16px; + text-align: center; + line-height: normal; + font-size: 12px; + font-style: normal; + font-weight: 600; + font-family: 'Gentium Book Basic', serif; + letter-spacing: 1px; + text-transform: uppercase; + color: #272727; + border: 2px solid; + background-color: transparent; + transition: background-color 0.1s linear 0s, color 0.1s linear 0s; + +} + +.button a:hover{ + background-color: #272727; + color: #FFF; +} +/*button css ends*/ + + + + +/* ruleblock start*/ +.ruleblock { + clear: both; + position: relative; + height: auto; + padding: 10px 0px; + margin: 0; +} +hr{ + display: block; + height: 1px; + border: 0; + border-top: 1px dotted #1A1A1A; + opacity: 0.25; + +} +/*ruleblock ends*/ + + + + +#page{ + box-sizing:border-box; + width: 100%; + margin: auto; + max-width: 1020px; + padding: 96px 32px; /* change */ +} + +#content{ + margin: auto; + width: 100%; +} + +.center-align{ + text-align: center; +} +#contactform{ + width: 80%; + margin: 0 auto; +} +.input-block-level { + min-height: 30px; + width: 100%; + display: block; + box-sizing:border-box; + margin-bottom: 20px; + font-family: 'Gentium Book Basic', serif; +} +.input-block-level{ + padding: 8px 6px 4px 15px; + margin: 0; + font-size: 17px; + letter-spacing: normal; + background-color: transparent; + border: 1px solid #CCC; + color: #000; + margin-bottom: 20px; + height: 50px; + vertical-align: middle; + border-radius: 0px; + display: inline-block; + padding-left: 4px 6px; + line-height: 20px; +} + +.input-block-level:focus{ + border: 1px solid black; +} + + + + + +/*footer*/ +/* +#footer{ + width: 100%; + background-color: #333; + margin:0; + padding: 0 0 25px 0; + border-top:4px solid gray; + color:#FFFFFF; + font-weight: 600; + font-family: 'Gentium Book Basic', serif; +} + +.inner-footer{ + width: 100%; + margin:0 auto; + max-width: 1500px; +} + +.inner-footer .module h4{ + font-weight: 500; + font-size: 1.125em; + letter-spacing: 3px; + line-height: 1.4375em; + margin-bottom: 0 0 30px 0; +} +#user-form{ + background-color: #1f1f1f; + width: 75%; + margin: 20px auto; +} +#user-form .user-email { + background: none; + font-size: 1em; + color:#ffffff; + font-weight: 300; + width: 68.6%; + float:left; + border:0; + margin: 0; + padding: 10px 15px 10px 25px; +} +.emailupdates p, .legal p{ + font-size: 15px; + line-height: 18px; + margin-bottom: 15px; + color: #bbbbbb; +} +#user-form .user-submit { + margin-top: 10px; +} +#icons{ + margin: 0; + padding: 0; + position: relative; +} +#icons a{ + top:0; +} +#icons img:hover{ + cursor: pointer; +} +.footer-bottom{ + width: 100%; + background-color: #1f1f1f; + margin: 0; + padding: 0; +} +.footer-bottom-inner{ + width: 53.7%; + margin: 0 auto; + color: #FFFFFF; + border-top: 8px solid #1f1f1f; + display: table; +} +.footer-bottom-inner .bottom-logo, .footer-bottom-inner .bottom-desc{ + box-sizing:border-box; + display: table-cell; + vertical-align: middle; +} +.footer-bottom-inner .bottom-desc{ + white-space: nowrap; + position: relative; + text-align: center; +} +.footer-bottom-inner .bottom-desc-text{ + display: block; + text-align: right; +} +*/ +/*new footer*/ + +footer{ + background-color: white; + color: #10C1FA; + font-size: 0.85em; + border-top: 1px solid #ECE5E5; +} +footer .social{ + margin: 5px 20px; +} +footer .social img{ + margin: 12px auto; + border: 1px solid #F8F6F6; + border-radius: 4px; + padding: 2px; +} +footer a:hover{ + text-decoration: underline; +} +footer a:visited{ + text-decoration: none; +} +footer ul{ + vertical-align: baseline; + height: 42px; + margin: 10px auto; + list-style: none; +} +footer li { + display: inline-block; +} +footer li:not(.copyli){ + padding: 0 10px; + border-right: 2px solid #F8F6F6; +} +footer ul .contactli { + color: red; +} +footer ul .copyli{ + color: black; +} + + +/*adding effect to navbar*/ +.collection a:after{ + position: absolute; + top: 100%; + left: 0px; + width: 100%; + background: none repeat scroll 0% 0% #FFFFFF; + content: ""; + opacity: 0; + transition:height 0.3s ease 0s, opacity 0.3s ease 0s, transform 0.3s, ease 0s; + height: 1px; + /*transform:translateY(-10px);*/ +} + +.collection a:hover:after, .collection a:focus:after{ + opacity: 1; + /*transform:translateY(0px);*/ + height: 2px; + +} diff --git a/challenges/ch042/inside/contact.html b/challenges/ch042/inside/contact.html new file mode 100755 index 00000000..64abcbd3 --- /dev/null +++ b/challenges/ch042/inside/contact.html @@ -0,0 +1,92 @@ + + + + + + Website's Name + + + + + + +
+ +
+
+ + + + + + + +
+
+
+
+

Let's Do Awesome Things Together.

+
+

+

narendra.prog@test.com

+

+

Click here to Login

+
+
+
+
+ +
+
+
+ + +
+ + \ No newline at end of file diff --git a/challenges/ch042/inside/images/bg23.jpg b/challenges/ch042/inside/images/bg23.jpg new file mode 100755 index 00000000..277bb537 Binary files /dev/null and b/challenges/ch042/inside/images/bg23.jpg differ diff --git a/challenges/ch042/inside/images/favicon.ico b/challenges/ch042/inside/images/favicon.ico new file mode 100755 index 00000000..d014c4bb Binary files /dev/null and b/challenges/ch042/inside/images/favicon.ico differ diff --git a/challenges/ch042/inside/images/favicon2_png.png b/challenges/ch042/inside/images/favicon2_png.png new file mode 100755 index 00000000..fe455c0a Binary files /dev/null and b/challenges/ch042/inside/images/favicon2_png.png differ diff --git a/challenges/ch042/inside/images/favicon_png.png b/challenges/ch042/inside/images/favicon_png.png new file mode 100755 index 00000000..27bb8630 Binary files /dev/null and b/challenges/ch042/inside/images/favicon_png.png differ diff --git a/challenges/ch042/inside/images/icon_linkedin.png b/challenges/ch042/inside/images/icon_linkedin.png new file mode 100755 index 00000000..6f65e4b2 Binary files /dev/null and b/challenges/ch042/inside/images/icon_linkedin.png differ diff --git a/challenges/ch042/inside/images/icon_twitter.png b/challenges/ch042/inside/images/icon_twitter.png new file mode 100755 index 00000000..881cc471 Binary files /dev/null and b/challenges/ch042/inside/images/icon_twitter.png differ diff --git a/challenges/ch042/inside/images/logo.png b/challenges/ch042/inside/images/logo.png new file mode 100755 index 00000000..60ab8c62 Binary files /dev/null and b/challenges/ch042/inside/images/logo.png differ diff --git a/challenges/ch042/inside/images/logo2.png b/challenges/ch042/inside/images/logo2.png new file mode 100755 index 00000000..14eb6254 Binary files /dev/null and b/challenges/ch042/inside/images/logo2.png differ diff --git a/challenges/ch042/inside/images/logo3.png b/challenges/ch042/inside/images/logo3.png new file mode 100755 index 00000000..fa80ee3c Binary files /dev/null and b/challenges/ch042/inside/images/logo3.png differ diff --git a/challenges/ch042/inside/index1.php b/challenges/ch042/inside/index1.php new file mode 100755 index 00000000..c7d49be0 --- /dev/null +++ b/challenges/ch042/inside/index1.php @@ -0,0 +1,283 @@ + + + + + + Website's Name + + + + + + +
+ +
+
+ + + + + + +"; + echo "
Welcome to the Login Page    
"; + echo "
"; + echo "
"; + echo "
"; + + echo ""; + echo '
'; + + echo '
Username :    '; + echo '
'; + + echo '
Password :      '; + echo '

'; + echo '
'; + + echo '
'; + echo '
'; + echo '
'; + echo '
'; + echo ''; + echo '

'; + echo '
'; + + + + + + + +function check_input($value) + { + if(!empty($value)) + { + $value = substr($value,0,20); + } + if (get_magic_quotes_gpc()) // Stripslashes if magic quotes enabled + { + $value = stripslashes($value); + } + if (!ctype_digit($value)) + { + $value = "'" . mysql_real_escape_string($value) . "'"; + } + else + { + $value = intval($value); + } + return $value; + } + + + + echo "
"; + echo "
"; + + if(isset($_POST['uname']) && isset($_POST['passwd'])) + { + + $uname = check_input($_POST['uname']); + $passwd = check_input($_POST['passwd']); + + + + + $sql="SELECT users.username, users.password FROM users WHERE users.username=$uname and users.password=$passwd ORDER BY users.id DESC LIMIT 0,1"; + $result1 = mysql_query($sql); + $row1 = mysql_fetch_array($result1); + if($row1) + { + echo ''; + setcookie('uname', base64_encode($row1['username']), time()+3600); + header ('Location: index1.php'); + echo ""; + echo ''; + + echo ""; + echo "
"; + print_r(mysql_error()); + echo "

"; + // echo "test"; + echo "
"; + } + else + { + echo ''; + print_r(mysql_error()); + echo "Invalid credentials"; + echo "
"; + echo "
"; + echo "
"; + } + } + + echo "
"; + echo '
'; + echo '
'; + +} +else +{ + + + + if(!isset($_POST['submit'])) + { + + // print_r($_SERVER); + echo "
"; + if ( ($_SERVER['HTTP_USER_AGENT'] === 'OurBrowser' ) ) + { + $cookee = $_COOKIE['uname']; + $format = 'D d M Y - H:i:s'; + $timestamp = time() + 3600; + echo "
"; + echo "


"; + echo "

"; + echo '
'; + // echo "YOUR USER AGENT IS : ".$_SERVER['HTTP_USER_AGENT']; + // echo "
"; + echo ''; + + $cookee = base64_decode($cookee); + $cookee1 = '"'. $cookee. '"'; + echo ""; + $sql="SELECT * FROM users WHERE username=$cookee1 LIMIT 0,1"; + $result=mysql_query($sql); + if (!$result) + { + die('Issue with your mysql: ' . mysql_error() . "



"); + } + $row = mysql_fetch_array($result); + if($row) + { + echo ''; + echo "You now have access to your Profile

"; + echo 'You are logged in as : '. $row['username']; + echo "
"; + if($row['username'] == "admin"){ + echo "

CONGRATS, YOU NAILED IT !"; + echo "









"; + die(); + } + echo ''; + echo "
"; + echo "
"; + echo 'Your CALL ID is : ' .$row['id']; + } + else + { + echo "

"; + echo "You almost got it"; + echo '


'; + echo "

"; + } + echo '
'; + echo "


"; + echo '
'; + echo ''; + echo '
'; + echo '
'; + } + else{ + echo "

You have logged in, but unfortunately you cannot access your profile without OurBrowser
"; + echo "
*If you are our customer, you would have our paid browser and you would know how to continue
"; + echo "
"; + echo '
'; + echo "


"; + echo '
'; + echo ''; + echo '
'; + echo '
'; + } + } + else + { + echo '
'; + echo "
"; + echo "
"; + echo "
"; + echo "
"; + echo "
"; + echo "
"; + echo ''; + echo " Your Cookie is deleted"; + setcookie('uname', base64_encode($row1['username']), time()-3600); + header ('Location: index1.php'); + echo '

'; + + } + + + echo "
"; + echo "
"; + //header ('Location: main.php'); + echo "
"; + echo "
"; + + +} +?> + + + +
+ + diff --git a/challenges/ch042/inside/newicons/1421020759_internt_web_technology-08-128.png b/challenges/ch042/inside/newicons/1421020759_internt_web_technology-08-128.png new file mode 100755 index 00000000..25423b60 Binary files /dev/null and b/challenges/ch042/inside/newicons/1421020759_internt_web_technology-08-128.png differ diff --git a/challenges/ch042/inside/newicons/1421020820_internt_web_technology-14-64.png b/challenges/ch042/inside/newicons/1421020820_internt_web_technology-14-64.png new file mode 100755 index 00000000..51f91746 Binary files /dev/null and b/challenges/ch042/inside/newicons/1421020820_internt_web_technology-14-64.png differ diff --git a/challenges/ch042/inside/newicons/1421020862_internt_web_technology-13-48.png b/challenges/ch042/inside/newicons/1421020862_internt_web_technology-13-48.png new file mode 100755 index 00000000..bb81ab4c Binary files /dev/null and b/challenges/ch042/inside/newicons/1421020862_internt_web_technology-13-48.png differ diff --git a/challenges/ch042/inside/newicons/1421021091_map-128.png b/challenges/ch042/inside/newicons/1421021091_map-128.png new file mode 100755 index 00000000..1d47948e Binary files /dev/null and b/challenges/ch042/inside/newicons/1421021091_map-128.png differ diff --git a/challenges/ch042/inside/newicons/fb24_1.png b/challenges/ch042/inside/newicons/fb24_1.png new file mode 100755 index 00000000..7a61b287 Binary files /dev/null and b/challenges/ch042/inside/newicons/fb24_1.png differ diff --git a/challenges/ch042/inside/newicons/fb24_2.png b/challenges/ch042/inside/newicons/fb24_2.png new file mode 100755 index 00000000..128d9a0f Binary files /dev/null and b/challenges/ch042/inside/newicons/fb24_2.png differ diff --git a/challenges/ch042/inside/newicons/gmail32.png b/challenges/ch042/inside/newicons/gmail32.png new file mode 100755 index 00000000..fd70437e Binary files /dev/null and b/challenges/ch042/inside/newicons/gmail32.png differ diff --git a/challenges/ch042/inside/newicons/google24_2.png b/challenges/ch042/inside/newicons/google24_2.png new file mode 100755 index 00000000..7b868772 Binary files /dev/null and b/challenges/ch042/inside/newicons/google24_2.png differ diff --git a/challenges/ch042/inside/newicons/instagram.png b/challenges/ch042/inside/newicons/instagram.png new file mode 100755 index 00000000..68bb1a39 Binary files /dev/null and b/challenges/ch042/inside/newicons/instagram.png differ diff --git a/challenges/ch042/inside/newicons/linkedin24_2.png b/challenges/ch042/inside/newicons/linkedin24_2.png new file mode 100755 index 00000000..4dc9c022 Binary files /dev/null and b/challenges/ch042/inside/newicons/linkedin24_2.png differ diff --git a/challenges/ch042/inside/newicons/linkedin32.png b/challenges/ch042/inside/newicons/linkedin32.png new file mode 100755 index 00000000..ea15de25 Binary files /dev/null and b/challenges/ch042/inside/newicons/linkedin32.png differ diff --git a/challenges/ch042/inside/newicons/mail24_1.png b/challenges/ch042/inside/newicons/mail24_1.png new file mode 100755 index 00000000..66ec95c5 Binary files /dev/null and b/challenges/ch042/inside/newicons/mail24_1.png differ diff --git a/challenges/ch042/inside/newicons/mail24_2.png b/challenges/ch042/inside/newicons/mail24_2.png new file mode 100755 index 00000000..c59cac41 Binary files /dev/null and b/challenges/ch042/inside/newicons/mail24_2.png differ diff --git a/challenges/ch042/inside/newicons/mail64_1.png b/challenges/ch042/inside/newicons/mail64_1.png new file mode 100755 index 00000000..d94a3416 Binary files /dev/null and b/challenges/ch042/inside/newicons/mail64_1.png differ diff --git a/challenges/ch042/inside/newicons/place24.png b/challenges/ch042/inside/newicons/place24.png new file mode 100755 index 00000000..721525ed Binary files /dev/null and b/challenges/ch042/inside/newicons/place24.png differ diff --git a/challenges/ch042/inside/newicons/place32.png b/challenges/ch042/inside/newicons/place32.png new file mode 100755 index 00000000..87b6dee6 Binary files /dev/null and b/challenges/ch042/inside/newicons/place32.png differ diff --git a/challenges/ch042/inside/newicons/twit.png b/challenges/ch042/inside/newicons/twit.png new file mode 100755 index 00000000..16b88d59 Binary files /dev/null and b/challenges/ch042/inside/newicons/twit.png differ diff --git a/challenges/ch042/inside/newicons/twitter24_2.png b/challenges/ch042/inside/newicons/twitter24_2.png new file mode 100755 index 00000000..57c3b201 Binary files /dev/null and b/challenges/ch042/inside/newicons/twitter24_2.png differ diff --git a/challenges/ch042/inside/newicons/twitter32.png b/challenges/ch042/inside/newicons/twitter32.png new file mode 100755 index 00000000..14fb00c1 Binary files /dev/null and b/challenges/ch042/inside/newicons/twitter32.png differ diff --git a/challenges/ch042/inside/newicons/twitter32_1.png b/challenges/ch042/inside/newicons/twitter32_1.png new file mode 100755 index 00000000..0d2778f6 Binary files /dev/null and b/challenges/ch042/inside/newicons/twitter32_1.png differ diff --git a/challenges/ch042/inside/use-icon/fb48_1.png b/challenges/ch042/inside/use-icon/fb48_1.png new file mode 100755 index 00000000..b6bc1b76 Binary files /dev/null and b/challenges/ch042/inside/use-icon/fb48_1.png differ diff --git a/challenges/ch042/inside/use-icon/fb48_2.png b/challenges/ch042/inside/use-icon/fb48_2.png new file mode 100755 index 00000000..1b0af134 Binary files /dev/null and b/challenges/ch042/inside/use-icon/fb48_2.png differ diff --git a/challenges/ch042/inside/use-icon/fb48_3.png b/challenges/ch042/inside/use-icon/fb48_3.png new file mode 100755 index 00000000..09694e85 Binary files /dev/null and b/challenges/ch042/inside/use-icon/fb48_3.png differ diff --git a/challenges/ch042/inside/use-icon/fb48_4.png b/challenges/ch042/inside/use-icon/fb48_4.png new file mode 100755 index 00000000..89526692 Binary files /dev/null and b/challenges/ch042/inside/use-icon/fb48_4.png differ diff --git a/challenges/ch042/inside/use-icon/fb_32.png b/challenges/ch042/inside/use-icon/fb_32.png new file mode 100755 index 00000000..4be62fb2 Binary files /dev/null and b/challenges/ch042/inside/use-icon/fb_32.png differ diff --git a/challenges/ch042/inside/use-icon/gplus48.png b/challenges/ch042/inside/use-icon/gplus48.png new file mode 100755 index 00000000..983f1afb Binary files /dev/null and b/challenges/ch042/inside/use-icon/gplus48.png differ diff --git a/challenges/ch042/inside/use-icon/gplus48_2.png b/challenges/ch042/inside/use-icon/gplus48_2.png new file mode 100755 index 00000000..ee2a147c Binary files /dev/null and b/challenges/ch042/inside/use-icon/gplus48_2.png differ diff --git a/challenges/ch042/inside/use-icon/gplus48_3.png b/challenges/ch042/inside/use-icon/gplus48_3.png new file mode 100755 index 00000000..9cc71349 Binary files /dev/null and b/challenges/ch042/inside/use-icon/gplus48_3.png differ diff --git a/challenges/ch042/inside/use-icon/gplus48_4.png b/challenges/ch042/inside/use-icon/gplus48_4.png new file mode 100755 index 00000000..549ae0ed Binary files /dev/null and b/challenges/ch042/inside/use-icon/gplus48_4.png differ diff --git a/challenges/ch042/inside/use-icon/linkedin48_1.png b/challenges/ch042/inside/use-icon/linkedin48_1.png new file mode 100755 index 00000000..7a8e11ac Binary files /dev/null and b/challenges/ch042/inside/use-icon/linkedin48_1.png differ diff --git a/challenges/ch042/inside/use-icon/linkedin48_2.png b/challenges/ch042/inside/use-icon/linkedin48_2.png new file mode 100755 index 00000000..417514aa Binary files /dev/null and b/challenges/ch042/inside/use-icon/linkedin48_2.png differ diff --git a/challenges/ch042/inside/use-icon/linkedin48_3.png b/challenges/ch042/inside/use-icon/linkedin48_3.png new file mode 100755 index 00000000..9a77eef9 Binary files /dev/null and b/challenges/ch042/inside/use-icon/linkedin48_3.png differ diff --git a/challenges/ch042/inside/use-icon/linkedin48_4.png b/challenges/ch042/inside/use-icon/linkedin48_4.png new file mode 100755 index 00000000..b35db457 Binary files /dev/null and b/challenges/ch042/inside/use-icon/linkedin48_4.png differ diff --git a/challenges/ch042/inside/use-icon/linkedin_32.png b/challenges/ch042/inside/use-icon/linkedin_32.png new file mode 100755 index 00000000..9c009a52 Binary files /dev/null and b/challenges/ch042/inside/use-icon/linkedin_32.png differ diff --git a/challenges/ch042/inside/use-icon/mail32.png b/challenges/ch042/inside/use-icon/mail32.png new file mode 100755 index 00000000..bf5a04fd Binary files /dev/null and b/challenges/ch042/inside/use-icon/mail32.png differ diff --git a/challenges/ch042/inside/use-icon/mail32_1.png b/challenges/ch042/inside/use-icon/mail32_1.png new file mode 100755 index 00000000..e80e9b08 Binary files /dev/null and b/challenges/ch042/inside/use-icon/mail32_1.png differ diff --git a/challenges/ch042/inside/use-icon/msg_1png b/challenges/ch042/inside/use-icon/msg_1png new file mode 100755 index 00000000..c49221ad Binary files /dev/null and b/challenges/ch042/inside/use-icon/msg_1png differ diff --git a/challenges/ch042/inside/use-icon/twitter48_1.png b/challenges/ch042/inside/use-icon/twitter48_1.png new file mode 100755 index 00000000..fa928111 Binary files /dev/null and b/challenges/ch042/inside/use-icon/twitter48_1.png differ diff --git a/challenges/ch042/inside/use-icon/twitter48_2.png b/challenges/ch042/inside/use-icon/twitter48_2.png new file mode 100755 index 00000000..2a560776 Binary files /dev/null and b/challenges/ch042/inside/use-icon/twitter48_2.png differ diff --git a/challenges/ch042/inside/use-icon/twitter48_3.png b/challenges/ch042/inside/use-icon/twitter48_3.png new file mode 100755 index 00000000..b8ab821d Binary files /dev/null and b/challenges/ch042/inside/use-icon/twitter48_3.png differ diff --git a/challenges/ch042/inside/use-icon/twitter48_4.png b/challenges/ch042/inside/use-icon/twitter48_4.png new file mode 100755 index 00000000..0bc14d99 Binary files /dev/null and b/challenges/ch042/inside/use-icon/twitter48_4.png differ diff --git a/challenges/ch042/inside/use-icon/twitter_32.png b/challenges/ch042/inside/use-icon/twitter_32.png new file mode 100755 index 00000000..bbcc2cc2 Binary files /dev/null and b/challenges/ch042/inside/use-icon/twitter_32.png differ diff --git a/challenges/ch042/inside/use-icons/facebook.png b/challenges/ch042/inside/use-icons/facebook.png new file mode 100755 index 00000000..5fb0213b Binary files /dev/null and b/challenges/ch042/inside/use-icons/facebook.png differ diff --git a/challenges/ch042/inside/use-icons/google.png b/challenges/ch042/inside/use-icons/google.png new file mode 100755 index 00000000..2942c7ea Binary files /dev/null and b/challenges/ch042/inside/use-icons/google.png differ diff --git a/challenges/ch042/inside/use-icons/linkedin.png b/challenges/ch042/inside/use-icons/linkedin.png new file mode 100755 index 00000000..ba6a753b Binary files /dev/null and b/challenges/ch042/inside/use-icons/linkedin.png differ diff --git a/challenges/ch042/inside/use-icons/submit.png b/challenges/ch042/inside/use-icons/submit.png new file mode 100755 index 00000000..7e35d6d5 Binary files /dev/null and b/challenges/ch042/inside/use-icons/submit.png differ diff --git a/challenges/ch042/inside/use-icons/submit_check.png b/challenges/ch042/inside/use-icons/submit_check.png new file mode 100755 index 00000000..d8da4735 Binary files /dev/null and b/challenges/ch042/inside/use-icons/submit_check.png differ diff --git a/challenges/ch042/inside/use-icons/twitter.png b/challenges/ch042/inside/use-icons/twitter.png new file mode 100755 index 00000000..9b81a0d6 Binary files /dev/null and b/challenges/ch042/inside/use-icons/twitter.png differ diff --git a/challenges/ch042/newchallenge2.xml b/challenges/ch042/newchallenge2.xml new file mode 100755 index 00000000..07bb83cc --- /dev/null +++ b/challenges/ch042/newchallenge2.xml @@ -0,0 +1,21 @@ + + + New Challenge 2 + + Andreas Venieris, + Konstantinos Papapanagiotou, + Anastasios Stasinopoulos, + Vasilios Vlachos, + Alexandros Papanikolaou + + web + + SITE. However, they have solved this to an extent and have MITM'd a regular user to get the following credentials { username : scrtusr & password : mint_cinnamon} however this bit of information isn't enough to get to the user's profile or to inject into the website to get admin login details . So, now you have to find out the admin credentials and hand it over to the government officials, so that they can carry out some security checks. Login as admin.

+ +Hints and Tips : +You have the credentials of a user, but his profile is not accessible due to some restrictions the website has setup'd. "You cannot have access to your profile without OurBrowser, *If you are our customer, you would have our paid browser and you would know how to continue". This does lead to something. Check out the http requests, and more importantly You're LOGGED in (atleast as a user). Here's another : Wanna have a Cookie ??

reference1


+ +]]> +
+
diff --git a/challenges/ch042/patience.jpg b/challenges/ch042/patience.jpg new file mode 100755 index 00000000..c5c2ae7e Binary files /dev/null and b/challenges/ch042/patience.jpg differ diff --git a/challenges/ch042/sql-connections/db-creds.inc b/challenges/ch042/sql-connections/db-creds.inc new file mode 100755 index 00000000..e42cd094 --- /dev/null +++ b/challenges/ch042/sql-connections/db-creds.inc @@ -0,0 +1,11 @@ + + diff --git a/challenges/ch042/sql-connections/functions.php b/challenges/ch042/sql-connections/functions.php new file mode 100755 index 00000000..aa92d095 --- /dev/null +++ b/challenges/ch042/sql-connections/functions.php @@ -0,0 +1,91 @@ + diff --git a/challenges/ch042/sql-connections/setup-db-challenge.php b/challenges/ch042/sql-connections/setup-db-challenge.php new file mode 100755 index 00000000..09c225bc --- /dev/null +++ b/challenges/ch042/sql-connections/setup-db-challenge.php @@ -0,0 +1,80 @@ + + + + +
+
+ +"; +@error_reporting(0); +if(isset($_GET['id'])) +$id = $_GET['id']; +//echo $id; + +// Check connection +@$con = mysql_connect($host,$dbuser,$dbpass); +if (!$con) +{ + echo "Failed to connect to MySQL: " . mysql_error(); +} + + +//purging Old Database for challenges + $sql="DROP DATABASE IF EXISTS $dbname1"; + if (mysql_query($sql)) + {echo "Old database purged if exists"; echo "

\n";} + else + {echo "Error purging database: " . mysql_error(); echo "

\n";} + + + + +//Creating new database for challenges + $sql="CREATE database $dbname1 CHARACTER SET `gbk` "; + if (mysql_query($sql)) + {echo "Creating New database successfully";echo "

\n";} + else + {echo "Error creating database: " . mysql_error();echo "

\n";} + +include '../sql-connections/functions.php'; + + + +// Creating table +$sql="CREATE TABLE IF NOT EXISTS $dbname1.$table + ( + id INT(2) UNSIGNED NOT NULL DEFAULT 1, + sessid CHAR(32) PRIMARY KEY NOT NULL, + $secret_key CHAR(32) NOT NULL, + tryy INT(11) UNSIGNED NOT NULL DEFAULT 0 + )"; + if (mysql_query($sql)) + {echo "Creating New Table '$table' successfully";echo "

\n";} + else + {echo "Error creating Table: " . mysql_error();echo "

\n";} + + +// creating random key +$characters = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789'; //characterset for generating random data +$sec_key = num_gen(24, $characters); +$hash = md5(rand(0,100000)); + +//inserting Dummy data into table +$sql="INSERT INTO $dbname1.$table VALUES (1, '$hash', '$sec_key', 0)"; + if (mysql_query($sql)) + {echo "Inserted data correctly into table '$table'";echo "

\n";} + else + {echo "Error inserting data: " . mysql_error();echo "

\n";} + +echo "Inserted secret key '$secret_key' into table ";echo "

\n"; + +if(isset($id)) +header( "refresh:0;url=$id" ); + +?> + + + diff --git a/challenges/ch042/sql-connections/setup-db.php b/challenges/ch042/sql-connections/setup-db.php new file mode 100755 index 00000000..7d3357f0 --- /dev/null +++ b/challenges/ch042/sql-connections/setup-db.php @@ -0,0 +1,104 @@ + + + + +Welcome To The World Hackers + +
+ +
+
+Welcome    + +
+
+ +
+ +
Wait a bit.. Setting up database !
+

+ + +"; + + + +$con = mysql_connect($host,$dbuser,$dbpass); +if (!$con) + { + die('Could not connect to DB, check the creds in db-creds.inc: ' . mysql_error()); + } + + + + +//@mysql_select_db('mysql',$con) + +//purging Old Database + $sql="DROP DATABASE IF EXISTS waymessier_db"; + if (mysql_query($sql)) + {echo "Old database 'waymessier_db' purged if exists"; echo "

\n";} + else + {echo "Error purging database: " . mysql_error(); echo "

\n";} + + +//Creating new database waymessier_db + $sql="CREATE database `waymessier_db` CHARACTER SET `gbk` "; + if (mysql_query($sql)) + {echo "Creating New database 'waymessier_db' successfully";echo "

\n";} + else + {echo "Error creating database: " . mysql_error();echo "

\n";} + +//creating table users +$sql="CREATE TABLE waymessier_db.users (id int(3) NOT NULL AUTO_INCREMENT, username varchar(20) NOT NULL, password varchar(20) NOT NULL, PRIMARY KEY (id))"; + if (mysql_query($sql)) + {echo "Creating New Table 'USERS' successfully";echo "

\n";} + else + {echo "Error creating Table: " . mysql_error();echo "

\n";} + + +//creating table emails +$sql="CREATE TABLE waymessier_db.emails + ( + id int(3)NOT NULL AUTO_INCREMENT, + email_id varchar(30) NOT NULL, + PRIMARY KEY (id) + )"; + if (mysql_query($sql)) + {echo "Creating New Table 'EMAILS' successfully"; echo "

\n";} + else + {echo "Error creating Table: " . mysql_error();echo "

\n";} + + + + +//inserting data +$sql="INSERT INTO waymessier_db.users (id, username, password) VALUES ('1', 'TheGamer', 'C.O.D'), ('2', 'scrtusr', 'mint_cinnamon'), ('3', 'soumya', 'fu**inglol'), ('4', 'Adamnew', 'Evenew'), ('5', 'Preciouslate', 'PreTimeLate'), ('6', 'DultonThe', 'WowDulton_coder'), ('7', 'Newbatman', 'catty_woman'), ('8', 'admin', 'TheAdminPassw0rd'), ('9', 'Joey', 'Tribbiani'), ('10', 'Chandler', 'Bing'), ('11', 'Matthew', 'Perry'), ('12', 'Monica', 'Geller'), ('13', 'Ross', 'Geller1'), ('14', 'Phoebe', 'Buffay')"; + if (mysql_query($sql)) + {echo "Inserted data correctly into table 'USERS'";echo "

\n";} + else + {echo "Error inserting data: " . mysql_error();echo "

\n";} + + + +//inserting data +$sql="INSERT INTO `waymessier_db`.`emails` (id, email_id) VALUES ('1', 'TheGaminAddict@Gamers.com'), ('2', 'Linuxlovers@linux.com'), ('3', 'veryfunny@funny.com'), ('4', 'lovers@lovetime.com'), ('5', 'TimeIs@precious.com'), ('6', 'dallu@aditi.com'), ('7', 'superheroes@best.com'), ('8', 'theadmin@admin.com'), ('9', 'newone@user.com'), ('10', 'food@besties.com'), ('11', 'cubers_world@DeskTest.com'), ('12', 'thenewadmin@new.com'), ('13', 'sunil@shankhala.com'), ('14', 'fourneen@newgmail.com')"; + if (mysql_query($sql)) + {echo "Inserted data correctly into table 'EMAILS'";echo "

\n";} + else + {echo "Error inserting data: " . mysql_error();echo "

\n";} + + + +//including the Challenges DB creation file. +include("../sql-connections/setup-db-challenge.php"); +?> + + + +
+ + diff --git a/challenges/ch042/sql-connections/sql-connect-1.php b/challenges/ch042/sql-connections/sql-connect-1.php new file mode 100755 index 00000000..8b1f9ed3 --- /dev/null +++ b/challenges/ch042/sql-connections/sql-connect-1.php @@ -0,0 +1,29 @@ + + + + + + diff --git a/challenges/ch042/sql-connections/sql-connect.php b/challenges/ch042/sql-connections/sql-connect.php new file mode 100755 index 00000000..611c6b96 --- /dev/null +++ b/challenges/ch042/sql-connections/sql-connect.php @@ -0,0 +1,34 @@ + + + + + + diff --git a/challenges/ch042/sql-connections/sqli-connect.php b/challenges/ch042/sql-connections/sqli-connect.php new file mode 100755 index 00000000..82132e92 --- /dev/null +++ b/challenges/ch042/sql-connections/sqli-connect.php @@ -0,0 +1,25 @@ + + + + + + diff --git a/challenges/ch042/sql-connections/test.php b/challenges/ch042/sql-connections/test.php new file mode 100755 index 00000000..4c00cd27 --- /dev/null +++ b/challenges/ch042/sql-connections/test.php @@ -0,0 +1,11 @@ + diff --git a/challenges/ch043/images/back.jpg b/challenges/ch043/images/back.jpg new file mode 100755 index 00000000..f8d1922f Binary files /dev/null and b/challenges/ch043/images/back.jpg differ diff --git a/challenges/ch043/images/back1.jpg b/challenges/ch043/images/back1.jpg new file mode 100755 index 00000000..bcef5dc6 Binary files /dev/null and b/challenges/ch043/images/back1.jpg differ diff --git a/challenges/ch043/images/happy.jpg b/challenges/ch043/images/happy.jpg new file mode 100755 index 00000000..6067ec95 Binary files /dev/null and b/challenges/ch043/images/happy.jpg differ diff --git a/challenges/ch043/images/images.jpeg b/challenges/ch043/images/images.jpeg new file mode 100755 index 00000000..41a0560f Binary files /dev/null and b/challenges/ch043/images/images.jpeg differ diff --git a/challenges/ch043/images/sad.jpg b/challenges/ch043/images/sad.jpg new file mode 100755 index 00000000..3f4b0183 Binary files /dev/null and b/challenges/ch043/images/sad.jpg differ diff --git a/challenges/ch043/images/wow.jpg b/challenges/ch043/images/wow.jpg new file mode 100755 index 00000000..bd73a084 Binary files /dev/null and b/challenges/ch043/images/wow.jpg differ diff --git a/challenges/ch043/index.php b/challenges/ch043/index.php new file mode 100755 index 00000000..523fc245 --- /dev/null +++ b/challenges/ch043/index.php @@ -0,0 +1,5 @@ + diff --git a/challenges/ch043/inside/index.php b/challenges/ch043/inside/index.php new file mode 100755 index 00000000..0224e3f2 --- /dev/null +++ b/challenges/ch043/inside/index.php @@ -0,0 +1,97 @@ + + + + +JUST GO + + +
+
+
+
Welcome to your Aquatic World   
+ + +
+ +"; + //echo $id; + //echo "
"; + $hint=$id; + +// connectivity + $sql="SELECT * FROM users WHERE id='$id' LIMIT 0,1"; + $result=mysql_query($sql); + $row = mysql_fetch_array($result); + if($row) + { + echo ""; + echo 'Your Login name:'. $row['username']; + echo "
"; + + } + else + { + echo '' ; + print_r(mysql_error()); + echo ""; + } +} + else { echo "Please input the ID as parameter with numeric value";} + + + + +function blacklist($id) +{ + $id= preg_replace('/or/i',"", $id); //strip out OR (non case sensitive) + $id= preg_replace('/and/i',"", $id); //Strip out AND (non case sensitive) + $id= preg_replace('/[\/\*]/',"", $id); //strip out /* + $id= preg_replace('/[--]/',"", $id); //Strip out -- + $id= preg_replace('/[#]/',"", $id); //Strip out # + $id= preg_replace('/[\s]/',"", $id); //Strip out spaces + $id= preg_replace('/[\/\\\\]/',"", $id); //Strip out slashes + return $id; +} + + + +?> +



+ +
+
+
+
+
+"We Believe in Security Of Aquatic Animals, and you should too !"

+
+
+
+ + + +
+ + + + + + + + diff --git a/challenges/ch043/inside/just_admin.php b/challenges/ch043/inside/just_admin.php new file mode 100755 index 00000000..03ff6c5a --- /dev/null +++ b/challenges/ch043/inside/just_admin.php @@ -0,0 +1,97 @@ + + + + +JUST GO + + +");S[Q]=i.join("");for(var e=C(S),a=0;a1)if(!a.k)n[c][G]=p[c][G]="hidden";else{e=0;var b={c:a.c*.3,b:a.k==1?E.a.f:E.a.h,d:a.k==1?0:2},f=b;f.a=function(){n[c][G]=p[c][G]="hidden";m.m()};if(typeof t[x]!==r){l.r(p,"width",t[j],K[j],b);l.r(n,"width",J[j],H[j],b);l.r(p,"marginLeft",t[x],K[x],b);l.r(n,"marginLeft",J[x],H[x],b)}if(typeof t[i]!==r){l.r(p,i,t[i],K[i],b);l.r(n,i,J[i],H[i],f)}}e&&D(function(){m.m()},a.c*.3)},m:function(){W[Q]=O[Q]=V;if(V){n[c][G]=p[c][G]="visible";if(a.k){var d=a.c*a.k;if(d>1e3)d=1e3;var b={c:d,b:a.k==1?E.a.g:E.a.j,d:a.k==1?0:2};if(typeof t[x]!==r){l.r(p,"width",K[j],t[j],b);l.r(n,"width",H[j],J[j],b);l.r(p,"marginLeft",K[x],t[x],b);l.r(n,"marginLeft",H[x],J[x],b)}if(typeof t[i]!==r){l.r(p,i,K[i],t[i],b);l.r(n,i,H[i],J[i],b)}}else{M(p,1);M(n,a.j)}}},a:function(a){return a.replace(/(?:.*\.)?(\w)([\w\-])?[^.]*(\w)\.[^.]*$/,"$1$3$2")},o:function(){b.c=0;L(s);s=null;f[c][P]='url("'+b.e[h]("src")+'") no-repeat';var j=this,d=b.e[q];if(typeof d.aP===r)d=0;var i;if(d&&(i=d.aP||eb&&/video$/.test(d[g]))){this.d(d);if(i===1)d.aP=0}else if(!b.b&&a.i){var e=this.n(b.a+1);this.e(e);s=D(function(){j.y(e,0,1)},a.b)}a.Oa.call(this,b.a,b.e)},e:function(j){var a=e[j],k=0;if(a[o]=="A"&&a[g][F]("lazyImage")==-1||a[o]=="DIV"&&a[g]=="video"){a=C(a)[0];k=1}if(a[o]!="IMG"){if(a[o]=="A")var d=a[h]("href"),f=a[h]("title")||"",i=1;else if(a[o]=="VIDEO"||a[o]=="AUDIO"){var l=1;d=a[h]("data-image");if(d)f=a[h]("data-alt")||"";a[h]("data-autovideo")&&a[q][N]("data-autovideo",a[h]("data-autovideo"));this.A(a[q]);i=0}else{d=a[h]("data-src");if(d)f=a[h]("data-alt")||"";i=!k}if(f!=null){var b=document.createElement("img");b[N]("data-loaded","f");b[N]("alt",f);b.onload=Db;b.onerror=Fb;b[N]("src",d);b[c][y]="none";if(l){a[q].insertBefore(b,a);this.b(a[q],this);if(bb){a[q][c][P]="none";a[q][c].cursor="default"}}else a[q].replaceChild(b,a);if(i)e[j]=b}}},p:function(i){if(e[b.a][o]=="IMG")b.e=e[b.a];else b.e=lb(e[b.a],"img")[0];var j=b.e[h]("data-loaded");if(j=="f"){R[c][y]="block";D(function(){m.p(i)},200);return}b.c=1;this.g();L(hb);V=this.k();if(!I){I=A("sliderInner");f[w](I);if(sb()>=300)f[c].borderRadius=I[c].borderRadius="0px"}I[Q]="";var d=i?i:a.n();a.Ob.apply(this,[b.a,b.e,V,d]);rb(b.a);var g=d<14?this.w(d):this.x();if(d<9||d==15){if(d%2)g=g.reverse()}else if(d<14)g=g[0];if(d<9)this.q(g,d);else if(d<13)this.r(g,d);else if(d==13)this.s(g);else if(d<16)this.t(g,d);else this.u(g,d)},q:function(b,e){for(var f=0,g=e<7?{height:0,opacity:-.4}:{width:0,opacity:0},k={height:B,opacity:1},a=0,h=b[d];a10)d[c][b==11?"bottom":"top"]="0";if(b<11)var e=0,f=v;else{e=0;f=B}var g={b:E.a.j,c:a.c*1.6,a:function(){m.o()}};l.r(d,b<11?"width":"height",e,f,g)},s:function(b){b[c][Y]="0";b[c][j]=v+"px";b[c][z]=B+"px";var d={c:a.c*1.6,a:function(){m.o()}};l.r(b,i,0,1,d)},t:function(b){var s=a.g*a.m,p=0,n=0,i=0,g=0,f=[];f[0]=[];for(var e=0,o=b[d];e=0&&h8?v:Math.round(v/a.f),m=g>8?1:a.f,f=0;fb.a?"10":"9";this.p(f)},n:function(a){if(a>=b.d)a=0;else if(a<0)a=b.d-1;return a},To:function(d,c){if(c&&!a.i)return;this.y(this.n(b.a+d))}};var gb=function(){var a=T(k.sliderId);if(a&&C(a)[d]&&a.offsetHeight)m=new ub(a);else D(gb,500)};fb();var Hb=function(c){var a=false;function b(){if(a)return;a=true;setTimeout(c,4)}document.addEventListener&&document.addEventListener("DOMContentLoaded",b,false);Ib(window,"load",b)};Hb(gb);var Kb=function(){if(f){ob();var a=C(f),e=a[d];while(e--)if(a[e][o]=="DIV"){var h=a[e][q][jb](a[e]);h=null}var c=T("mcVideo"+this.Id);if(c){c.src="";var g=c[q][q][jb](c[q]);g=null}b={a:0,e:"",d:0,c:0,b:0};u=[];I=null}fb();gb()},vb=0,nb=function(e,c){if(++vb<20)if(!m||typeof tooltip==r)D(function(){nb(e,c)},300);else for(var b=C(S),a=0;a7?a:3));return c.join("")},Pb=function(a){return a.replace(/(?:.*\.)?(\w)([\w\-])?[^.]*(\w)\.[^.]*$/,"$1$3$2")},Tb=function(e,c){var d=function(a){for(var c=a.substr(0,a[i]-1),e=a.substr(a[i]-1,1),d="",b=0;b=a,l=d>=c,m=j?b-aMath.abs(k))i=j?g:-h;else k=l?e:-f;return[i,k]},ac=function(m,h,l){ab(c,1);var a=o(M,"div");a[b][H]=m+"px";e=o(M,"div");e.className="mcTooltipInner";if(l==1){e[P]=h;var f=1}else{var d=o(V,h);if(d[D].w)e=d[D];else{e.w=d[D];e[A](d);f=1}}if(wb){var j=e[nb]("select"),k=j[i];while(k--)j[k][db]=O}a[A](e);c[A](a);if(e[r]<20){var g=c.className;c.className=""}e[b][H]=e[r]+(f?1:0)+"px";e[b][S]=e[u]+(f?1:0)+"px";e[b][y]=e[b][s]="auto";e=c.insertBefore(e,c[N]);e[b][Q]="absolute";a=c.removeChild(a);a=null;delete a;if(g)c.className=g;return e},Sb=function(a){if(a.w){a.w[A](a);fb(a,1)}else{a=a[D].removeChild(a);a=null;delete a}},ab=function(b,c){for(var a=c;a]*>/i);if(r[i]>1)j=k=r[1]}}if(f)j=a.success(k,e);g.f(d,j,1)}}else if(h)g.f(d,h(e),1);else g.f(d,"Failed to get data.",1);n=null}};if(b.indexOf("#")!=-1&&Ib()<19)b=b.replace("#","?#");n.open("GET",b,true);n.send(null)},b:function(){var a;try{if(window.XMLHttpRequest)a=new XMLHttpRequest;else a=new ActiveXObject("Microsoft.XMLHTTP")}catch(b){throw new Error("AJAX not supported.");}return a}},Mb=function(){d=o(M,"div");d.id="mcTooltipWrapper";d[P]='
 
';x=z.body;k=x;k[A](d);a.a=L.license||"4321";c=d[N];d.b=d.c=d.v=0;Tb(d,a.a);Y=d.lastChild;f=c[tb];j(d,1);this.m(L,1);j(d,0);var e=this.k();U=function(a){q();e.i();O(a)};Y[jb]=U;this.l();I[jb]=function(a){if(l[kb]!==1)U(a);else O(a)};c[db]=function(){R!=1&&eb();!l[E]&&e.a(l[W])};c[jb]=O;if(bb)c[jb]=function(a){l[E]!==1&&U(a)};rb(z,"click",function(a){if(l&&l[E]!==1)F=B(function(){U(a)},0,l[W]+100)});fb(d,0);d[b].visibility="visible"},Db=function(a){if(a[D]){var b=a[D].nodeName.toLowerCase();return b!="form"&&b!="body"?Db(a[D]):a[D]}else return x},p=function(c,b){var a=c.getBoundingClientRect();return b?a[s]:a[y]},J=function(b){return b?z[vb][pb]:z[vb][qb]},Xb=function(){var a=z[vb];return[window.pageXOffset||a.scrollLeft,window.pageYOffset||a.scrollTop]},Ub=function(h,g,c,d){var f=J(0),e=J(1),a=0,b=0;if(k!=x){a=p(k,0)-k[v];b=p(k,1)-k[w]}if(c+a+h>f)c=f-h-a;if(c+a<0)c=-a;if(d+b+g>e)d=e-g-b;if(d+b<0)d=-b;return{l:c,t:d}};Mb.prototype={j:function(){var d=f[N],c=f.lastChild;d[b].margin=c[b].margin=f[b].margin=d[b][t]=c[b][t]="0";var h=a.f,l=h*2+"px",m=a.b+h+"px",g=a.b+"px",i="",k="",e="";d[b][sb]=a.d;c[b][sb]=a.c;if(/rgba\(/.test(a.c)){d[b][sb]=a.c;j(c,0)}else j(c,1);switch(a.e){case 0:case 2:i="Left";k="Right";f[b][H]=l;f[b][S]=m;c[b][hb]=c[b].marginRight="auto";break;case 3:default:i="Top";k="Bottom";f[b][H]=m;f[b][S]=l}switch(a.e){case 0:e="Top";f[b][C]="-"+g;d[b][C]=g;c[b][C]="-"+m;break;case 2:e="Bottom";f[b][C]=g;d[b][C]="-"+g;c[b][C]=-(h-a.b)+"px";break;case 3:e="Left";f[b][hb]="-"+g;d[b][hb]=g;c[b][C]="-"+l;break;default:e="Right";f[b].marginRight="-"+g;c[b][C]="-"+l;c[b][hb]=g}d[b][t+i]=d[b][t+k]=c[b][t+i]=c[b][t+k]="dashed "+h+"px transparent";d[b][t+e+"Style"]=c[b][t+e+"Style"]="solid";d[b][t+e+"Width"]=c[b][t+e+"Width"]=h+"px"},d:function(a,c,b){eb();q();F=B(function(){(T!=1||a!=d.v)&&g.f(a,c,b)},a)},e:function(a,c,b){eb();q();F=B(function(){g.g(a,c,b)},a)},f:function(i,B,A){j(d,1);T=1;q();ib.a=[];j(I,i[kb]);j(Y,i[E]);bb&&j(Y,1);var g=this.n(i,B,A);if(d.v){h(d,y,d[v],g.l);h(d,s,d[w],g.t);h(c,H,c.b,c.tw);h(c,S,c.c,c.th);h(f,y,f[v],g.x);h(f,s,f[w],g.y)}else if(a.e==4){var C=p(i,0),D=p(i,1);h(d,y,C,g.l);h(d,s,D,g.t);h(c,H,i[r],c.tw);h(c,S,i[u],c.th)}else{if(a.e>4)h(d,s,g.t+6,g.t);else d[b][s]=g.t+"px";d[b][y]=g.l+"px";c[b][H]=c.tw+"px";c[b][S]=c.th+"px";f[b][y]=g.x+"px";f[b][s]=g.y+"px"}if(i.effect=="slide"){var k,l;if(!d.v&&a.e<4){switch(a.e){case 0:k=0;l=1;break;case 1:k=-1;l=0;break;case 2:k=0;l=-1;break;case 3:k=1;l=0}var n=[k*e[r],l*e[u]]}else{if(!d.v&&a.e>3){k=i[v];l=i[w]}else{k=d[v];l=d[w];if(a.e>3){k+=d.v[v]-i[v];l+=d.v[w]-i[w]}}var x=a.l+a.b+a.b,z=a.m+a.b+a.b;n=Qb(k,l,g.l,g.t,c.b+x,c.c+z,c.tw+x,c.th+z)}var o=a.l/2,t=a.m/2;h(e,y,n[0]+o,o);h(e,s,n[1]+t,t);var m=e[tb];if(m){h(m,y,o,-n[0]+o,{b:function(){ab(c,1)}});h(m,s,t,-n[1]+t)}fb(e,1)}else{h(e,G,e.op-.1,1,{b:function(){ab(c,1)}});var m=e[tb];m&&h(m,G,m.op,0)}h(d,G,d.op,1);d.v=i},g:function(a,c,b){n=null;q();F=B(function(){g.f(a,'
 
',1)},a);R=1;Yb.a(a,c,b)},a:function(a){q();F=B(function(){g.i()},0,a)},i:function(){T=-1;eb();ib.a=[];h(d,G,d.op,0,{b:Vb})},l:function(){if(o(V,"mcOverlay")==null){I=o(M,"div");I.id="mcOverlay";x[A](I);I[b][Q]="fixed"}},m:function(g,h){var i=0;if(h||a.e!=g[Q]||a.f!=g[gb]){a.e=g[Q];a.f=g[gb];d[b].padding=a.f+"px";i=1}if(h||c.className!=g.cssClass){c.className=g.cssClass?g.cssClass.trim():"";var k=bc(c),l=parseInt(k.borderLeftWidth),n=k.backgroundColor,m=k.borderLeftColor;if(h||a.b!=l||a.c!=n||a.d!=m){a.b=l;a.c=n;a.d=m;i=1}a.l=h?c[qb]-c[N][r]:e[v]*2;a.m=h?c[pb]-c[N][u]:e[w]*2}if(i)if(a.e<4)this.j();else j(f,0)},k:function(){return(new Function("a","b","c","d","e","f","g","h","i",function(e){var b=[];c.onmouseover=function(a){if(!l[E]){q();if(T==-1){ib.a=[];h(d,G,d.op,1)}}O(a)};for(var a=0,f=e[i];a:\u0081-?\u008106444-?\u0081\u0081vixyvr$xlmw?"))).apply(this,[a,N,lb,ec,Pb,cc,o,fc,mb])},n:function(g,z,s){var n=x;if(s==2){var B=o(V,z),y=B[nb]("*"),C=y[i];while(C--)if(y[C].type=="submit")n=Db(B)}if(k!=n){k=n;k[A](d)}c.b=c[qb]-a.l;c.c=c[pb]-a.m;e=ac(g.maxWidth,z,s);this.m(g,0);c.tw=e[r];c.th=e[u];g.effect=="fade"&&fb(e,0);var q=c.tw+a.l+a.b+a.b,p=c.th+a.m+a.b+a.b,l=this.p(g,q,p);if(g.smartPosition)var b=Ub(q+a.f,p+a.f,l.x,l.y);else b={l:l.x,t:l.y};var h=g[Q],m=this.u(h,g[Hb],q,p);if(g.smartPosition&&h<4){var v=b.l-l.x,w=b.t-l.y;if(h==0||h==2)m[0]-=v;else v&&j(f,0);if(h==1||h==3)m[1]-=w;else w&&j(f,0)}if(k==x){var t=Xb();b.l=b.l+t[0];b.t=b.t+t[1]}b.x=m[0];b.y=m[1];return b},p:function(b,z,y){var c,d,g,f,q=b[Q],n=b[Hb];if(q<4)if(b.nodeType!=1)c=d=g=f=0;else if(b.relativeTo=="mouse"){c=Z.a;d=Z.b;if(Z.a==null){c=p(b,0)+m(b[r]/2);d=p(b,1)+m(b[u]/2)}g=0;f=0}else{var h=b,e=Zb(b);if(e[i]){e=e[0];if(e[r]>=b[r]||e[u]>=b[u])h=e}c=p(h,0);d=p(h,1);g=h[r];f=h[u]}var o=20,l=z+2*b[gb],j=y+2*b[gb];switch(q){case 0:c+=m(g/2-l*n);d-=j+o;break;case 2:c+=m(g/2-l*n);d+=f+o;break;case 3:c-=l+o;d+=m(f/2-j*n);break;case 4:c=m((J(0)-l)/2);d=m((J(1)-j)/2);break;case 5:c=d=0;break;case 6:c=J(0)-l-Math.ceil(a.l/2);d=J(1)-j-Math.ceil(a.m/2);break;case 1:default:c+=g+o;d+=m(f/2-j*n)}var s=0,t=0;if(k!=x){s=k[v]-p(k,0);t=k[w]-p(k,1)}return{x:c+s+b.offsetX,y:d+t+b.offsetY}},u:function(g,c,e,d){j(f,g<4);var b=[0,0];switch(g){case 0:b=[e*c,m(d+a.f)];break;case 1:b=[0,d*c];break;case 2:b=[e*c,0];break;case 3:b=[m(e+a.f),d*c]}return b}};var Eb=function(){if(g==null){if(typeof console!=="undefined"&&typeof console.log==="function"){var a=console.log;console.log=function(){a.call(this,++xb,arguments)}}g=new Mb;if(a)console.log=a}if(l&&l.m&&d[P].indexOf(lb("kdvh#Uh"))!=-1)g.i=Ob;return g},yb=function(d,c,b){b=b||{};var a;for(a in c)d[a]=b[a]!==undefined?b[a]:c[a]},ub=0,K,Jb=function(a){if(!a){a=o(M,"div");a.m=1;a[b][Nb]="none";x[A](a)}if(typeof a==="string")a=o(V,a);l=a;return a},zb=function(b,a){return bb&&b.target==a?0:1},Bb=function(a,b){yb(a,L,b);if(Ab||bb){a.showDelay=1;a[W]=30}if(a[kb])if(!a[E])a[E]=a[kb];rb(a,"click",O);if(a[E])a[db]=function(a){zb(a,this)&&q()};else if(Lb)a[Wb]=function(a){Rb(a)&&g.a(this[W])};else a[db]=function(a){zb(a,this)&&g.a(this[W])};if(a.relativeTo=="mouse")a.onmousemove=dc;a.set=1},mb=function(a,c,f){a=Jb(a);var b=0;if(c.charAt(0)=="#"){if(c[i]>2&&c.charAt(1)=="#")b=2;else b=1;var d=c.substring(b),e=o(V,d);if(e){if(b==2)c=e[P]}else b=-1}if(!a||!g||b==-1){if(++ub<40)K=B(function(){mb(a,c,f)},0,90)}else{K=cb(K);!a.set&&Bb(a,f);if(b==1)g.d(a,d,2);else g.d(a,c,1)}},Cb=function(a,d,b,c){a=Jb(a);if(!a||!g){if(++ub<40)K=B(function(){Cb(a,d,b,c)},0,90)}else{K=cb(K);!a.set&&Bb(a,c);g.e(a,d,b)}};rb(window,"load",Eb);var Fb=function(a){if(++ub<20)if(!g)B(function(){Fb(a)},0,90);else{yb(L,L,a);j(d,1);g.m(L,0);j(d,0)}};return{changeOptions:function(L_options){Fb(L_options)},pop:function(L_sender,L_text,L_options){mb(L_sender,L_text,L_options)},ajax:function(L_sender,L_url,L_ajaxSettings,L_options){Cb(L_sender,L_url,L_ajaxSettings,L_options)},hide:function(){var a=Eb();a.i()}}}(tooltipOptions) \ No newline at end of file diff --git a/challenges/newchallenge4/inside/contact.css b/challenges/newchallenge4/inside/contact.css new file mode 100755 index 00000000..9b1ff6cf --- /dev/null +++ b/challenges/newchallenge4/inside/contact.css @@ -0,0 +1,637 @@ +html { + font-family: 'Gentium Book Basic', serif; + height:100%; + background-color: #FFF; + font-size: 100%; +} + +body{ + height: 100%; + margin: 0px; + min-width: 350px; + width: 100%; +} + +#sideCarNav{ + position: fixed; + width: 260px; + z-index: -1; + top: 0; + right: 0; + bottom: 0; + height: 100%; + line-height: 1em; + text-align: left; + overflow: auto; + visibility: hidden; + background-color: #FFF; + box-sizing:border-box; + transition:height 0s linear 0.14s, visibility 0s linear 0.14s; +} + +.clearfix:after{ + clear: both; +} + +.clearfix:before, .clearfix:after{ + content: " "; + display: table; +} + +#siteWrapper{ + background-color:#FFF; + position: relative; + padding: 0px; + box-sizing:border-box; + font-size: 1.125em; + line-height: 1.6em; + letter-spacing: 0; + font-weight: 400; + font-style: normal; + color: rgba(26, 26, 26, 0.6); + +} + +#header { + background-color: transparent; + position: absolute; + width: 100%; + padding: 0px 1.0256%; + box-sizing:border-box; + z-index: 1000; + top: 0; + left: 0; + line-height: 1em; /* inherited from #siteWrapper was 1.6em; */ +} + +header, nav, figure, main, #content, #prefooter, footer { + display: block; +} + +.inner-header{ + padding: 20px 0px; + display: table; + width: 100%; + box-sizing:border-box; + /*animation:1s ease-in-out 0s normal none 1 running header-anim;*/ /*keyframes part missing */ +} + +.inner-header { + margin: auto; +} + + +#header #logoWrapper, #header #headernav{ + box-sizing:border-box; + display: table-cell; + vertical-align: middle; +} + +#header #logoWrapper, #header #logoImage { + width: 140px; +} + +#logoImage { + margin: 0; + max-width: 100%; +} + +h1:first-child, h2:first-child, h3:first-child, .entry-title:first-child{ + margin-top: 0px; +} + +h1, h2, h3, .entry-title { + margin: 1em 0 0.5em; +} + +.nav-wrapper nav > div { + display: inline-block; + vertical-align: middle; + margin: 0px; +} + +#headernav nav .active > a { + color: #FFF; +} + +#headernav nav a{ + display: inline-block; + position: relative; + font-family: 'Gentium Book Basic', serif; + font-size: 0.7em; + text-transform: uppercase; + text-decoration: none; + letter-spacing: 2px; + font-weight: 400; + font-style: normal; + line-height: 1em; + color: rgba(255, 255, 255, 0.8); +} + +.nav-wrapper nav > div a { + display: block; + padding: 0.75em 1em; + -moz-transition:color 0.1s ease-in-out 0s; + -webkit-transition:color 0.1s ease-in-out 0s; +} + +.nav-wrapper nav > div a:hover { + color: rgba(255, 255, 255, 1); +} + + +h1, .entry-title { + color: rgba(26, 26, 26, 0.9); +} + +h1, .entry-title{ + line-height: 1.2em; + font-family: 'Gentium Book Basic', serif; + text-transform: none; + letter-spacing: 0; + font-weight: 400; + font-style: normal; +} + +h1, h2, h3 { + text-rendering:optimizelegibility; +} + +#logoImage a { + display: block; +} + +#header a{ + text-decoration: none; +} + +a { + text-decoration: none; + color: rgba(26, 26, 26, 0.6); + background: none repeat scroll 0% 0% transparent; +} + +#header #headernav { + text-align: right; +} + +#headernav { + vertical-align: top !important; + white-space: nowrap; +} + +#header #mainNavWrapper { + position: relative; + z-index: 1000; +} +#mainNavWrapper{ + margin-top: 24px; +} + +#headernav nav > div:last-child a { + background-color: transparent; + border: 2px solid #FFF; + color:#FFF; +} + +#headernav nav > div:last-child a { + font-family: 'Gentium Book Basic', serif; + text-transform: uppercase; + text-decoration: none; + letter-spacing: 2px; + font-weight: 400; + font-style: normal; + margin-left: 1em; + padding: 1em 1.5em !important; + display: block; + -moz-transition: background-color 0.1s ease-in-out 0s, color 0.1s ease-in-out 0s; + -webkit-transition: background-color 0.1s ease-in-out 0s, color 0.1s ease-in-out 0s; +} + +#headernav nav > div:last-child a:hover { + background-color: #FFF; + color: #575757; +} + +.banner-thumbnail-wrapper { + position: absolute; + background-color: rgba(0, 0, 0, 0.7); + z-index: 99; + background: url("images/bg23.jpg") no-repeat center center fixed; + -webkit-background-size:cover; + background-size: cover; +} + +#thumbnail { + position: absolute; + top: 0px; + right: 0px; + bottom: 0px; + left: 0px; + animation:0.6s ease-in-out 0s normal none 1 running feature-bg-anim; +} + + +.banner-thumbnail-wrapper{ + position: relative; + overflow: hidden; + width: 100%; + min-height: 0; + padding: 155px 0; +} + +figure { + margin: 0; +} + +img { + +} + +.desc-wrapper{ + text-rendering:optimizelegibility; + text-align: center; + padding: 32px; + margin: 0 auto; + box-sizing:border-box; + max-width: 956px; + width: 100%; + position: relative; + z-index: 100; + animation:0.75s ease-in-out 0s normal none 1 running feature-text-anim; +} + +.desc-wrapper p{ + line-height: 1.5em; + font-family: 'Gentium Book Basic', serif; + font-size: 24px; + text-transform: none; + letter-spacing: 1px; + font-weight: 400; + font-style: italic; + color: #FFF; + margin: 20px auto; +} + +.desc-wrapper p:first-child { + /*visibility: hidden;*/ +} +.desc-wrapper p > strong { + display: block; + line-height: 1em; + font-family: 'Gentium Book Basic', serif; + font-size: 3em; + text-transform: uppercase; + font-weight: 700; + font-style: normal; + color: #FFF; +} + +.desc-wrapper p a{ + color: #FFF; + border-bottom: 1px solid #FFF; +} + +.desc-wrapper p:last-child > a{ + box-sizing:border-box; + font-family: 'Gentium Book Basic', serif; + font-size: 15px; /*change*/ + text-transform: uppercase; + letter-spacing: 2px; + font-weight: 400; + font-style: normal; + text-decoration: none; + padding: 1em 1.75em; + background: #FFF; + display: inline-block; + line-height: 1em; + margin: 10px 0px; + color: #FFF; + border: medium none; + -moz-transition:background-color 0.1s ease-in-out 0s, color 0.1s ease-in-out 0s; + -webkit-transition:background-color 0.1s ease-in-out 0s, color 0.1s ease-in-out 0s; +} + +.desc-wrapper p:last-child > a:hover { + background-color: #FFF; + color: #575757; +} + +.desc-wrapper p:last-child > a{ + background-color: transparent; + border: 2px solid #FFF !important; + color: #FFF; +} + + + + +/* grid starts*/ +.image-grid-container{ + width: 100%; + max-width: 1500px; + text-align: center; + margin: 0 auto; +} +.row { + width: 100%; +} +.row:before, .row:after{ + content: ""; + display: table; + clear: both; +} + +[class*='col-'] { + float: left; + min-height: 1px; + display: block; + padding: auto; + overflow: hidden; + margin: 0; + text-align: center; +} + +.col-3 { + width: 33.33%; +} +.col-100{ + width: 100%; +} +.col-40{ + width: 40%; +} +.col-60{ + width: 60%; +} +/* grid ends*/ + + + +/*button css starts*/ +.button-wrapper{ + padding: 17px 0px; + margin: 0; +} + +.button { + text-align: center; +} + +.button-element{ + display: inline-block; + width: 50%; + height: auto; + padding: 13px 16px; + text-align: center; + line-height: normal; + font-size: 12px; + font-style: normal; + font-weight: 600; + font-family: 'Gentium Book Basic', serif; + letter-spacing: 1px; + text-transform: uppercase; + color: #272727; + border: 2px solid; + background-color: transparent; + transition: background-color 0.1s linear 0s, color 0.1s linear 0s; + +} + +.button a:hover{ + background-color: #272727; + color: #FFF; +} +/*button css ends*/ + + + + +/* ruleblock start*/ +.ruleblock { + clear: both; + position: relative; + height: auto; + padding: 10px 0px; + margin: 0; +} +hr{ + display: block; + height: 1px; + border: 0; + border-top: 1px dotted #1A1A1A; + opacity: 0.25; + +} +/*ruleblock ends*/ + + + + +#page{ + box-sizing:border-box; + width: 100%; + margin: auto; + max-width: 1020px; + padding: 96px 32px; /* change */ +} + +#content{ + margin: auto; + width: 100%; +} + +.center-align{ + text-align: center; +} +#contactform{ + width: 80%; + margin: 0 auto; +} +.input-block-level { + min-height: 30px; + width: 100%; + display: block; + box-sizing:border-box; + margin-bottom: 20px; + font-family: 'Gentium Book Basic', serif; +} +.input-block-level{ + padding: 8px 6px 4px 15px; + margin: 0; + font-size: 17px; + letter-spacing: normal; + background-color: transparent; + border: 1px solid #CCC; + color: #000; + margin-bottom: 20px; + height: 50px; + vertical-align: middle; + border-radius: 0px; + display: inline-block; + padding-left: 4px 6px; + line-height: 20px; +} + +.input-block-level:focus{ + border: 1px solid black; +} + + + + + +/*footer*/ +/* +#footer{ + width: 100%; + background-color: #333; + margin:0; + padding: 0 0 25px 0; + border-top:4px solid gray; + color:#FFFFFF; + font-weight: 600; + font-family: 'Gentium Book Basic', serif; +} + +.inner-footer{ + width: 100%; + margin:0 auto; + max-width: 1500px; +} + +.inner-footer .module h4{ + font-weight: 500; + font-size: 1.125em; + letter-spacing: 3px; + line-height: 1.4375em; + margin-bottom: 0 0 30px 0; +} +#user-form{ + background-color: #1f1f1f; + width: 75%; + margin: 20px auto; +} +#user-form .user-email { + background: none; + font-size: 1em; + color:#ffffff; + font-weight: 300; + width: 68.6%; + float:left; + border:0; + margin: 0; + padding: 10px 15px 10px 25px; +} +.emailupdates p, .legal p{ + font-size: 15px; + line-height: 18px; + margin-bottom: 15px; + color: #bbbbbb; +} +#user-form .user-submit { + margin-top: 10px; +} +#icons{ + margin: 0; + padding: 0; + position: relative; +} +#icons a{ + top:0; +} +#icons img:hover{ + cursor: pointer; +} +.footer-bottom{ + width: 100%; + background-color: #1f1f1f; + margin: 0; + padding: 0; +} +.footer-bottom-inner{ + width: 53.7%; + margin: 0 auto; + color: #FFFFFF; + border-top: 8px solid #1f1f1f; + display: table; +} +.footer-bottom-inner .bottom-logo, .footer-bottom-inner .bottom-desc{ + box-sizing:border-box; + display: table-cell; + vertical-align: middle; +} +.footer-bottom-inner .bottom-desc{ + white-space: nowrap; + position: relative; + text-align: center; +} +.footer-bottom-inner .bottom-desc-text{ + display: block; + text-align: right; +} +*/ +/*new footer*/ + +footer{ + background-color: white; + color: #10C1FA; + font-size: 0.85em; + border-top: 1px solid #ECE5E5; +} +footer .social{ + margin: 5px 20px; +} +footer .social img{ + margin: 12px auto; + border: 1px solid #F8F6F6; + border-radius: 4px; + padding: 2px; +} +footer a:hover{ + text-decoration: underline; +} +footer a:visited{ + text-decoration: none; +} +footer ul{ + vertical-align: baseline; + height: 42px; + margin: 10px auto; + list-style: none; +} +footer li { + display: inline-block; +} +footer li:not(.copyli){ + padding: 0 10px; + border-right: 2px solid #F8F6F6; +} +footer ul .contactli { + color: red; +} +footer ul .copyli{ + color: black; +} + + +/*adding effect to navbar*/ +.collection a:after{ + position: absolute; + top: 100%; + left: 0px; + width: 100%; + background: none repeat scroll 0% 0% #FFFFFF; + content: ""; + opacity: 0; + transition:height 0.3s ease 0s, opacity 0.3s ease 0s, transform 0.3s, ease 0s; + height: 1px; + /*transform:translateY(-10px);*/ +} + +.collection a:hover:after, .collection a:focus:after{ + opacity: 1; + /*transform:translateY(0px);*/ + height: 2px; + +} diff --git a/challenges/newchallenge4/inside/contact.html b/challenges/newchallenge4/inside/contact.html new file mode 100755 index 00000000..64abcbd3 --- /dev/null +++ b/challenges/newchallenge4/inside/contact.html @@ -0,0 +1,92 @@ + + + + + + Website's Name + + + + + + +
+ +
+
+ + + + + + + +
+
+
+
+

Let's Do Awesome Things Together.

+
+

+

narendra.prog@test.com

+

+

Click here to Login

+
+
+
+
+ +
+
+
+ + +
+ + \ No newline at end of file diff --git a/challenges/newchallenge4/inside/index1.php b/challenges/newchallenge4/inside/index1.php new file mode 100755 index 00000000..95e6d426 --- /dev/null +++ b/challenges/newchallenge4/inside/index1.php @@ -0,0 +1,283 @@ + + + + + + Website's Name + + + + + + +
+ +
+
+ + + + + +"; + echo "
Welcome to the Login Page    
"; + echo "
"; + echo "
"; + echo "
"; + + echo ""; + echo '
'; + + echo '
Username :    '; + echo '
'; + + echo '
Password :      '; + echo '

'; + echo '
'; + + echo '
'; + echo '
'; + echo '
'; + echo '
'; + echo ''; + echo '

'; + echo '
'; + + + + + + + +function check_input($value) + { + if(!empty($value)) + { + $value = substr($value,0,20); + } + if (get_magic_quotes_gpc()) // Stripslashes if magic quotes enabled + { + $value = stripslashes($value); + } + if (!ctype_digit($value)) + { + $value = "'" . mysql_real_escape_string($value) . "'"; + } + else + { + $value = intval($value); + } + return $value; + } + + + + echo "
"; + echo "
"; + + if(isset($_POST['uname']) && isset($_POST['passwd'])) + { + + $uname = check_input($_POST['uname']); + $passwd = check_input($_POST['passwd']); + + + + + $sql="SELECT users.username, users.password FROM users WHERE users.username=$uname and users.password=$passwd ORDER BY users.id DESC LIMIT 0,1"; + $result1 = mysql_query($sql); + $row1 = mysql_fetch_array($result1); + if($row1) + { + echo ''; + setcookie('uname', base64_encode($row1['username']), time()+3600); + header ('Location: index1.php'); + echo "I LOVE YOU COOKIES"; + echo ""; + echo ''; + + echo ""; + echo "
"; + print_r(mysql_error()); + echo "

"; + echo "test"; + echo "
"; + } + else + { + echo ''; + print_r(mysql_error()); + echo "Invalid credentials"; + echo "
"; + echo "
"; + echo "
"; + } + } + + echo "
"; + echo '
'; + echo '
'; + +} +else +{ + + + + if(!isset($_POST['submit'])) + { + + // print_r($_SERVER); + echo "
"; + if ( ($_SERVER['HTTP_USER_AGENT'] === 'OurBrowser' ) ) + { + $cookee = $_COOKIE['uname']; + $format = 'D d M Y - H:i:s'; + $timestamp = time() + 3600; + echo "
"; + echo "


"; + echo "

"; + echo '
'; + // echo "YOUR USER AGENT IS : ".$_SERVER['HTTP_USER_AGENT']; + // echo "
"; + echo ''; + + $cookee = base64_decode($cookee); + $cookee1 = '"'. $cookee. '"'; + echo ""; + $sql="SELECT * FROM users WHERE username=$cookee1 LIMIT 0,1"; + $result=mysql_query($sql); + if (!$result) + { + die('Issue with your mysql: ' . mysql_error() . "



"); + } + $row = mysql_fetch_array($result); + if($row) + { + echo ''; + echo "You now have access to your Profile

"; + echo 'You are logged in as : '. $row['username']; + echo "
"; + if($row['username'] == "admin"){ + echo "

CONGRATS, YOU NAILED IT !"; + echo "









"; + die(); + } + echo ''; + echo "
"; + echo "
"; + echo 'Your CALL ID is : ' .$row['id']; + } + else + { + echo "

"; + echo "You almost got it"; + echo '


'; + echo "

"; + } + echo '
'; + echo "


"; + echo '
'; + echo ''; + echo '
'; + echo '
'; + } + else{ + echo "

You have logged in, but unfortunately you cannot access your profile without OurBrowser
"; + echo "
*If you are our customer, you would have our paid browser and you would know how to continue
"; + echo "
"; + echo '
'; + echo "


"; + echo '
'; + echo ''; + echo '
'; + echo '
'; + } + } + else + { + echo '
'; + echo "
"; + echo "
"; + echo "
"; + echo "
"; + echo "
"; + echo "
"; + echo ''; + echo " Your Cookie is deleted"; + setcookie('uname', base64_encode($row1['username']), time()-3600); + header ('Location: index1.php'); + echo '

'; + + } + + + echo "
"; + echo "
"; + //header ('Location: main.php'); + echo "
"; + echo "
"; + + +} +?> + + + +
+ + diff --git a/challenges/newchallenge4/inside/newicons/1421020759_internt_web_technology-08-128.png b/challenges/newchallenge4/inside/newicons/1421020759_internt_web_technology-08-128.png new file mode 100755 index 00000000..25423b60 Binary files /dev/null and b/challenges/newchallenge4/inside/newicons/1421020759_internt_web_technology-08-128.png differ diff --git a/challenges/newchallenge4/inside/newicons/1421020820_internt_web_technology-14-64.png b/challenges/newchallenge4/inside/newicons/1421020820_internt_web_technology-14-64.png new file mode 100755 index 00000000..51f91746 Binary files /dev/null and b/challenges/newchallenge4/inside/newicons/1421020820_internt_web_technology-14-64.png differ diff --git a/challenges/newchallenge4/inside/newicons/1421020862_internt_web_technology-13-48.png b/challenges/newchallenge4/inside/newicons/1421020862_internt_web_technology-13-48.png new file mode 100755 index 00000000..bb81ab4c Binary files /dev/null and b/challenges/newchallenge4/inside/newicons/1421020862_internt_web_technology-13-48.png differ diff --git a/challenges/newchallenge4/inside/newicons/1421021091_map-128.png b/challenges/newchallenge4/inside/newicons/1421021091_map-128.png new file mode 100755 index 00000000..1d47948e Binary files /dev/null and b/challenges/newchallenge4/inside/newicons/1421021091_map-128.png differ diff --git a/challenges/newchallenge4/inside/newicons/fb24_1.png b/challenges/newchallenge4/inside/newicons/fb24_1.png new file mode 100755 index 00000000..7a61b287 Binary files /dev/null and b/challenges/newchallenge4/inside/newicons/fb24_1.png differ diff --git a/challenges/newchallenge4/inside/newicons/fb24_2.png b/challenges/newchallenge4/inside/newicons/fb24_2.png new file mode 100755 index 00000000..128d9a0f Binary files /dev/null and b/challenges/newchallenge4/inside/newicons/fb24_2.png differ diff --git a/challenges/newchallenge4/inside/newicons/gmail32.png b/challenges/newchallenge4/inside/newicons/gmail32.png new file mode 100755 index 00000000..fd70437e Binary files /dev/null and b/challenges/newchallenge4/inside/newicons/gmail32.png differ diff --git a/challenges/newchallenge4/inside/newicons/google24_2.png b/challenges/newchallenge4/inside/newicons/google24_2.png new file mode 100755 index 00000000..7b868772 Binary files /dev/null and b/challenges/newchallenge4/inside/newicons/google24_2.png differ diff --git a/challenges/newchallenge4/inside/newicons/instagram.png b/challenges/newchallenge4/inside/newicons/instagram.png new file mode 100755 index 00000000..68bb1a39 Binary files /dev/null and b/challenges/newchallenge4/inside/newicons/instagram.png differ diff --git a/challenges/newchallenge4/inside/newicons/linkedin24_2.png b/challenges/newchallenge4/inside/newicons/linkedin24_2.png new file mode 100755 index 00000000..4dc9c022 Binary files /dev/null and b/challenges/newchallenge4/inside/newicons/linkedin24_2.png differ diff --git a/challenges/newchallenge4/inside/newicons/linkedin32.png b/challenges/newchallenge4/inside/newicons/linkedin32.png new file mode 100755 index 00000000..ea15de25 Binary files /dev/null and b/challenges/newchallenge4/inside/newicons/linkedin32.png differ diff --git a/challenges/newchallenge4/inside/newicons/mail24_1.png b/challenges/newchallenge4/inside/newicons/mail24_1.png new file mode 100755 index 00000000..66ec95c5 Binary files /dev/null and b/challenges/newchallenge4/inside/newicons/mail24_1.png differ diff --git a/challenges/newchallenge4/inside/newicons/mail24_2.png b/challenges/newchallenge4/inside/newicons/mail24_2.png new file mode 100755 index 00000000..c59cac41 Binary files /dev/null and b/challenges/newchallenge4/inside/newicons/mail24_2.png differ diff --git a/challenges/newchallenge4/inside/newicons/mail64_1.png b/challenges/newchallenge4/inside/newicons/mail64_1.png new file mode 100755 index 00000000..d94a3416 Binary files /dev/null and b/challenges/newchallenge4/inside/newicons/mail64_1.png differ diff --git a/challenges/newchallenge4/inside/newicons/place24.png b/challenges/newchallenge4/inside/newicons/place24.png new file mode 100755 index 00000000..721525ed Binary files /dev/null and b/challenges/newchallenge4/inside/newicons/place24.png differ diff --git a/challenges/newchallenge4/inside/newicons/place32.png b/challenges/newchallenge4/inside/newicons/place32.png new file mode 100755 index 00000000..87b6dee6 Binary files /dev/null and b/challenges/newchallenge4/inside/newicons/place32.png differ diff --git a/challenges/newchallenge4/inside/newicons/twit.png b/challenges/newchallenge4/inside/newicons/twit.png new file mode 100755 index 00000000..16b88d59 Binary files /dev/null and b/challenges/newchallenge4/inside/newicons/twit.png differ diff --git a/challenges/newchallenge4/inside/newicons/twitter24_2.png b/challenges/newchallenge4/inside/newicons/twitter24_2.png new file mode 100755 index 00000000..57c3b201 Binary files /dev/null and b/challenges/newchallenge4/inside/newicons/twitter24_2.png differ diff --git a/challenges/newchallenge4/inside/newicons/twitter32.png b/challenges/newchallenge4/inside/newicons/twitter32.png new file mode 100755 index 00000000..14fb00c1 Binary files /dev/null and b/challenges/newchallenge4/inside/newicons/twitter32.png differ diff --git a/challenges/newchallenge4/inside/newicons/twitter32_1.png b/challenges/newchallenge4/inside/newicons/twitter32_1.png new file mode 100755 index 00000000..0d2778f6 Binary files /dev/null and b/challenges/newchallenge4/inside/newicons/twitter32_1.png differ diff --git a/challenges/newchallenge4/inside/use-icon/fb48_1.png b/challenges/newchallenge4/inside/use-icon/fb48_1.png new file mode 100755 index 00000000..b6bc1b76 Binary files /dev/null and b/challenges/newchallenge4/inside/use-icon/fb48_1.png differ diff --git a/challenges/newchallenge4/inside/use-icon/fb48_2.png b/challenges/newchallenge4/inside/use-icon/fb48_2.png new file mode 100755 index 00000000..1b0af134 Binary files /dev/null and b/challenges/newchallenge4/inside/use-icon/fb48_2.png differ diff --git a/challenges/newchallenge4/inside/use-icon/fb48_3.png b/challenges/newchallenge4/inside/use-icon/fb48_3.png new file mode 100755 index 00000000..09694e85 Binary files /dev/null and b/challenges/newchallenge4/inside/use-icon/fb48_3.png differ diff --git a/challenges/newchallenge4/inside/use-icon/fb48_4.png b/challenges/newchallenge4/inside/use-icon/fb48_4.png new file mode 100755 index 00000000..89526692 Binary files /dev/null and b/challenges/newchallenge4/inside/use-icon/fb48_4.png differ diff --git a/challenges/newchallenge4/inside/use-icon/fb_32.png b/challenges/newchallenge4/inside/use-icon/fb_32.png new file mode 100755 index 00000000..4be62fb2 Binary files /dev/null and b/challenges/newchallenge4/inside/use-icon/fb_32.png differ diff --git a/challenges/newchallenge4/inside/use-icon/gplus48.png b/challenges/newchallenge4/inside/use-icon/gplus48.png new file mode 100755 index 00000000..983f1afb Binary files /dev/null and b/challenges/newchallenge4/inside/use-icon/gplus48.png differ diff --git a/challenges/newchallenge4/inside/use-icon/gplus48_2.png b/challenges/newchallenge4/inside/use-icon/gplus48_2.png new file mode 100755 index 00000000..ee2a147c Binary files /dev/null and b/challenges/newchallenge4/inside/use-icon/gplus48_2.png differ diff --git a/challenges/newchallenge4/inside/use-icon/gplus48_3.png b/challenges/newchallenge4/inside/use-icon/gplus48_3.png new file mode 100755 index 00000000..9cc71349 Binary files /dev/null and b/challenges/newchallenge4/inside/use-icon/gplus48_3.png differ diff --git a/challenges/newchallenge4/inside/use-icon/gplus48_4.png b/challenges/newchallenge4/inside/use-icon/gplus48_4.png new file mode 100755 index 00000000..549ae0ed Binary files /dev/null and b/challenges/newchallenge4/inside/use-icon/gplus48_4.png differ diff --git a/challenges/newchallenge4/inside/use-icon/linkedin48_1.png b/challenges/newchallenge4/inside/use-icon/linkedin48_1.png new file mode 100755 index 00000000..7a8e11ac Binary files /dev/null and b/challenges/newchallenge4/inside/use-icon/linkedin48_1.png differ diff --git a/challenges/newchallenge4/inside/use-icon/linkedin48_2.png b/challenges/newchallenge4/inside/use-icon/linkedin48_2.png new file mode 100755 index 00000000..417514aa Binary files /dev/null and b/challenges/newchallenge4/inside/use-icon/linkedin48_2.png differ diff --git a/challenges/newchallenge4/inside/use-icon/linkedin48_3.png b/challenges/newchallenge4/inside/use-icon/linkedin48_3.png new file mode 100755 index 00000000..9a77eef9 Binary files /dev/null and b/challenges/newchallenge4/inside/use-icon/linkedin48_3.png differ diff --git a/challenges/newchallenge4/inside/use-icon/linkedin48_4.png b/challenges/newchallenge4/inside/use-icon/linkedin48_4.png new file mode 100755 index 00000000..b35db457 Binary files /dev/null and b/challenges/newchallenge4/inside/use-icon/linkedin48_4.png differ diff --git a/challenges/newchallenge4/inside/use-icon/linkedin_32.png b/challenges/newchallenge4/inside/use-icon/linkedin_32.png new file mode 100755 index 00000000..9c009a52 Binary files /dev/null and b/challenges/newchallenge4/inside/use-icon/linkedin_32.png differ diff --git a/challenges/newchallenge4/inside/use-icon/mail32.png b/challenges/newchallenge4/inside/use-icon/mail32.png new file mode 100755 index 00000000..bf5a04fd Binary files /dev/null and b/challenges/newchallenge4/inside/use-icon/mail32.png differ diff --git a/challenges/newchallenge4/inside/use-icon/mail32_1.png b/challenges/newchallenge4/inside/use-icon/mail32_1.png new file mode 100755 index 00000000..e80e9b08 Binary files /dev/null and b/challenges/newchallenge4/inside/use-icon/mail32_1.png differ diff --git a/challenges/newchallenge4/inside/use-icon/msg_1png b/challenges/newchallenge4/inside/use-icon/msg_1png new file mode 100755 index 00000000..c49221ad Binary files /dev/null and b/challenges/newchallenge4/inside/use-icon/msg_1png differ diff --git a/challenges/newchallenge4/inside/use-icon/twitter48_1.png b/challenges/newchallenge4/inside/use-icon/twitter48_1.png new file mode 100755 index 00000000..fa928111 Binary files /dev/null and b/challenges/newchallenge4/inside/use-icon/twitter48_1.png differ diff --git a/challenges/newchallenge4/inside/use-icon/twitter48_2.png b/challenges/newchallenge4/inside/use-icon/twitter48_2.png new file mode 100755 index 00000000..2a560776 Binary files /dev/null and b/challenges/newchallenge4/inside/use-icon/twitter48_2.png differ diff --git a/challenges/newchallenge4/inside/use-icon/twitter48_3.png b/challenges/newchallenge4/inside/use-icon/twitter48_3.png new file mode 100755 index 00000000..b8ab821d Binary files /dev/null and b/challenges/newchallenge4/inside/use-icon/twitter48_3.png differ diff --git a/challenges/newchallenge4/inside/use-icon/twitter48_4.png b/challenges/newchallenge4/inside/use-icon/twitter48_4.png new file mode 100755 index 00000000..0bc14d99 Binary files /dev/null and b/challenges/newchallenge4/inside/use-icon/twitter48_4.png differ diff --git a/challenges/newchallenge4/inside/use-icon/twitter_32.png b/challenges/newchallenge4/inside/use-icon/twitter_32.png new file mode 100755 index 00000000..bbcc2cc2 Binary files /dev/null and b/challenges/newchallenge4/inside/use-icon/twitter_32.png differ diff --git a/challenges/newchallenge4/inside/use-icons/facebook.png b/challenges/newchallenge4/inside/use-icons/facebook.png new file mode 100755 index 00000000..5fb0213b Binary files /dev/null and b/challenges/newchallenge4/inside/use-icons/facebook.png differ diff --git a/challenges/newchallenge4/inside/use-icons/google.png b/challenges/newchallenge4/inside/use-icons/google.png new file mode 100755 index 00000000..2942c7ea Binary files /dev/null and b/challenges/newchallenge4/inside/use-icons/google.png differ diff --git a/challenges/newchallenge4/inside/use-icons/linkedin.png b/challenges/newchallenge4/inside/use-icons/linkedin.png new file mode 100755 index 00000000..ba6a753b Binary files /dev/null and b/challenges/newchallenge4/inside/use-icons/linkedin.png differ diff --git a/challenges/newchallenge4/inside/use-icons/submit.png b/challenges/newchallenge4/inside/use-icons/submit.png new file mode 100755 index 00000000..7e35d6d5 Binary files /dev/null and b/challenges/newchallenge4/inside/use-icons/submit.png differ diff --git a/challenges/newchallenge4/inside/use-icons/submit_check.png b/challenges/newchallenge4/inside/use-icons/submit_check.png new file mode 100755 index 00000000..d8da4735 Binary files /dev/null and b/challenges/newchallenge4/inside/use-icons/submit_check.png differ diff --git a/challenges/newchallenge4/inside/use-icons/twitter.png b/challenges/newchallenge4/inside/use-icons/twitter.png new file mode 100755 index 00000000..9b81a0d6 Binary files /dev/null and b/challenges/newchallenge4/inside/use-icons/twitter.png differ diff --git a/challenges/newchallenge4/newchallenge4.xml b/challenges/newchallenge4/newchallenge4.xml new file mode 100755 index 00000000..b6818b02 --- /dev/null +++ b/challenges/newchallenge4/newchallenge4.xml @@ -0,0 +1,17 @@ + + + New Challenge 3 + + Andreas Venieris, + Konstantinos Papapanagiotou, + Anastasios Stasinopoulos, + Vasilios Vlachos, + Alexandros Papanikolaou + + web + + SITE. However, they have solved this to an extent and have MITM'd a regular user to get the following credentials { username : scrtusr & password : mint_cinnamon} however this bit of information isn't enough to get to the user's profile or to inject into the website to get admin login details . So, now you have to find out the admin credentials and hand it over to the government officials, so that they can carry out some security checks. Login as admin.

Hint : Wanna have a Cookie ??

+ ]]> +
+
diff --git a/challenges/newchallenge4/sql-connections/db-creds.inc b/challenges/newchallenge4/sql-connections/db-creds.inc new file mode 100755 index 00000000..cf303275 --- /dev/null +++ b/challenges/newchallenge4/sql-connections/db-creds.inc @@ -0,0 +1,10 @@ + + diff --git a/challenges/newchallenge4/sql-connections/functions.php b/challenges/newchallenge4/sql-connections/functions.php new file mode 100755 index 00000000..aa92d095 --- /dev/null +++ b/challenges/newchallenge4/sql-connections/functions.php @@ -0,0 +1,91 @@ + diff --git a/challenges/newchallenge4/sql-connections/setup-db-challenge.php b/challenges/newchallenge4/sql-connections/setup-db-challenge.php new file mode 100755 index 00000000..09c225bc --- /dev/null +++ b/challenges/newchallenge4/sql-connections/setup-db-challenge.php @@ -0,0 +1,80 @@ + + + + +
+
+ +"; +@error_reporting(0); +if(isset($_GET['id'])) +$id = $_GET['id']; +//echo $id; + +// Check connection +@$con = mysql_connect($host,$dbuser,$dbpass); +if (!$con) +{ + echo "Failed to connect to MySQL: " . mysql_error(); +} + + +//purging Old Database for challenges + $sql="DROP DATABASE IF EXISTS $dbname1"; + if (mysql_query($sql)) + {echo "Old database purged if exists"; echo "

\n";} + else + {echo "Error purging database: " . mysql_error(); echo "

\n";} + + + + +//Creating new database for challenges + $sql="CREATE database $dbname1 CHARACTER SET `gbk` "; + if (mysql_query($sql)) + {echo "Creating New database successfully";echo "

\n";} + else + {echo "Error creating database: " . mysql_error();echo "

\n";} + +include '../sql-connections/functions.php'; + + + +// Creating table +$sql="CREATE TABLE IF NOT EXISTS $dbname1.$table + ( + id INT(2) UNSIGNED NOT NULL DEFAULT 1, + sessid CHAR(32) PRIMARY KEY NOT NULL, + $secret_key CHAR(32) NOT NULL, + tryy INT(11) UNSIGNED NOT NULL DEFAULT 0 + )"; + if (mysql_query($sql)) + {echo "Creating New Table '$table' successfully";echo "

\n";} + else + {echo "Error creating Table: " . mysql_error();echo "

\n";} + + +// creating random key +$characters = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789'; //characterset for generating random data +$sec_key = num_gen(24, $characters); +$hash = md5(rand(0,100000)); + +//inserting Dummy data into table +$sql="INSERT INTO $dbname1.$table VALUES (1, '$hash', '$sec_key', 0)"; + if (mysql_query($sql)) + {echo "Inserted data correctly into table '$table'";echo "

\n";} + else + {echo "Error inserting data: " . mysql_error();echo "

\n";} + +echo "Inserted secret key '$secret_key' into table ";echo "

\n"; + +if(isset($id)) +header( "refresh:0;url=$id" ); + +?> + + + diff --git a/challenges/newchallenge4/sql-connections/setup-db.php b/challenges/newchallenge4/sql-connections/setup-db.php new file mode 100755 index 00000000..4f2bacf3 --- /dev/null +++ b/challenges/newchallenge4/sql-connections/setup-db.php @@ -0,0 +1,104 @@ + + + + +Welcome To The World Hackers + + + + +
+Welcome    + +
+
+ +
+ +
Wait a bit.. Setting up database !
+

+ + +"; + + + +$con = mysql_connect($host,$dbuser,$dbpass); +if (!$con) + { + die('Could not connect to DB, check the creds in db-creds.inc: ' . mysql_error()); + } + + + + +//@mysql_select_db('mysql',$con) + +//purging Old Database + $sql="DROP DATABASE IF EXISTS waymessier_db"; + if (mysql_query($sql)) + {echo "Old database 'waymessier_db' purged if exists"; echo "

\n";} + else + {echo "Error purging database: " . mysql_error(); echo "

\n";} + + +//Creating new database waymessier_db + $sql="CREATE database `waymessier_db` CHARACTER SET `gbk` "; + if (mysql_query($sql)) + {echo "Creating New database 'waymessier_db' successfully";echo "

\n";} + else + {echo "Error creating database: " . mysql_error();echo "

\n";} + +//creating table users +$sql="CREATE TABLE waymessier_db.users (id int(3) NOT NULL AUTO_INCREMENT, username varchar(20) NOT NULL, password varchar(20) NOT NULL, PRIMARY KEY (id))"; + if (mysql_query($sql)) + {echo "Creating New Table 'USERS' successfully";echo "

\n";} + else + {echo "Error creating Table: " . mysql_error();echo "

\n";} + + +//creating table emails +$sql="CREATE TABLE waymessier_db.emails + ( + id int(3)NOT NULL AUTO_INCREMENT, + email_id varchar(30) NOT NULL, + PRIMARY KEY (id) + )"; + if (mysql_query($sql)) + {echo "Creating New Table 'EMAILS' successfully"; echo "

\n";} + else + {echo "Error creating Table: " . mysql_error();echo "

\n";} + + + + +//inserting data +$sql="INSERT INTO waymessier_db.users (id, username, password) VALUES ('1', 'TheGamer', 'C.O.D'), ('2', 'scrtusr', 'mint_cinnamon'), ('3', 'soumya', 'fu**inglol'), ('4', 'Adamnew', 'Evenew'), ('5', 'Preciouslate', 'PreTimeLate'), ('6', 'DultonThe', 'WowDulton_coder'), ('7', 'Newbatman', 'catty_woman'), ('8', 'admin', 'TheAdminPassw0rd'), ('9', 'Joey', 'Tribbiani'), ('10', 'Chandler', 'Bing'), ('11', 'Matthew', 'Perry'), ('12', 'Monica', 'Geller'), ('13', 'Ross', 'Geller1'), ('14', 'Phoebe', 'Buffay')"; + if (mysql_query($sql)) + {echo "Inserted data correctly into table 'USERS'";echo "

\n";} + else + {echo "Error inserting data: " . mysql_error();echo "

\n";} + + + +//inserting data +$sql="INSERT INTO `waymessier_db`.`emails` (id, email_id) VALUES ('1', 'TheGaminAddict@Gamers.com'), ('2', 'Linuxlovers@linux.com'), ('3', 'veryfunny@funny.com'), ('4', 'lovers@lovetime.com'), ('5', 'TimeIs@precious.com'), ('6', 'dallu@aditi.com'), ('7', 'superheroes@best.com'), ('8', 'theadmin@admin.com'), ('9', 'newone@user.com'), ('10', 'food@besties.com'), ('11', 'cubers_world@DeskTest.com'), ('12', 'thenewadmin@new.com'), ('13', 'sunil@shankhala.com'), ('14', 'fourneen@newgmail.com')"; + if (mysql_query($sql)) + {echo "Inserted data correctly into table 'EMAILS'";echo "

\n";} + else + {echo "Error inserting data: " . mysql_error();echo "

\n";} + + + +//including the Challenges DB creation file. +include("../sql-connections/setup-db-challenge.php"); +?> + + + +
+ + diff --git a/challenges/newchallenge4/sql-connections/sql-connect-1.php b/challenges/newchallenge4/sql-connections/sql-connect-1.php new file mode 100755 index 00000000..8b1f9ed3 --- /dev/null +++ b/challenges/newchallenge4/sql-connections/sql-connect-1.php @@ -0,0 +1,29 @@ + + + + + + diff --git a/challenges/newchallenge4/sql-connections/sql-connect.php b/challenges/newchallenge4/sql-connections/sql-connect.php new file mode 100755 index 00000000..611c6b96 --- /dev/null +++ b/challenges/newchallenge4/sql-connections/sql-connect.php @@ -0,0 +1,34 @@ + + + + + + diff --git a/challenges/newchallenge4/sql-connections/sqli-connect.php b/challenges/newchallenge4/sql-connections/sqli-connect.php new file mode 100755 index 00000000..82132e92 --- /dev/null +++ b/challenges/newchallenge4/sql-connections/sqli-connect.php @@ -0,0 +1,25 @@ + + + + + + diff --git a/challenges/newchallenge4/sql-connections/test.php b/challenges/newchallenge4/sql-connections/test.php new file mode 100755 index 00000000..4c00cd27 --- /dev/null +++ b/challenges/newchallenge4/sql-connections/test.php @@ -0,0 +1,11 @@ + diff --git a/composer.json b/composer.json old mode 100644 new mode 100755 diff --git a/controller/class.ChallengeListController.php b/controller/class.ChallengeListController.php old mode 100644 new mode 100755 diff --git a/controller/class.ChallengeMonitorController.php b/controller/class.ChallengeMonitorController.php old mode 100644 new mode 100755 diff --git a/controller/class.ChallengeValidatorController.php b/controller/class.ChallengeValidatorController.php old mode 100644 new mode 100755 diff --git a/controller/class.HackademicController.php b/controller/class.HackademicController.php old mode 100644 new mode 100755 diff --git a/controller/class.LoginController.php b/controller/class.LoginController.php old mode 100644 new mode 100755 diff --git a/controller/class.ProgressReportController.php b/controller/class.ProgressReportController.php old mode 100644 new mode 100755 diff --git a/controller/class.RankingsController.php b/controller/class.RankingsController.php old mode 100644 new mode 100755 diff --git a/controller/class.ReadArticleController.php b/controller/class.ReadArticleController.php old mode 100644 new mode 100755 diff --git a/controller/class.ShowChallengeController.php b/controller/class.ShowChallengeController.php old mode 100644 new mode 100755 diff --git a/controller/class.TryChallengeController.php b/controller/class.TryChallengeController.php old mode 100644 new mode 100755 diff --git a/controller/index.php b/controller/index.php old mode 100644 new mode 100755 diff --git a/docs/API docs - Actions.csv b/docs/API docs - Actions.csv old mode 100644 new mode 100755 diff --git a/docs/Plugin-API-Actions.md b/docs/Plugin-API-Actions.md old mode 100644 new mode 100755 diff --git a/docs/Plugin-API-Install.md b/docs/Plugin-API-Install.md old mode 100644 new mode 100755 diff --git a/docs/Plugin-API-Overview.md b/docs/Plugin-API-Overview.md old mode 100644 new mode 100755 diff --git a/docs/Plugin-API-Pages-and-Menus.md b/docs/Plugin-API-Pages-and-Menus.md old mode 100644 new mode 100755 diff --git a/docs/Plugin-API-Plugin.md b/docs/Plugin-API-Plugin.md old mode 100644 new mode 100755 diff --git a/docs/Plugin-API-Theme.md b/docs/Plugin-API-Theme.md old mode 100644 new mode 100755 diff --git a/docs/docs.php b/docs/docs.php old mode 100644 new mode 100755 diff --git a/docs/plugindocs.sql b/docs/plugindocs.sql old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/COPYING.lib b/extlib/Smarty-3.1.21/COPYING.lib old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/README b/extlib/Smarty-3.1.21/README old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/SMARTY_2_BC_NOTES.txt b/extlib/Smarty-3.1.21/SMARTY_2_BC_NOTES.txt old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/SMARTY_3.0_BC_NOTES.txt b/extlib/Smarty-3.1.21/SMARTY_3.0_BC_NOTES.txt old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/SMARTY_3.1_NOTES.txt b/extlib/Smarty-3.1.21/SMARTY_3.1_NOTES.txt old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/change_log.txt b/extlib/Smarty-3.1.21/change_log.txt old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/demo/configs/test.conf b/extlib/Smarty-3.1.21/demo/configs/test.conf old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/demo/index.php b/extlib/Smarty-3.1.21/demo/index.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/demo/plugins/cacheresource.apc.php b/extlib/Smarty-3.1.21/demo/plugins/cacheresource.apc.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/demo/plugins/cacheresource.memcache.php b/extlib/Smarty-3.1.21/demo/plugins/cacheresource.memcache.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/demo/plugins/cacheresource.mysql.php b/extlib/Smarty-3.1.21/demo/plugins/cacheresource.mysql.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/demo/plugins/resource.extendsall.php b/extlib/Smarty-3.1.21/demo/plugins/resource.extendsall.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/demo/plugins/resource.mysql.php b/extlib/Smarty-3.1.21/demo/plugins/resource.mysql.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/demo/plugins/resource.mysqls.php b/extlib/Smarty-3.1.21/demo/plugins/resource.mysqls.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/demo/templates/footer.tpl b/extlib/Smarty-3.1.21/demo/templates/footer.tpl old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/demo/templates/header.tpl b/extlib/Smarty-3.1.21/demo/templates/header.tpl old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/demo/templates/index.tpl b/extlib/Smarty-3.1.21/demo/templates/index.tpl old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/Smarty.class.php b/extlib/Smarty-3.1.21/libs/Smarty.class.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/SmartyBC.class.php b/extlib/Smarty-3.1.21/libs/SmartyBC.class.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/debug.tpl b/extlib/Smarty-3.1.21/libs/debug.tpl old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/plugins/block.textformat.php b/extlib/Smarty-3.1.21/libs/plugins/block.textformat.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/plugins/function.counter.php b/extlib/Smarty-3.1.21/libs/plugins/function.counter.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/plugins/function.cycle.php b/extlib/Smarty-3.1.21/libs/plugins/function.cycle.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/plugins/function.fetch.php b/extlib/Smarty-3.1.21/libs/plugins/function.fetch.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/plugins/function.html_checkboxes.php b/extlib/Smarty-3.1.21/libs/plugins/function.html_checkboxes.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/plugins/function.html_image.php b/extlib/Smarty-3.1.21/libs/plugins/function.html_image.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/plugins/function.html_options.php b/extlib/Smarty-3.1.21/libs/plugins/function.html_options.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/plugins/function.html_radios.php b/extlib/Smarty-3.1.21/libs/plugins/function.html_radios.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/plugins/function.html_select_date.php b/extlib/Smarty-3.1.21/libs/plugins/function.html_select_date.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/plugins/function.html_select_time.php b/extlib/Smarty-3.1.21/libs/plugins/function.html_select_time.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/plugins/function.html_table.php b/extlib/Smarty-3.1.21/libs/plugins/function.html_table.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/plugins/function.locale.php b/extlib/Smarty-3.1.21/libs/plugins/function.locale.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/plugins/function.mailto.php b/extlib/Smarty-3.1.21/libs/plugins/function.mailto.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/plugins/function.math.php b/extlib/Smarty-3.1.21/libs/plugins/function.math.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/plugins/modifier.capitalize.php b/extlib/Smarty-3.1.21/libs/plugins/modifier.capitalize.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/plugins/modifier.date_format.php b/extlib/Smarty-3.1.21/libs/plugins/modifier.date_format.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/plugins/modifier.debug_print_var.php b/extlib/Smarty-3.1.21/libs/plugins/modifier.debug_print_var.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/plugins/modifier.escape.php b/extlib/Smarty-3.1.21/libs/plugins/modifier.escape.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/plugins/modifier.regex_replace.php b/extlib/Smarty-3.1.21/libs/plugins/modifier.regex_replace.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/plugins/modifier.replace.php b/extlib/Smarty-3.1.21/libs/plugins/modifier.replace.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/plugins/modifier.spacify.php b/extlib/Smarty-3.1.21/libs/plugins/modifier.spacify.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/plugins/modifier.truncate.php b/extlib/Smarty-3.1.21/libs/plugins/modifier.truncate.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/plugins/modifiercompiler.cat.php b/extlib/Smarty-3.1.21/libs/plugins/modifiercompiler.cat.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/plugins/modifiercompiler.count_characters.php b/extlib/Smarty-3.1.21/libs/plugins/modifiercompiler.count_characters.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/plugins/modifiercompiler.count_paragraphs.php b/extlib/Smarty-3.1.21/libs/plugins/modifiercompiler.count_paragraphs.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/plugins/modifiercompiler.count_sentences.php b/extlib/Smarty-3.1.21/libs/plugins/modifiercompiler.count_sentences.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/plugins/modifiercompiler.count_words.php b/extlib/Smarty-3.1.21/libs/plugins/modifiercompiler.count_words.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/plugins/modifiercompiler.default.php b/extlib/Smarty-3.1.21/libs/plugins/modifiercompiler.default.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/plugins/modifiercompiler.escape.php b/extlib/Smarty-3.1.21/libs/plugins/modifiercompiler.escape.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/plugins/modifiercompiler.from_charset.php b/extlib/Smarty-3.1.21/libs/plugins/modifiercompiler.from_charset.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/plugins/modifiercompiler.indent.php b/extlib/Smarty-3.1.21/libs/plugins/modifiercompiler.indent.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/plugins/modifiercompiler.lower.php b/extlib/Smarty-3.1.21/libs/plugins/modifiercompiler.lower.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/plugins/modifiercompiler.noprint.php b/extlib/Smarty-3.1.21/libs/plugins/modifiercompiler.noprint.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/plugins/modifiercompiler.string_format.php b/extlib/Smarty-3.1.21/libs/plugins/modifiercompiler.string_format.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/plugins/modifiercompiler.strip.php b/extlib/Smarty-3.1.21/libs/plugins/modifiercompiler.strip.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/plugins/modifiercompiler.strip_tags.php b/extlib/Smarty-3.1.21/libs/plugins/modifiercompiler.strip_tags.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/plugins/modifiercompiler.to_charset.php b/extlib/Smarty-3.1.21/libs/plugins/modifiercompiler.to_charset.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/plugins/modifiercompiler.unescape.php b/extlib/Smarty-3.1.21/libs/plugins/modifiercompiler.unescape.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/plugins/modifiercompiler.upper.php b/extlib/Smarty-3.1.21/libs/plugins/modifiercompiler.upper.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/plugins/modifiercompiler.wordwrap.php b/extlib/Smarty-3.1.21/libs/plugins/modifiercompiler.wordwrap.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/plugins/outputfilter.trimwhitespace.php b/extlib/Smarty-3.1.21/libs/plugins/outputfilter.trimwhitespace.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/plugins/shared.escape_special_chars.php b/extlib/Smarty-3.1.21/libs/plugins/shared.escape_special_chars.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/plugins/shared.literal_compiler_param.php b/extlib/Smarty-3.1.21/libs/plugins/shared.literal_compiler_param.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/plugins/shared.make_timestamp.php b/extlib/Smarty-3.1.21/libs/plugins/shared.make_timestamp.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/plugins/shared.mb_str_replace.php b/extlib/Smarty-3.1.21/libs/plugins/shared.mb_str_replace.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/plugins/shared.mb_unicode.php b/extlib/Smarty-3.1.21/libs/plugins/shared.mb_unicode.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/plugins/shared.mb_wordwrap.php b/extlib/Smarty-3.1.21/libs/plugins/shared.mb_wordwrap.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/plugins/variablefilter.htmlspecialchars.php b/extlib/Smarty-3.1.21/libs/plugins/variablefilter.htmlspecialchars.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/sysplugins/smarty_cacheresource.php b/extlib/Smarty-3.1.21/libs/sysplugins/smarty_cacheresource.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/sysplugins/smarty_cacheresource_custom.php b/extlib/Smarty-3.1.21/libs/sysplugins/smarty_cacheresource_custom.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/sysplugins/smarty_cacheresource_keyvaluestore.php b/extlib/Smarty-3.1.21/libs/sysplugins/smarty_cacheresource_keyvaluestore.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/sysplugins/smarty_config_source.php b/extlib/Smarty-3.1.21/libs/sysplugins/smarty_config_source.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_cacheresource_file.php b/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_cacheresource_file.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_compile_append.php b/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_compile_append.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_compile_assign.php b/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_compile_assign.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_compile_block.php b/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_compile_block.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_compile_break.php b/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_compile_break.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_compile_call.php b/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_compile_call.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_compile_capture.php b/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_compile_capture.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_compile_config_load.php b/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_compile_config_load.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_compile_continue.php b/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_compile_continue.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_compile_debug.php b/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_compile_debug.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_compile_eval.php b/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_compile_eval.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_compile_extends.php b/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_compile_extends.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_compile_for.php b/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_compile_for.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_compile_foreach.php b/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_compile_foreach.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_compile_function.php b/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_compile_function.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_compile_if.php b/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_compile_if.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_compile_include.php b/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_compile_include.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_compile_include_php.php b/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_compile_include_php.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_compile_insert.php b/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_compile_insert.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_compile_ldelim.php b/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_compile_ldelim.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_compile_nocache.php b/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_compile_nocache.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_compile_private_block_plugin.php b/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_compile_private_block_plugin.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_compile_private_function_plugin.php b/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_compile_private_function_plugin.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_compile_private_modifier.php b/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_compile_private_modifier.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_compile_private_object_block_function.php b/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_compile_private_object_block_function.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_compile_private_object_function.php b/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_compile_private_object_function.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_compile_private_print_expression.php b/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_compile_private_print_expression.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_compile_private_registered_block.php b/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_compile_private_registered_block.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_compile_private_registered_function.php b/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_compile_private_registered_function.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_compile_private_special_variable.php b/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_compile_private_special_variable.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_compile_rdelim.php b/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_compile_rdelim.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_compile_section.php b/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_compile_section.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_compile_setfilter.php b/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_compile_setfilter.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_compile_while.php b/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_compile_while.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_compilebase.php b/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_compilebase.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_config.php b/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_config.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_config_file_compiler.php b/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_config_file_compiler.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_configfilelexer.php b/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_configfilelexer.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_configfileparser.php b/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_configfileparser.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_data.php b/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_data.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_debug.php b/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_debug.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_filter_handler.php b/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_filter_handler.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_function_call_handler.php b/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_function_call_handler.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_get_include_path.php b/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_get_include_path.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_nocache_insert.php b/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_nocache_insert.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_parsetree.php b/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_parsetree.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_resource_eval.php b/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_resource_eval.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_resource_extends.php b/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_resource_extends.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_resource_file.php b/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_resource_file.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_resource_php.php b/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_resource_php.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_resource_registered.php b/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_resource_registered.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_resource_stream.php b/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_resource_stream.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_resource_string.php b/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_resource_string.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_smartytemplatecompiler.php b/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_smartytemplatecompiler.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_template.php b/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_template.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_templatebase.php b/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_templatebase.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_templatecompilerbase.php b/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_templatecompilerbase.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_templatelexer.php b/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_templatelexer.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_templateparser.php b/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_templateparser.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_utility.php b/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_utility.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_write_file.php b/extlib/Smarty-3.1.21/libs/sysplugins/smarty_internal_write_file.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/sysplugins/smarty_resource.php b/extlib/Smarty-3.1.21/libs/sysplugins/smarty_resource.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/sysplugins/smarty_resource_custom.php b/extlib/Smarty-3.1.21/libs/sysplugins/smarty_resource_custom.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/sysplugins/smarty_resource_recompiled.php b/extlib/Smarty-3.1.21/libs/sysplugins/smarty_resource_recompiled.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/sysplugins/smarty_resource_uncompiled.php b/extlib/Smarty-3.1.21/libs/sysplugins/smarty_resource_uncompiled.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.21/libs/sysplugins/smarty_security.php b/extlib/Smarty-3.1.21/libs/sysplugins/smarty_security.php old mode 100644 new mode 100755 diff --git a/extlib/Smarty-3.1.8/libs/plugins/function.locale.php b/extlib/Smarty-3.1.8/libs/plugins/function.locale.php old mode 100644 new mode 100755 diff --git a/hackademic_devtests/admin/controller/AddChallenge.php b/hackademic_devtests/admin/controller/AddChallenge.php old mode 100644 new mode 100755 diff --git a/hackademic_devtests/admin/controller/AddUserTest.php.php b/hackademic_devtests/admin/controller/AddUserTest.php.php old mode 100644 new mode 100755 diff --git a/hackademic_devtests/admin/controller/ArticleManagerTest.php b/hackademic_devtests/admin/controller/ArticleManagerTest.php old mode 100644 new mode 100755 diff --git a/hackademic_devtests/admin/controller/ChallengeManager.php b/hackademic_devtests/admin/controller/ChallengeManager.php old mode 100644 new mode 100755 diff --git a/hackademic_devtests/admin/controller/ClassManagerTest.php b/hackademic_devtests/admin/controller/ClassManagerTest.php old mode 100644 new mode 100755 diff --git a/hackademic_devtests/admin/controller/Scoring.php b/hackademic_devtests/admin/controller/Scoring.php old mode 100644 new mode 100755 diff --git a/hackademic_devtests/admin/controller/UserClassesTest.php b/hackademic_devtests/admin/controller/UserClassesTest.php old mode 100644 new mode 100755 diff --git a/hackademic_devtests/admin/model/class.MenuBackendTest.php b/hackademic_devtests/admin/model/class.MenuBackendTest.php old mode 100644 new mode 100755 diff --git a/hackademic_devtests/admin/model/class.OptionsTest.php b/hackademic_devtests/admin/model/class.OptionsTest.php old mode 100644 new mode 100755 diff --git a/hackademic_devtests/admin/model/class.PageBackendTest.php b/hackademic_devtests/admin/model/class.PageBackendTest.php old mode 100644 new mode 100755 diff --git a/hackademic_devtests/class.BaseTest.php b/hackademic_devtests/class.BaseTest.php old mode 100644 new mode 100755 diff --git a/hackademic_devtests/controller/ReadArticle.php b/hackademic_devtests/controller/ReadArticle.php old mode 100644 new mode 100755 diff --git a/hackademic_devtests/controller/Solve Challenge.php b/hackademic_devtests/controller/Solve Challenge.php old mode 100644 new mode 100755 diff --git a/hackademic_devtests/controller/TryChallenge.php b/hackademic_devtests/controller/TryChallenge.php old mode 100644 new mode 100755 diff --git a/hackademic_devtests/controller/View Scores.php b/hackademic_devtests/controller/View Scores.php old mode 100644 new mode 100755 diff --git a/hackademic_devtests/controller/class.HackademicControllerTest.php b/hackademic_devtests/controller/class.HackademicControllerTest.php old mode 100644 new mode 100755 diff --git a/hackademic_devtests/controller/implementations/class.HackademicControllerImplementation.php b/hackademic_devtests/controller/implementations/class.HackademicControllerImplementation.php old mode 100644 new mode 100755 diff --git a/hackademic_devtests/initTests.php b/hackademic_devtests/initTests.php old mode 100644 new mode 100755 diff --git a/hackademic_devtests/model/common/class.ArticleTest.php b/hackademic_devtests/model/common/class.ArticleTest.php old mode 100644 new mode 100755 diff --git a/hackademic_devtests/model/common/class.ChallengeAttemptsTest.php b/hackademic_devtests/model/common/class.ChallengeAttemptsTest.php old mode 100644 new mode 100755 diff --git a/hackademic_devtests/model/common/class.ChallengeTest.php b/hackademic_devtests/model/common/class.ChallengeTest.php old mode 100644 new mode 100755 diff --git a/hackademic_devtests/model/common/class.HackademicDBTest.php b/hackademic_devtests/model/common/class.HackademicDBTest.php old mode 100644 new mode 100755 diff --git a/hackademic_devtests/model/common/class.MenuTest.php b/hackademic_devtests/model/common/class.MenuTest.php old mode 100644 new mode 100755 diff --git a/hackademic_devtests/model/common/class.PageTest.php b/hackademic_devtests/model/common/class.PageTest.php old mode 100644 new mode 100755 diff --git a/hackademic_devtests/model/common/class.PluginTest.php b/hackademic_devtests/model/common/class.PluginTest.php old mode 100644 new mode 100755 diff --git a/hackademic_devtests/selenium-server-standalone-2.45.0.jar b/hackademic_devtests/selenium-server-standalone-2.45.0.jar old mode 100644 new mode 100755 diff --git a/hackademic_devtests/selenium/ui/log_in_click_options_enable_disable_plugin_and_theme.html b/hackademic_devtests/selenium/ui/log_in_click_options_enable_disable_plugin_and_theme.html old mode 100644 new mode 100755 diff --git a/hackademic_devtests/selenium/ui/test_plugin_suite.html b/hackademic_devtests/selenium/ui/test_plugin_suite.html old mode 100644 new mode 100755 diff --git a/index.php b/index.php old mode 100644 new mode 100755 diff --git a/installation/index.php b/installation/index.php old mode 100644 new mode 100755 diff --git a/installation/installer/Installer.php b/installation/installer/Installer.php old mode 100644 new mode 100755 diff --git a/installation/installer/data/index.php b/installation/installer/data/index.php old mode 100644 new mode 100755 diff --git a/installation/installer/data/lang/index.php b/installation/installer/data/lang/index.php old mode 100644 new mode 100755 diff --git a/installation/installer/index.php b/installation/installer/index.php old mode 100644 new mode 100755 diff --git a/installation/sql/db.sql b/installation/sql/db.sql old mode 100644 new mode 100755 index 06c24b62..922c2da9 --- a/installation/sql/db.sql +++ b/installation/sql/db.sql @@ -87,7 +87,7 @@ INSERT INTO `challenges` (`title`, `pkg_name`, `description`, `author`, `categor ('Challenge 23', 'ch023', '\n \n Ever been to take part in a treasure hint? Here''s your chance.The treasure is hidden somewhere in the web server.Try to use the hints available and reach the treasure. \n ', '\n Bhanudev Chaluvadi\n Spyros Gasteratos\n ', 'web', '2015-03-15 23:05:42', 'public', 1, NULL, '', 0, NULL, NULL, 'public', NULL, NULL), ('Challenge 24', 'ch024', '\n \n You have ordered a product on a website online.But,you found out that the product was defective and so, asked for a refund. But,the website rejected your refund request without any reason. You, being a hacker want to hack into the system and make your refund request accepted. \n \n ', '\n Bhanudev Chaluvadi\n Spyros Gasteratos\n ', 'web,network', '2015-03-15 23:05:43', 'public', 1, NULL, '', 0, NULL, NULL, 'public', NULL, NULL), ('Challenge 25', 'ch025', '\n \n Time to hurry! You have mistakenly sent an important mail to the wrong person. The details of the mail are too valuable and you can''t risk them being read by a wrong person.So, hurry up and stop the person from reading the mail.\n Your Email: user234@email.com\n Password: Usr@#$lc \n \n ', '\n Bhanudev Chaluvadi\n Spyros Gasteratos\n ', 'web', '2015-03-15 23:05:44', 'public', 1, NULL, '', 0, NULL, NULL, 'public', NULL, NULL), -('Challenge 26', 'ch026', '\n \n You are a member of the National Cyber Security group, along with a friend of yours.\n \n Your friend came across a conversation between 2 people and he suspected it to be related to some fraud. So, he started a Man-In-The-Middle Attack and succesfully installed a new key between them, during the key exchange phase. \n \n Now, he has asked you to spy on this conversation and gave you the details of the keys.He did not give you any information about the encryption scheme being used in the conversation. Its your turn to continue the MIM attack in such a way that none of the parties detect the attack. \n \n ', '\n Bhanudev Chaluvadi\n Spyros Gasteratos\n ', 'web', '2015-03-15 23:05:45', 'public', 1, NULL, '', 0, NULL, NULL, 'public', NULL, NULL), +('Challenge 26', 'ch026', '\n \n You are a member of the National Cyber Security group, along with a friend of yours.\n \n Your friend came across a conversation between 2 people and he suspected it to be related to some fraud. So , he started a Man-In-The-Middle Attack and succesfully installed a new key between them, during the key exchange phase. \n \n Now, he has asked you to spy on this conversation and gave you the details of the keys.He did not give you any information about the encryption scheme being used in the conversation. Its your turn to continue the MIM attack in such a way that none of the parties detect the attack. \n \n ', '\n Bhanudev Chaluvadi\n Spyros Gasteratos\n ', 'web', '2015-03-15 23:05:45', 'public', 1, NULL, '', 0, NULL, NULL, 'public', NULL, NULL), ('Challenge 27', 'ch027', '\n \n The archaeological department has found a book which is hundreds of years old. This book named ''The Treasure'' tells of a treasure of immense value.The book also contains an encrypted text, which might help in finding the key to the treasure. You have been entrusted the responsibility to decipher it.\n \n ', '\n Bhanudev Chaluvadi\n Spyros Gasteratos\n ', 'crypto', '2015-03-15 23:05:46', 'public', 1, NULL, '', 0, NULL, NULL, 'public', NULL, NULL), ('Challenge 28', 'ch028', '\n \nYou are again given the task to perform a Man-In-Middle Attack by your Security Agency.This time, both the parties are using the secure Diffie-Hellman Key Exchange protocol for generating keys.You have to perform the MIM attack during this key exchange.You can read about this key exchange protocol\nhere\n \n ', '\n Bhanudev Chaluvadi\n Spyros Gasteratos\n ', 'web', '2015-03-15 23:05:39', 'public', 1, NULL, '', 0, NULL, NULL, 'public', NULL, NULL), ('Challenge 29', 'ch029', '\n \nThis is a challenge to test your knowledge of Cross Site Request Forgery attacks. Use CSRF attack and get your bank account credited with an amount of 1200 or greater.\n \n ', '\n Bhanudev Chaluvadi\n Spyros Gasteratos\n ', 'web', '2015-03-15 23:05:39', 'public', 1, NULL, '', 0, NULL, NULL, 'public', NULL, NULL), @@ -101,7 +101,12 @@ INSERT INTO `challenges` (`title`, `pkg_name`, `description`, `author`, `categor ('Challenge 37', 'ch037', '\n \nYou have been using an online calendar service for a long time.Recently, a bug has crept into that service and so,its displaying the wrong date and time.You have saved a lot of events and plans in that website and they all got mapped to some different date and time.The website doesn''t even have a contact-us info to report the bug.See if you can creep into the server and change the settings.\n\n ', '\n Bhanudev Chaluvadi\n Spyros Gasteratos\n ', 'web', '2015-03-15 23:05:40', 'public', 1, NULL, '', 0, NULL, NULL, 'public', NULL, NULL), ('Challenge 38', 'ch038', '\n \nYou have come across a series of encrypted messages exchanged between 2 servers.You suspect these messages to be related to an online fraud. So,to verify these messages,you need the key file. The needed file is key.txt and is located in the web root directory,but you have no permission to access it. Can you access this file and decrypt the message?\n\n ', '\n Bhanudev Chaluvadi\n Spyros Gasteratos\n ', 'web', '2015-03-15 23:05:40', 'public', 1, NULL, '', 0, NULL, NULL, 'public', NULL, NULL), ('Challenge 39', 'ch039', '\n \n XOR cipher is one of the most secure ciphers and provides unconditional security. YOu are now given a task to break this cipher.Find the message corresponding to a xor encrypted cipher text.\n \n ', '\n Bhanudev Chaluvadi\n Spyros Gasteratos\n ', 'crypto', '2015-03-15 23:05:40', 'public', 1, NULL, '', 0, NULL, NULL, 'public', NULL, NULL), -('Challenge 40', 'ch040', '\n \n Your friend wants to take help from a third party service provider to improve his own website''s security and search engine visibility.He asked you to view that website and certify it to be completely secure.If you find some loophole in the website''s security, use it to log in as the admin.\n \n ', '\n Bhanudev Chaluvadi\n Spyros Gasteratos\n ', 'web', '2015-03-15 23:05:41', 'public', 1, NULL, '', 0, NULL, NULL, 'public', NULL, NULL); +('Challenge 40', 'ch040', '\n \n Your friend wants to take help from a third party service provider to improve his own website''s security and search engine visibility.He asked you to view that website and certify it to be completely secure.If you find some loophole in the website''s security, use it to log in as the admin.\n \n ', '\n Bhanudev Chaluvadi\n Spyros Gasteratos\n ', 'web', '2015-03-15 23:05:41', 'public', 1, NULL, '', 0, NULL, NULL, 'public', NULL, NULL), +('Challenge 41', 'ch041', '\n \n A Friend of your''s is a great football freak, he has newly created a website [ FootbalLovers ] and has challenged you to get the admin privileges to the website by setting up a ctf type challenge. All you have to do is find out the login credentials of the website and login as admin.\n \n \nHints and tips : First thing you will notice is, that this admin page has right click disabled on it (or rather both the clicks). This is a little annoying thing, but some web developers use it to hide their source code and maybe some private images. You would have to bypass this and get your way around to the credentials, maybe hidden or encrypted. There are some more hints as you proceed through the challenge. Here''s one : "Images can reveal way too much". All the Best, don''t lose patience !!\n \n \n \n', '\n Bhanudev Chaluvadi\n Spyros Gasteratos\n ', 'stegano', '2016-03-8 06:51:22', 'public', 1, NULL, '', 0, NULL, NULL, 'public', NULL, NULL), +('Challenge 42', 'ch042', '\n \n Government officials have discovered a paid website, which might have illegal activities covering under them, and they have hired you to get the admin login details of this SITE. However, they have solved this to an extent and have MITM''d a regular user to get the following credentials { username : scrtusr & password : mint_cinnamon} however this bit of information isn''t enough to get to the user''s profile or to inject into the website to get admin login details . So, now you have to find out the admin credentials and hand it over to the government officials, so that they can carry out some security checks. Login as admin.\n \n \nHints and Tips : You have the credentials of a user, but his profile is not accessible due to some restrictions the website has setup''d. "You cannot have access to your profile without OurBrowser, *If you are our customer, you would have our paid browser and you would know how to continue". This does lead to something. Check out the http requests, and more importantly You''re LOGGED in (atleast as a user). Here''s another : Wanna have a Cookie ??\n \n \nreference1\n \n \n \nSetup database HERE \n \n \n', '\n Bhanudev Chaluvadi\n Spyros Gasteratos\n Rajat Moury\n', 'cool', '2015-03-15 23:05:40', 'public', 1, NULL, '', 0, NULL, NULL, 'public', NULL, NULL), +('Challenge 43', 'ch043', '\n \n A Web Developer has made his best out to secure his website from various injection attacks by using various filters and even thinks that even the best hacker couldn''t break into his site. Prove him wrong. Link : SITE. However, you have been just using the system which has a user already logged in. So, first you have to inject the website to get the admin credentials and then search for the admin login page [You wouldn''t even find the admin page by using a search engine as search bots have been excluded]. Common give it a try, All the Best !!

\n \nHints and Tips : +Notice the http requests passing between your browser and localhost server. This is the most common type of vulnerability online these days. There has always been a way to bypass filters.


\n \n \nreference1 reference2
\n \n

Setup database HERE +\n \n \n \n', '\n Bhanudev Chaluvadi\n Spyros Gasteratos\n Rajat Moury\n', 'sqli', '2015-03-15 23:05:40', 'public', 1, NULL, '', 0, NULL, NULL, 'public', NULL, NULL); -- -- Table structure for table challenge_attempts @@ -182,7 +187,10 @@ INSERT INTO class_challenges (challenge_id , class_id , date_created ) VALUE (7, 1, '2012-08-09 01:01:07'), (8, 1, '2012-08-09 01:01:07'), (9, 1, '2012-10-16 22:32:58'), -(10, 1, '2012-08-09 01:01:07'); +(10, 1, '2012-08-10 01:01:07'), +(43, 1, '2016-03-10 03:40:01'), +(44, 1, '2016-03-10 03:40:01'), +(45, 1, '2016-03-10 03:40:01'); -- -------------------------------------------------------- diff --git a/installation/sql/temp.sql b/installation/sql/temp.sql old mode 100644 new mode 100755 index d3090e98..c10fb058 --- a/installation/sql/temp.sql +++ b/installation/sql/temp.sql @@ -89,7 +89,12 @@ INSERT INTO `challenges` (`id`, `title`, `pkg_name`, `description`, `author`, `c (9, 'Challenge 9', 'ch009', 'A friend of yours has set up a news blog at slagoff.com. However, he is kind of worried \r\n\r\nregarding the security of the news that gets posted on the blog and has asked you to check \r\n\r\nhow secure it is.

Your objective is to determine whether any vulnerabilities \r\n\r\nexist that, if exploited, can grant access to the blog''s server.

Hint: A \r\n\r\nspecially-tailored backdoor shell can be found at "http://www.really_nasty_hacker.com/shell.txt".', 'Andreas Venieris,\n \r\n\r\nKonstantinos Papapanagiotou,\n Anastasios Stasinopoulos,\n Vasilios Vlachos,\r\n\r\n\n Alexandros Papanikolaou', 'web', '2012-08-09 00:31:31', 'public', 1, NULL, '1', 60, NULL, NULL, 'public', 1, 60), (10, 'Challenge 10', 'ch010', 'Would you like to become an active hacker ?
How about \r\n\r\nbecoming a member of the world''s largest hacker group:
The n1nJ4.n4x0rZ.CreW!
\r\n\r\n
Before you can join though, you ''ll have to prove yourself worthy by passing the \r\n\r\ntest that can be found at: http://n1nj4h4x0rzcr3w.com

If you succeed in completing the challenge, \r\n\r\nyou will get a serial number, which you will use for obtaining the password that will \r\n\r\nenable you to join the group.

Your objective is to bypass the authentication \r\n\r\nmechanism, find the serial number and be supplied with your own username and password from \r\n\r\n the admin team of the site.', 'Andreas Venieris,\n Konstantinos Papapanagiotou,\n \r\n\r\n Anastasios Stasinopoulos,\n Vasilios Vlachos,\n Alexandros \r\n\r\nPapanikolaou', 'web', '2012-08-09 00:32:07', 'public', 1, NULL, '1', 60, NULL, NULL, 'public', 1, 60), (11, 'Example Template For Challenge xml Files creation', 'example', '

Insert some text describing the scenario of the challenge(what the users are supposed to do and if there is any fictional story)

', 'Name or email or both', 'In what category does your challenge belong?(web? crypto? networks?)', '2012-10-16 22:35:01', 'private', 0, NULL, '1', 60, NULL, NULL, 'private', 1, 0), -(12, 'cookiEng', 'cookiEng', '

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
the right password. With this password we will cancel 100k+ illegal gun and drug deals!\n The good news are that we have the directory where the password is stored. Its here \\"/t0psec\\".\n The bad news are that we have no access there. Only the administrator does. Go and find the password for us!


Good luck!

', 'Nikos Danopoulos', 'web', '2012-08-09 00:32:07', 'public', 1, NULL, '1', 60, NULL, NULL, 'public', 1, 60); +(12, 'cookiEng', 'cookiEng', '

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
the right password. With this password we will cancel 100k+ illegal gun and drug deals!\n The good news are that we have the directory where the password is stored. Its here \\"/t0psec\\".\n The bad news are that we have no access there. Only the administrator does. Go and find the password for us!


Good luck!

', 'Nikos Danopoulos', 'web', '2012-08-09 00:32:07', 'public', 1, NULL, '1', 60, NULL, NULL, 'public', 1, 60), +(43, 'Challenge 41', 'ch041', '\n \n A Friend of your''s is a great football freak, he has newly created a website [ FootbalLovers ] and has challenged you to get the admin privileges to the website by setting up a ctf type challenge. All you have to do is find out the login credentials of the website and login as admin.\n \n \nHints and tips : First thing you will notice is, that this admin page has right click disabled on it (or rather both the clicks). This is a little annoying thing, but some web developers use it to hide their source code and maybe some private images. You would have to bypass this and get your way around to the credentials, maybe hidden or encrypted. There are some more hints as you proceed through the challenge. Here''s one : "Images can reveal way too much". All the Best, don''t lose patience !!\n \n ', '\n Bhanudev Chaluvadi\n Spyros Gasteratos\n ', 'stegano', '2016-03-8 06:51:22', 'public', 1, NULL, '', 0, NULL, NULL, 'public', NULL, NULL), +(44, 'Challenge 42', 'ch042', '\n \n Government officials have discovered a paid website, which might have illegal activities covering under them, and they have hired you to get the admin login details of this SITE. However, they have solved this to an extent and have MITM''d a regular user to get the following credentials { username : scrtusr & password : mint_cinnamon} however this bit of information isn''t enough to get to the user''s profile or to inject into the website to get admin login details . So, now you have to find out the admin credentials and hand it over to the government officials, so that they can carry out some security checks. Login as admin.\n \n \nHints and Tips : You have the credentials of a user, but his profile is not accessible due to some restrictions the website has setup''d. "You cannot have access to your profile without OurBrowser, *If you are our customer, you would have our paid browser and you would know how to continue". This does lead to something. Check out the http requests, and more importantly You''re LOGGED in (atleast as a user). Here''s another : Wanna have a Cookie ??\n \n reference1\n \n ', '\n Bhanudev Chaluvadi\n Spyros Gasteratos\n Rajat Moury\n', 'cool', '2015-03-15 23:05:40', 'public', 1, NULL, '', 0, NULL, NULL, 'public', NULL, NULL), +(45, 'Challenge 43', 'ch043', '\n \n A Web Developer has made his best out to secure his website from various injection attacks by using various filters and even thinks that even the best hacker couldn''t break into his site. Prove him wrong. Link : SITE. However, you have been just using the system which has a user already logged in. So, first you have to inject the website to get the admin credentials and then search for the admin login page [You wouldn''t even find the admin page by using a search engine as search bots have been excluded]. Common give it a try, All the Best !!

\n \nHints and Tips : +Notice the http requests passing between your browser and localhost server. This is the most common type of vulnerability online these days. There has always been a way to bypass filters.


reference1 reference2

+]]>\n \n ', '\n Bhanudev Chaluvadi\n Spyros Gasteratos\n Rajat Moury\n', 'sqli', '2015-03-15 23:05:40', 'public', 1, NULL, '', 0, NULL, NULL, 'public', NULL, NULL); -- -------------------------------------------------------- diff --git a/locale/en/LC_MESSAGES/messages.mo b/locale/en/LC_MESSAGES/messages.mo old mode 100644 new mode 100755 diff --git a/locale/en/LC_MESSAGES/messages.po b/locale/en/LC_MESSAGES/messages.po old mode 100644 new mode 100755 diff --git a/locale/fr/french.pot b/locale/fr/french.pot old mode 100644 new mode 100755 diff --git a/misc_scripts/add_Guest_to_every_class.php b/misc_scripts/add_Guest_to_every_class.php old mode 100644 new mode 100755 diff --git a/misc_scripts/mass_add_challenge.php b/misc_scripts/mass_add_challenge.php old mode 100644 new mode 100755 diff --git a/model/common/class.Challenge.php b/model/common/class.Challenge.php old mode 100644 new mode 100755 diff --git a/model/common/class.ChallengeAttempts.php b/model/common/class.ChallengeAttempts.php old mode 100644 new mode 100755 diff --git a/model/common/class.Menu.php b/model/common/class.Menu.php old mode 100644 new mode 100755 diff --git a/model/common/class.Page.php b/model/common/class.Page.php old mode 100644 new mode 100755 diff --git a/model/common/class.Plugin.php b/model/common/class.Plugin.php old mode 100644 new mode 100755 diff --git a/model/common/class.RegexSolution.php b/model/common/class.RegexSolution.php old mode 100644 new mode 100755 diff --git a/model/common/class.ScoringRule.php b/model/common/class.ScoringRule.php old mode 100644 new mode 100755 diff --git a/model/common/class.UserScore.php b/model/common/class.UserScore.php old mode 100644 new mode 100755 diff --git a/model/common/class.Utils.php b/model/common/class.Utils.php old mode 100644 new mode 100755 diff --git a/pages/index.php b/pages/index.php old mode 100644 new mode 100755 diff --git a/user/plugins/article-challenge-connect/class.ArticleChallengeModel.php b/user/plugins/article-challenge-connect/class.ArticleChallengeModel.php old mode 100644 new mode 100755 diff --git a/user/plugins/article-challenge-connect/editarticle.tpl b/user/plugins/article-challenge-connect/editarticle.tpl old mode 100644 new mode 100755 diff --git a/user/plugins/challenge-clues/addchallenge.tpl b/user/plugins/challenge-clues/addchallenge.tpl old mode 100644 new mode 100755 diff --git a/user/plugins/challenge-clues/challenge-clues.php b/user/plugins/challenge-clues/challenge-clues.php old mode 100644 new mode 100755 diff --git a/user/plugins/challenge-clues/class.Clue.php b/user/plugins/challenge-clues/class.Clue.php old mode 100644 new mode 100755 diff --git a/user/plugins/challenge-clues/class.UserCluesModel.php b/user/plugins/challenge-clues/class.UserCluesModel.php old mode 100644 new mode 100755 diff --git a/user/plugins/challenge-clues/editchallenge.tpl b/user/plugins/challenge-clues/editchallenge.tpl old mode 100644 new mode 100755 diff --git a/user/plugins/challenge-clues/install-plugin.sql b/user/plugins/challenge-clues/install-plugin.sql old mode 100644 new mode 100755 diff --git a/user/plugins/challenge-clues/showChallenge.tpl b/user/plugins/challenge-clues/showChallenge.tpl old mode 100644 new mode 100755 diff --git a/user/themes/custom-theme/admin/view/menumanager.tpl b/user/themes/custom-theme/admin/view/menumanager.tpl old mode 100644 new mode 100755 diff --git a/user/themes/custom-theme/admin/view/options.tpl b/user/themes/custom-theme/admin/view/options.tpl old mode 100644 new mode 100755 diff --git a/user/themes/custom-theme/custom-theme.php b/user/themes/custom-theme/custom-theme.php old mode 100644 new mode 100755 diff --git a/user/themes/custom-theme/view/images/logo.jpg b/user/themes/custom-theme/view/images/logo.jpg old mode 100644 new mode 100755 diff --git a/user/themes/custom-theme/view/images/pictogram.gif b/user/themes/custom-theme/view/images/pictogram.gif old mode 100644 new mode 100755 diff --git a/view/_footer_frontend.tpl b/view/_footer_frontend.tpl old mode 100644 new mode 100755 diff --git a/view/challenge_list.tpl b/view/challenge_list.tpl old mode 100644 new mode 100755 diff --git a/view/errors/403.html b/view/errors/403.html old mode 100644 new mode 100755 diff --git a/view/errors/404.html b/view/errors/404.html old mode 100644 new mode 100755 diff --git a/view/progressreport.tpl b/view/progressreport.tpl old mode 100644 new mode 100755 diff --git a/view/showChallenge.tpl b/view/showChallenge.tpl old mode 100644 new mode 100755
+
+
+
Admin Login   
+ + + +    
"; + // echo "
"; + // echo "
"; + // echo "
"; + + // echo ""; + // echo '
'; + + // echo '
Username :    '; + // echo '
'; + + // echo '
Password :      '; + // echo '

'; + // echo "


"; + // echo '
'; + + // echo '
'; + // echo '
'; + // echo '
'; + // echo '
'; + // echo ''; + // echo '

'; + // echo '
'; + + + +?> +

+ +
+
+ + + + +
+
+ + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+
+

+
+
+
+ +



+
+
+
+
+
+

+
+
+
+ + + +
+ + \ No newline at end of file diff --git a/challenges/ch043/inside/main_index.php b/challenges/ch043/inside/main_index.php new file mode 100755 index 00000000..b98610b4 --- /dev/null +++ b/challenges/ch043/inside/main_index.php @@ -0,0 +1,109 @@ + + + + +JUST GO + + +
+
+
+
Welcome to your Aquatic World   
+ + + + +
+ + + + +"; + //echo "
"; + $hint=$id; + + $sql="SELECT * FROM users WHERE id='$id' LIMIT 0,1"; + $result=mysql_query($sql); + $row = mysql_fetch_array($result); + if($id == 8 || $id == 12 || $id == 9 || $id == 2 || $id == 3 || $id == 4 || $id == 5 || $id == 6 || $id == 7 || $id == 10 || $id == 11 || $id == 13 || $id == 14){ + echo "Nice try :P " ; + die(); + } + if($row) + { + echo ""; + echo 'You are logged in as : '. $row['username']; + echo "
"; + + } + else + { + echo '' ; + print_r(mysql_error()); + echo ""; + } +} + else{ + + header("Location: main_index.php?id=1"); + + + } + + + +function blacklist($id) +{ + //$id= preg_replace('/union/',"", $id) + //$id= preg_replace('/or/i',"", $id); //strip out OR (non case sensitive) + //$id= preg_replace('/and/i',"", $id); //Strip out AND (non case sensitive) + $id= preg_replace('/[\/\*]/',"", $id); //strip out /* + $id= preg_replace('/[--]/',"", $id); //Strip out -- + $id= preg_replace('/[#]/',"", $id); //Strip out # + $id= preg_replace('/[\s]/',"", $id); //Strip out spaces + $id= preg_replace('/[\/\\\\]/',"", $id); //Strip out slashes + return $id; +} + + + +?> +



+
+
+
+
+
+
+
+
+
+
+
+" We Believe in Security Of Aquatic Animals, and you should too ! "

+
+
+
+ + + +
+ + + + + + + + diff --git a/challenges/ch043/inside/result.txt b/challenges/ch043/inside/result.txt new file mode 100755 index 00000000..7cb3f547 --- /dev/null +++ b/challenges/ch043/inside/result.txt @@ -0,0 +1,19 @@ +ID:1 +ID:1' +ID:1 +ID:1 +ID:1 +ID:1 +ID:1 +ID:1' +ID:1 +ID:1' +ID:2 +ID:2 +ID:2 +ID:2 +ID:2 +ID:2 +ID:2 +ID:2 +ID:2 diff --git a/challenges/ch043/inside/solution.php b/challenges/ch043/inside/solution.php new file mode 100755 index 00000000..0b76f61e --- /dev/null +++ b/challenges/ch043/inside/solution.php @@ -0,0 +1,34 @@ + + + + + +Admin Page +
+
+
+


Congratulations :D

You NAILED IT !
"; + + die(); + } + + else + { + + echo "



Nice Try..

Invalid Username/Password. Try Again !!
"; + + die(); + } + +?> + + + diff --git a/challenges/ch043/newchallenge3.xml b/challenges/ch043/newchallenge3.xml new file mode 100755 index 00000000..adb51b1c --- /dev/null +++ b/challenges/ch043/newchallenge3.xml @@ -0,0 +1,21 @@ + + + New Challenge 3 + + Andreas Venieris, + Konstantinos Papapanagiotou, + Anastasios Stasinopoulos, + Vasilios Vlachos, + Alexandros Papanikolaou + + web + + SITE. However, you have been just using the system which has a user already logged in. So, first you have to inject the website to get the admin credentials and then search for the admin login page [You wouldn't even find the admin page by using a search engine as search bots have been excluded]. Common give it a try, All the Best !!

Hint : You're Logged in



+ +Hints and Tips : +Notice the http requests passing between your browser and localhost server. This is the most common type of vulnerability online these days. There has always been a way to bypass filters.


reference1
reference2

+]]> + + + diff --git a/challenges/ch043/patience.jpg b/challenges/ch043/patience.jpg new file mode 100755 index 00000000..c5c2ae7e Binary files /dev/null and b/challenges/ch043/patience.jpg differ diff --git a/challenges/ch043/sql-connections/db-creds.inc b/challenges/ch043/sql-connections/db-creds.inc new file mode 100755 index 00000000..5775cfee --- /dev/null +++ b/challenges/ch043/sql-connections/db-creds.inc @@ -0,0 +1,12 @@ + + diff --git a/challenges/ch043/sql-connections/functions.php b/challenges/ch043/sql-connections/functions.php new file mode 100755 index 00000000..aa92d095 --- /dev/null +++ b/challenges/ch043/sql-connections/functions.php @@ -0,0 +1,91 @@ + diff --git a/challenges/ch043/sql-connections/setup-db-challenge.php b/challenges/ch043/sql-connections/setup-db-challenge.php new file mode 100755 index 00000000..1f0c0908 --- /dev/null +++ b/challenges/ch043/sql-connections/setup-db-challenge.php @@ -0,0 +1,61 @@ + + + + +"; +@error_reporting(0); +if(isset($_GET['id'])) +$id = $_GET['id']; +@$con = mysql_connect($host,$dbuser,$dbpass); +if (!$con) +{ + echo "Failed to connect to MySQL: " . mysql_error(); +} + + $sql="DROP DATABASE IF EXISTS $dbname1"; + if (mysql_query($sql)) + {echo "Old database purged if exists"; echo "

\n";} + else + {echo "Error purging database: " . mysql_error(); echo "

\n";} + + $sql="CREATE database $dbname1 CHARACTER SET `gbk` "; + if (mysql_query($sql)) + {echo "Creating New database successfully";echo "

\n";} + else + {echo "Error creating database: " . mysql_error();echo "

\n";} + +include '../sql-connections/functions.php'; + +$sql="CREATE TABLE IF NOT EXISTS $dbname1.$table + ( + id INT(2) UNSIGNED NOT NULL DEFAULT 1, + sessid CHAR(32) PRIMARY KEY NOT NULL, + $secret_key CHAR(32) NOT NULL, + tryy INT(11) UNSIGNED NOT NULL DEFAULT 0 + )"; + if (mysql_query($sql)) + {echo "Creating New Table '$table' successfully";echo "

\n";} + else + {echo "Error creating Table: " . mysql_error();echo "

\n";} + +$characters = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789'; +$sec_key = num_gen(24, $characters); +$hash = md5(rand(0,100000)); + + +$sql="INSERT INTO $dbname1.$table VALUES (1, '$hash', '$sec_key', 0)"; + if (mysql_query($sql)) + {echo "Inserted data correctly into table '$table'";echo "

\n";} + else + {echo "Error inserting data: " . mysql_error();echo "

\n";} + +echo "Inserted secret key '$secret_key' into table ";echo "

\n"; + +if(isset($id)) +header( "refresh:0;url=$id" ); + +?> + + diff --git a/challenges/ch043/sql-connections/setup-db.php b/challenges/ch043/sql-connections/setup-db.php new file mode 100755 index 00000000..437f52dc --- /dev/null +++ b/challenges/ch043/sql-connections/setup-db.php @@ -0,0 +1,101 @@ + + + + +SETUP DB + + +
+ +
+ +
+Welcome Coders    + +
+
+
+ +
+ +
Setting up the whole Database.. Wait a Bit !
+

+ + +"; + + + +$con = mysql_connect($host,$dbuser,$dbpass); +if (!$con) + { + die('Could not connect to the Database, check the credentials in db-creds.inc: ' . mysql_error()); + } + + $sql="DROP DATABASE IF EXISTS messier_db"; + if (mysql_query($sql)) + {echo "Old database 'messier_db' purged if exists"; echo "

\n";} + else + {echo "Error purging database: " . mysql_error(); echo "

\n";} + + +//Creating new database messier_db + $sql="CREATE database `messier_db` CHARACTER SET `gbk` "; + if (mysql_query($sql)) + {echo "Creating New database 'messier_db' successfully";echo "

\n";} + else + {echo "Error creating database: " . mysql_error();echo "

\n";} + +//creating table users +$sql="CREATE TABLE messier_db.users (id int(3) NOT NULL AUTO_INCREMENT, username varchar(20) NOT NULL, password varchar(20) NOT NULL, PRIMARY KEY (id))"; + if (mysql_query($sql)) + {echo "Creating New Table 'USERS' successfully";echo "

\n";} + else + {echo "Error creating Table: " . mysql_error();echo "

\n";} + + +//creating table emails +$sql="CREATE TABLE messier_db.emails + ( + id int(3)NOT NULL AUTO_INCREMENT, + email_id varchar(30) NOT NULL, + PRIMARY KEY (id) + )"; + if (mysql_query($sql)) + {echo "Creating New Table 'EMAILS' successfully"; echo "

\n";} + else + {echo "Error creating Table: " . mysql_error();echo "

\n";} + + + + +//inserting data +$sql="INSERT INTO messier_db.users (id, username, password) VALUES ('1', 'Gamer', 'CallOfDuty'), ('2', 'qwerty', 'qwertypad'), ('3', 'funny', 'lol1234'), ('4', 'Adam', 'Eve'), ('5', 'Precious', 'PreTime'), ('6', 'Dulton', 'Dulton_coder'), ('7', 'batman', 'cattywoman'), ('8', 'chomu', 'tikon@web123'), ('9', 'usernew', 'Password'), ('10', 'noodles', 'chinese'), ('11', 'megaminx', 'megaminx12'), ('12', 'theadmin', 'theadmin123'), ('13', 'sunil', 'shankala'), ('14', 'fourneen', '123456789')"; + if (mysql_query($sql)) + {echo "Inserted data correctly into table 'USERS'";echo "

\n";} + else + {echo "Error inserting data: " . mysql_error();echo "

\n";} + + + +//inserting data +$sql="INSERT INTO `messier_db`.`emails` (id, email_id) VALUES ('1', 'TheGaminAddict@Gamers.com'), ('2', 'Linuxlovers@linux.com'), ('3', 'veryfunny@funny.com'), ('4', 'lovers@lovetime.com'), ('5', 'TimeIs@precious.com'), ('6', 'dallu@aditi.com'), ('7', 'superheroes@best.com'), ('8', 'theadmin@admin.com'), ('9', 'newone@user.com'), ('10', 'food@besties.com'), ('11', 'cubers_world@DeskTest.com'), ('12', 'thenewadmin@new.com'), ('13', 'sunil@shankhala.com'), ('14', 'fourneen@newgmail.com')"; + if (mysql_query($sql)) + {echo "Inserted data correctly into table 'EMAILS'";echo "

\n";} + else + {echo "Error inserting data: " . mysql_error();echo "

\n";} + + + +//including the Challenges DB creation file. +include("../sql-connections/setup-db-challenge.php"); +?> + + +
+
+ + diff --git a/challenges/ch043/sql-connections/sql-connect-1.php b/challenges/ch043/sql-connections/sql-connect-1.php new file mode 100755 index 00000000..8b1f9ed3 --- /dev/null +++ b/challenges/ch043/sql-connections/sql-connect-1.php @@ -0,0 +1,29 @@ + + + + + + diff --git a/challenges/ch043/sql-connections/sql-connect.php b/challenges/ch043/sql-connections/sql-connect.php new file mode 100755 index 00000000..611c6b96 --- /dev/null +++ b/challenges/ch043/sql-connections/sql-connect.php @@ -0,0 +1,34 @@ + + + + + + diff --git a/challenges/ch043/sql-connections/sqli-connect.php b/challenges/ch043/sql-connections/sqli-connect.php new file mode 100755 index 00000000..82132e92 --- /dev/null +++ b/challenges/ch043/sql-connections/sqli-connect.php @@ -0,0 +1,25 @@ + + + + + + diff --git a/challenges/ch043/sql-connections/test.php b/challenges/ch043/sql-connections/test.php new file mode 100755 index 00000000..4c00cd27 --- /dev/null +++ b/challenges/ch043/sql-connections/test.php @@ -0,0 +1,11 @@ + diff --git a/challenges/cookiEng/cookiEng.xml b/challenges/cookiEng/cookiEng.xml old mode 100644 new mode 100755 diff --git a/challenges/cookiEng/guns.jpg b/challenges/cookiEng/guns.jpg old mode 100644 new mode 100755 diff --git a/challenges/cookiEng/index.php b/challenges/cookiEng/index.php old mode 100644 new mode 100755 diff --git a/challenges/cookiEng/t0psec.php b/challenges/cookiEng/t0psec.php old mode 100644 new mode 100755 diff --git a/challenges/cookiEng/test/testoutput/ESAPI_logging_file_test b/challenges/cookiEng/test/testoutput/ESAPI_logging_file_test old mode 100644 new mode 100755 diff --git a/challenges/example.zip b/challenges/example.zip old mode 100644 new mode 100755 diff --git a/challenges/izon/LICENSE b/challenges/izon/LICENSE old mode 100644 new mode 100755 diff --git a/challenges/izon/README.md b/challenges/izon/README.md old mode 100644 new mode 100755 diff --git a/challenges/izon/config.inc.php b/challenges/izon/config.inc.php old mode 100644 new mode 100755 diff --git a/challenges/izon/css/bootstrap-responsive.css b/challenges/izon/css/bootstrap-responsive.css old mode 100644 new mode 100755 diff --git a/challenges/izon/css/bootstrap-responsive.min.css b/challenges/izon/css/bootstrap-responsive.min.css old mode 100644 new mode 100755 diff --git a/challenges/izon/css/bootstrap.css b/challenges/izon/css/bootstrap.css old mode 100644 new mode 100755 diff --git a/challenges/izon/css/bootstrap.min.css b/challenges/izon/css/bootstrap.min.css old mode 100644 new mode 100755 diff --git a/challenges/izon/img/favicon.ico b/challenges/izon/img/favicon.ico old mode 100644 new mode 100755 diff --git a/challenges/izon/img/glyphicons-halflings-white.png b/challenges/izon/img/glyphicons-halflings-white.png old mode 100644 new mode 100755 diff --git a/challenges/izon/img/glyphicons-halflings.png b/challenges/izon/img/glyphicons-halflings.png old mode 100644 new mode 100755 diff --git a/challenges/izon/img/izon.png b/challenges/izon/img/izon.png old mode 100644 new mode 100755 diff --git a/challenges/izon/index.php b/challenges/izon/index.php old mode 100644 new mode 100755 diff --git a/challenges/izon/izon.xml b/challenges/izon/izon.xml old mode 100644 new mode 100755 diff --git a/challenges/izon/js/bootstrap.js b/challenges/izon/js/bootstrap.js old mode 100644 new mode 100755 diff --git a/challenges/izon/js/bootstrap.min.js b/challenges/izon/js/bootstrap.min.js old mode 100644 new mode 100755 diff --git a/challenges/izon/js/obfuscate.php b/challenges/izon/js/obfuscate.php old mode 100644 new mode 100755 diff --git a/challenges/izon/login.php b/challenges/izon/login.php old mode 100644 new mode 100755 diff --git a/challenges/izon/logout.php b/challenges/izon/logout.php old mode 100644 new mode 100755 diff --git a/challenges/izon/otp.php b/challenges/izon/otp.php old mode 100644 new mode 100755 diff --git a/challenges/newchallenge4/index.php b/challenges/newchallenge4/index.php new file mode 100755 index 00000000..d44b433e --- /dev/null +++ b/challenges/newchallenge4/index.php @@ -0,0 +1,5 @@ + diff --git a/challenges/newchallenge4/inside/Slider/JsImgSlider.zip b/challenges/newchallenge4/inside/Slider/JsImgSlider.zip new file mode 100755 index 00000000..88bb3930 Binary files /dev/null and b/challenges/newchallenge4/inside/Slider/JsImgSlider.zip differ diff --git a/challenges/newchallenge4/inside/Slider/jsImgSlider/demo1.html b/challenges/newchallenge4/inside/Slider/jsImgSlider/demo1.html new file mode 100755 index 00000000..dcb0b46b --- /dev/null +++ b/challenges/newchallenge4/inside/Slider/jsImgSlider/demo1.html @@ -0,0 +1,29 @@ + + + + Demo 1 - Menucool Image Slider + + + + + +

Demo 1 - Menucool Image Slider

+

Demos: 1234 + 5678

+
+
+
+ + Welcome to Menucool.com + + + Pure Javascript. No jQuery. No flash. + #htmlcaption + +
+ +
+ + diff --git a/challenges/newchallenge4/inside/Slider/jsImgSlider/demo2.html b/challenges/newchallenge4/inside/Slider/jsImgSlider/demo2.html new file mode 100755 index 00000000..d2572713 --- /dev/null +++ b/challenges/newchallenge4/inside/Slider/jsImgSlider/demo2.html @@ -0,0 +1,61 @@ + + + + Demo 2 + + + + + +

Demo 2 - Menucool Image Slider with thumbnails

+

Demos: 1234 + 5678

+
+ +
+ + +
+
+
+

HTML Content

Thumbnails allows any HTML content
+
+
+
+
+

Customizable

Thumbnail style is customizable
+
+
+
+
+

Variety of Layouts

Just a CSS tweak.
+
+
+
+
+

Integration

Built-in functions for the thumbnails
+
+
+
+ +
+
+
+

As shown by the demo, the thumbnails change their active status while the main image slides, and clicking on an thumbnail will switch the main image.

+

If there are lots of thumbnails and the containing block does not have enough room to show them, + you can consider showing the thumbnails in multiple columns or rows by tweaking the js-image-slider.css (Example: Place thumbnail columns around slider both sides). + Another solution is to make the slider work together with Menucool jQuery Slider. + See jQuery Slideshow.

+

Visit online Demo 2 and + JavaScript Image Slider for detailed instructions.

+

This demo requires a license for using the advanced features.

+
+ + diff --git a/challenges/newchallenge4/inside/Slider/jsImgSlider/demo3.html b/challenges/newchallenge4/inside/Slider/jsImgSlider/demo3.html new file mode 100755 index 00000000..eaab172f --- /dev/null +++ b/challenges/newchallenge4/inside/Slider/jsImgSlider/demo3.html @@ -0,0 +1,66 @@ + + + + Demo 3 + + + + + + +

Demo 3

 - Apple-like Image Slider +

Demos: 1234 + 5678

+
+ +
+ + +
+
+
+
+
+
+ +
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ + +
+
    +
  • The hovered thumbnail style is achieved simply through a background image:

    + #thumbs .thumb-on {background-image: url(active-bg.png);}
      +
  • +
  • Visit online Demo 3 and + JavaScript Image Slider for detailed instructions.
  • +
  • This demo requires a license for its advanced features.
  • +
+
+ + diff --git a/challenges/newchallenge4/inside/Slider/jsImgSlider/demo4.html b/challenges/newchallenge4/inside/Slider/jsImgSlider/demo4.html new file mode 100755 index 00000000..b2024363 --- /dev/null +++ b/challenges/newchallenge4/inside/Slider/jsImgSlider/demo4.html @@ -0,0 +1,59 @@ + + + + Demo 4 - with Navigation Buttons + + + + + + +

Demo 4 - Customize Navigation Controls

+

Demos: 1234 + 5678

+
+ + +
+
+ + + + +
+ +
+ + +
+ +
+ + + +
+
+ + +
+

In Demo 1 and Demo 2, we have introduced two ways of navigation: the built-in Navigation Bullets and the Thumbnails.

+

This demo introduces another type of navigation - Navigation Buttons.

+

Visit Online Demo 4 for more detailed instructions.

+

This demo contains no advanced features. It is free to use. License is not required.

+
+ + + diff --git a/challenges/newchallenge4/inside/Slider/jsImgSlider/demo5.html b/challenges/newchallenge4/inside/Slider/jsImgSlider/demo5.html new file mode 100755 index 00000000..848aa565 --- /dev/null +++ b/challenges/newchallenge4/inside/Slider/jsImgSlider/demo5.html @@ -0,0 +1,69 @@ + + + + Demo 5 - Semi-transparent Thumbnails + + + + + +

Demo 5 - Semi-transparent Thumbnails

+

Demos: 1234 + 5678

+
+ +
+ +
+
+ HTML caption. Back to Menucool. +
+
+ Smart Lazy Loading Image +
+
+ + +
+
+
+
+
+
+
+
+
+
+
+ +
+ Let's add a semi-transparent effect to the thumbnails, and each thumbnail will get back to its full opacity when hovered over. + This can be easily done via the two built-in CSS class: thumb and thumb-on: + #thumbs .thumb img{ opacity:0.6;filter:alpha(opacity:60); } +#thumbs .thumb-on img{ opacity:1;filter:alpha(opacity:100);} +

And there you have it!

+

 

+

If there are lots of thumbnails and the containing block does not have enough room to show them, + you can consider showing the thumbnails in multiple columns or rows by tweaking the js-image-slider.css. + Another solution is to make the slider work together with Menucool jQuery Slider. + See jQuery Slideshow.

+

Visit online Demo 5 and + JavaScript Image Slider for detailed instructions.

+

This demo requires a license for having used advanced features of the slider.

+
+ + + diff --git a/challenges/newchallenge4/inside/Slider/jsImgSlider/demo6.html b/challenges/newchallenge4/inside/Slider/jsImgSlider/demo6.html new file mode 100755 index 00000000..24079753 --- /dev/null +++ b/challenges/newchallenge4/inside/Slider/jsImgSlider/demo6.html @@ -0,0 +1,41 @@ + + + + Demo 6 + + + + + + +

Demo 6   - Video Slider

+

Demos: 1234 + 5678

+
+ + +
+

This demo shows how to display Youtube and Vimeo in the slider

+

How to play HTML5 videos or audios in the slider

+

You can download the source code from the JavaScript Image Slider page.

+

Visit online Demo 6 for detailed instructions.

+

This demo requires a license for having used advanced features of the slider.

+
+ + diff --git a/challenges/newchallenge4/inside/Slider/jsImgSlider/demo7.html b/challenges/newchallenge4/inside/Slider/jsImgSlider/demo7.html new file mode 100755 index 00000000..186771c8 --- /dev/null +++ b/challenges/newchallenge4/inside/Slider/jsImgSlider/demo7.html @@ -0,0 +1,46 @@ + + + + Demo 7 - Create Image Slider Dynamically + + + + + + +

Demo 7 - Create Image Slider Dynamically

+

Demos: 1234 + 5678

+
+
+ + +
+ +

If your web page loads the slider markup dynamically (ajax, appendChild, etc.), or you want to update the slider items on the fly, you can use the slider's reload function:

+ imageSlider.reload(); +

 

+ The reload is the slider's built-in function that will help: +
    +
  • Load on demand - Populate slider dynamically by client event or AJAX
  • +
  • Adding/Changing items on the fly to the slider
  • +
+

View the source of this page for the sample code.

+

This demo contains no advanced features. It is free to use.

+
+ + diff --git a/challenges/newchallenge4/inside/Slider/jsImgSlider/demo8.html b/challenges/newchallenge4/inside/Slider/jsImgSlider/demo8.html new file mode 100755 index 00000000..bb33fb5f --- /dev/null +++ b/challenges/newchallenge4/inside/Slider/jsImgSlider/demo8.html @@ -0,0 +1,50 @@ + + + + Demo 8 - Image Slider with Thumbnail Preview + + + + + + + + +
+

Demo 8 - Thumbnail Preview

+

+ Demos: 1234 + 5678 +

+
+
+
+ + #cap1 + + Lorem ipsum dolor sit amet + Pure Javascript. No jQuery. No flash. + #cap2 + Excepteur sint occaecat cupidatat +
+
+
+ Welcome to Menucool.com. +
+
+ HTML caption. Link to Google. +
+
+
+
+

You'll see thumbnail previews when hovering on pagination bullets in the demo. The thumbnail previews are created by the + slider's built-in function, thumbnailPreview, with the assistance of the + Menucool Tooltip widget.

+

Please visit http://www.menucool.com/slider/thumbnail-preview for detailed instructions.

+

This demo has not used the slider's advanced features, hence it does not require slider license. However, a Tooltip license is required for using the tooltip widget to preview thumbnails. +
If you have also included slider's advanced features, slider license is also required.

+
+ + diff --git a/challenges/newchallenge4/inside/Slider/jsImgSlider/generic.css b/challenges/newchallenge4/inside/Slider/jsImgSlider/generic.css new file mode 100755 index 00000000..701cc322 --- /dev/null +++ b/challenges/newchallenge4/inside/Slider/jsImgSlider/generic.css @@ -0,0 +1,23 @@ + +/* For generic page styles. Not for sliders. */ + +body {background:#F6F6F6;font:normal 0.9em Arial; margin:0; padding:0; padding-bottom:60px;} +h2 {display:inline;} +.div1, .div2 {width:700px;margin:0 auto;} +.div1 {margin-top:30px;margin-bottom:60px;text-align:center;line-height:20px;} +.div1 P {font-size:18px;} +.div1 a, .div2 a {color:#07C; } +.div1 a {margin:0 8px;} +.div1 a.current {color:black; text-decoration:none;} +.div2 {margin-top:70px;} +.div2 li {padding-top:6px;padding-bottom:6px;} +.green {color:Green;} +.cn {font-family: "Courier New", Georgia;} +#status {display:inline-block; margin-left:26px;line-height:50px;height:50px;vertical-align:middle;} + +.code +{ + border: dashed 1px #BCBCCB; padding:8px 12px; background-color: #F3F3F9; white-space:pre; font-family:"Courier New", Georgia; + font-size:12px; margin:6px 0;overflow:auto; +} + diff --git a/challenges/newchallenge4/inside/Slider/jsImgSlider/images/caption1.gif b/challenges/newchallenge4/inside/Slider/jsImgSlider/images/caption1.gif new file mode 100755 index 00000000..592343c5 Binary files /dev/null and b/challenges/newchallenge4/inside/Slider/jsImgSlider/images/caption1.gif differ diff --git a/challenges/newchallenge4/inside/Slider/jsImgSlider/images/caption2.gif b/challenges/newchallenge4/inside/Slider/jsImgSlider/images/caption2.gif new file mode 100755 index 00000000..906ba1f6 Binary files /dev/null and b/challenges/newchallenge4/inside/Slider/jsImgSlider/images/caption2.gif differ diff --git a/challenges/newchallenge4/inside/Slider/jsImgSlider/images/caption3.gif b/challenges/newchallenge4/inside/Slider/jsImgSlider/images/caption3.gif new file mode 100755 index 00000000..0686053e Binary files /dev/null and b/challenges/newchallenge4/inside/Slider/jsImgSlider/images/caption3.gif differ diff --git a/challenges/newchallenge4/inside/Slider/jsImgSlider/images/caption4.gif b/challenges/newchallenge4/inside/Slider/jsImgSlider/images/caption4.gif new file mode 100755 index 00000000..ea347d4a Binary files /dev/null and b/challenges/newchallenge4/inside/Slider/jsImgSlider/images/caption4.gif differ diff --git a/challenges/newchallenge4/inside/Slider/jsImgSlider/images/image-slider-1.jpg b/challenges/newchallenge4/inside/Slider/jsImgSlider/images/image-slider-1.jpg new file mode 100755 index 00000000..902b3b10 Binary files /dev/null and b/challenges/newchallenge4/inside/Slider/jsImgSlider/images/image-slider-1.jpg differ diff --git a/challenges/newchallenge4/inside/Slider/jsImgSlider/images/image-slider-2.jpg b/challenges/newchallenge4/inside/Slider/jsImgSlider/images/image-slider-2.jpg new file mode 100755 index 00000000..6d8f41bb Binary files /dev/null and b/challenges/newchallenge4/inside/Slider/jsImgSlider/images/image-slider-2.jpg differ diff --git a/challenges/newchallenge4/inside/Slider/jsImgSlider/images/image-slider-3.jpg b/challenges/newchallenge4/inside/Slider/jsImgSlider/images/image-slider-3.jpg new file mode 100755 index 00000000..dc42c7b6 Binary files /dev/null and b/challenges/newchallenge4/inside/Slider/jsImgSlider/images/image-slider-3.jpg differ diff --git a/challenges/newchallenge4/inside/Slider/jsImgSlider/images/image-slider-4.jpg b/challenges/newchallenge4/inside/Slider/jsImgSlider/images/image-slider-4.jpg new file mode 100755 index 00000000..26572141 Binary files /dev/null and b/challenges/newchallenge4/inside/Slider/jsImgSlider/images/image-slider-4.jpg differ diff --git a/challenges/newchallenge4/inside/Slider/jsImgSlider/images/image-slider-5.jpg b/challenges/newchallenge4/inside/Slider/jsImgSlider/images/image-slider-5.jpg new file mode 100755 index 00000000..9ec2c4b2 Binary files /dev/null and b/challenges/newchallenge4/inside/Slider/jsImgSlider/images/image-slider-5.jpg differ diff --git a/challenges/newchallenge4/inside/Slider/jsImgSlider/images/slider-1.jpg b/challenges/newchallenge4/inside/Slider/jsImgSlider/images/slider-1.jpg new file mode 100755 index 00000000..df340018 Binary files /dev/null and b/challenges/newchallenge4/inside/Slider/jsImgSlider/images/slider-1.jpg differ diff --git a/challenges/newchallenge4/inside/Slider/jsImgSlider/images/slider-2.jpg b/challenges/newchallenge4/inside/Slider/jsImgSlider/images/slider-2.jpg new file mode 100755 index 00000000..0f1feb35 Binary files /dev/null and b/challenges/newchallenge4/inside/Slider/jsImgSlider/images/slider-2.jpg differ diff --git a/challenges/newchallenge4/inside/Slider/jsImgSlider/images/slider-3.jpg b/challenges/newchallenge4/inside/Slider/jsImgSlider/images/slider-3.jpg new file mode 100755 index 00000000..41f6d4bb Binary files /dev/null and b/challenges/newchallenge4/inside/Slider/jsImgSlider/images/slider-3.jpg differ diff --git a/challenges/newchallenge4/inside/Slider/jsImgSlider/images/slider-4.jpg b/challenges/newchallenge4/inside/Slider/jsImgSlider/images/slider-4.jpg new file mode 100755 index 00000000..8f49290e Binary files /dev/null and b/challenges/newchallenge4/inside/Slider/jsImgSlider/images/slider-4.jpg differ diff --git a/challenges/newchallenge4/inside/Slider/jsImgSlider/images/thumb-1.gif b/challenges/newchallenge4/inside/Slider/jsImgSlider/images/thumb-1.gif new file mode 100755 index 00000000..015b71af Binary files /dev/null and b/challenges/newchallenge4/inside/Slider/jsImgSlider/images/thumb-1.gif differ diff --git a/challenges/newchallenge4/inside/Slider/jsImgSlider/images/thumb-2.gif b/challenges/newchallenge4/inside/Slider/jsImgSlider/images/thumb-2.gif new file mode 100755 index 00000000..f1c30c9d Binary files /dev/null and b/challenges/newchallenge4/inside/Slider/jsImgSlider/images/thumb-2.gif differ diff --git a/challenges/newchallenge4/inside/Slider/jsImgSlider/images/thumb-3.gif b/challenges/newchallenge4/inside/Slider/jsImgSlider/images/thumb-3.gif new file mode 100755 index 00000000..078db6a9 Binary files /dev/null and b/challenges/newchallenge4/inside/Slider/jsImgSlider/images/thumb-3.gif differ diff --git a/challenges/newchallenge4/inside/Slider/jsImgSlider/images/thumb-4.gif b/challenges/newchallenge4/inside/Slider/jsImgSlider/images/thumb-4.gif new file mode 100755 index 00000000..0cfb4c1a Binary files /dev/null and b/challenges/newchallenge4/inside/Slider/jsImgSlider/images/thumb-4.gif differ diff --git a/challenges/newchallenge4/inside/Slider/jsImgSlider/images/thumb1.jpg b/challenges/newchallenge4/inside/Slider/jsImgSlider/images/thumb1.jpg new file mode 100755 index 00000000..232f75e8 Binary files /dev/null and b/challenges/newchallenge4/inside/Slider/jsImgSlider/images/thumb1.jpg differ diff --git a/challenges/newchallenge4/inside/Slider/jsImgSlider/images/thumb2.jpg b/challenges/newchallenge4/inside/Slider/jsImgSlider/images/thumb2.jpg new file mode 100755 index 00000000..6f442df2 Binary files /dev/null and b/challenges/newchallenge4/inside/Slider/jsImgSlider/images/thumb2.jpg differ diff --git a/challenges/newchallenge4/inside/Slider/jsImgSlider/images/thumb3.jpg b/challenges/newchallenge4/inside/Slider/jsImgSlider/images/thumb3.jpg new file mode 100755 index 00000000..eccd6bed Binary files /dev/null and b/challenges/newchallenge4/inside/Slider/jsImgSlider/images/thumb3.jpg differ diff --git a/challenges/newchallenge4/inside/Slider/jsImgSlider/images/thumb4.jpg b/challenges/newchallenge4/inside/Slider/jsImgSlider/images/thumb4.jpg new file mode 100755 index 00000000..2fdac268 Binary files /dev/null and b/challenges/newchallenge4/inside/Slider/jsImgSlider/images/thumb4.jpg differ diff --git a/challenges/newchallenge4/inside/Slider/jsImgSlider/images/thumb5.jpg b/challenges/newchallenge4/inside/Slider/jsImgSlider/images/thumb5.jpg new file mode 100755 index 00000000..f769e45d Binary files /dev/null and b/challenges/newchallenge4/inside/Slider/jsImgSlider/images/thumb5.jpg differ diff --git a/challenges/newchallenge4/inside/Slider/jsImgSlider/themes/1/bullet.png b/challenges/newchallenge4/inside/Slider/jsImgSlider/themes/1/bullet.png new file mode 100755 index 00000000..a638e4d6 Binary files /dev/null and b/challenges/newchallenge4/inside/Slider/jsImgSlider/themes/1/bullet.png differ diff --git a/challenges/newchallenge4/inside/Slider/jsImgSlider/themes/1/js-image-slider.css b/challenges/newchallenge4/inside/Slider/jsImgSlider/themes/1/js-image-slider.css new file mode 100755 index 00000000..b52d0b68 --- /dev/null +++ b/challenges/newchallenge4/inside/Slider/jsImgSlider/themes/1/js-image-slider.css @@ -0,0 +1,120 @@ +/* http://www.menucool.com */ + +#sliderFrame, #sliderFrame div { + box-sizing: content-box; +} +#sliderFrame +{ + position:relative; + width:700px; + margin:0 auto; /*center-aligned*/ +} +#slider, #slider div.sliderInner { + width:700px; + height:306px;/* Must be the same size as the slider images */ +} + +#slider { + background:#fff url(loading.gif) no-repeat 50% 50%; + position:relative; + margin:0 auto; /*center-aligned*/ + transform: translate3d(0,0,0); + box-shadow: 0px 1px 5px #999999; +} + +/* image wrapper */ +#slider a.imgLink, #slider div.video { + z-index:2; + position:absolute; + top:0px;left:0px;border:0;padding:0;margin:0; + width:100%;height:100%; +} +#slider .video { + background:transparent url(video.png) no-repeat 50% 50%; +} + +/* Caption styles */ +#slider div.mc-caption-bg, #slider div.mc-caption-bg2 { + position:absolute; + width:100%; + height:auto; + padding:10px 0;/* 10px will increase the height.*/ + left:0px; /*if the caption needs to be aligned from right, specify by right instead of left. i.e. right:20px;*/ + bottom:0px;/*if the caption needs to be aligned from top, specify by top instead of bottom. i.e. top:150px;*/ + z-index:3; + overflow:hidden; + font-size: 0; +} +#slider div.mc-caption-bg +{ + /* NOTE: Its opacity is to be set through the sliderOptions.captionOpacity setting in the js-image-slider.js file.*/ + background:Black;/* or any other colors such as White, or: background:none; */ +} +#slider div.mc-caption-bg2 { + background:none; +} +#slider div.mc-caption { + font: bold 14px/20px Arial; + color:#EEE; + z-index:4; + text-align:center; + background:none; +} +#slider div.mc-caption a { + color:#FB0; +} +#slider div.mc-caption a:hover { + color:#DA0; +} + + +/* ------ built-in navigation bullets wrapper ------*/ +/* Note: check themes\2\js-image-slider.css to see how to hide nav bullets */ +#slider div.navBulletsWrapper { + top:320px;/* Its position is relative to the #slider */ + text-align:center; + background:none; + position:relative; + z-index:5; +} + +/* each bullet */ +#slider div.navBulletsWrapper div +{ + width:11px; height:11px; + font-size:0;color:White;/*hide the index number in the bullet element*/ + background:transparent url(bullet.png) no-repeat 0 0; + display:inline-block; *display:inline; zoom:1; + overflow:hidden;cursor:pointer; + margin:0 6px;/* set distance between each bullet*/ +} + +#slider div.navBulletsWrapper div.active {background-position:0 -11px;} + + +/* --------- Others ------- */ + +#slider div.loading +{ + width:100%; height:100%; + background:transparent url(loading.gif) no-repeat 50% 50%; + filter: alpha(opacity=60); + opacity:0.6; + position:absolute; + left:0; + top:0; + z-index:9; +} + +#slider img, #slider>b, #slider a>b { + position:absolute; border:none; display:none; +} + +#slider div.sliderInner { + overflow:hidden; + -webkit-transform: rotate(0.000001deg);/* fixed the Chrome not crop border-radius bug*/ + position:absolute; top:0; left:0; +} + +#slider>a, #slider video, #slider audio {display:none;} +#slider div {-webkit-transform: translate3d(0,0,0);transform: translate3d(0,0,0);} \ No newline at end of file diff --git a/challenges/newchallenge4/inside/Slider/jsImgSlider/themes/1/js-image-slider.js b/challenges/newchallenge4/inside/Slider/jsImgSlider/themes/1/js-image-slider.js new file mode 100755 index 00000000..03b55687 --- /dev/null +++ b/challenges/newchallenge4/inside/Slider/jsImgSlider/themes/1/js-image-slider.js @@ -0,0 +1,23 @@ +var sliderOptions= +{ + sliderId: "slider", + startSlide: 0, + effect: "series1", + effectRandom: false, + pauseTime: 2600, + transitionTime: 500, + slices: 12, + boxes: 8, + hoverPause: 1, + autoAdvance: true, + captionOpacity: 0.3, + captionEffect: "fade", + thumbnailsWrapperId: "thumbs", + m: false, + license: "mylicense" +}; + +var imageSlider=new mcImgSlider(sliderOptions); + +/* Menucool Javascript Image Slider v2014.9.16. Copyright www.menucool.com */ +function mcImgSlider(k){for(var T=function(a){return document.getElementById(a)},d="length",ab="getElementsByTagName",C=function(e){var a=e.childNodes,c=[];if(a)for(var b=0,f=a[d];bd?1:-1,f=Math.ceil(60*c.c/1e3),a,e=1;e<=f;e++){a=d+c.b(e/f,c.d)*j;if(h!=i)a=Math.round(a);b.push(a)}b.e=0;return b},n:function(){this.b==null&&this.p()},p:function(){this.q();var a=this;this.b=U?U(function(){a.p()}):window.setInterval(function(){a.q()},15)},q:function(){var a=this.d[d];if(a){for(var c=0;c=a.a[d])a.a.p=0}if(b<1||b>17)b=15;return b}},zb=["$1$2$3","$1$2$3","$1$24","$1$23","$1$22"],tb=function(){if(b.b!=2){b.b=1;L(s);s=null}},pb=function(){if(b.b!=2){b.b=0;if(s==null&&!b.c&&a.i)s=D(function(){m.y(m.n(b.a+1),0,1)},a.b/2)}},Ab=function(){var a=0,b=0,c;while(a-1&&typeof McVideo!=r;if(c){b=1;break}++a}return b},u=[],rb=function(b){var a=u[d];if(a)while(a--)u[a][g]=a!=b&&u[a].on==0?"thumb":"thumb thumb-on"},Cb=function(a){return a[q][h]("data-autovideo")=="true"||a[h]("data-autovideo")=="true"},Eb=function(){var f;if(a.l)f=T(a.l);if(f)for(var h=lb(f,"*"),e=0;e1){D(function(){p.e(1)},0);s=D(function(){p.y(p.n(1),0,1)},a.b+a.c)}if(a.h!=0&&!ib){f.onmouseover=tb;f.onmouseout=pb}},b:function(a){if(typeof McVideo!=r){a.onclick=function(){return this.aP?false:m.d(this)};McVideo.register(a,this)}},A:function(a){if(typeof a.aP===r){var b=a[h]("data-autovideo");if(b=="true")a.aP=true;else if(b=="1")a.aP=1;else a.aP=0}},d:function(c){L(s);s=null;var a=McVideo.play(c,v,B,this.Id);if(a||ib)b.b=2;return false},f:function(){S=A("navBulletsWrapper");for(var i=[],a=0;a"+(a+1)+"
");S[Q]=i.join("");for(var e=C(S),a=0;a1)if(!a.k)n[c][G]=p[c][G]="hidden";else{e=0;var b={c:a.c*.3,b:a.k==1?E.a.f:E.a.h,d:a.k==1?0:2},f=b;f.a=function(){n[c][G]=p[c][G]="hidden";m.m()};if(typeof t[x]!==r){l.r(p,"width",t[j],K[j],b);l.r(n,"width",J[j],H[j],b);l.r(p,"marginLeft",t[x],K[x],b);l.r(n,"marginLeft",J[x],H[x],b)}if(typeof t[i]!==r){l.r(p,i,t[i],K[i],b);l.r(n,i,J[i],H[i],f)}}e&&D(function(){m.m()},a.c*.3)},m:function(){W[Q]=O[Q]=V;if(V){n[c][G]=p[c][G]="visible";if(a.k){var d=a.c*a.k;if(d>1e3)d=1e3;var b={c:d,b:a.k==1?E.a.g:E.a.j,d:a.k==1?0:2};if(typeof t[x]!==r){l.r(p,"width",K[j],t[j],b);l.r(n,"width",H[j],J[j],b);l.r(p,"marginLeft",K[x],t[x],b);l.r(n,"marginLeft",H[x],J[x],b)}if(typeof t[i]!==r){l.r(p,i,K[i],t[i],b);l.r(n,i,H[i],J[i],b)}}else{M(p,1);M(n,a.j)}}},a:function(a){return a.replace(/(?:.*\.)?(\w)([\w\-])?[^.]*(\w)\.[^.]*$/,"$1$3$2")},o:function(){b.c=0;L(s);s=null;f[c][P]='url("'+b.e[h]("src")+'") no-repeat';var j=this,d=b.e[q];if(typeof d.aP===r)d=0;var i;if(d&&(i=d.aP||eb&&/video$/.test(d[g]))){this.d(d);if(i===1)d.aP=0}else if(!b.b&&a.i){var e=this.n(b.a+1);this.e(e);s=D(function(){j.y(e,0,1)},a.b)}a.Oa.call(this,b.a,b.e)},e:function(j){var a=e[j],k=0;if(a[o]=="A"&&a[g][F]("lazyImage")==-1||a[o]=="DIV"&&a[g]=="video"){a=C(a)[0];k=1}if(a[o]!="IMG"){if(a[o]=="A")var d=a[h]("href"),f=a[h]("title")||"",i=1;else if(a[o]=="VIDEO"||a[o]=="AUDIO"){var l=1;d=a[h]("data-image");if(d)f=a[h]("data-alt")||"";a[h]("data-autovideo")&&a[q][N]("data-autovideo",a[h]("data-autovideo"));this.A(a[q]);i=0}else{d=a[h]("data-src");if(d)f=a[h]("data-alt")||"";i=!k}if(f!=null){var b=document.createElement("img");b[N]("data-loaded","f");b[N]("alt",f);b.onload=Db;b.onerror=Fb;b[N]("src",d);b[c][y]="none";if(l){a[q].insertBefore(b,a);this.b(a[q],this);if(bb){a[q][c][P]="none";a[q][c].cursor="default"}}else a[q].replaceChild(b,a);if(i)e[j]=b}}},p:function(i){if(e[b.a][o]=="IMG")b.e=e[b.a];else b.e=lb(e[b.a],"img")[0];var j=b.e[h]("data-loaded");if(j=="f"){R[c][y]="block";D(function(){m.p(i)},200);return}b.c=1;this.g();L(hb);V=this.k();if(!I){I=A("sliderInner");f[w](I);if(sb()>=300)f[c].borderRadius=I[c].borderRadius="0px"}I[Q]="";var d=i?i:a.n();a.Ob.apply(this,[b.a,b.e,V,d]);rb(b.a);var g=d<14?this.w(d):this.x();if(d<9||d==15){if(d%2)g=g.reverse()}else if(d<14)g=g[0];if(d<9)this.q(g,d);else if(d<13)this.r(g,d);else if(d==13)this.s(g);else if(d<16)this.t(g,d);else this.u(g,d)},q:function(b,e){for(var f=0,g=e<7?{height:0,opacity:-.4}:{width:0,opacity:0},k={height:B,opacity:1},a=0,h=b[d];a10)d[c][b==11?"bottom":"top"]="0";if(b<11)var e=0,f=v;else{e=0;f=B}var g={b:E.a.j,c:a.c*1.6,a:function(){m.o()}};l.r(d,b<11?"width":"height",e,f,g)},s:function(b){b[c][Y]="0";b[c][j]=v+"px";b[c][z]=B+"px";var d={c:a.c*1.6,a:function(){m.o()}};l.r(b,i,0,1,d)},t:function(b){var s=a.g*a.m,p=0,n=0,i=0,g=0,f=[];f[0]=[];for(var e=0,o=b[d];e=0&&h8?v:Math.round(v/a.f),m=g>8?1:a.f,f=0;fb.a?"10":"9";this.p(f)},n:function(a){if(a>=b.d)a=0;else if(a<0)a=b.d-1;return a},To:function(d,c){if(c&&!a.i)return;this.y(this.n(b.a+d))}};var gb=function(){var a=T(k.sliderId);if(a&&C(a)[d]&&a.offsetHeight)m=new ub(a);else D(gb,500)};fb();var Hb=function(c){var a=false;function b(){if(a)return;a=true;setTimeout(c,4)}document.addEventListener&&document.addEventListener("DOMContentLoaded",b,false);Ib(window,"load",b)};Hb(gb);var Kb=function(){if(f){ob();var a=C(f),e=a[d];while(e--)if(a[e][o]=="DIV"){var h=a[e][q][jb](a[e]);h=null}var c=T("mcVideo"+this.Id);if(c){c.src="";var g=c[q][q][jb](c[q]);g=null}b={a:0,e:"",d:0,c:0,b:0};u=[];I=null}fb();gb()},vb=0,nb=function(e,c){if(++vb<20)if(!m||typeof tooltip==r)D(function(){nb(e,c)},300);else for(var b=C(S),a=0;ab, #slider a>b { + position:absolute; border:none; display:none; +} + +#slider div.sliderInner { + overflow:hidden; + -webkit-transform: rotate(0.000001deg);/* fixed the Chrome not crop border-radius bug*/ + position:absolute; top:0; left:0; +} + +#slider>a, #slider video, #slider audio {display:none;} +#slider div {-webkit-transform: translate3d(0,0,0);transform: translate3d(0,0,0);} + + + +/* -- thumbnails -- */ +#thumbs +{ + float:left; + margin-left:10px; + width:230px; + font:normal 11px/13px Arial; + border-top:1px solid #CCC; + color:#666; +} +#thumbs .thumb +{ + border:1px solid #CCC; + border-top:1px solid #FFF; + padding:11px 8px; + background:#EEE; +} +#thumbs .thumb-on +{ + background:#FFF; +} + +#thumbs img{border:1px solid #DDD; cursor:pointer; width:70px; height:44px;} + +#thumbs .frame {float:left;padding:2px;border:1px solid #CCC;background:white;border-radius:3px;box-shadow:0 0 3px #BBB;font-size:0;line-height:0;} +#thumbs .thumb-content {float:left;width:110px;padding-left:18px;} + +/* Captions in #thumbs .thumb-content */ +#thumbs .thumb-content p {font-weight:bold; color:#BF5D9B; margin:0 0 3px;padding:0;} +#thumbs .thumb-on .thumb-content p {color:#BB0000;} + diff --git a/challenges/newchallenge4/inside/Slider/jsImgSlider/themes/2/js-image-slider.js b/challenges/newchallenge4/inside/Slider/jsImgSlider/themes/2/js-image-slider.js new file mode 100755 index 00000000..6702b9e1 --- /dev/null +++ b/challenges/newchallenge4/inside/Slider/jsImgSlider/themes/2/js-image-slider.js @@ -0,0 +1,23 @@ +var sliderOptions= +{ + sliderId: "slider", + startSlide: 0, + effect: "1,4,5,6,7,8,9,12,13,14,15,17", + effectRandom: true, + pauseTime: 2600, + transitionTime: 500, + slices: 11, + boxes: 7, + hoverPause: 2, + autoAdvance: true, + captionOpacity: 0.6, + captionEffect: "rotate", + thumbnailsWrapperId: "thumbs", + m: false, + license: "mylicense" +}; + +var imageSlider=new mcImgSlider(sliderOptions); + +/* Menucool Javascript Image Slider v2014.9.16. Copyright www.menucool.com */ +function mcImgSlider(k){for(var T=function(a){return document.getElementById(a)},d="length",ab="getElementsByTagName",C=function(e){var a=e.childNodes,c=[];if(a)for(var b=0,f=a[d];bd?1:-1,f=Math.ceil(60*c.c/1e3),a,e=1;e<=f;e++){a=d+c.b(e/f,c.d)*j;if(h!=i)a=Math.round(a);b.push(a)}b.e=0;return b},n:function(){this.b==null&&this.p()},p:function(){this.q();var a=this;this.b=U?U(function(){a.p()}):window.setInterval(function(){a.q()},15)},q:function(){var a=this.d[d];if(a){for(var c=0;c=a.a[d])a.a.p=0}if(b<1||b>17)b=15;return b}},zb=["$1$2$3","$1$2$3","$1$24","$1$23","$1$22"],tb=function(){if(b.b!=2){b.b=1;L(s);s=null}},pb=function(){if(b.b!=2){b.b=0;if(s==null&&!b.c&&a.i)s=D(function(){m.y(m.n(b.a+1),0,1)},a.b/2)}},Ab=function(){var a=0,b=0,c;while(a-1&&typeof McVideo!=r;if(c){b=1;break}++a}return b},u=[],rb=function(b){var a=u[d];if(a)while(a--)u[a][g]=a!=b&&u[a].on==0?"thumb":"thumb thumb-on"},Cb=function(a){return a[q][h]("data-autovideo")=="true"||a[h]("data-autovideo")=="true"},Eb=function(){var f;if(a.l)f=T(a.l);if(f)for(var h=lb(f,"*"),e=0;e1){D(function(){p.e(1)},0);s=D(function(){p.y(p.n(1),0,1)},a.b+a.c)}if(a.h!=0&&!ib){f.onmouseover=tb;f.onmouseout=pb}},b:function(a){if(typeof McVideo!=r){a.onclick=function(){return this.aP?false:m.d(this)};McVideo.register(a,this)}},A:function(a){if(typeof a.aP===r){var b=a[h]("data-autovideo");if(b=="true")a.aP=true;else if(b=="1")a.aP=1;else a.aP=0}},d:function(c){L(s);s=null;var a=McVideo.play(c,v,B,this.Id);if(a||ib)b.b=2;return false},f:function(){S=A("navBulletsWrapper");for(var i=[],a=0;a"+(a+1)+"
");S[Q]=i.join("");for(var e=C(S),a=0;a1)if(!a.k)n[c][G]=p[c][G]="hidden";else{e=0;var b={c:a.c*.3,b:a.k==1?E.a.f:E.a.h,d:a.k==1?0:2},f=b;f.a=function(){n[c][G]=p[c][G]="hidden";m.m()};if(typeof t[x]!==r){l.r(p,"width",t[j],K[j],b);l.r(n,"width",J[j],H[j],b);l.r(p,"marginLeft",t[x],K[x],b);l.r(n,"marginLeft",J[x],H[x],b)}if(typeof t[i]!==r){l.r(p,i,t[i],K[i],b);l.r(n,i,J[i],H[i],f)}}e&&D(function(){m.m()},a.c*.3)},m:function(){W[Q]=O[Q]=V;if(V){n[c][G]=p[c][G]="visible";if(a.k){var d=a.c*a.k;if(d>1e3)d=1e3;var b={c:d,b:a.k==1?E.a.g:E.a.j,d:a.k==1?0:2};if(typeof t[x]!==r){l.r(p,"width",K[j],t[j],b);l.r(n,"width",H[j],J[j],b);l.r(p,"marginLeft",K[x],t[x],b);l.r(n,"marginLeft",H[x],J[x],b)}if(typeof t[i]!==r){l.r(p,i,K[i],t[i],b);l.r(n,i,H[i],J[i],b)}}else{M(p,1);M(n,a.j)}}},a:function(a){return a.replace(/(?:.*\.)?(\w)([\w\-])?[^.]*(\w)\.[^.]*$/,"$1$3$2")},o:function(){b.c=0;L(s);s=null;f[c][P]='url("'+b.e[h]("src")+'") no-repeat';var j=this,d=b.e[q];if(typeof d.aP===r)d=0;var i;if(d&&(i=d.aP||eb&&/video$/.test(d[g]))){this.d(d);if(i===1)d.aP=0}else if(!b.b&&a.i){var e=this.n(b.a+1);this.e(e);s=D(function(){j.y(e,0,1)},a.b)}a.Oa.call(this,b.a,b.e)},e:function(j){var a=e[j],k=0;if(a[o]=="A"&&a[g][F]("lazyImage")==-1||a[o]=="DIV"&&a[g]=="video"){a=C(a)[0];k=1}if(a[o]!="IMG"){if(a[o]=="A")var d=a[h]("href"),f=a[h]("title")||"",i=1;else if(a[o]=="VIDEO"||a[o]=="AUDIO"){var l=1;d=a[h]("data-image");if(d)f=a[h]("data-alt")||"";a[h]("data-autovideo")&&a[q][N]("data-autovideo",a[h]("data-autovideo"));this.A(a[q]);i=0}else{d=a[h]("data-src");if(d)f=a[h]("data-alt")||"";i=!k}if(f!=null){var b=document.createElement("img");b[N]("data-loaded","f");b[N]("alt",f);b.onload=Db;b.onerror=Fb;b[N]("src",d);b[c][y]="none";if(l){a[q].insertBefore(b,a);this.b(a[q],this);if(bb){a[q][c][P]="none";a[q][c].cursor="default"}}else a[q].replaceChild(b,a);if(i)e[j]=b}}},p:function(i){if(e[b.a][o]=="IMG")b.e=e[b.a];else b.e=lb(e[b.a],"img")[0];var j=b.e[h]("data-loaded");if(j=="f"){R[c][y]="block";D(function(){m.p(i)},200);return}b.c=1;this.g();L(hb);V=this.k();if(!I){I=A("sliderInner");f[w](I);if(sb()>=300)f[c].borderRadius=I[c].borderRadius="0px"}I[Q]="";var d=i?i:a.n();a.Ob.apply(this,[b.a,b.e,V,d]);rb(b.a);var g=d<14?this.w(d):this.x();if(d<9||d==15){if(d%2)g=g.reverse()}else if(d<14)g=g[0];if(d<9)this.q(g,d);else if(d<13)this.r(g,d);else if(d==13)this.s(g);else if(d<16)this.t(g,d);else this.u(g,d)},q:function(b,e){for(var f=0,g=e<7?{height:0,opacity:-.4}:{width:0,opacity:0},k={height:B,opacity:1},a=0,h=b[d];a10)d[c][b==11?"bottom":"top"]="0";if(b<11)var e=0,f=v;else{e=0;f=B}var g={b:E.a.j,c:a.c*1.6,a:function(){m.o()}};l.r(d,b<11?"width":"height",e,f,g)},s:function(b){b[c][Y]="0";b[c][j]=v+"px";b[c][z]=B+"px";var d={c:a.c*1.6,a:function(){m.o()}};l.r(b,i,0,1,d)},t:function(b){var s=a.g*a.m,p=0,n=0,i=0,g=0,f=[];f[0]=[];for(var e=0,o=b[d];e=0&&h8?v:Math.round(v/a.f),m=g>8?1:a.f,f=0;fb.a?"10":"9";this.p(f)},n:function(a){if(a>=b.d)a=0;else if(a<0)a=b.d-1;return a},To:function(d,c){if(c&&!a.i)return;this.y(this.n(b.a+d))}};var gb=function(){var a=T(k.sliderId);if(a&&C(a)[d]&&a.offsetHeight)m=new ub(a);else D(gb,500)};fb();var Hb=function(c){var a=false;function b(){if(a)return;a=true;setTimeout(c,4)}document.addEventListener&&document.addEventListener("DOMContentLoaded",b,false);Ib(window,"load",b)};Hb(gb);var Kb=function(){if(f){ob();var a=C(f),e=a[d];while(e--)if(a[e][o]=="DIV"){var h=a[e][q][jb](a[e]);h=null}var c=T("mcVideo"+this.Id);if(c){c.src="";var g=c[q][q][jb](c[q]);g=null}b={a:0,e:"",d:0,c:0,b:0};u=[];I=null}fb();gb()},vb=0,nb=function(e,c){if(++vb<20)if(!m||typeof tooltip==r)D(function(){nb(e,c)},300);else for(var b=C(S),a=0;ab, #slider a>b { + position:absolute; border:none; display:none; +} + +#slider div.sliderInner { + overflow:hidden; + -webkit-transform: rotate(0.000001deg);/* fixed the Chrome not crop border-radius bug*/ + position:absolute; top:0; left:0; +} + +#slider>a, #slider video, #slider audio {display:none;} +#slider div {-webkit-transform: translate3d(0,0,0);transform: translate3d(0,0,0);} + + + +/* -- thumbnails -- */ +#thumbs +{ + background:white url(thumbs-bar.gif) repeat-x 0 0; + border:1px solid white; text-align:center; + font-size:0px; + line-height:45px; +} +#thumbs .thumb +{ + width:60px;height:45px; + cursor:pointer; + text-align:center; + border-left:1px solid #FFF; border-right:1px solid #DDD; + + display:inline-block; + *display:inline;zoom:1; /*IE Hack*/ +} +#thumbs .thumb-on {background-image: url(active-bg.png);} +#thumbs .thumb img {vertical-align:middle;} + diff --git a/challenges/newchallenge4/inside/Slider/jsImgSlider/themes/3/js-image-slider.js b/challenges/newchallenge4/inside/Slider/jsImgSlider/themes/3/js-image-slider.js new file mode 100755 index 00000000..0e8b9445 --- /dev/null +++ b/challenges/newchallenge4/inside/Slider/jsImgSlider/themes/3/js-image-slider.js @@ -0,0 +1,23 @@ +var sliderOptions= +{ + sliderId: "slider", + startSlide: "shuffle", //can be 0, 1, ... or "shuffle", or "random" + effect: "1,7,11,2", + effectRandom: false, + pauseTime: 2600, + transitionTime: 500, + slices: 14, + boxes: 9, + hoverPause: 2, + autoAdvance: true, + captionOpacity: 0.6, + captionEffect: "rotate", + thumbnailsWrapperId: "thumbs", + m: false, + license: "mylicense" +}; + +var imageSlider=new mcImgSlider(sliderOptions); + +/* Menucool Javascript Image Slider v2014.9.16. Copyright www.menucool.com */ +function mcImgSlider(k){for(var T=function(a){return document.getElementById(a)},d="length",ab="getElementsByTagName",C=function(e){var a=e.childNodes,c=[];if(a)for(var b=0,f=a[d];bd?1:-1,f=Math.ceil(60*c.c/1e3),a,e=1;e<=f;e++){a=d+c.b(e/f,c.d)*j;if(h!=i)a=Math.round(a);b.push(a)}b.e=0;return b},n:function(){this.b==null&&this.p()},p:function(){this.q();var a=this;this.b=U?U(function(){a.p()}):window.setInterval(function(){a.q()},15)},q:function(){var a=this.d[d];if(a){for(var c=0;c=a.a[d])a.a.p=0}if(b<1||b>17)b=15;return b}},zb=["$1$2$3","$1$2$3","$1$24","$1$23","$1$22"],tb=function(){if(b.b!=2){b.b=1;L(s);s=null}},pb=function(){if(b.b!=2){b.b=0;if(s==null&&!b.c&&a.i)s=D(function(){m.y(m.n(b.a+1),0,1)},a.b/2)}},Ab=function(){var a=0,b=0,c;while(a-1&&typeof McVideo!=r;if(c){b=1;break}++a}return b},u=[],rb=function(b){var a=u[d];if(a)while(a--)u[a][g]=a!=b&&u[a].on==0?"thumb":"thumb thumb-on"},Cb=function(a){return a[q][h]("data-autovideo")=="true"||a[h]("data-autovideo")=="true"},Eb=function(){var f;if(a.l)f=T(a.l);if(f)for(var h=lb(f,"*"),e=0;e1){D(function(){p.e(1)},0);s=D(function(){p.y(p.n(1),0,1)},a.b+a.c)}if(a.h!=0&&!ib){f.onmouseover=tb;f.onmouseout=pb}},b:function(a){if(typeof McVideo!=r){a.onclick=function(){return this.aP?false:m.d(this)};McVideo.register(a,this)}},A:function(a){if(typeof a.aP===r){var b=a[h]("data-autovideo");if(b=="true")a.aP=true;else if(b=="1")a.aP=1;else a.aP=0}},d:function(c){L(s);s=null;var a=McVideo.play(c,v,B,this.Id);if(a||ib)b.b=2;return false},f:function(){S=A("navBulletsWrapper");for(var i=[],a=0;a"+(a+1)+"
");S[Q]=i.join("");for(var e=C(S),a=0;a1)if(!a.k)n[c][G]=p[c][G]="hidden";else{e=0;var b={c:a.c*.3,b:a.k==1?E.a.f:E.a.h,d:a.k==1?0:2},f=b;f.a=function(){n[c][G]=p[c][G]="hidden";m.m()};if(typeof t[x]!==r){l.r(p,"width",t[j],K[j],b);l.r(n,"width",J[j],H[j],b);l.r(p,"marginLeft",t[x],K[x],b);l.r(n,"marginLeft",J[x],H[x],b)}if(typeof t[i]!==r){l.r(p,i,t[i],K[i],b);l.r(n,i,J[i],H[i],f)}}e&&D(function(){m.m()},a.c*.3)},m:function(){W[Q]=O[Q]=V;if(V){n[c][G]=p[c][G]="visible";if(a.k){var d=a.c*a.k;if(d>1e3)d=1e3;var b={c:d,b:a.k==1?E.a.g:E.a.j,d:a.k==1?0:2};if(typeof t[x]!==r){l.r(p,"width",K[j],t[j],b);l.r(n,"width",H[j],J[j],b);l.r(p,"marginLeft",K[x],t[x],b);l.r(n,"marginLeft",H[x],J[x],b)}if(typeof t[i]!==r){l.r(p,i,K[i],t[i],b);l.r(n,i,H[i],J[i],b)}}else{M(p,1);M(n,a.j)}}},a:function(a){return a.replace(/(?:.*\.)?(\w)([\w\-])?[^.]*(\w)\.[^.]*$/,"$1$3$2")},o:function(){b.c=0;L(s);s=null;f[c][P]='url("'+b.e[h]("src")+'") no-repeat';var j=this,d=b.e[q];if(typeof d.aP===r)d=0;var i;if(d&&(i=d.aP||eb&&/video$/.test(d[g]))){this.d(d);if(i===1)d.aP=0}else if(!b.b&&a.i){var e=this.n(b.a+1);this.e(e);s=D(function(){j.y(e,0,1)},a.b)}a.Oa.call(this,b.a,b.e)},e:function(j){var a=e[j],k=0;if(a[o]=="A"&&a[g][F]("lazyImage")==-1||a[o]=="DIV"&&a[g]=="video"){a=C(a)[0];k=1}if(a[o]!="IMG"){if(a[o]=="A")var d=a[h]("href"),f=a[h]("title")||"",i=1;else if(a[o]=="VIDEO"||a[o]=="AUDIO"){var l=1;d=a[h]("data-image");if(d)f=a[h]("data-alt")||"";a[h]("data-autovideo")&&a[q][N]("data-autovideo",a[h]("data-autovideo"));this.A(a[q]);i=0}else{d=a[h]("data-src");if(d)f=a[h]("data-alt")||"";i=!k}if(f!=null){var b=document.createElement("img");b[N]("data-loaded","f");b[N]("alt",f);b.onload=Db;b.onerror=Fb;b[N]("src",d);b[c][y]="none";if(l){a[q].insertBefore(b,a);this.b(a[q],this);if(bb){a[q][c][P]="none";a[q][c].cursor="default"}}else a[q].replaceChild(b,a);if(i)e[j]=b}}},p:function(i){if(e[b.a][o]=="IMG")b.e=e[b.a];else b.e=lb(e[b.a],"img")[0];var j=b.e[h]("data-loaded");if(j=="f"){R[c][y]="block";D(function(){m.p(i)},200);return}b.c=1;this.g();L(hb);V=this.k();if(!I){I=A("sliderInner");f[w](I);if(sb()>=300)f[c].borderRadius=I[c].borderRadius="0px"}I[Q]="";var d=i?i:a.n();a.Ob.apply(this,[b.a,b.e,V,d]);rb(b.a);var g=d<14?this.w(d):this.x();if(d<9||d==15){if(d%2)g=g.reverse()}else if(d<14)g=g[0];if(d<9)this.q(g,d);else if(d<13)this.r(g,d);else if(d==13)this.s(g);else if(d<16)this.t(g,d);else this.u(g,d)},q:function(b,e){for(var f=0,g=e<7?{height:0,opacity:-.4}:{width:0,opacity:0},k={height:B,opacity:1},a=0,h=b[d];a10)d[c][b==11?"bottom":"top"]="0";if(b<11)var e=0,f=v;else{e=0;f=B}var g={b:E.a.j,c:a.c*1.6,a:function(){m.o()}};l.r(d,b<11?"width":"height",e,f,g)},s:function(b){b[c][Y]="0";b[c][j]=v+"px";b[c][z]=B+"px";var d={c:a.c*1.6,a:function(){m.o()}};l.r(b,i,0,1,d)},t:function(b){var s=a.g*a.m,p=0,n=0,i=0,g=0,f=[];f[0]=[];for(var e=0,o=b[d];e=0&&h8?v:Math.round(v/a.f),m=g>8?1:a.f,f=0;fb.a?"10":"9";this.p(f)},n:function(a){if(a>=b.d)a=0;else if(a<0)a=b.d-1;return a},To:function(d,c){if(c&&!a.i)return;this.y(this.n(b.a+d))}};var gb=function(){var a=T(k.sliderId);if(a&&C(a)[d]&&a.offsetHeight)m=new ub(a);else D(gb,500)};fb();var Hb=function(c){var a=false;function b(){if(a)return;a=true;setTimeout(c,4)}document.addEventListener&&document.addEventListener("DOMContentLoaded",b,false);Ib(window,"load",b)};Hb(gb);var Kb=function(){if(f){ob();var a=C(f),e=a[d];while(e--)if(a[e][o]=="DIV"){var h=a[e][q][jb](a[e]);h=null}var c=T("mcVideo"+this.Id);if(c){c.src="";var g=c[q][q][jb](c[q]);g=null}b={a:0,e:"",d:0,c:0,b:0};u=[];I=null}fb();gb()},vb=0,nb=function(e,c){if(++vb<20)if(!m||typeof tooltip==r)D(function(){nb(e,c)},300);else for(var b=C(S),a=0;ab, #slider a>b { + position:absolute; border:none; display:none; +} + +#slider div.sliderInner { + overflow:hidden; + -webkit-transform: rotate(0.000001deg);/* fixed the Chrome not crop border-radius bug*/ + position:absolute; top:0; left:0; +} + +#slider>a, #slider video, #slider audio {display:none;} +#slider div {-webkit-transform: translate3d(0,0,0);transform: translate3d(0,0,0);} + + + +/*----------- navigation buttons on both sides of the slider -----------*/ +.group1-Wrapper +{ + position:absolute; + z-index:20; + top:120px; + margin-left:50%;/* position it in the middle of #sliderFrame */ + width:1px; +} +a.group1-Prev, a.group1-Next +{ + width:50px;height:150px; + background:transparent url(navbuttons2.gif); + display:block; + cursor:pointer; + position:absolute; + top:0; + user-select: none; +} +a.group1-Prev{background-position:0 0; left: -510px;} +a.group1-Next {background-position:0 -150px;left:460px;} + +a.group1-Prev:hover{background-position:50px 0;} +a.group1-Next:hover {background-position:50px -150px;} + + +/* ----------- navigation buttons in the nav bar ---------- */ +a.group2-Prev, a.group2-Next, a.group2-Play, a.group2-Pause +{ + width:20px; height:20px; + background:transparent url(navbuttons.gif); + display:inline-block; + *display:inline;zoom:1;/*IE hack*/ + margin-left:4px; margin-right:4px; + cursor:pointer; +} +a.group2-Pause{background-position:0 0;} +a.group2-Play {background-position:0 -20px;} +a.group2-Next {background-position:0 -40px;} +a.group2-Prev {background-position:0 -60px;} + +a.group2-Pause:hover{background-position:20px 0;} +a.group2-Play:hover {background-position:20px -20px;} +a.group2-Next:hover {background-position:20px -40px;} +a.group2-Prev:hover {background-position:20px -60px;} + diff --git a/challenges/newchallenge4/inside/Slider/jsImgSlider/themes/4/js-image-slider.js b/challenges/newchallenge4/inside/Slider/jsImgSlider/themes/4/js-image-slider.js new file mode 100755 index 00000000..47fdb1b9 --- /dev/null +++ b/challenges/newchallenge4/inside/Slider/jsImgSlider/themes/4/js-image-slider.js @@ -0,0 +1,23 @@ +var sliderOptions= +{ + sliderId: "slider", + startSlide: 0, + effect: "6,15,1,2,11,12,13,15,16,5,7", + effectRandom: false, + pauseTime: 2600, + transitionTime: 500, + slices: 14, + boxes: 11, + hoverPause: 2, + autoAdvance: true, + captionOpacity: 0.5, + captionEffect: "rotate", + thumbnailsWrapperId: null, + m: true, + license: "mylicense" +}; + +var imageSlider=new mcImgSlider(sliderOptions); + +/* Menucool Javascript Image Slider v2014.9.16. Copyright www.menucool.com */ +function mcImgSlider(k){for(var T=function(a){return document.getElementById(a)},d="length",ab="getElementsByTagName",C=function(e){var a=e.childNodes,c=[];if(a)for(var b=0,f=a[d];bd?1:-1,f=Math.ceil(60*c.c/1e3),a,e=1;e<=f;e++){a=d+c.b(e/f,c.d)*j;if(h!=i)a=Math.round(a);b.push(a)}b.e=0;return b},n:function(){this.b==null&&this.p()},p:function(){this.q();var a=this;this.b=U?U(function(){a.p()}):window.setInterval(function(){a.q()},15)},q:function(){var a=this.d[d];if(a){for(var c=0;c=a.a[d])a.a.p=0}if(b<1||b>17)b=15;return b}},zb=["$1$2$3","$1$2$3","$1$24","$1$23","$1$22"],tb=function(){if(b.b!=2){b.b=1;L(s);s=null}},pb=function(){if(b.b!=2){b.b=0;if(s==null&&!b.c&&a.i)s=D(function(){m.y(m.n(b.a+1),0,1)},a.b/2)}},Ab=function(){var a=0,b=0,c;while(a-1&&typeof McVideo!=r;if(c){b=1;break}++a}return b},u=[],rb=function(b){var a=u[d];if(a)while(a--)u[a][g]=a!=b&&u[a].on==0?"thumb":"thumb thumb-on"},Cb=function(a){return a[q][h]("data-autovideo")=="true"||a[h]("data-autovideo")=="true"},Eb=function(){var f;if(a.l)f=T(a.l);if(f)for(var h=lb(f,"*"),e=0;e1){D(function(){p.e(1)},0);s=D(function(){p.y(p.n(1),0,1)},a.b+a.c)}if(a.h!=0&&!ib){f.onmouseover=tb;f.onmouseout=pb}},b:function(a){if(typeof McVideo!=r){a.onclick=function(){return this.aP?false:m.d(this)};McVideo.register(a,this)}},A:function(a){if(typeof a.aP===r){var b=a[h]("data-autovideo");if(b=="true")a.aP=true;else if(b=="1")a.aP=1;else a.aP=0}},d:function(c){L(s);s=null;var a=McVideo.play(c,v,B,this.Id);if(a||ib)b.b=2;return false},f:function(){S=A("navBulletsWrapper");for(var i=[],a=0;a"+(a+1)+"
");S[Q]=i.join("");for(var e=C(S),a=0;a1)if(!a.k)n[c][G]=p[c][G]="hidden";else{e=0;var b={c:a.c*.3,b:a.k==1?E.a.f:E.a.h,d:a.k==1?0:2},f=b;f.a=function(){n[c][G]=p[c][G]="hidden";m.m()};if(typeof t[x]!==r){l.r(p,"width",t[j],K[j],b);l.r(n,"width",J[j],H[j],b);l.r(p,"marginLeft",t[x],K[x],b);l.r(n,"marginLeft",J[x],H[x],b)}if(typeof t[i]!==r){l.r(p,i,t[i],K[i],b);l.r(n,i,J[i],H[i],f)}}e&&D(function(){m.m()},a.c*.3)},m:function(){W[Q]=O[Q]=V;if(V){n[c][G]=p[c][G]="visible";if(a.k){var d=a.c*a.k;if(d>1e3)d=1e3;var b={c:d,b:a.k==1?E.a.g:E.a.j,d:a.k==1?0:2};if(typeof t[x]!==r){l.r(p,"width",K[j],t[j],b);l.r(n,"width",H[j],J[j],b);l.r(p,"marginLeft",K[x],t[x],b);l.r(n,"marginLeft",H[x],J[x],b)}if(typeof t[i]!==r){l.r(p,i,K[i],t[i],b);l.r(n,i,H[i],J[i],b)}}else{M(p,1);M(n,a.j)}}},a:function(a){return a.replace(/(?:.*\.)?(\w)([\w\-])?[^.]*(\w)\.[^.]*$/,"$1$3$2")},o:function(){b.c=0;L(s);s=null;f[c][P]='url("'+b.e[h]("src")+'") no-repeat';var j=this,d=b.e[q];if(typeof d.aP===r)d=0;var i;if(d&&(i=d.aP||eb&&/video$/.test(d[g]))){this.d(d);if(i===1)d.aP=0}else if(!b.b&&a.i){var e=this.n(b.a+1);this.e(e);s=D(function(){j.y(e,0,1)},a.b)}a.Oa.call(this,b.a,b.e)},e:function(j){var a=e[j],k=0;if(a[o]=="A"&&a[g][F]("lazyImage")==-1||a[o]=="DIV"&&a[g]=="video"){a=C(a)[0];k=1}if(a[o]!="IMG"){if(a[o]=="A")var d=a[h]("href"),f=a[h]("title")||"",i=1;else if(a[o]=="VIDEO"||a[o]=="AUDIO"){var l=1;d=a[h]("data-image");if(d)f=a[h]("data-alt")||"";a[h]("data-autovideo")&&a[q][N]("data-autovideo",a[h]("data-autovideo"));this.A(a[q]);i=0}else{d=a[h]("data-src");if(d)f=a[h]("data-alt")||"";i=!k}if(f!=null){var b=document.createElement("img");b[N]("data-loaded","f");b[N]("alt",f);b.onload=Db;b.onerror=Fb;b[N]("src",d);b[c][y]="none";if(l){a[q].insertBefore(b,a);this.b(a[q],this);if(bb){a[q][c][P]="none";a[q][c].cursor="default"}}else a[q].replaceChild(b,a);if(i)e[j]=b}}},p:function(i){if(e[b.a][o]=="IMG")b.e=e[b.a];else b.e=lb(e[b.a],"img")[0];var j=b.e[h]("data-loaded");if(j=="f"){R[c][y]="block";D(function(){m.p(i)},200);return}b.c=1;this.g();L(hb);V=this.k();if(!I){I=A("sliderInner");f[w](I);if(sb()>=300)f[c].borderRadius=I[c].borderRadius="0px"}I[Q]="";var d=i?i:a.n();a.Ob.apply(this,[b.a,b.e,V,d]);rb(b.a);var g=d<14?this.w(d):this.x();if(d<9||d==15){if(d%2)g=g.reverse()}else if(d<14)g=g[0];if(d<9)this.q(g,d);else if(d<13)this.r(g,d);else if(d==13)this.s(g);else if(d<16)this.t(g,d);else this.u(g,d)},q:function(b,e){for(var f=0,g=e<7?{height:0,opacity:-.4}:{width:0,opacity:0},k={height:B,opacity:1},a=0,h=b[d];a10)d[c][b==11?"bottom":"top"]="0";if(b<11)var e=0,f=v;else{e=0;f=B}var g={b:E.a.j,c:a.c*1.6,a:function(){m.o()}};l.r(d,b<11?"width":"height",e,f,g)},s:function(b){b[c][Y]="0";b[c][j]=v+"px";b[c][z]=B+"px";var d={c:a.c*1.6,a:function(){m.o()}};l.r(b,i,0,1,d)},t:function(b){var s=a.g*a.m,p=0,n=0,i=0,g=0,f=[];f[0]=[];for(var e=0,o=b[d];e=0&&h8?v:Math.round(v/a.f),m=g>8?1:a.f,f=0;fb.a?"10":"9";this.p(f)},n:function(a){if(a>=b.d)a=0;else if(a<0)a=b.d-1;return a},To:function(d,c){if(c&&!a.i)return;this.y(this.n(b.a+d))}};var gb=function(){var a=T(k.sliderId);if(a&&C(a)[d]&&a.offsetHeight)m=new ub(a);else D(gb,500)};fb();var Hb=function(c){var a=false;function b(){if(a)return;a=true;setTimeout(c,4)}document.addEventListener&&document.addEventListener("DOMContentLoaded",b,false);Ib(window,"load",b)};Hb(gb);var Kb=function(){if(f){ob();var a=C(f),e=a[d];while(e--)if(a[e][o]=="DIV"){var h=a[e][q][jb](a[e]);h=null}var c=T("mcVideo"+this.Id);if(c){c.src="";var g=c[q][q][jb](c[q]);g=null}b={a:0,e:"",d:0,c:0,b:0};u=[];I=null}fb();gb()},vb=0,nb=function(e,c){if(++vb<20)if(!m||typeof tooltip==r)D(function(){nb(e,c)},300);else for(var b=C(S),a=0;ab, #slider a>b { + position:absolute; border:none; display:none; +} + +#slider div.sliderInner { + overflow:hidden; + -webkit-transform: rotate(0.000001deg);/* fixed the Chrome not crop border-radius bug*/ + position:absolute; top:0; left:0; +} + +#slider>a, #slider video, #slider audio {display:none;} + + +/* -- thumbnails -- */ +#thumbs +{ + margin-top:50px; + text-align:center; + font-size:0; +} +#thumbs .thumb +{ + display:inline-block; + *display:inline;zoom:1;/*IE6, IE7 hack*/ + margin:0 1px;/*this determins the distance between each thumbnail*/ + border:1px solid #333; + padding:4px; + background:black; +} + +#thumbs .thumb img{border:1px solid #555; cursor:pointer; width:70px; height:44px; opacity:0.5;filter:alpha(opacity=50);} +#thumbs .thumb-on img{border:1px solid #999; opacity:1;filter:alpha(opacity=100);} +#slider div {-webkit-transform: translate3d(0,0,0);transform: translate3d(0,0,0);} diff --git a/challenges/newchallenge4/inside/Slider/jsImgSlider/themes/5/js-image-slider.js b/challenges/newchallenge4/inside/Slider/jsImgSlider/themes/5/js-image-slider.js new file mode 100755 index 00000000..4f873ce9 --- /dev/null +++ b/challenges/newchallenge4/inside/Slider/jsImgSlider/themes/5/js-image-slider.js @@ -0,0 +1,23 @@ +var sliderOptions= +{ + sliderId: "slider", + startSlide: 0, + effect: "13,17,13,13,5", + effectRandom: true, + pauseTime: 2600, + transitionTime: 500, + slices: 12, + boxes: 9, + hoverPause: 1, + autoAdvance: true, + captionOpacity: 1, + captionEffect: "fade", + thumbnailsWrapperId: "thumbs", + m: false, + license: "mylicense" +}; + +var imageSlider=new mcImgSlider(sliderOptions); + +/* Menucool Javascript Image Slider v2014.9.16. Copyright www.menucool.com */ +function mcImgSlider(k){for(var T=function(a){return document.getElementById(a)},d="length",ab="getElementsByTagName",C=function(e){var a=e.childNodes,c=[];if(a)for(var b=0,f=a[d];bd?1:-1,f=Math.ceil(60*c.c/1e3),a,e=1;e<=f;e++){a=d+c.b(e/f,c.d)*j;if(h!=i)a=Math.round(a);b.push(a)}b.e=0;return b},n:function(){this.b==null&&this.p()},p:function(){this.q();var a=this;this.b=U?U(function(){a.p()}):window.setInterval(function(){a.q()},15)},q:function(){var a=this.d[d];if(a){for(var c=0;c=a.a[d])a.a.p=0}if(b<1||b>17)b=15;return b}},zb=["$1$2$3","$1$2$3","$1$24","$1$23","$1$22"],tb=function(){if(b.b!=2){b.b=1;L(s);s=null}},pb=function(){if(b.b!=2){b.b=0;if(s==null&&!b.c&&a.i)s=D(function(){m.y(m.n(b.a+1),0,1)},a.b/2)}},Ab=function(){var a=0,b=0,c;while(a-1&&typeof McVideo!=r;if(c){b=1;break}++a}return b},u=[],rb=function(b){var a=u[d];if(a)while(a--)u[a][g]=a!=b&&u[a].on==0?"thumb":"thumb thumb-on"},Cb=function(a){return a[q][h]("data-autovideo")=="true"||a[h]("data-autovideo")=="true"},Eb=function(){var f;if(a.l)f=T(a.l);if(f)for(var h=lb(f,"*"),e=0;e1){D(function(){p.e(1)},0);s=D(function(){p.y(p.n(1),0,1)},a.b+a.c)}if(a.h!=0&&!ib){f.onmouseover=tb;f.onmouseout=pb}},b:function(a){if(typeof McVideo!=r){a.onclick=function(){return this.aP?false:m.d(this)};McVideo.register(a,this)}},A:function(a){if(typeof a.aP===r){var b=a[h]("data-autovideo");if(b=="true")a.aP=true;else if(b=="1")a.aP=1;else a.aP=0}},d:function(c){L(s);s=null;var a=McVideo.play(c,v,B,this.Id);if(a||ib)b.b=2;return false},f:function(){S=A("navBulletsWrapper");for(var i=[],a=0;a"+(a+1)+"
");S[Q]=i.join("");for(var e=C(S),a=0;a1)if(!a.k)n[c][G]=p[c][G]="hidden";else{e=0;var b={c:a.c*.3,b:a.k==1?E.a.f:E.a.h,d:a.k==1?0:2},f=b;f.a=function(){n[c][G]=p[c][G]="hidden";m.m()};if(typeof t[x]!==r){l.r(p,"width",t[j],K[j],b);l.r(n,"width",J[j],H[j],b);l.r(p,"marginLeft",t[x],K[x],b);l.r(n,"marginLeft",J[x],H[x],b)}if(typeof t[i]!==r){l.r(p,i,t[i],K[i],b);l.r(n,i,J[i],H[i],f)}}e&&D(function(){m.m()},a.c*.3)},m:function(){W[Q]=O[Q]=V;if(V){n[c][G]=p[c][G]="visible";if(a.k){var d=a.c*a.k;if(d>1e3)d=1e3;var b={c:d,b:a.k==1?E.a.g:E.a.j,d:a.k==1?0:2};if(typeof t[x]!==r){l.r(p,"width",K[j],t[j],b);l.r(n,"width",H[j],J[j],b);l.r(p,"marginLeft",K[x],t[x],b);l.r(n,"marginLeft",H[x],J[x],b)}if(typeof t[i]!==r){l.r(p,i,K[i],t[i],b);l.r(n,i,H[i],J[i],b)}}else{M(p,1);M(n,a.j)}}},a:function(a){return a.replace(/(?:.*\.)?(\w)([\w\-])?[^.]*(\w)\.[^.]*$/,"$1$3$2")},o:function(){b.c=0;L(s);s=null;f[c][P]='url("'+b.e[h]("src")+'") no-repeat';var j=this,d=b.e[q];if(typeof d.aP===r)d=0;var i;if(d&&(i=d.aP||eb&&/video$/.test(d[g]))){this.d(d);if(i===1)d.aP=0}else if(!b.b&&a.i){var e=this.n(b.a+1);this.e(e);s=D(function(){j.y(e,0,1)},a.b)}a.Oa.call(this,b.a,b.e)},e:function(j){var a=e[j],k=0;if(a[o]=="A"&&a[g][F]("lazyImage")==-1||a[o]=="DIV"&&a[g]=="video"){a=C(a)[0];k=1}if(a[o]!="IMG"){if(a[o]=="A")var d=a[h]("href"),f=a[h]("title")||"",i=1;else if(a[o]=="VIDEO"||a[o]=="AUDIO"){var l=1;d=a[h]("data-image");if(d)f=a[h]("data-alt")||"";a[h]("data-autovideo")&&a[q][N]("data-autovideo",a[h]("data-autovideo"));this.A(a[q]);i=0}else{d=a[h]("data-src");if(d)f=a[h]("data-alt")||"";i=!k}if(f!=null){var b=document.createElement("img");b[N]("data-loaded","f");b[N]("alt",f);b.onload=Db;b.onerror=Fb;b[N]("src",d);b[c][y]="none";if(l){a[q].insertBefore(b,a);this.b(a[q],this);if(bb){a[q][c][P]="none";a[q][c].cursor="default"}}else a[q].replaceChild(b,a);if(i)e[j]=b}}},p:function(i){if(e[b.a][o]=="IMG")b.e=e[b.a];else b.e=lb(e[b.a],"img")[0];var j=b.e[h]("data-loaded");if(j=="f"){R[c][y]="block";D(function(){m.p(i)},200);return}b.c=1;this.g();L(hb);V=this.k();if(!I){I=A("sliderInner");f[w](I);if(sb()>=300)f[c].borderRadius=I[c].borderRadius="0px"}I[Q]="";var d=i?i:a.n();a.Ob.apply(this,[b.a,b.e,V,d]);rb(b.a);var g=d<14?this.w(d):this.x();if(d<9||d==15){if(d%2)g=g.reverse()}else if(d<14)g=g[0];if(d<9)this.q(g,d);else if(d<13)this.r(g,d);else if(d==13)this.s(g);else if(d<16)this.t(g,d);else this.u(g,d)},q:function(b,e){for(var f=0,g=e<7?{height:0,opacity:-.4}:{width:0,opacity:0},k={height:B,opacity:1},a=0,h=b[d];a10)d[c][b==11?"bottom":"top"]="0";if(b<11)var e=0,f=v;else{e=0;f=B}var g={b:E.a.j,c:a.c*1.6,a:function(){m.o()}};l.r(d,b<11?"width":"height",e,f,g)},s:function(b){b[c][Y]="0";b[c][j]=v+"px";b[c][z]=B+"px";var d={c:a.c*1.6,a:function(){m.o()}};l.r(b,i,0,1,d)},t:function(b){var s=a.g*a.m,p=0,n=0,i=0,g=0,f=[];f[0]=[];for(var e=0,o=b[d];e=0&&h8?v:Math.round(v/a.f),m=g>8?1:a.f,f=0;fb.a?"10":"9";this.p(f)},n:function(a){if(a>=b.d)a=0;else if(a<0)a=b.d-1;return a},To:function(d,c){if(c&&!a.i)return;this.y(this.n(b.a+d))}};var gb=function(){var a=T(k.sliderId);if(a&&C(a)[d]&&a.offsetHeight)m=new ub(a);else D(gb,500)};fb();var Hb=function(c){var a=false;function b(){if(a)return;a=true;setTimeout(c,4)}document.addEventListener&&document.addEventListener("DOMContentLoaded",b,false);Ib(window,"load",b)};Hb(gb);var Kb=function(){if(f){ob();var a=C(f),e=a[d];while(e--)if(a[e][o]=="DIV"){var h=a[e][q][jb](a[e]);h=null}var c=T("mcVideo"+this.Id);if(c){c.src="";var g=c[q][q][jb](c[q]);g=null}b={a:0,e:"",d:0,c:0,b:0};u=[];I=null}fb();gb()},vb=0,nb=function(e,c){if(++vb<20)if(!m||typeof tooltip==r)D(function(){nb(e,c)},300);else for(var b=C(S),a=0;ab, #slider a>b { + position:absolute; border:none; display:none; +} + +#slider div.sliderInner { + overflow:hidden; + -webkit-transform: rotate(0.000001deg);/* fixed the Chrome not crop border-radius bug*/ + position:absolute; top:0; left:0; +} + +#slider>a, #slider video, #slider audio {display:none;} +#slider div {-webkit-transform: translate3d(0,0,0);transform: translate3d(0,0,0);} \ No newline at end of file diff --git a/challenges/newchallenge4/inside/Slider/jsImgSlider/themes/6/js-image-slider.js b/challenges/newchallenge4/inside/Slider/jsImgSlider/themes/6/js-image-slider.js new file mode 100755 index 00000000..9b92fc6f --- /dev/null +++ b/challenges/newchallenge4/inside/Slider/jsImgSlider/themes/6/js-image-slider.js @@ -0,0 +1,23 @@ +var sliderOptions = +{ + sliderId: "slider", + startSlide: 0, + effect: "series1", + effectRandom: false, + pauseTime: 2500, + transitionTime: 500, + slices: 14, + boxes: 8, + hoverPause: 1, + autoAdvance: true, + captionOpacity: 0.3, + captionEffect: "fade", + thumbnailsWrapperId: "thumbs", + m: false, + license: "mylicense" +}; + +var imageSlider = new mcImgSlider(sliderOptions); + +/* Menucool Javascript Image Slider v2014.9.16. Copyright www.menucool.com */ +function mcImgSlider(k){for(var T=function(a){return document.getElementById(a)},d="length",ab="getElementsByTagName",C=function(e){var a=e.childNodes,c=[];if(a)for(var b=0,f=a[d];bd?1:-1,f=Math.ceil(60*c.c/1e3),a,e=1;e<=f;e++){a=d+c.b(e/f,c.d)*j;if(h!=i)a=Math.round(a);b.push(a)}b.e=0;return b},n:function(){this.b==null&&this.p()},p:function(){this.q();var a=this;this.b=U?U(function(){a.p()}):window.setInterval(function(){a.q()},15)},q:function(){var a=this.d[d];if(a){for(var c=0;c=a.a[d])a.a.p=0}if(b<1||b>17)b=15;return b}},zb=["$1$2$3","$1$2$3","$1$24","$1$23","$1$22"],tb=function(){if(b.b!=2){b.b=1;L(s);s=null}},pb=function(){if(b.b!=2){b.b=0;if(s==null&&!b.c&&a.i)s=D(function(){m.y(m.n(b.a+1),0,1)},a.b/2)}},Ab=function(){var a=0,b=0,c;while(a-1&&typeof McVideo!=r;if(c){b=1;break}++a}return b},u=[],rb=function(b){var a=u[d];if(a)while(a--)u[a][g]=a!=b&&u[a].on==0?"thumb":"thumb thumb-on"},Cb=function(a){return a[q][h]("data-autovideo")=="true"||a[h]("data-autovideo")=="true"},Eb=function(){var f;if(a.l)f=T(a.l);if(f)for(var h=lb(f,"*"),e=0;e1){D(function(){p.e(1)},0);s=D(function(){p.y(p.n(1),0,1)},a.b+a.c)}if(a.h!=0&&!ib){f.onmouseover=tb;f.onmouseout=pb}},b:function(a){if(typeof McVideo!=r){a.onclick=function(){return this.aP?false:m.d(this)};McVideo.register(a,this)}},A:function(a){if(typeof a.aP===r){var b=a[h]("data-autovideo");if(b=="true")a.aP=true;else if(b=="1")a.aP=1;else a.aP=0}},d:function(c){L(s);s=null;var a=McVideo.play(c,v,B,this.Id);if(a||ib)b.b=2;return false},f:function(){S=A("navBulletsWrapper");for(var i=[],a=0;a"+(a+1)+"
");S[Q]=i.join("");for(var e=C(S),a=0;a1)if(!a.k)n[c][G]=p[c][G]="hidden";else{e=0;var b={c:a.c*.3,b:a.k==1?E.a.f:E.a.h,d:a.k==1?0:2},f=b;f.a=function(){n[c][G]=p[c][G]="hidden";m.m()};if(typeof t[x]!==r){l.r(p,"width",t[j],K[j],b);l.r(n,"width",J[j],H[j],b);l.r(p,"marginLeft",t[x],K[x],b);l.r(n,"marginLeft",J[x],H[x],b)}if(typeof t[i]!==r){l.r(p,i,t[i],K[i],b);l.r(n,i,J[i],H[i],f)}}e&&D(function(){m.m()},a.c*.3)},m:function(){W[Q]=O[Q]=V;if(V){n[c][G]=p[c][G]="visible";if(a.k){var d=a.c*a.k;if(d>1e3)d=1e3;var b={c:d,b:a.k==1?E.a.g:E.a.j,d:a.k==1?0:2};if(typeof t[x]!==r){l.r(p,"width",K[j],t[j],b);l.r(n,"width",H[j],J[j],b);l.r(p,"marginLeft",K[x],t[x],b);l.r(n,"marginLeft",H[x],J[x],b)}if(typeof t[i]!==r){l.r(p,i,K[i],t[i],b);l.r(n,i,H[i],J[i],b)}}else{M(p,1);M(n,a.j)}}},a:function(a){return a.replace(/(?:.*\.)?(\w)([\w\-])?[^.]*(\w)\.[^.]*$/,"$1$3$2")},o:function(){b.c=0;L(s);s=null;f[c][P]='url("'+b.e[h]("src")+'") no-repeat';var j=this,d=b.e[q];if(typeof d.aP===r)d=0;var i;if(d&&(i=d.aP||eb&&/video$/.test(d[g]))){this.d(d);if(i===1)d.aP=0}else if(!b.b&&a.i){var e=this.n(b.a+1);this.e(e);s=D(function(){j.y(e,0,1)},a.b)}a.Oa.call(this,b.a,b.e)},e:function(j){var a=e[j],k=0;if(a[o]=="A"&&a[g][F]("lazyImage")==-1||a[o]=="DIV"&&a[g]=="video"){a=C(a)[0];k=1}if(a[o]!="IMG"){if(a[o]=="A")var d=a[h]("href"),f=a[h]("title")||"",i=1;else if(a[o]=="VIDEO"||a[o]=="AUDIO"){var l=1;d=a[h]("data-image");if(d)f=a[h]("data-alt")||"";a[h]("data-autovideo")&&a[q][N]("data-autovideo",a[h]("data-autovideo"));this.A(a[q]);i=0}else{d=a[h]("data-src");if(d)f=a[h]("data-alt")||"";i=!k}if(f!=null){var b=document.createElement("img");b[N]("data-loaded","f");b[N]("alt",f);b.onload=Db;b.onerror=Fb;b[N]("src",d);b[c][y]="none";if(l){a[q].insertBefore(b,a);this.b(a[q],this);if(bb){a[q][c][P]="none";a[q][c].cursor="default"}}else a[q].replaceChild(b,a);if(i)e[j]=b}}},p:function(i){if(e[b.a][o]=="IMG")b.e=e[b.a];else b.e=lb(e[b.a],"img")[0];var j=b.e[h]("data-loaded");if(j=="f"){R[c][y]="block";D(function(){m.p(i)},200);return}b.c=1;this.g();L(hb);V=this.k();if(!I){I=A("sliderInner");f[w](I);if(sb()>=300)f[c].borderRadius=I[c].borderRadius="0px"}I[Q]="";var d=i?i:a.n();a.Ob.apply(this,[b.a,b.e,V,d]);rb(b.a);var g=d<14?this.w(d):this.x();if(d<9||d==15){if(d%2)g=g.reverse()}else if(d<14)g=g[0];if(d<9)this.q(g,d);else if(d<13)this.r(g,d);else if(d==13)this.s(g);else if(d<16)this.t(g,d);else this.u(g,d)},q:function(b,e){for(var f=0,g=e<7?{height:0,opacity:-.4}:{width:0,opacity:0},k={height:B,opacity:1},a=0,h=b[d];a10)d[c][b==11?"bottom":"top"]="0";if(b<11)var e=0,f=v;else{e=0;f=B}var g={b:E.a.j,c:a.c*1.6,a:function(){m.o()}};l.r(d,b<11?"width":"height",e,f,g)},s:function(b){b[c][Y]="0";b[c][j]=v+"px";b[c][z]=B+"px";var d={c:a.c*1.6,a:function(){m.o()}};l.r(b,i,0,1,d)},t:function(b){var s=a.g*a.m,p=0,n=0,i=0,g=0,f=[];f[0]=[];for(var e=0,o=b[d];e=0&&h8?v:Math.round(v/a.f),m=g>8?1:a.f,f=0;fb.a?"10":"9";this.p(f)},n:function(a){if(a>=b.d)a=0;else if(a<0)a=b.d-1;return a},To:function(d,c){if(c&&!a.i)return;this.y(this.n(b.a+d))}};var gb=function(){var a=T(k.sliderId);if(a&&C(a)[d]&&a.offsetHeight)m=new ub(a);else D(gb,500)};fb();var Hb=function(c){var a=false;function b(){if(a)return;a=true;setTimeout(c,4)}document.addEventListener&&document.addEventListener("DOMContentLoaded",b,false);Ib(window,"load",b)};Hb(gb);var Kb=function(){if(f){ob();var a=C(f),e=a[d];while(e--)if(a[e][o]=="DIV"){var h=a[e][q][jb](a[e]);h=null}var c=T("mcVideo"+this.Id);if(c){c.src="";var g=c[q][q][jb](c[q]);g=null}b={a:0,e:"",d:0,c:0,b:0};u=[];I=null}fb();gb()},vb=0,nb=function(e,c){if(++vb<20)if(!m||typeof tooltip==r)D(function(){nb(e,c)},300);else for(var b=C(S),a=0;a';var a=document.createElement("div");a.innerHTML=b;var i=a.childNodes[0];d.a(i);f.appendChild(a);return 1}return{play:function(b,d,c,a){return e(b,d,c,a)}}};McVideo.plugin(VimeoPlayer);var YoutubePlayer=function(b,a){if(b.nodeName!="A"||b.getAttribute("href").toLowerCase().indexOf("youtube.com")==-1)return null;var c=function(){var e=document.createElement("script");e.src="http://www.youtube.com/player_api";var c=document.getElementsByTagName("script")[0];c.parentNode.insertBefore(e,c);var h,i,d=0,b=function(a){if(typeof YT!=="undefined"&&typeof YT.Player!=="undefined")h=new YT.Player(a,{events:{onReady:g,onStateChange:f}});else if(d<30){setTimeout(function(){b(a)},50);d++}};function f(b){if(b.data==0){var d=document.getElementById("mcVideo"+a.Id),c=d.parentNode.parentNode.getAttribute("data-autonext");if(c=="replay")b.target.d();else c!="false"&&a.To(1,1);mcVc(a.Id,1)}if(b.data==1)mcVc(a.Id,0);else b.data==2&&mcVc(a.Id,2)}function g(){}return{a:function(a){b(a)}}},d=new c;function e(e,j,i,c){var f="&loop=0&start=0&wmode=opaque&autohide=1&showinfo=0&iv_load_policy=3&modestbranding=1&showsearch=0",b=e.getAttribute("href"),h=b.toLowerCase().indexOf("v="),g='',a=document.createElement("div");a.innerHTML=g;var k=a.childNodes[0];e.appendChild(a);d.a("mcVideo"+c);return 1}return{play:function(b,d,c,a){return e(b,d,c,a)}}};McVideo.plugin(YoutubePlayer);var McVAHelper={b:function(c){var a=c.parentNode.getElementsByTagName("div"),b=a.length;while(b--)if(a[b].className=="sliderInner"){a[b].innerHTML="";break}},c:function(){var c=50,b=navigator.userAgent,a;if((a=b.indexOf("MSIE "))!=-1)c=parseInt(b.substring(a+5,b.indexOf(".",a)));return c<9},a:function(a,c,b){if(a.addEventListener)a.addEventListener(c,b,false);else a.attachEvent&&a.attachEvent("on"+c,b)},d:function(c,h,g,a,e){if(a.style.display=="none"){if(this.c())return 0;var b=a.getElementsByTagName("source"),d=b.length,f=1;while(d--)if(!b[d].getAttribute("src")){f=0;b[d].setAttribute("src",b[d].getAttribute("data-src"))}a.style.display="block";if(e=="image")a.style.background=c.parentNode.style.background;else c.parentNode.style.background=e;if(!(a.getAttribute("width")&&a.offsetWidthb, #slider a>b { + position:absolute; border:none; display:none; +} + +#slider div.sliderInner { + overflow:hidden; + -webkit-transform: rotate(0.000001deg);/* fixed the Chrome not crop border-radius bug*/ + position:absolute; top:0; left:0; +} + +#slider>a, #slider video, #slider audio {display:none;} +#slider div {-webkit-transform: translate3d(0,0,0);transform: translate3d(0,0,0);} \ No newline at end of file diff --git a/challenges/newchallenge4/inside/Slider/jsImgSlider/themes/7/js-image-slider.js b/challenges/newchallenge4/inside/Slider/jsImgSlider/themes/7/js-image-slider.js new file mode 100755 index 00000000..702072b7 --- /dev/null +++ b/challenges/newchallenge4/inside/Slider/jsImgSlider/themes/7/js-image-slider.js @@ -0,0 +1,23 @@ +var sliderOptions= +{ + sliderId: "slider", + startSlide: 0, + effect: "13", + effectRandom: false, + pauseTime: 1800, + transitionTime: 1100, + slices: 12, + boxes: 8, + hoverPause: 1, + autoAdvance: true, + captionOpacity: 0.3, + captionEffect: "fade", + thumbnailsWrapperId: "thumbs", + m: false, + license: "mylicense" +}; + +var imageSlider=new mcImgSlider(sliderOptions); + +/* Menucool Javascript Image Slider v2014.9.16. Copyright www.menucool.com */ +function mcImgSlider(k){for(var T=function(a){return document.getElementById(a)},d="length",ab="getElementsByTagName",C=function(e){var a=e.childNodes,c=[];if(a)for(var b=0,f=a[d];bd?1:-1,f=Math.ceil(60*c.c/1e3),a,e=1;e<=f;e++){a=d+c.b(e/f,c.d)*j;if(h!=i)a=Math.round(a);b.push(a)}b.e=0;return b},n:function(){this.b==null&&this.p()},p:function(){this.q();var a=this;this.b=U?U(function(){a.p()}):window.setInterval(function(){a.q()},15)},q:function(){var a=this.d[d];if(a){for(var c=0;c=a.a[d])a.a.p=0}if(b<1||b>17)b=15;return b}},zb=["$1$2$3","$1$2$3","$1$24","$1$23","$1$22"],tb=function(){if(b.b!=2){b.b=1;L(s);s=null}},pb=function(){if(b.b!=2){b.b=0;if(s==null&&!b.c&&a.i)s=D(function(){m.y(m.n(b.a+1),0,1)},a.b/2)}},Ab=function(){var a=0,b=0,c;while(a-1&&typeof McVideo!=r;if(c){b=1;break}++a}return b},u=[],rb=function(b){var a=u[d];if(a)while(a--)u[a][g]=a!=b&&u[a].on==0?"thumb":"thumb thumb-on"},Cb=function(a){return a[q][h]("data-autovideo")=="true"||a[h]("data-autovideo")=="true"},Eb=function(){var f;if(a.l)f=T(a.l);if(f)for(var h=lb(f,"*"),e=0;e1){D(function(){p.e(1)},0);s=D(function(){p.y(p.n(1),0,1)},a.b+a.c)}if(a.h!=0&&!ib){f.onmouseover=tb;f.onmouseout=pb}},b:function(a){if(typeof McVideo!=r){a.onclick=function(){return this.aP?false:m.d(this)};McVideo.register(a,this)}},A:function(a){if(typeof a.aP===r){var b=a[h]("data-autovideo");if(b=="true")a.aP=true;else if(b=="1")a.aP=1;else a.aP=0}},d:function(c){L(s);s=null;var a=McVideo.play(c,v,B,this.Id);if(a||ib)b.b=2;return false},f:function(){S=A("navBulletsWrapper");for(var i=[],a=0;a"+(a+1)+"
");S[Q]=i.join("");for(var e=C(S),a=0;a1)if(!a.k)n[c][G]=p[c][G]="hidden";else{e=0;var b={c:a.c*.3,b:a.k==1?E.a.f:E.a.h,d:a.k==1?0:2},f=b;f.a=function(){n[c][G]=p[c][G]="hidden";m.m()};if(typeof t[x]!==r){l.r(p,"width",t[j],K[j],b);l.r(n,"width",J[j],H[j],b);l.r(p,"marginLeft",t[x],K[x],b);l.r(n,"marginLeft",J[x],H[x],b)}if(typeof t[i]!==r){l.r(p,i,t[i],K[i],b);l.r(n,i,J[i],H[i],f)}}e&&D(function(){m.m()},a.c*.3)},m:function(){W[Q]=O[Q]=V;if(V){n[c][G]=p[c][G]="visible";if(a.k){var d=a.c*a.k;if(d>1e3)d=1e3;var b={c:d,b:a.k==1?E.a.g:E.a.j,d:a.k==1?0:2};if(typeof t[x]!==r){l.r(p,"width",K[j],t[j],b);l.r(n,"width",H[j],J[j],b);l.r(p,"marginLeft",K[x],t[x],b);l.r(n,"marginLeft",H[x],J[x],b)}if(typeof t[i]!==r){l.r(p,i,K[i],t[i],b);l.r(n,i,H[i],J[i],b)}}else{M(p,1);M(n,a.j)}}},a:function(a){return a.replace(/(?:.*\.)?(\w)([\w\-])?[^.]*(\w)\.[^.]*$/,"$1$3$2")},o:function(){b.c=0;L(s);s=null;f[c][P]='url("'+b.e[h]("src")+'") no-repeat';var j=this,d=b.e[q];if(typeof d.aP===r)d=0;var i;if(d&&(i=d.aP||eb&&/video$/.test(d[g]))){this.d(d);if(i===1)d.aP=0}else if(!b.b&&a.i){var e=this.n(b.a+1);this.e(e);s=D(function(){j.y(e,0,1)},a.b)}a.Oa.call(this,b.a,b.e)},e:function(j){var a=e[j],k=0;if(a[o]=="A"&&a[g][F]("lazyImage")==-1||a[o]=="DIV"&&a[g]=="video"){a=C(a)[0];k=1}if(a[o]!="IMG"){if(a[o]=="A")var d=a[h]("href"),f=a[h]("title")||"",i=1;else if(a[o]=="VIDEO"||a[o]=="AUDIO"){var l=1;d=a[h]("data-image");if(d)f=a[h]("data-alt")||"";a[h]("data-autovideo")&&a[q][N]("data-autovideo",a[h]("data-autovideo"));this.A(a[q]);i=0}else{d=a[h]("data-src");if(d)f=a[h]("data-alt")||"";i=!k}if(f!=null){var b=document.createElement("img");b[N]("data-loaded","f");b[N]("alt",f);b.onload=Db;b.onerror=Fb;b[N]("src",d);b[c][y]="none";if(l){a[q].insertBefore(b,a);this.b(a[q],this);if(bb){a[q][c][P]="none";a[q][c].cursor="default"}}else a[q].replaceChild(b,a);if(i)e[j]=b}}},p:function(i){if(e[b.a][o]=="IMG")b.e=e[b.a];else b.e=lb(e[b.a],"img")[0];var j=b.e[h]("data-loaded");if(j=="f"){R[c][y]="block";D(function(){m.p(i)},200);return}b.c=1;this.g();L(hb);V=this.k();if(!I){I=A("sliderInner");f[w](I);if(sb()>=300)f[c].borderRadius=I[c].borderRadius="0px"}I[Q]="";var d=i?i:a.n();a.Ob.apply(this,[b.a,b.e,V,d]);rb(b.a);var g=d<14?this.w(d):this.x();if(d<9||d==15){if(d%2)g=g.reverse()}else if(d<14)g=g[0];if(d<9)this.q(g,d);else if(d<13)this.r(g,d);else if(d==13)this.s(g);else if(d<16)this.t(g,d);else this.u(g,d)},q:function(b,e){for(var f=0,g=e<7?{height:0,opacity:-.4}:{width:0,opacity:0},k={height:B,opacity:1},a=0,h=b[d];a10)d[c][b==11?"bottom":"top"]="0";if(b<11)var e=0,f=v;else{e=0;f=B}var g={b:E.a.j,c:a.c*1.6,a:function(){m.o()}};l.r(d,b<11?"width":"height",e,f,g)},s:function(b){b[c][Y]="0";b[c][j]=v+"px";b[c][z]=B+"px";var d={c:a.c*1.6,a:function(){m.o()}};l.r(b,i,0,1,d)},t:function(b){var s=a.g*a.m,p=0,n=0,i=0,g=0,f=[];f[0]=[];for(var e=0,o=b[d];e=0&&h8?v:Math.round(v/a.f),m=g>8?1:a.f,f=0;fb.a?"10":"9";this.p(f)},n:function(a){if(a>=b.d)a=0;else if(a<0)a=b.d-1;return a},To:function(d,c){if(c&&!a.i)return;this.y(this.n(b.a+d))}};var gb=function(){var a=T(k.sliderId);if(a&&C(a)[d]&&a.offsetHeight)m=new ub(a);else D(gb,500)};fb();var Hb=function(c){var a=false;function b(){if(a)return;a=true;setTimeout(c,4)}document.addEventListener&&document.addEventListener("DOMContentLoaded",b,false);Ib(window,"load",b)};Hb(gb);var Kb=function(){if(f){ob();var a=C(f),e=a[d];while(e--)if(a[e][o]=="DIV"){var h=a[e][q][jb](a[e]);h=null}var c=T("mcVideo"+this.Id);if(c){c.src="";var g=c[q][q][jb](c[q]);g=null}b={a:0,e:"",d:0,c:0,b:0};u=[];I=null}fb();gb()},vb=0,nb=function(e,c){if(++vb<20)if(!m||typeof tooltip==r)D(function(){nb(e,c)},300);else for(var b=C(S),a=0;ab, #slider a>b { + position:absolute; border:none; display:none; +} + +#slider div.sliderInner { + overflow:hidden; + -webkit-transform: rotate(0.000001deg);/* fixed the Chrome not crop border-radius bug*/ + position:absolute; top:0; left:0; +} + +#slider>a, #slider video, #slider audio {display:none;} +#slider div {-webkit-transform: translate3d(0,0,0);transform: translate3d(0,0,0);} \ No newline at end of file diff --git a/challenges/newchallenge4/inside/Slider/jsImgSlider/themes/8/js-image-slider.js b/challenges/newchallenge4/inside/Slider/jsImgSlider/themes/8/js-image-slider.js new file mode 100755 index 00000000..413ab152 --- /dev/null +++ b/challenges/newchallenge4/inside/Slider/jsImgSlider/themes/8/js-image-slider.js @@ -0,0 +1,23 @@ +var sliderOptions= +{ + sliderId: "slider", + startSlide: 0, + effect: "13", + effectRandom: false, + pauseTime: 1800, + transitionTime: 1500, + slices: 12, + boxes: 8, + hoverPause: 1, + autoAdvance: true, + captionOpacity: 0.3, + captionEffect: "slide", + thumbnailsWrapperId: "thumbs", + m: false, + license: "mylicense" +}; + +var imageSlider=new mcImgSlider(sliderOptions); + +/* Menucool Javascript Image Slider v2014.9.16. Copyright www.menucool.com */ +function mcImgSlider(k){for(var T=function(a){return document.getElementById(a)},d="length",ab="getElementsByTagName",C=function(e){var a=e.childNodes,c=[];if(a)for(var b=0,f=a[d];bd?1:-1,f=Math.ceil(60*c.c/1e3),a,e=1;e<=f;e++){a=d+c.b(e/f,c.d)*j;if(h!=i)a=Math.round(a);b.push(a)}b.e=0;return b},n:function(){this.b==null&&this.p()},p:function(){this.q();var a=this;this.b=U?U(function(){a.p()}):window.setInterval(function(){a.q()},15)},q:function(){var a=this.d[d];if(a){for(var c=0;c=a.a[d])a.a.p=0}if(b<1||b>17)b=15;return b}},zb=["$1$2$3","$1$2$3","$1$24","$1$23","$1$22"],tb=function(){if(b.b!=2){b.b=1;L(s);s=null}},pb=function(){if(b.b!=2){b.b=0;if(s==null&&!b.c&&a.i)s=D(function(){m.y(m.n(b.a+1),0,1)},a.b/2)}},Ab=function(){var a=0,b=0,c;while(a-1&&typeof McVideo!=r;if(c){b=1;break}++a}return b},u=[],rb=function(b){var a=u[d];if(a)while(a--)u[a][g]=a!=b&&u[a].on==0?"thumb":"thumb thumb-on"},Cb=function(a){return a[q][h]("data-autovideo")=="true"||a[h]("data-autovideo")=="true"},Eb=function(){var f;if(a.l)f=T(a.l);if(f)for(var h=lb(f,"*"),e=0;e1){D(function(){p.e(1)},0);s=D(function(){p.y(p.n(1),0,1)},a.b+a.c)}if(a.h!=0&&!ib){f.onmouseover=tb;f.onmouseout=pb}},b:function(a){if(typeof McVideo!=r){a.onclick=function(){return this.aP?false:m.d(this)};McVideo.register(a,this)}},A:function(a){if(typeof a.aP===r){var b=a[h]("data-autovideo");if(b=="true")a.aP=true;else if(b=="1")a.aP=1;else a.aP=0}},d:function(c){L(s);s=null;var a=McVideo.play(c,v,B,this.Id);if(a||ib)b.b=2;return false},f:function(){S=A("navBulletsWrapper");for(var i=[],a=0;a"+(a+1)+"