├── HIW ├── __init__.py ├── __pycache__ │ ├── urls.cpython-34.pyc │ ├── urls.cpython-35.pyc │ ├── wsgi.cpython-34.pyc │ ├── wsgi.cpython-35.pyc │ ├── __init__.cpython-34.pyc │ ├── __init__.cpython-35.pyc │ ├── settings.cpython-34.pyc │ └── settings.cpython-35.pyc ├── wsgi.py ├── urls.py └── settings.py ├── hive ├── __init__.py ├── migrations │ ├── __init__.py │ ├── __pycache__ │ │ ├── __init__.cpython-34.pyc │ │ ├── __init__.cpython-35.pyc │ │ ├── 0001_initial.cpython-34.pyc │ │ ├── 0001_initial.cpython-35.pyc │ │ ├── 0002_auto_20160920_1638.cpython-34.pyc │ │ ├── 0002_auto_20160920_1638.cpython-35.pyc │ │ ├── 0002_auto_20160920_1645.cpython-34.pyc │ │ └── 0002_auto_20160920_1645.cpython-35.pyc │ ├── 0002_auto_20160920_1638.py │ ├── 0001_initial.py │ └── 0002_auto_20160920_1645.py ├── tests.py ├── apps.py ├── __pycache__ │ ├── urls.cpython-34.pyc │ ├── urls.cpython-35.pyc │ ├── admin.cpython-34.pyc │ ├── admin.cpython-35.pyc │ ├── models.cpython-34.pyc │ ├── models.cpython-35.pyc │ ├── views.cpython-34.pyc │ ├── views.cpython-35.pyc │ ├── __init__.cpython-34.pyc │ └── __init__.cpython-35.pyc ├── admin.py ├── models.py ├── phive.py ├── urls.py └── views.py ├── index ├── __init__.py ├── migrations │ ├── __init__.py │ └── __pycache__ │ │ ├── __init__.cpython-34.pyc │ │ └── __init__.cpython-35.pyc ├── models.py ├── tests.py ├── admin.py ├── apps.py ├── __pycache__ │ ├── admin.cpython-34.pyc │ ├── admin.cpython-35.pyc │ ├── models.cpython-34.pyc │ ├── models.cpython-35.pyc │ ├── urls.cpython-34.pyc │ ├── urls.cpython-35.pyc │ ├── views.cpython-34.pyc │ ├── views.cpython-35.pyc │ ├── __init__.cpython-34.pyc │ └── __init__.cpython-35.pyc ├── views.py └── urls.py ├── login ├── __init__.py ├── migrations │ ├── __init__.py │ └── __pycache__ │ │ ├── __init__.cpython-34.pyc │ │ └── __init__.cpython-35.pyc ├── models.py ├── tests.py ├── admin.py ├── apps.py ├── __pycache__ │ ├── admin.cpython-34.pyc │ ├── admin.cpython-35.pyc │ ├── models.cpython-34.pyc │ ├── models.cpython-35.pyc │ ├── urls.cpython-34.pyc │ ├── urls.cpython-35.pyc │ ├── views.cpython-34.pyc │ ├── views.cpython-35.pyc │ ├── __init__.cpython-34.pyc │ └── __init__.cpython-35.pyc ├── views.py └── urls.py ├── save ├── __init__.py ├── migrations │ ├── __init__.py │ └── __pycache__ │ │ ├── __init__.cpython-34.pyc │ │ └── __init__.cpython-35.pyc ├── models.py ├── admin.py ├── tests.py ├── apps.py ├── __pycache__ │ ├── urls.cpython-34.pyc │ ├── urls.cpython-35.pyc │ ├── admin.cpython-34.pyc │ ├── admin.cpython-35.pyc │ ├── models.cpython-34.pyc │ ├── models.cpython-35.pyc │ ├── views.cpython-34.pyc │ ├── views.cpython-35.pyc │ ├── __init__.cpython-34.pyc │ ├── __init__.cpython-35.pyc │ ├── actionhdfs.cpython-34.pyc │ └── actionhdfs.cpython-35.pyc ├── urls.py ├── actionhdfs.py └── views.py ├── mapreduce ├── __init__.py ├── migrations │ ├── __init__.py │ └── __pycache__ │ │ ├── __init__.cpython-34.pyc │ │ └── __init__.cpython-35.pyc ├── models.py ├── admin.py ├── tests.py ├── apps.py ├── __pycache__ │ ├── urls.cpython-34.pyc │ ├── urls.cpython-35.pyc │ ├── admin.cpython-34.pyc │ ├── admin.cpython-35.pyc │ ├── models.cpython-34.pyc │ ├── models.cpython-35.pyc │ ├── views.cpython-34.pyc │ ├── views.cpython-35.pyc │ ├── __init__.cpython-34.pyc │ ├── __init__.cpython-35.pyc │ └── runjisuan.cpython-34.pyc ├── runjisuan.py ├── urls.py └── views.py ├── resource ├── __init__.py ├── migrations │ ├── __init__.py │ ├── __pycache__ │ │ ├── __init__.cpython-34.pyc │ │ ├── __init__.cpython-35.pyc │ │ ├── 0001_initial.cpython-34.pyc │ │ └── 0001_initial.cpython-35.pyc │ └── 0001_initial.py ├── tests.py ├── apps.py ├── __pycache__ │ ├── admin.cpython-34.pyc │ ├── admin.cpython-35.pyc │ ├── urls.cpython-34.pyc │ ├── urls.cpython-35.pyc │ ├── views.cpython-34.pyc │ ├── views.cpython-35.pyc │ ├── __init__.cpython-34.pyc │ ├── __init__.cpython-35.pyc │ ├── models.cpython-34.pyc │ └── models.cpython-35.pyc ├── admin.py ├── models.py ├── views.py └── urls.py ├── db.sqlite3 ├── static ├── img │ ├── 1.jpg │ ├── 2.jpg │ ├── 3.jpg │ ├── small │ │ ├── 1.jpg │ │ ├── 2.jpg │ │ └── 3.jpg │ └── foot-phone.gif ├── css │ ├── ie.css │ ├── resource.css │ ├── login.css │ ├── hive.css │ ├── jisuan.css │ ├── save.css │ ├── index.css │ └── style.css └── js │ ├── index.js │ └── ie.js ├── .idea ├── vcs.xml ├── modules.xml ├── HIW.iml ├── misc.xml └── workspace.xml ├── templates ├── test.html ├── login.html ├── resource.html ├── index.html ├── hive.html ├── mapreduce.html ├── save.html └── base.html ├── manage.py └── README.md /HIW/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /hive/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /index/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /login/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /save/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /mapreduce/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /resource/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /hive/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /index/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /login/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /save/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /mapreduce/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /resource/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /db.sqlite3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/db.sqlite3 -------------------------------------------------------------------------------- /save/models.py: -------------------------------------------------------------------------------- 1 | from django.db import models 2 | 3 | # Create your models here. 4 | -------------------------------------------------------------------------------- /static/img/1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/static/img/1.jpg -------------------------------------------------------------------------------- /static/img/2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/static/img/2.jpg -------------------------------------------------------------------------------- /static/img/3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/static/img/3.jpg -------------------------------------------------------------------------------- /hive/tests.py: -------------------------------------------------------------------------------- 1 | from django.test import TestCase 2 | 3 | # Create your tests here. 4 | -------------------------------------------------------------------------------- /index/models.py: -------------------------------------------------------------------------------- 1 | from django.db import models 2 | 3 | # Create your models here. 4 | -------------------------------------------------------------------------------- /index/tests.py: -------------------------------------------------------------------------------- 1 | from django.test import TestCase 2 | 3 | # Create your tests here. 4 | -------------------------------------------------------------------------------- /login/models.py: -------------------------------------------------------------------------------- 1 | from django.db import models 2 | 3 | # Create your models here. 4 | -------------------------------------------------------------------------------- /login/tests.py: -------------------------------------------------------------------------------- 1 | from django.test import TestCase 2 | 3 | # Create your tests here. 4 | -------------------------------------------------------------------------------- /mapreduce/models.py: -------------------------------------------------------------------------------- 1 | from django.db import models 2 | 3 | # Create your models here. 4 | -------------------------------------------------------------------------------- /save/admin.py: -------------------------------------------------------------------------------- 1 | from django.contrib import admin 2 | 3 | # Register your models here. 4 | -------------------------------------------------------------------------------- /save/tests.py: -------------------------------------------------------------------------------- 1 | from django.test import TestCase 2 | 3 | # Create your tests here. 4 | -------------------------------------------------------------------------------- /index/admin.py: -------------------------------------------------------------------------------- 1 | from django.contrib import admin 2 | 3 | # Register your models here. 4 | -------------------------------------------------------------------------------- /login/admin.py: -------------------------------------------------------------------------------- 1 | from django.contrib import admin 2 | 3 | # Register your models here. 4 | -------------------------------------------------------------------------------- /mapreduce/admin.py: -------------------------------------------------------------------------------- 1 | from django.contrib import admin 2 | 3 | # Register your models here. 4 | -------------------------------------------------------------------------------- /mapreduce/tests.py: -------------------------------------------------------------------------------- 1 | from django.test import TestCase 2 | 3 | # Create your tests here. 4 | -------------------------------------------------------------------------------- /resource/tests.py: -------------------------------------------------------------------------------- 1 | from django.test import TestCase 2 | 3 | # Create your tests here. 4 | -------------------------------------------------------------------------------- /static/img/small/1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/static/img/small/1.jpg -------------------------------------------------------------------------------- /static/img/small/2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/static/img/small/2.jpg -------------------------------------------------------------------------------- /static/img/small/3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/static/img/small/3.jpg -------------------------------------------------------------------------------- /static/img/foot-phone.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/static/img/foot-phone.gif -------------------------------------------------------------------------------- /hive/apps.py: -------------------------------------------------------------------------------- 1 | from django.apps import AppConfig 2 | 3 | 4 | class HiveConfig(AppConfig): 5 | name = 'hive' 6 | -------------------------------------------------------------------------------- /index/apps.py: -------------------------------------------------------------------------------- 1 | from django.apps import AppConfig 2 | 3 | 4 | class IndexConfig(AppConfig): 5 | name = 'index' 6 | -------------------------------------------------------------------------------- /login/apps.py: -------------------------------------------------------------------------------- 1 | from django.apps import AppConfig 2 | 3 | 4 | class LoginConfig(AppConfig): 5 | name = 'login' 6 | -------------------------------------------------------------------------------- /save/apps.py: -------------------------------------------------------------------------------- 1 | from django.apps import AppConfig 2 | 3 | 4 | class SaveConfig(AppConfig): 5 | name = 'save' 6 | -------------------------------------------------------------------------------- /HIW/__pycache__/urls.cpython-34.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/HIW/__pycache__/urls.cpython-34.pyc -------------------------------------------------------------------------------- /HIW/__pycache__/urls.cpython-35.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/HIW/__pycache__/urls.cpython-35.pyc -------------------------------------------------------------------------------- /HIW/__pycache__/wsgi.cpython-34.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/HIW/__pycache__/wsgi.cpython-34.pyc -------------------------------------------------------------------------------- /HIW/__pycache__/wsgi.cpython-35.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/HIW/__pycache__/wsgi.cpython-35.pyc -------------------------------------------------------------------------------- /hive/__pycache__/urls.cpython-34.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/hive/__pycache__/urls.cpython-34.pyc -------------------------------------------------------------------------------- /hive/__pycache__/urls.cpython-35.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/hive/__pycache__/urls.cpython-35.pyc -------------------------------------------------------------------------------- /save/__pycache__/urls.cpython-34.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/save/__pycache__/urls.cpython-34.pyc -------------------------------------------------------------------------------- /save/__pycache__/urls.cpython-35.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/save/__pycache__/urls.cpython-35.pyc -------------------------------------------------------------------------------- /HIW/__pycache__/__init__.cpython-34.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/HIW/__pycache__/__init__.cpython-34.pyc -------------------------------------------------------------------------------- /HIW/__pycache__/__init__.cpython-35.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/HIW/__pycache__/__init__.cpython-35.pyc -------------------------------------------------------------------------------- /HIW/__pycache__/settings.cpython-34.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/HIW/__pycache__/settings.cpython-34.pyc -------------------------------------------------------------------------------- /HIW/__pycache__/settings.cpython-35.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/HIW/__pycache__/settings.cpython-35.pyc -------------------------------------------------------------------------------- /hive/__pycache__/admin.cpython-34.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/hive/__pycache__/admin.cpython-34.pyc -------------------------------------------------------------------------------- /hive/__pycache__/admin.cpython-35.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/hive/__pycache__/admin.cpython-35.pyc -------------------------------------------------------------------------------- /hive/__pycache__/models.cpython-34.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/hive/__pycache__/models.cpython-34.pyc -------------------------------------------------------------------------------- /hive/__pycache__/models.cpython-35.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/hive/__pycache__/models.cpython-35.pyc -------------------------------------------------------------------------------- /hive/__pycache__/views.cpython-34.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/hive/__pycache__/views.cpython-34.pyc -------------------------------------------------------------------------------- /hive/__pycache__/views.cpython-35.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/hive/__pycache__/views.cpython-35.pyc -------------------------------------------------------------------------------- /index/__pycache__/admin.cpython-34.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/index/__pycache__/admin.cpython-34.pyc -------------------------------------------------------------------------------- /index/__pycache__/admin.cpython-35.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/index/__pycache__/admin.cpython-35.pyc -------------------------------------------------------------------------------- /index/__pycache__/models.cpython-34.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/index/__pycache__/models.cpython-34.pyc -------------------------------------------------------------------------------- /index/__pycache__/models.cpython-35.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/index/__pycache__/models.cpython-35.pyc -------------------------------------------------------------------------------- /index/__pycache__/urls.cpython-34.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/index/__pycache__/urls.cpython-34.pyc -------------------------------------------------------------------------------- /index/__pycache__/urls.cpython-35.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/index/__pycache__/urls.cpython-35.pyc -------------------------------------------------------------------------------- /index/__pycache__/views.cpython-34.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/index/__pycache__/views.cpython-34.pyc -------------------------------------------------------------------------------- /index/__pycache__/views.cpython-35.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/index/__pycache__/views.cpython-35.pyc -------------------------------------------------------------------------------- /login/__pycache__/admin.cpython-34.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/login/__pycache__/admin.cpython-34.pyc -------------------------------------------------------------------------------- /login/__pycache__/admin.cpython-35.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/login/__pycache__/admin.cpython-35.pyc -------------------------------------------------------------------------------- /login/__pycache__/models.cpython-34.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/login/__pycache__/models.cpython-34.pyc -------------------------------------------------------------------------------- /login/__pycache__/models.cpython-35.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/login/__pycache__/models.cpython-35.pyc -------------------------------------------------------------------------------- /login/__pycache__/urls.cpython-34.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/login/__pycache__/urls.cpython-34.pyc -------------------------------------------------------------------------------- /login/__pycache__/urls.cpython-35.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/login/__pycache__/urls.cpython-35.pyc -------------------------------------------------------------------------------- /login/__pycache__/views.cpython-34.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/login/__pycache__/views.cpython-34.pyc -------------------------------------------------------------------------------- /login/__pycache__/views.cpython-35.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/login/__pycache__/views.cpython-35.pyc -------------------------------------------------------------------------------- /mapreduce/apps.py: -------------------------------------------------------------------------------- 1 | from django.apps import AppConfig 2 | 3 | 4 | class JisuanConfig(AppConfig): 5 | name = 'mapreduce' 6 | -------------------------------------------------------------------------------- /resource/apps.py: -------------------------------------------------------------------------------- 1 | from django.apps import AppConfig 2 | 3 | 4 | class ResourceConfig(AppConfig): 5 | name = 'resource' 6 | -------------------------------------------------------------------------------- /save/__pycache__/admin.cpython-34.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/save/__pycache__/admin.cpython-34.pyc -------------------------------------------------------------------------------- /save/__pycache__/admin.cpython-35.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/save/__pycache__/admin.cpython-35.pyc -------------------------------------------------------------------------------- /save/__pycache__/models.cpython-34.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/save/__pycache__/models.cpython-34.pyc -------------------------------------------------------------------------------- /save/__pycache__/models.cpython-35.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/save/__pycache__/models.cpython-35.pyc -------------------------------------------------------------------------------- /save/__pycache__/views.cpython-34.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/save/__pycache__/views.cpython-34.pyc -------------------------------------------------------------------------------- /save/__pycache__/views.cpython-35.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/save/__pycache__/views.cpython-35.pyc -------------------------------------------------------------------------------- /hive/__pycache__/__init__.cpython-34.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/hive/__pycache__/__init__.cpython-34.pyc -------------------------------------------------------------------------------- /hive/__pycache__/__init__.cpython-35.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/hive/__pycache__/__init__.cpython-35.pyc -------------------------------------------------------------------------------- /index/__pycache__/__init__.cpython-34.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/index/__pycache__/__init__.cpython-34.pyc -------------------------------------------------------------------------------- /index/__pycache__/__init__.cpython-35.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/index/__pycache__/__init__.cpython-35.pyc -------------------------------------------------------------------------------- /login/__pycache__/__init__.cpython-34.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/login/__pycache__/__init__.cpython-34.pyc -------------------------------------------------------------------------------- /login/__pycache__/__init__.cpython-35.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/login/__pycache__/__init__.cpython-35.pyc -------------------------------------------------------------------------------- /mapreduce/__pycache__/urls.cpython-34.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/mapreduce/__pycache__/urls.cpython-34.pyc -------------------------------------------------------------------------------- /mapreduce/__pycache__/urls.cpython-35.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/mapreduce/__pycache__/urls.cpython-35.pyc -------------------------------------------------------------------------------- /resource/__pycache__/admin.cpython-34.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/resource/__pycache__/admin.cpython-34.pyc -------------------------------------------------------------------------------- /resource/__pycache__/admin.cpython-35.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/resource/__pycache__/admin.cpython-35.pyc -------------------------------------------------------------------------------- /resource/__pycache__/urls.cpython-34.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/resource/__pycache__/urls.cpython-34.pyc -------------------------------------------------------------------------------- /resource/__pycache__/urls.cpython-35.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/resource/__pycache__/urls.cpython-35.pyc -------------------------------------------------------------------------------- /resource/__pycache__/views.cpython-34.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/resource/__pycache__/views.cpython-34.pyc -------------------------------------------------------------------------------- /resource/__pycache__/views.cpython-35.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/resource/__pycache__/views.cpython-35.pyc -------------------------------------------------------------------------------- /save/__pycache__/__init__.cpython-34.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/save/__pycache__/__init__.cpython-34.pyc -------------------------------------------------------------------------------- /save/__pycache__/__init__.cpython-35.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/save/__pycache__/__init__.cpython-35.pyc -------------------------------------------------------------------------------- /mapreduce/__pycache__/admin.cpython-34.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/mapreduce/__pycache__/admin.cpython-34.pyc -------------------------------------------------------------------------------- /mapreduce/__pycache__/admin.cpython-35.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/mapreduce/__pycache__/admin.cpython-35.pyc -------------------------------------------------------------------------------- /mapreduce/__pycache__/models.cpython-34.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/mapreduce/__pycache__/models.cpython-34.pyc -------------------------------------------------------------------------------- /mapreduce/__pycache__/models.cpython-35.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/mapreduce/__pycache__/models.cpython-35.pyc -------------------------------------------------------------------------------- /mapreduce/__pycache__/views.cpython-34.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/mapreduce/__pycache__/views.cpython-34.pyc -------------------------------------------------------------------------------- /mapreduce/__pycache__/views.cpython-35.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/mapreduce/__pycache__/views.cpython-35.pyc -------------------------------------------------------------------------------- /resource/__pycache__/__init__.cpython-34.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/resource/__pycache__/__init__.cpython-34.pyc -------------------------------------------------------------------------------- /resource/__pycache__/__init__.cpython-35.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/resource/__pycache__/__init__.cpython-35.pyc -------------------------------------------------------------------------------- /resource/__pycache__/models.cpython-34.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/resource/__pycache__/models.cpython-34.pyc -------------------------------------------------------------------------------- /resource/__pycache__/models.cpython-35.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/resource/__pycache__/models.cpython-35.pyc -------------------------------------------------------------------------------- /save/__pycache__/actionhdfs.cpython-34.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/save/__pycache__/actionhdfs.cpython-34.pyc -------------------------------------------------------------------------------- /save/__pycache__/actionhdfs.cpython-35.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/save/__pycache__/actionhdfs.cpython-35.pyc -------------------------------------------------------------------------------- /mapreduce/__pycache__/__init__.cpython-34.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/mapreduce/__pycache__/__init__.cpython-34.pyc -------------------------------------------------------------------------------- /mapreduce/__pycache__/__init__.cpython-35.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/mapreduce/__pycache__/__init__.cpython-35.pyc -------------------------------------------------------------------------------- /mapreduce/__pycache__/runjisuan.cpython-34.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/mapreduce/__pycache__/runjisuan.cpython-34.pyc -------------------------------------------------------------------------------- /hive/migrations/__pycache__/__init__.cpython-34.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/hive/migrations/__pycache__/__init__.cpython-34.pyc -------------------------------------------------------------------------------- /hive/migrations/__pycache__/__init__.cpython-35.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/hive/migrations/__pycache__/__init__.cpython-35.pyc -------------------------------------------------------------------------------- /save/migrations/__pycache__/__init__.cpython-34.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/save/migrations/__pycache__/__init__.cpython-34.pyc -------------------------------------------------------------------------------- /save/migrations/__pycache__/__init__.cpython-35.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/save/migrations/__pycache__/__init__.cpython-35.pyc -------------------------------------------------------------------------------- /index/migrations/__pycache__/__init__.cpython-34.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/index/migrations/__pycache__/__init__.cpython-34.pyc -------------------------------------------------------------------------------- /index/migrations/__pycache__/__init__.cpython-35.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/index/migrations/__pycache__/__init__.cpython-35.pyc -------------------------------------------------------------------------------- /login/migrations/__pycache__/__init__.cpython-34.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/login/migrations/__pycache__/__init__.cpython-34.pyc -------------------------------------------------------------------------------- /login/migrations/__pycache__/__init__.cpython-35.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/login/migrations/__pycache__/__init__.cpython-35.pyc -------------------------------------------------------------------------------- /hive/migrations/__pycache__/0001_initial.cpython-34.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/hive/migrations/__pycache__/0001_initial.cpython-34.pyc -------------------------------------------------------------------------------- /hive/migrations/__pycache__/0001_initial.cpython-35.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/hive/migrations/__pycache__/0001_initial.cpython-35.pyc -------------------------------------------------------------------------------- /mapreduce/migrations/__pycache__/__init__.cpython-34.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/mapreduce/migrations/__pycache__/__init__.cpython-34.pyc -------------------------------------------------------------------------------- /mapreduce/migrations/__pycache__/__init__.cpython-35.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/mapreduce/migrations/__pycache__/__init__.cpython-35.pyc -------------------------------------------------------------------------------- /resource/migrations/__pycache__/__init__.cpython-34.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/resource/migrations/__pycache__/__init__.cpython-34.pyc -------------------------------------------------------------------------------- /resource/migrations/__pycache__/__init__.cpython-35.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/resource/migrations/__pycache__/__init__.cpython-35.pyc -------------------------------------------------------------------------------- /resource/migrations/__pycache__/0001_initial.cpython-34.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/resource/migrations/__pycache__/0001_initial.cpython-34.pyc -------------------------------------------------------------------------------- /resource/migrations/__pycache__/0001_initial.cpython-35.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/resource/migrations/__pycache__/0001_initial.cpython-35.pyc -------------------------------------------------------------------------------- /hive/migrations/__pycache__/0002_auto_20160920_1638.cpython-34.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/hive/migrations/__pycache__/0002_auto_20160920_1638.cpython-34.pyc -------------------------------------------------------------------------------- /hive/migrations/__pycache__/0002_auto_20160920_1638.cpython-35.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/hive/migrations/__pycache__/0002_auto_20160920_1638.cpython-35.pyc -------------------------------------------------------------------------------- /hive/migrations/__pycache__/0002_auto_20160920_1645.cpython-34.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/hive/migrations/__pycache__/0002_auto_20160920_1645.cpython-34.pyc -------------------------------------------------------------------------------- /hive/migrations/__pycache__/0002_auto_20160920_1645.cpython-35.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thinkgamer/HIW/HEAD/hive/migrations/__pycache__/0002_auto_20160920_1645.cpython-35.pyc -------------------------------------------------------------------------------- /.idea/vcs.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /static/css/ie.css: -------------------------------------------------------------------------------- 1 | .csslider1 > .cs_arrowprev > label:after, 2 | .csslider1 > .cs_arrownext > label:after { 3 | line-height: 62px; 4 | } 5 | .csslider1 > .cs_play_pause > label:after { 6 | line-height: 60px; 7 | } -------------------------------------------------------------------------------- /index/views.py: -------------------------------------------------------------------------------- 1 | #-*-coding:utf-8-*- 2 | from django.shortcuts import render_to_response 3 | # Create your views here. 4 | 5 | def index(request,name): 6 | return render_to_response("index.html",{ 7 | "name":name, 8 | }) -------------------------------------------------------------------------------- /templates/test.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Title 6 | 7 | 8 | {% for num in number%} 9 |

{{ num }}

10 | {% endfor %} 11 | 12 | -------------------------------------------------------------------------------- /.idea/modules.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /manage.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | import os 3 | import sys 4 | 5 | if __name__ == "__main__": 6 | os.environ.setdefault("DJANGO_SETTINGS_MODULE", "HIW.settings") 7 | 8 | from django.core.management import execute_from_command_line 9 | 10 | execute_from_command_line(sys.argv) 11 | -------------------------------------------------------------------------------- /static/css/resource.css: -------------------------------------------------------------------------------- 1 | /*center*/ 2 | .center_res{width: 90%;height: 500px;margin: 0 auto} 3 | /*nodemess*/ 4 | .title_node{width: 100%;line-height: 100px;text-align: center;font-size: 30px;} 5 | .one_node{width: 300px;height: 400px;background-color: #dce9f9;margin-left: 20px;border: 1px #747778 solid;float: left;} -------------------------------------------------------------------------------- /.idea/HIW.iml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /static/js/index.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Created by gaoyt on 2016/9/1. 3 | */ 4 | //old show 5 | function show_more(targetid){ 6 | var target=document.getElementById(targetid); 7 | target.style.display="block"; 8 | } 9 | // old hidden 10 | function hidden_more(targetid){ 11 | var target=document.getElementById(targetid); 12 | target.style.display="none"; 13 | } 14 | -------------------------------------------------------------------------------- /static/css/login.css: -------------------------------------------------------------------------------- 1 | .center{width: 100%;height: 500px;} 2 | .form_css{width: 600px;height: 300px;margin: 0 auto;margin-top: 100px;} 3 | .form_css p{font-size: 28px;margin-left: 110px;} 4 | .form_css label{font-size: 20px;} 5 | .form_css input{width:500px;height: 30px;float: right} 6 | .form_css button{width: 100px;font-size: 16px;height:40px;background-color:#1ABC9C;margin-left: 40%} -------------------------------------------------------------------------------- /HIW/wsgi.py: -------------------------------------------------------------------------------- 1 | """ 2 | WSGI config for HIW project. 3 | 4 | It exposes the WSGI callable as a module-level variable named ``application``. 5 | 6 | For more information on this file, see 7 | https://docs.djangoproject.com/en/1.9/howto/deployment/wsgi/ 8 | """ 9 | 10 | import os 11 | 12 | from django.core.wsgi import get_wsgi_application 13 | 14 | os.environ.setdefault("DJANGO_SETTINGS_MODULE", "HIW.settings") 15 | 16 | application = get_wsgi_application() 17 | -------------------------------------------------------------------------------- /hive/admin.py: -------------------------------------------------------------------------------- 1 | #-*-coding:utf-8-*- 2 | from django.contrib import admin 3 | from hive.models import Session 4 | # Register your models here. 5 | 6 | class SessionAdmin(admin.ModelAdmin): 7 | # 将字段全部显示出来 8 | list_display = ("uname","time","sessionname", "context",) 9 | # 添加search bar,在指定的字段中search 10 | search_fields = ("uname","time","sessionname",) 11 | # 页面右边会出现相应的过滤器选项 12 | list_filter = ("uname","time", "sessionname",) 13 | # 排序 14 | ordering = ("-time",) 15 | 16 | 17 | admin.site.register(Session, SessionAdmin) 18 | -------------------------------------------------------------------------------- /hive/models.py: -------------------------------------------------------------------------------- 1 | #-*-coding:utf-8-*- 2 | from django.db import models 3 | 4 | # Create your models here. 5 | class Session(models.Model): 6 | uname = models.CharField(blank=False,max_length=15,verbose_name="用户名") 7 | time = models.DateTimeField(blank=True,verbose_name="时间") 8 | sessionname = models.CharField(blank=True,max_length=20,unique=True,verbose_name="事务名") 9 | context = models.TextField(blank=True,verbose_name="提交的内容") 10 | 11 | def __str__(self): 12 | return self.sessionname 13 | 14 | class Meta: 15 | db_table = "session" 16 | -------------------------------------------------------------------------------- /resource/admin.py: -------------------------------------------------------------------------------- 1 | #-*-coding:utf-8-*- 2 | from django.contrib import admin 3 | from resource.models import node 4 | # Register your models here. 5 | 6 | class NodeAdmin(admin.ModelAdmin): 7 | # 将字段全部显示出来 8 | list_display = ("ip", "hostname", "run_neicun","disk_neicun","os",) 9 | # 添加search bar,在指定的字段中search 10 | search_fields = ("ip", "hostname", "run_neicun","disk_neicun","os",) 11 | # 页面右边会出现相应的过滤器选项 12 | list_filter = ("ip", "hostname", "run_neicun","disk_neicun","os",) 13 | # 排序 14 | ordering = ("-ip",) 15 | 16 | admin.site.register(node, NodeAdmin) -------------------------------------------------------------------------------- /mapreduce/runjisuan.py: -------------------------------------------------------------------------------- 1 | #-*-coding:utf-8-*- 2 | import os 3 | def runmr(jar_path,input_path,output_path,main_class_name): 4 | local_path = "/opt/jar/" 5 | #jar name 6 | jar_name = jar_path.split("/")[-1] 7 | #download file 8 | from save.actionhdfs import down_file 9 | down_file(jar_path,local_path) 10 | #run jar 11 | os.system("/opt/bigdata/hadoop/bin/hadoop jar %s %s %s %s"% (local_path+jar_name,'wordcount',input_path,output_path)) 12 | #print local_path+jar_name,"\t",main_class_name,"\t",input_path,"\t",output_path 13 | #print "/opt/bigdata/hadoop/bin/hadoop jar %s %s %s %s" % (local_path+jar_name,'wordcount',input_path,output_path) 14 | return output_path -------------------------------------------------------------------------------- /resource/models.py: -------------------------------------------------------------------------------- 1 | #-*-coding:utf-8-*_ 2 | from django.db import models 3 | 4 | # Create your models here. 5 | class node(models.Model): 6 | ip = models.CharField(blank=True,max_length=15,verbose_name="IP地址") 7 | hostname=models.CharField(blank=True,max_length=20,verbose_name="机器名字") 8 | run_neicun = models.IntegerField(blank=True,verbose_name="运行内存") 9 | disk_neicun = models.IntegerField(blank=True,verbose_name="硬盘内存") 10 | os = models.CharField(blank=True,max_length=20,verbose_name="操作系统") 11 | desc = models.TextField(blank=True,verbose_name="机器描述") 12 | 13 | def __str__(self): 14 | return self.hostname 15 | 16 | class Meta: 17 | db_table="NodeMess" 18 | 19 | -------------------------------------------------------------------------------- /resource/views.py: -------------------------------------------------------------------------------- 1 | #-*-coding:utf-8-*- 2 | from django.shortcuts import render_to_response,HttpResponse,render 3 | from resource.models import node 4 | # Create your views here. 5 | 6 | def resource(request,name): 7 | return render_to_response("resource.html",{ 8 | "allmess_flag":1, 9 | "name":name, 10 | }) 11 | 12 | #各个节点的信息 13 | def nodemess(request,name): 14 | node_list = node.objects.all() 15 | return render_to_response("resource.html", { 16 | "node_flag":1, 17 | "name": name, 18 | "node_list":node_list, 19 | }) 20 | 21 | def test(request): 22 | number = [1,2,3,4,5] 23 | return render_to_response("test.html",{ 24 | "number":number, 25 | }) -------------------------------------------------------------------------------- /login/views.py: -------------------------------------------------------------------------------- 1 | #-*-coding:utf-8-*- 2 | from django.shortcuts import render_to_response 3 | from django.http import HttpResponseRedirect 4 | from django.views.decorators.csrf import csrf_exempt 5 | from save.actionhdfs import login_mkdir 6 | # Create your views here. 7 | 8 | @csrf_exempt 9 | def login(request): 10 | if request.method=="POST": 11 | name = request.POST.get("name") 12 | passwd = request.POST.get("passwd") 13 | if name=="thinkgamer" and passwd == "123456": 14 | #给当前用户在hdfs下创建一个文件夹 15 | # login_mkdir(name) 16 | return HttpResponseRedirect("/index/index/%s" % name) 17 | else: 18 | return render_to_response("login.html",{ 19 | 20 | }) -------------------------------------------------------------------------------- /.idea/misc.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /login/urls.py: -------------------------------------------------------------------------------- 1 | """HIW URL Configuration 2 | 3 | The `urlpatterns` list routes URLs to views. For more information please see: 4 | https://docs.djangoproject.com/en/1.9/topics/http/urls/ 5 | Examples: 6 | Function views 7 | 1. Add an import: from my_app import views 8 | 2. Add a URL to urlpatterns: url(r'^$', views.home, name='home') 9 | Class-based views 10 | 1. Add an import: from other_app.views import Home 11 | 2. Add a URL to urlpatterns: url(r'^$', Home.as_view(), name='home') 12 | Including another URLconf 13 | 1. Import the include() function: from django.conf.urls import url, include 14 | 2. Add a URL to urlpatterns: url(r'^blog/', include('blog.urls')) 15 | """ 16 | from django.conf.urls import url 17 | 18 | from login.views import login 19 | urlpatterns = [ 20 | url(r'^login/$', login) 21 | ] 22 | -------------------------------------------------------------------------------- /mapreduce/urls.py: -------------------------------------------------------------------------------- 1 | """HIW URL Configuration 2 | 3 | The `urlpatterns` list routes URLs to views. For more information please see: 4 | https://docs.djangoproject.com/en/1.9/topics/http/urls/ 5 | Examples: 6 | Function views 7 | 1. Add an import: from my_app import views 8 | 2. Add a URL to urlpatterns: url(r'^$', views.home, name='home') 9 | Class-based views 10 | 1. Add an import: from other_app.views import Home 11 | 2. Add a URL to urlpatterns: url(r'^$', Home.as_view(), name='home') 12 | Including another URLconf 13 | 1. Import the include() function: from django.conf.urls import url, include 14 | 2. Add a URL to urlpatterns: url(r'^blog/', include('blog.urls')) 15 | """ 16 | from django.conf.urls import url 17 | 18 | from mapreduce.views import ( 19 | mr, 20 | ) 21 | 22 | urlpatterns = [ 23 | url(r'^mr/(\w+)/$', mr), 24 | 25 | ] 26 | -------------------------------------------------------------------------------- /hive/phive.py: -------------------------------------------------------------------------------- 1 | #-*-coding:utf-8-*- 2 | from impala.dbapi import connect 3 | 4 | def conn(): 5 | con = connect(host="192.168.132.27",port=10000,auth_mechanism="PLAIN") 6 | cur = con.cursor() 7 | return cur 8 | 9 | #查看数据库 10 | def show_databases(): 11 | cur = conn() 12 | cur.execute("show databases") 13 | return cur.fetchall() 14 | 15 | #查看表 16 | def show_tables(database): 17 | cur=conn() 18 | cur.execute("use %s" % database) 19 | cur.execute("show tables") 20 | return cur.fetchall() 21 | 22 | #执行HQL语句 23 | def run_hql(sql): 24 | sql_list = sql[:-1].split(";") 25 | cur=conn() 26 | for s in sql_list: 27 | cur.execute(s) 28 | result=cur.fetchall() 29 | return result 30 | 31 | if __name__=="__main__": 32 | #db=show_databases() 33 | sql="show databases;use default;show tables;" 34 | print run_hql(sql) 35 | -------------------------------------------------------------------------------- /index/urls.py: -------------------------------------------------------------------------------- 1 | """HIW URL Configuration 2 | 3 | The `urlpatterns` list routes URLs to views. For more information please see: 4 | https://docs.djangoproject.com/en/1.9/topics/http/urls/ 5 | Examples: 6 | Function views 7 | 1. Add an import: from my_app import views 8 | 2. Add a URL to urlpatterns: url(r'^$', views.home, name='home') 9 | Class-based views 10 | 1. Add an import: from other_app.views import Home 11 | 2. Add a URL to urlpatterns: url(r'^$', Home.as_view(), name='home') 12 | Including another URLconf 13 | 1. Import the include() function: from django.conf.urls import url, include 14 | 2. Add a URL to urlpatterns: url(r'^blog/', include('blog.urls')) 15 | """ 16 | from django.conf.urls import url 17 | from django.contrib import admin 18 | 19 | from index.views import ( 20 | index, 21 | ) 22 | 23 | urlpatterns = [ 24 | url(r'^index/(\w+)/$', index) 25 | ] 26 | -------------------------------------------------------------------------------- /hive/urls.py: -------------------------------------------------------------------------------- 1 | """HIW URL Configuration 2 | 3 | The `urlpatterns` list routes URLs to views. For more information please see: 4 | https://docs.djangoproject.com/en/1.9/topics/http/urls/ 5 | Examples: 6 | Function views 7 | 1. Add an import: from my_app import views 8 | 2. Add a URL to urlpatterns: url(r'^$', views.home, name='home') 9 | Class-based views 10 | 1. Add an import: from other_app.views import Home 11 | 2. Add a URL to urlpatterns: url(r'^$', Home.as_view(), name='home') 12 | Including another URLconf 13 | 1. Import the include() function: from django.conf.urls import url, include 14 | 2. Add a URL to urlpatterns: url(r'^blog/', include('blog.urls')) 15 | """ 16 | from django.conf.urls import url 17 | 18 | from hive.views import ( 19 | phive,session, 20 | ) 21 | 22 | urlpatterns = [ 23 | url(r'^phive/(\w+)/$', phive), 24 | url(r'^session/(\w+)/(.+)/$',session), 25 | ] 26 | -------------------------------------------------------------------------------- /mapreduce/views.py: -------------------------------------------------------------------------------- 1 | from django.shortcuts import render_to_response 2 | from django.views.decorators.csrf import csrf_exempt 3 | # Create your views here. 4 | 5 | @csrf_exempt 6 | def mr(request,username): 7 | if request.method == "POST": 8 | jar_path = request.POST.get("jar_path") 9 | input_path = request.POST.get("inputfile_path") 10 | output_path =request.POST.get("outputfile_path") 11 | main_class = request.POST.get("main_class_name") 12 | from mapreduce.runjisuan import runmr 13 | runmr(jar_path,input_path,output_path,main_class) 14 | 15 | return render_to_response("mapreduce.html", { 16 | "name": username, 17 | "jar_path":jar_path, 18 | "input_path":input_path, 19 | "output_path":output_path, 20 | "main_class_name":main_class, 21 | }) 22 | else: 23 | return render_to_response("mapreduce.html",{ 24 | "name":username, 25 | }) -------------------------------------------------------------------------------- /hive/migrations/0002_auto_20160920_1638.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # Generated by Django 1.9.7 on 2016-09-20 08:38 3 | from __future__ import unicode_literals 4 | 5 | from django.db import migrations, models 6 | 7 | 8 | class Migration(migrations.Migration): 9 | 10 | dependencies = [ 11 | ('hive', '0001_initial'), 12 | ] 13 | 14 | operations = [ 15 | migrations.AlterField( 16 | model_name='session', 17 | name='context', 18 | field=models.TextField(blank=True, verbose_name='提交的内容'), 19 | ), 20 | migrations.AlterField( 21 | model_name='session', 22 | name='sessionname', 23 | field=models.CharField(blank=True, max_length=20, unique=True, verbose_name='事务名'), 24 | ), 25 | migrations.AlterField( 26 | model_name='session', 27 | name='time', 28 | field=models.DateTimeField(blank=True, verbose_name='时间'), 29 | ), 30 | ] 31 | -------------------------------------------------------------------------------- /resource/urls.py: -------------------------------------------------------------------------------- 1 | """HIW URL Configuration 2 | 3 | The `urlpatterns` list routes URLs to views. For more information please see: 4 | https://docs.djangoproject.com/en/1.9/topics/http/urls/ 5 | Examples: 6 | Function views 7 | 1. Add an import: from my_app import views 8 | 2. Add a URL to urlpatterns: url(r'^$', views.home, name='home') 9 | Class-based views 10 | 1. Add an import: from other_app.views import Home 11 | 2. Add a URL to urlpatterns: url(r'^$', Home.as_view(), name='home') 12 | Including another URLconf 13 | 1. Import the include() function: from django.conf.urls import url, include 14 | 2. Add a URL to urlpatterns: url(r'^blog/', include('blog.urls')) 15 | """ 16 | from django.conf.urls import url 17 | 18 | from resource.views import ( 19 | resource, 20 | nodemess, 21 | test, 22 | ) 23 | 24 | urlpatterns = [ 25 | url(r'^resource/(\w+)/$', resource), 26 | url(r'^nodemess/(\w+)/$', nodemess), 27 | url(r'^test/$', test), 28 | ] 29 | -------------------------------------------------------------------------------- /hive/migrations/0001_initial.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # Generated by Django 1.9.7 on 2016-09-20 05:17 3 | from __future__ import unicode_literals 4 | 5 | from django.db import migrations, models 6 | 7 | 8 | class Migration(migrations.Migration): 9 | 10 | initial = True 11 | 12 | dependencies = [ 13 | ] 14 | 15 | operations = [ 16 | migrations.CreateModel( 17 | name='Session', 18 | fields=[ 19 | ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), 20 | ('uname', models.CharField(max_length=15, verbose_name='用户名')), 21 | ('time', models.TimeField(verbose_name='时间')), 22 | ('sessionname', models.CharField(max_length=20, verbose_name='事务名')), 23 | ('context', models.TextField(verbose_name='提交的内容')), 24 | ], 25 | options={ 26 | 'db_table': 'session', 27 | }, 28 | ), 29 | ] 30 | -------------------------------------------------------------------------------- /templates/login.html: -------------------------------------------------------------------------------- 1 | {% extends "base.html"%} 2 | {% block title %}欢迎使用广联达数据分析平台{% endblock %} 3 | {% block center_index%} {% endblock %} 4 | {% block css %}{% endblock %} 5 | {% block header %}
请登录
{% endblock %} 6 | {% block center %} 7 |
8 |
9 |
10 |

欢迎使用广联达数据分析平台



11 |
12 | 13 | 14 |

15 |
16 | 17 | 18 |


19 | 20 |
21 |
22 |
23 | {% endblock %} -------------------------------------------------------------------------------- /hive/migrations/0002_auto_20160920_1645.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # Generated by Django 1.9.2 on 2016-09-20 08:45 3 | from __future__ import unicode_literals 4 | 5 | from django.db import migrations, models 6 | 7 | 8 | class Migration(migrations.Migration): 9 | 10 | dependencies = [ 11 | ('hive', '0001_initial'), 12 | ] 13 | 14 | operations = [ 15 | migrations.AlterField( 16 | model_name='session', 17 | name='context', 18 | field=models.TextField(blank=True, verbose_name=b'\xe6\x8f\x90\xe4\xba\xa4\xe7\x9a\x84\xe5\x86\x85\xe5\xae\xb9'), 19 | ), 20 | migrations.AlterField( 21 | model_name='session', 22 | name='sessionname', 23 | field=models.CharField(blank=True, max_length=20, unique=True, verbose_name=b'\xe4\xba\x8b\xe5\x8a\xa1\xe5\x90\x8d'), 24 | ), 25 | migrations.AlterField( 26 | model_name='session', 27 | name='time', 28 | field=models.DateTimeField(blank=True, verbose_name=b'\xe6\x97\xb6\xe9\x97\xb4'), 29 | ), 30 | ] 31 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # HIW 2 | 基于Django和Hadoop集群进行的大数据分析平台
3 | 登录用户名/密码:thinkgamer/123456
4 | 后台登录用户名/密码:thinkgamer/thinkgamer
5 | 6 | # 基本环境 7 | - python3.4
8 | - diango1.9.6
9 | - pip install hdfs
10 | - pip install hdfs[avro,dataframe,kerberos] 11 | 12 | # 注意事项 13 | 远程客户端执行hdfs操作,上传和下载文件时,需要将集群的ip和用户名填写在自己本机的hosts文件里,否则会报错
14 | 集群的hiveserver2服务要启动 15 | 16 | # 搭建平台参考文章 17 | VM+CentOS+hadoop2.7搭建hadoop完全分布式集群
18 | http://blog.csdn.net/gamer_gyt/article/details/51991893
19 | 基于hadoop集群的Hive1.2.1、Hbase1.2.2、Zookeeper3.4.8完全分布式安装
20 | http://blog.csdn.net/gamer_gyt/article/details/52032579
21 | 基于hadoop2.7集群的Spark2.0,Sqoop1.4.6,Mahout0.12.2完全分布式安装
22 | http://blog.csdn.net/gamer_gyt/article/details/52045663
23 | 三台PC服务器部署Hadoop HA(Hadoop 高可用性架构)
24 | http://blog.csdn.net/gamer_gyt/article/details/52350528
25 | -------------------------------------------------------------------------------- /save/urls.py: -------------------------------------------------------------------------------- 1 | """HIW URL Configuration 2 | 3 | The `urlpatterns` list routes URLs to views. For more information please see: 4 | https://docs.djangoproject.com/en/1.9/topics/http/urls/ 5 | Examples: 6 | Function views 7 | 1. Add an import: from my_app import views 8 | 2. Add a URL to urlpatterns: url(r'^$', views.home, name='home') 9 | Class-based views 10 | 1. Add an import: from other_app.views import Home 11 | 2. Add a URL to urlpatterns: url(r'^$', Home.as_view(), name='home') 12 | Including another URLconf 13 | 1. Import the include() function: from django.conf.urls import url, include 14 | 2. Add a URL to urlpatterns: url(r'^blog/', include('blog.urls')) 15 | """ 16 | from django.conf.urls import url 17 | 18 | from save.views import hdfsfile,more,file,delete,mkdir,rename,down,upload 19 | 20 | urlpatterns = [ 21 | url(r'^hdfsfile/(\w+)/$', hdfsfile), 22 | url(r'^more/(\w+)/(.+)/$', more), 23 | url(r'^file/(\w+)/(.+)/$', file), 24 | url(r'^delete/(\w+)/(.+)/$', delete), 25 | url(r'^mkdir/(\w+)/(.+)/$', mkdir), 26 | url(r'^rename/(\w+)/(.+)/$', rename), 27 | url(r'^down/(\w+)/(.+)/$', down), 28 | url(r'^upload/(\w+)/(.+)/$', upload), 29 | ] 30 | -------------------------------------------------------------------------------- /HIW/urls.py: -------------------------------------------------------------------------------- 1 | """HIW URL Configuration 2 | 3 | The `urlpatterns` list routes URLs to views. For more information please see: 4 | https://docs.djangoproject.com/en/1.9/topics/http/urls/ 5 | Examples: 6 | Function views 7 | 1. Add an import: from my_app import views 8 | 2. Add a URL to urlpatterns: url(r'^$', views.home, name='home') 9 | Class-based views 10 | 1. Add an import: from other_app.views import Home 11 | 2. Add a URL to urlpatterns: url(r'^$', Home.as_view(), name='home') 12 | Including another URLconf 13 | 1. Import the include() function: from django.conf.urls import url, include 14 | 2. Add a URL to urlpatterns: url(r'^blog/', include('blog.urls')) 15 | """ 16 | from django.conf.urls import url,include 17 | from django.contrib import admin 18 | from login.views import login 19 | urlpatterns = [ 20 | url(r'^admin/', admin.site.urls), 21 | 22 | url(r'^index/', include("index.urls")), 23 | url(r'^resource/', include("resource.urls")), 24 | url(r'^save/', include("save.urls")), 25 | url(r'^login/', include("login.urls")), 26 | url(r'^mapreduce/', include("mapreduce.urls")), 27 | url(r'^hive/', include("hive.urls")), 28 | url(r"^$",login) 29 | ] 30 | -------------------------------------------------------------------------------- /resource/migrations/0001_initial.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # Generated by Django 1.9.7 on 2016-09-06 09:40 3 | from __future__ import unicode_literals 4 | 5 | from django.db import migrations, models 6 | 7 | 8 | class Migration(migrations.Migration): 9 | 10 | initial = True 11 | 12 | dependencies = [ 13 | ] 14 | 15 | operations = [ 16 | migrations.CreateModel( 17 | name='node', 18 | fields=[ 19 | ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), 20 | ('ip', models.CharField(blank=True, max_length=15, verbose_name='IP地址')), 21 | ('hostname', models.CharField(blank=True, max_length=20, verbose_name='机器名字')), 22 | ('run_neicun', models.IntegerField(blank=True, verbose_name='运行内存')), 23 | ('disk_neicun', models.IntegerField(blank=True, verbose_name='硬盘内存')), 24 | ('os', models.CharField(blank=True, max_length=20, verbose_name='操作系统')), 25 | ('desc', models.TextField(blank=True, verbose_name='机器描述')), 26 | ], 27 | options={ 28 | 'db_table': 'NodeMess', 29 | }, 30 | ), 31 | ] 32 | -------------------------------------------------------------------------------- /static/css/hive.css: -------------------------------------------------------------------------------- 1 | .hive_center{min-height: 800px;width: 90%;margin: 0 auto;} 2 | .bord {border: solid #ccc 1px;-moz-border-radius: 6px;-webkit-border-radius: 6px;border-radius: 6px;-webkit-box-shadow: 0 1px 1px #ccc; -moz-box-shadow: 0 1px 1px #ccc;box-shadow: 0 1px 1px #ccc;} 3 | /*title*/ 4 | .hive_title{text-align:center;font-size:30px;} 5 | 6 | /*left*/ 7 | .hive_left{width: 21.5%;height: 700px;overflow: auto;} 8 | .hive_left_title{background-color: #1FA5AD;text-align: center;width: 100%;} 9 | .hive_left_title span{font-size: 25px;} 10 | .hive_left ul li{text-align: center;font-size: 20px;line-height: 50px;border: 1px #EBEBEB solid;} 11 | .hive_left ul li:hover{background-color: #cccccc;} 12 | 13 | .hive_left_sql{ width: 90%;height: 300px;margin-left: 5%;resize: none;} 14 | 15 | .hive_left_relog{width: 90%;height: 290px;margin-left: 5%;} 16 | 17 | /*right*/ 18 | .hive_right{width: 78%;height: 700px;} 19 | 20 | .hive_right_p{ font-size: 20px;margin-left: 5%} 21 | .hive_right_back{ width:50px;height:40px;line-height:40px;margin-left:75%} 22 | .hive_right_back:hover { background-color:#EEEEEE } 23 | .hive_right_back a{font-size:15px; } 24 | 25 | .hive_right_form{margin-left: 40%;font-size: 20px;margin-top: 200px;} 26 | .hive_rf_input{ } 27 | .hive_rf_button{width: 100px;line-height: 30px;} 28 | .hive_rf_input input{width: 200px;line-height: 30px;height: 30px;} 29 | -------------------------------------------------------------------------------- /templates/resource.html: -------------------------------------------------------------------------------- 1 | {% extends 'base.html' %} 2 | {% block title%}广联达数据分析平台|云资源管理{% endblock %} 3 | {% block css %} 4 | 5 | 6 | {% endblock %} 7 | {% block header %} 8 | {% if name %} 9 |
{{ name }}  |   注销
10 | {% else%} 11 |
登录
12 | {% endif %} 13 | {% endblock %} 14 | {% block center_index%}{%endblock%} 15 | {% block center%} 16 |
17 | 18 | {% if node_flag %} 19 |
平台节点信息查看
20 |

21 | 22 | 23 | {% for node in node_list %} 24 | 25 | {%endfor %} 26 |
序号IP地址用户名内存硬盘操作系统描述
{{ forloop.counter }}{{node.ip}}{{node.hostname}}{{node.run_neicun}}{{node.disk_neicun}}{{node.os}}{{node.desc}}
27 | {% endif %} 28 | 29 | {% if allmess_flag %} 30 | {% endif %} 31 |
32 | {% endblock %} -------------------------------------------------------------------------------- /static/css/jisuan.css: -------------------------------------------------------------------------------- 1 | /*title*/ 2 | .title_mr{width: 100%;text-align: center;font-size: 35px;} 3 | /*center*/ 4 | .jisuan_center{width: 90%;height: 600px;margin: 0 auto;margin-top:20px;} 5 | /*left*/ 6 | .jsc_left {width: 39.3%;height: 450px;border: 1px #cccccc solid; 7 | -webkit-box-shadow: 1px 1px 2px rgba(0,0,0,0.2); 8 | -moz-box-shadow: 1px 1px 2px rgba(0,0,0,0.2); 9 | box-shadow: 1px 1px 2px rgba(0,0,0,0.2); 10 | margin-right: 4px; 11 | -webkit-transition: all 300ms linear; 12 | -moz-transition: all 300ms linear; 13 | -o-transition: all 300ms linear; 14 | -ms-transition: all 300ms linear; 15 | transition: all 300ms linear;} 16 | .jsc_one span{width: 30%;line-height: 30px;font-size: 20px;color: #1ABC9C} 17 | .jsc_one input{width: 99%;height: 30px;} 18 | .jsc_one button{width: 30%;height:34px;} 19 | 20 | /*right*/ 21 | .jsc_right {width: 60%;min-height: 500px;border: 1px #1ABC9C solid; 22 | -webkit-box-shadow: 1px 1px 2px rgba(0,0,0,0.2); 23 | -moz-box-shadow: 1px 1px 2px rgba(0,0,0,0.2); 24 | box-shadow: 1px 1px 2px rgba(0,0,0,0.2); 25 | margin-right: 4px; 26 | -webkit-transition: all 300ms linear; 27 | -moz-transition: all 300ms linear; 28 | -o-transition: all 300ms linear; 29 | -ms-transition: all 300ms linear; 30 | transition: all 300ms linear;} 31 | .jsc_r_title{width: 100%;line-height: 40px;font-size: 30px;text-align: center;background-color: #1ABC9C} 32 | .jsc_r_one{width: 100%;line-height: 40px;font-size: 20px;text-align: center;background-color: linen;margin-top: 30px;} 33 | .jsc_r_one:hover{background-color: bisque} -------------------------------------------------------------------------------- /templates/index.html: -------------------------------------------------------------------------------- 1 | {% extends "base.html"%} 2 | {% block title %}广联达数据分析平台{% endblock %} 3 | {% block js %}{% endblock %} 4 | {% block header %} 5 | {% if name %} 6 |
{{ name }}  |   注销
7 | {% else%} 8 |
登录
9 | {% endif %} 10 | {% endblock %} 11 | {% block center%} 12 |
13 |

为你的产品打造一套黄金甲

14 |
15 |
16 |
云平台资源统计
17 | 21 |
22 |
23 |
云存储服务
24 | 30 |
31 |
32 |
云计算服务
33 | 39 |
40 |
41 |
业务解决方案
42 | 48 | 49 |
50 |
51 |
52 | {% endblock %} -------------------------------------------------------------------------------- /templates/hive.html: -------------------------------------------------------------------------------- 1 | {% extends "base.html" %} 2 | {% block title%}广联达数据分析平台|HIVE数据仓库{% endblock %} 3 | {% block css %} 4 | 5 | {% endblock %} 6 | {% block header %} 7 | {% if name %} 8 |
{{ name }}  |   注销
9 | {% else%} 10 |
登录
11 | {% endif %} 12 | {% endblock %} 13 | {% block center_index%}{%endblock%} 14 | {% block center %} 15 |
16 |

HIVE SESSION

17 |

18 | 19 |
20 |
历史提交事务
21 | 26 |
27 | 28 |
29 | {% if sessionname %} 30 |
当前事务:{{ sessionname }}
31 |
32 |

输入你要执行的HQL:

33 | 34 | 35 | 退出该事务 36 | 37 |
38 |
{{ result }}
39 | {% else %} 40 |
41 |
事务名:

42 | 43 |
44 | {% endif %} 45 |
46 |
47 | {% endblock %} 48 | -------------------------------------------------------------------------------- /templates/mapreduce.html: -------------------------------------------------------------------------------- 1 | {% extends "base.html" %} 2 | {% block title%}广联达数据分析平台|云资源管理{% endblock %} 3 | {% block css %} 4 | 5 | {% endblock %} 6 | {% block header %} 7 | {% if name %} 8 |
{{ name }}  |   注销
9 | {% else%} 10 |
登录
11 | {% endif %} 12 | {% endblock %} 13 | {% block center_index%}{%endblock%} 14 | {% block center%} 15 |
16 |
运行MapReduce

17 |

18 |
19 |
20 |
21 | JAR包路径[HDFS]

22 | 23 |

24 |
25 | Main CLass Name

26 | 27 |

28 |
29 | 输入文件路径[HDFS]

30 | 31 |

32 |
33 | 结果保存路径[HDFS]

34 | 35 |



36 |
37 | 38 |
39 |
40 |
41 | 42 |
43 |
MR运行结果
44 |
45 | 46 | 47 |
48 |
49 |
50 | {% endblock %} -------------------------------------------------------------------------------- /static/css/save.css: -------------------------------------------------------------------------------- 1 | /*center*/ 2 | .center_save{width: 90%;margin: 0 auto;} 3 | .title_hdfs{height:100px;line-height: 100px;font-size: 30px;text-align: center;margin: 0 auto;} 4 | .dhfs_form{margin: 0 auto;} 5 | .hdfs_input{width: 90%; height: 25px;} 6 | .hdfs_button{width: 9%;font-size: 16px;height:30px;} 7 | .dhfs_show{} 8 | .show_error{font-size: 25px;margin-bottom: 10px;margin-top: 10px;} 9 | /*table*/ 10 | table {*border-collapse: collapse; /* IE7 and lower */border-spacing: 0;width: 100%;} 11 | .bordered {border: solid #ccc 1px;-moz-border-radius: 6px;-webkit-border-radius: 6px;border-radius: 6px;-webkit-box-shadow: 0 1px 1px #ccc; -moz-box-shadow: 0 1px 1px #ccc;box-shadow: 0 1px 1px #ccc;} 12 | .bordered tr:hover {background: #fbf8e9;-o-transition: all 0.1s ease-in-out;-webkit-transition: all 0.1s ease-in-out;-moz-transition: all 0.1s ease-in-out; -ms-transition: all 0.1s ease-in-out;transition: all 0.1s ease-in-out;} 13 | .bordered td, .bordered th { border-left: 1px solid #ccc;border-top: 1px solid #ccc;padding: 10px;text-align: left;font-size: 16px;} 14 | .bordered th {background-color: #dce9f9; 15 | background-image: -webkit-gradient(linear, left top, left bottom, from(#ebf3fc), to(#dce9f9)); 16 | background-image: -webkit-linear-gradient(top, #ebf3fc, #dce9f9); 17 | background-image: -moz-linear-gradient(top, #ebf3fc, #dce9f9); 18 | background-image: -ms-linear-gradient(top, #ebf3fc, #dce9f9); 19 | background-image: -o-linear-gradient(top, #ebf3fc, #dce9f9); 20 | background-image: linear-gradient(top, #ebf3fc, #dce9f9); 21 | -webkit-box-shadow: 0 1px 0 rgba(255,255,255,.8) inset; 22 | -moz-box-shadow:0 1px 0 rgba(255,255,255,.8) inset; 23 | box-shadow: 0 1px 0 rgba(255,255,255,.8) inset; 24 | border-top: none; 25 | text-shadow: 0 1px 0 rgba(255,255,255,.5); 26 | } 27 | .bordered td:first-child, .bordered th:first-child {border-left: none;} 28 | .bordered th:first-child {-moz-border-radius: 6px 0 0 0;-webkit-border-radius: 6px 0 0 0;border-radius: 6px 0 0 0;} 29 | .bordered th:last-child {-moz-border-radius: 0 6px 0 0;-webkit-border-radius: 0 6px 0 0;border-radius: 0 6px 0 0;} 30 | .bordered th:only-child{-moz-border-radius: 6px 6px 0 0;-webkit-border-radius: 6px 6px 0 0;border-radius: 6px 6px 0 0; } 31 | .bordered tr:last-child td:first-child {-moz-border-radius: 0 0 0 6px;-webkit-border-radius: 0 0 0 6px;border-radius: 0 0 0 6px; } 32 | .bordered tr:last-child td:last-child {-moz-border-radius: 0 0 6px 0;-webkit-border-radius: 0 0 6px 0;border-radius: 0 0 6px 0;} 33 | .bordered tr a:hover{color: springgreen;} 34 | .more{width: 100%;height: auto;} 35 | .more_input{width: 30%; height: 25px;margin-left: 20px;} 36 | .more_button{width: 5%;font-size: 16px;height:30px;} -------------------------------------------------------------------------------- /hive/views.py: -------------------------------------------------------------------------------- 1 | #-*-coding:utf-8-*- 2 | from django.shortcuts import render,render_to_response 3 | from django.views.decorators.csrf import csrf_exempt 4 | from hive.models import Session 5 | import datetime 6 | from django.http import HttpResponseRedirect 7 | # Create your views here. 8 | 9 | @csrf_exempt 10 | def phive(request,username): 11 | sess_list = Session.objects.all().order_by("-time") 12 | 13 | if request.method=="POST": 14 | sessionname = request.POST.get("sessionname") 15 | hql = request.POST.get("hql") 16 | # print(sessionname,hql) 17 | 18 | #如果是填写事务名的表单提交 19 | if sessionname: 20 | #将sessionname写入数据库 21 | sess=Session(uname=username,sessionname=sessionname,time=datetime.datetime.now()) 22 | sess.save() 23 | return render_to_response("hive.html", { 24 | "name": username, 25 | "sessionname": sessionname, 26 | "sess_list":sess_list, 27 | }) 28 | #如果是编写的sql提交 29 | if hql: 30 | from phive import run_hql 31 | sessionname=request.POST.get("session") 32 | #将提交的hql写入数据库 33 | sess= Session.objects.get(sessionname=sessionname) 34 | sess.context=hql 35 | sess.save() 36 | 37 | result = run_hql(hql) 38 | return render_to_response("hive.html", { 39 | "name": username, 40 | "sessionname":sessionname, 41 | "sess_list":sess_list, 42 | "result":result, 43 | "text_sql":hql, 44 | }) 45 | 46 | else: 47 | return render_to_response("hive.html", { 48 | "name": username, 49 | "sess_list":sess_list, 50 | }) 51 | 52 | 53 | #if click old session 54 | @csrf_exempt 55 | def session(request,username,sessionname): 56 | sess_list = Session.objects.all().order_by("-time") 57 | if request.method=="POST": 58 | hql = request.POST.get("hql") 59 | #如果是编写的sql提交 60 | if hql: 61 | from phive import run_hql 62 | #sessionname=request.POST.get("session") 63 | #将提交的hql写入数据库 64 | sess= Session.objects.get(sessionname=sessionname) 65 | sess.context=hql 66 | sess.save() 67 | result = run_hql(hql) 68 | return render_to_response("hive.html", { 69 | "name": username, 70 | "sessionname":sessionname, 71 | "sess_list":sess_list, 72 | "result":result, 73 | "text_sql":hql, 74 | }) 75 | else: 76 | hql = Session.objects.get(sessionname=sessionname).context 77 | return render_to_response("hive.html",{ 78 | "name": username, 79 | "sessionname": sessionname, 80 | "sess_list":sess_list, 81 | "text_sql":hql, 82 | }) 83 | -------------------------------------------------------------------------------- /save/actionhdfs.py: -------------------------------------------------------------------------------- 1 | #-*-coding:utf-8-*- 2 | ''' 3 | >>> from hdfs.client import Client 4 | >>> client = Client("http://localhost:50070") # 50070: Hadoop默认namenode 5 | >>> dir(client) 6 | ['__class__', '__delattr__', '__dict__', '__doc__', '__format__', '__getattribute__', '__hash__', '__init__', 7 | '__module__', '__new__', '__reduce__', '__reduce_ex__', '__registry__', '__repr__', '__setattr__', '__sizeof__', 8 | '__str__', '__subclasshook__', '__weakref__', '_append', '_append_1', '_create', '_create_1', '_delete', 9 | '_get_content_summary', '_get_file_checksum', '_get_file_status', '_get_home_directory', '_list_status', 10 | '_mkdirs', '_open', '_rename', '_request', '_session', '_set_owner', '_set_permission', '_set_replication', 11 | '_set_times', '_timeout', 'checksum', 'content', 'delete', 'download', 'from_options', 'list', 'makedirs', 12 | 'parts', 'read', 'rename', 'resolve', 'root', 'set_owner', 'set_permission', 'set_replication', 'set_times', 13 | 'status', 'upload', 'url', 'walk', 'write'] 14 | ''' 15 | from hdfs import * 16 | # connect hdfs 17 | def connect(): 18 | client = Client("http://192.168.1.105:50070") 19 | return client 20 | #将字典转化为类 21 | def dict2obj(args): 22 | '把字典递归转化为类' 23 | class obj(object): 24 | def __init__(self, d): 25 | for a, b in d.items(): 26 | if isinstance(b, (list, tuple)): 27 | setattr(self, a, [obj(x) if isinstance(x, dict) else x for x in b]) 28 | else: 29 | setattr(self, a, obj(b) if isinstance(b, dict) else b) 30 | return obj(args) 31 | 32 | #get all file 33 | def get_all_file(path): 34 | client = connect() 35 | mess_list = [] 36 | if path=="/": 37 | pass 38 | else: 39 | path=path+"/" 40 | child_list = client.list(path) 41 | for child in child_list: 42 | one_dic = client.status(path+child) 43 | filepath = path+child 44 | one_dic["path"]=filepath 45 | dict2obj(one_dic) 46 | mess_list.append(dict2obj(one_dic)) 47 | return mess_list 48 | 49 | #more 50 | def show_more(path): 51 | client = connect() 52 | return client.status(path) 53 | #delete 54 | def delete_path(path): 55 | client = connect() 56 | return client.delete(path,recursive=True) 57 | 58 | #makedirs 59 | def mkdir_path(path): 60 | client = connect() 61 | return client.makedirs(path) 62 | 63 | #重命名 64 | def rename_path(old_path,new_path): 65 | client = connect() 66 | return client.rename(old_path,new_path) 67 | 68 | #下载文件 69 | def down_file(hdfs_path,local_path): 70 | client = connect() 71 | return client.download(hdfs_path,local_path,overwrite=True) 72 | 73 | #上传文件 74 | def upload_file(hdfs_path,local_path): 75 | client = connect() 76 | return client.upload(hdfs_path,local_path,overwrite=True) 77 | 78 | #login模块使用 79 | #在hdfs的根目录下创建一个当前用户的文件夹,如果存在则不创建 80 | def login_mkdir(name): 81 | client = connect() 82 | dict_list = client.list("/") 83 | if name not in dict_list: 84 | client.makedirs("/%s" % name) -------------------------------------------------------------------------------- /static/css/index.css: -------------------------------------------------------------------------------- 1 | * { margin: 0; padding: 0 } 2 | body { font: 12px "微软雅黑", Arial, Helvetica, sans-serif; color: #756F71;min-width: 960px} 3 | img { border: 0; display: block } 4 | ul { list-style: none; } 5 | a:link, a:visited {text-decoration: none; color: black;} 6 | .left { float: left; } 7 | .right { float: right;} 8 | /*header*/ 9 | .flase-header{width: 100%;height: 80px;} 10 | .header{width: 100%;height: 80px;background-color: #000000;position: fixed;z-index: 1;} 11 | .log{font-size: 40px;color: #FFFFFF;margin-left: 100px;line-height: 80px;} 12 | .self-center{margin-right: 80px;line-height: 80px;width: 150px;height: 80px;background-color: cornflowerblue;text-align: center} 13 | .self-center a{font-size:20px;color: #FFFFFF;} 14 | .old-in{color: #FFFFFF;font-size: 15px;width: 100px;height: 80px;} 15 | .old-p{width: 100px;height: 80px;} 16 | .old-p span{color: #ff6600;position: absolute;top:30px;right: 30px;} 17 | .old-p:hover{background-color: #747778;} 18 | #old-show{width: 100px;height:510px;background-color: skyblue;float: right;opacity:0.5;filter:alpha(opacity=50);display: none} 19 | #old-show ul{width: 100%;line-height: 60px;text-align: center;} 20 | #old-show ul li:hover{background-color: #ff6600;opacity:0.7;filter:alpha(opacity=70);} 21 | /*center*/ 22 | .center{width: 100%;min-height: 520px;margin: 0 auto;} 23 | /*center-left*/ 24 | .center-left{width: 74%;height: 500px;margin-top: 10px;} 25 | /*center-right*/ 26 | .center-right{width: 25%;height:500px;border: 1px #EBEBEB solid;margin-top: 10px;background-color: #FFFFFF; 27 | -webkit-box-shadow: 1px 1px 2px rgba(0,0,0,0.2); 28 | -moz-box-shadow: 1px 1px 2px rgba(0,0,0,0.2); 29 | box-shadow: 1px 1px 2px rgba(0,0,0,0.2); 30 | margin-right: 4px; 31 | -webkit-transition: all 300ms linear; 32 | -moz-transition: all 300ms linear; 33 | -o-transition: all 300ms linear; 34 | -ms-transition: all 300ms linear; 35 | transition: all 300ms linear;} 36 | .new_head{width: 100%;height: 50px;background-color: #EBEBEB;text-align: center;line-height: 50px;font-size: 25px;} 37 | .new-list ul {line-height: 30px;font-size: 15px;margin-left: 20px;text-align: center} 38 | /*service-list*/ 39 | .service-list{width: 100%;height: 600px;background-color: #F5F6F6;} 40 | .service-title{width: 100%;height:100px;font-size: 25px;text-align: center;line-height: 100px;} 41 | .service-one{width: 21%;height: 490px;background-color: #EBEBEB;border: 1px skyblue solid;margin-top: 20px; 42 | -webkit-box-shadow: 1px 1px 2px rgba(28,183,253,0.4); 43 | -moz-box-shadow: 1px 1px 2px rgba(28,183,253,0.4); 44 | box-shadow: 1px 1px 2px rgba(28,183,253,0.4); 45 | margin-right: 4px; 46 | /*28,183,253*/ 47 | -webkit-transition: all 300ms linear; 48 | -moz-transition: all 300ms linear; 49 | -o-transition: all 300ms linear; 50 | -ms-transition: all 300ms linear; 51 | transition: all 300ms linear;} 52 | .service-one:hover{width: 23%;height:530px;z-index: 1;margin-top: 0;background-color: antiquewhite} 53 | .service-one-title{width: 100%;height: 100px;background-color: deepskyblue;text-align: center;line-height: 100px;font-size: 25px;} 54 | .service-one ul {font-size: 20px;text-align: center;} 55 | .service-one ul li{height: 50px;line-height: 50px;} 56 | .service-one ul li:hover{background-color: #1ABC9C} 57 | /*resource*/ 58 | /*save*/ 59 | 60 | 61 | /*footer*/ 62 | .footer1{width: 100%;min-height:100px;background-color: #EBEBEB;margin-top:50px;} 63 | .phone{margin-left: 100px;} 64 | .footer1 ul li{float:left} 65 | .footer1 span{font-size: 18px;line-height: 100px;margin-left: 10px;} 66 | .footer2{width: 100%;height:130px;font: 14px "微软雅黑", Arial, Helvetica, sans-serif;} 67 | footer2 {line-height:30px;height:130px;margin:0 auto;margin-left: 100px;} 68 | footer2 p{float: left} 69 | footer2 p span{padding-left:10px;color: black;;margin-left: 100px;} 70 | footer2 p span a{color:black;} -------------------------------------------------------------------------------- /static/js/ie.js: -------------------------------------------------------------------------------- 1 | // ----------------------------------------------------------------------------------- 2 | // http://cssSlider.com/ 3 | // cssSlider is a free software that helps you easily generate delicious 4 | // slideshows with gorgeous transition effects, in a few clicks without writing a single line of code. 5 | // Generated by cssSlider 1.0 6 | // 7 | //*********************************************** 8 | // Obfuscated by Javascript Obfuscator 9 | // http://javascript-source.com 10 | //*********************************************** 11 | window.onload=function(){var h=2000;function c(r,s){if(!r){return[]}var k=[];var q=new RegExp("(^| )"+s+"( |\\d|$)");var p=r.getElementsByTagName("*");for(var o=0,n=p.length;o-1);q.slides=c(q.slider.getElementsByTagName("ul")[0],"num");q.playPause=c(q.slider,"cs_play_pause")[0];q.btnPlay=c(q.playPause,"cs_play")[0];q.btnPause=c(q.playPause,"cs_pause")[0];q.arrowPrev=l(c(q.slider,"cs_arrowprev")[0],"num",true);q.arrowNext=l(c(q.slider,"cs_arrownext")[0],"num",true);q.bullets=c(q.slider,"cs_bullets")[0];q.description=c(c(q.slider,"cs_description")[0],"num");s();k()};function s(){l(q.slider,"cs_anchor",false);i(q.slider,{overflow:"hidden"});i([q.playPause,q.autoPlayState?q.btnPause:q.btnPlay,q.arrowPrev,q.arrowNext,q.arrowPrev.getElementsByTagName("label")[0],q.arrowNext.getElementsByTagName("label")[0]],{display:"block",opacity:1});i(q.slides.concat(q.description),{display:"none",zIndex:0,opacity:0,filter:"alpha(opacity=0)"});var u=[];for(var t in q.description){var w=c(q.description[t],"cs_title")[0],v=c(q.description[t],"cs_descr")[0];if(w){u.push(w);u.push(c(w,"cs_wrapper")[0])}if(v){u.push(v);u.push(c(v,"cs_wrapper")[0])}}i(u,{"-ms-transform":"none",transform:"none",opacity:1,visibility:"visible",filter:"alpha(opacity=100)"});i(q.slides,{left:"0px",top:"0px"});i([q.slides[p],q.description[p]],{display:"block",zIndex:3,opacity:1,filter:"alpha(opacity=100)"});i([q.playPause,q.arrowPrev,q.arrowNext],{"-ms-transform":"none",transform:"none"});e(q.btnPlay,q.btnPause,q.autoPlayState);if(q.autoPlayState){j()}}function k(){g(q.arrowPrev,"click",function(){r(n-1<0?q.slides.length-1:n-1)});g(q.arrowNext,"click",function(){r(n+1>=q.slides.length?0:n+1)});g(q.bullets,"click",function(t){if(t.srcElement){var u=t.srcElement.className.replace(/num/,"")}else{if(t.target){var u=t.target.className.replace(/num/,"")}}r(parseInt(u))});g(q.playPause,"click",function(){q.autoPlayState=!q.autoPlayState;if(q.autoPlayState){j()}e(q.btnPlay,q.btnPause,q.autoPlayState)})}function r(v){if(o||v==n){return}o=1;p=n;n=v;i(q.slides.concat(q.description),{display:"none",opacity:0,zIndex:0,filter:"alpha(opacity=0)","-ms-transform":"none",transform:"none"});i(q.slides[p],{display:"block",zIndex:1,opacity:1,filter:"alpha(opacity=100)"});i(q.slides[n],{zIndex:2});i(q.description[n],{display:"block",zIndex:3,opacity:1,filter:"alpha(opacity=100)"});var t=0;(function u(){if(t>1){t=1}i(q.slides[n],{display:"block",opacity:t,filter:"alpha(opacity="+t*100+")"});if(t==1){i(q.slides[p],{display:"none",zIndex:0,opacity:0,filter:"alpha(opacity=0)"});o=0}else{setTimeout(u,15)}t+=0.05})()}function j(){setTimeout(function(){if(q.autoPlayState){r(n+1>=q.slides.length?0:n+1);j()}},h)}}var a=c(document.body,"csslider");for(var d=0,f=a.length;d广联达数据分析平台|云存储服务{% endblock %} 3 | {% block css %} 4 | 5 | {% endblock %} 6 | {% block header %} 7 | {% if name %} 8 | 9 | {% else%} 10 | 11 | {% endif %} 12 | {% endblock %} 13 | {% block center_index%}{%endblock%} 14 | {% block center%} 15 |
16 |
Browse Directory
17 |

18 |
19 |
20 | 21 |

22 | {% if error %}
Error:{{error}}
{% endif %} 23 | {% if more %}
【详情】当前路径:{{path_value}}
【包括】:
{% endif %} 24 |
25 | 26 | 27 | 28 | 29 | 30 | {% for mess in mess_list %} 31 | 32 | 33 | 34 | 35 | 36 | {%endfor %} 37 |
PermissionOwnerGroupReplicationLengthBlockSizeTypeChildren
Num
FileIdNameAction
{{mess.permission}}{{mess.owner}}{{mess.group}}{{mess.replication}}{{mess.length}}{{mess.blockSize}}{{mess.type}}{{mess.childrenNum}}{{mess.fileId}}{{ mess.path }}查看详情/其他操作
38 | {% if root_more and not error %} 39 |
我要对目录【{{path_value}} 】 进行操作: 40 | CLICK
41 |
42 | {% endif %} 43 |
44 | 45 |
46 | {% if more %} 47 |
  目录【{{path_value}} 】 的具体信息:
48 |
49 | 50 | 51 | {% for k,v in more_mess.items %} 52 | 53 | {% endfor %} 54 | 55 | 56 | {% for k,v in more_mess.items %} 57 | 58 | {% endfor %} 59 | 60 |
{{ k }}
{{ v }}
61 |
  目录【{{path_value}} 】 的具体操作: 62 | 63 |
64 |

65 |
66 |
67 |
68 | 69 | 70 |
71 |
72 |
73 | 74 | 75 |
76 |
77 |
78 | 79 | 80 |
81 |
82 |
83 | 84 | 85 |
86 | {% endif %} 87 |
88 | 89 | {% endblock %} -------------------------------------------------------------------------------- /templates/base.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | {% block title %}{% endblock%} 6 | 7 | 8 | {% block css %}{% endblock %} 9 | 10 | 11 | {% block js %}{% endblock %} 12 | 13 | 14 |
15 | 16 |
17 |
原生版
18 |
19 | 26 |
27 |
28 | {% block header %}{% endblock %} 29 |
30 |
31 | 32 | {% block center_index %} 33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 | 41 | 42 |
43 | 44 | 45 | 46 | 47 | 48 | 49 |
    50 |
    51 | 52 |
    53 |
  • 54 | Clouds 55 |
  • 56 |
  • 57 | Typewriter 58 |
  • 59 |
  • 60 | Bicycle 61 |
  • 62 |
63 | 64 |
65 | 68 | 71 | 74 |
75 | 76 |
77 | 78 | 79 | 80 |
81 |
82 | 83 | 84 | 85 |
86 | 87 |
88 | 92 | 96 | 100 |
101 |
102 |
103 |
104 |
105 |
106 |
107 |
108 | 109 |
110 | 123 |
124 | {% endblock %} 125 | 126 | {% block center %}{% endblock %} 127 | 128 |
129 |

130 |
131 |
    132 |
  • 咨询电话:010-1000-1234  |
  • 133 |
  • 云资源应有尽有  |  
  • 134 |
  • PB级数据存储  |  
  • 135 |
  • 毫秒级计算与查询  |  
  • 136 |
  • 精准的数据分析
  • 137 |
138 |
139 |
140 |
141 | 142 |
143 |

144 | 关于我们        145 | 法律声明        146 | 廉政举报 147 |

148 |
149 |

150 | 友情链接 =》    151 | Glodon官网        152 | 云测试平台        153 | 云资源管理平台       154 | 统一登录门户     155 |

156 |
157 |

Copyright 2016 by 广联达 研发资源服务中心   |   地址:北京市海淀区西北旺东路中关村软件园E13号广联达大厦 邮编:100193

158 |
159 |
160 | 161 | -------------------------------------------------------------------------------- /static/css/style.css: -------------------------------------------------------------------------------- 1 | @font-face { 2 | font-weight: normal; 3 | font-style: normal; 4 | } 5 | .csslider1 { 6 | display: inline-block; 7 | position: relative; 8 | max-width: 1550px; 9 | width: 100%; 10 | } 11 | .csslider1 > .cs_anchor { 12 | display: none; 13 | } 14 | .csslider1 > ul { 15 | position: relative; 16 | z-index: 1; 17 | font-size: 0; 18 | line-height: 0; 19 | margin: 0 auto; 20 | padding: 0; 21 | 22 | overflow: hidden; 23 | white-space: nowrap; 24 | } 25 | .csslider1 > ul > li.img img { 26 | width: 100%; 27 | } 28 | .csslider1 > ul > li.img { 29 | font-size: 0pt; 30 | 31 | -khtml-user-select: none; 32 | -moz-user-select: none; 33 | user-select: none; 34 | } 35 | .csslider1 > ul > li { 36 | position: relative; 37 | display: inline-block; 38 | width: 100%; 39 | height: 100%; 40 | overflow: hidden; 41 | font-size: 15px; 42 | font-size: initial; 43 | line-height: normal; 44 | white-space: normal; 45 | vertical-align: top; 46 | -webkit-box-sizing: border-box; 47 | -moz-box-sizing: border-box; 48 | box-sizing: border-box; 49 | 50 | -webkit-transform: translate3d(0,0,0); 51 | -moz-transform: translate3d(0,0,0); 52 | -ms-transform: translate3d(0,0,0); 53 | -o-transform: translate3d(0,0,0); 54 | transform: translate3d(0,0,0); 55 | } 56 | .csslider1 .cs_lnk{ 57 | position: absolute; 58 | top: -9999px; 59 | left: -9999px; 60 | font-size: 0pt; 61 | opacity: 0; 62 | filter: alpha(opacity=0); 63 | } 64 | .csslider1 > .cs_arrowprev, 65 | .csslider1 > .cs_arrownext { 66 | position: absolute; 67 | top: 50%; 68 | -webkit-box-sizing: content-box; 69 | -moz-box-sizing: content-box; 70 | box-sizing: content-box; 71 | 72 | -webkit-touch-callout: none; 73 | -webkit-user-select: none; 74 | -khtml-user-select: none; 75 | -moz-user-select: none; 76 | -ms-user-select: none; 77 | user-select: none; 78 | z-index: 5; 79 | } 80 | .csslider1 > .cs_arrowprev > label, 81 | .csslider1 > .cs_arrownext > label { 82 | position: absolute; 83 | 84 | text-decoration: none; 85 | cursor: pointer; 86 | opacity: 0; 87 | z-index: -1; 88 | } 89 | .csslider1 > .cs_arrowprev { 90 | left: 0; 91 | } 92 | .csslider1 > .cs_arrownext { 93 | right: 0; 94 | } 95 | 96 | .csslider1 > .cs_arrowprev > label.num2, 97 | .csslider1 > .cs_arrownext > label.num1 { 98 | opacity: 1; 99 | z-index: 5; 100 | } 101 | .csslider1 > .slide:checked ~ .cs_arrowprev > label, 102 | .csslider1 > .slide:checked ~ .cs_arrownext > label { 103 | opacity: 0; 104 | z-index: -1; 105 | } 106 | 107 | 108 | 109 | .csslider1 > #cs_slide1_0:checked ~ .cs_arrowprev > label.num2, 110 | .csslider1 > #cs_slide1_0:checked ~ .cs_arrownext > label.num1, 111 | .csslider1 > #cs_slide1_1:checked ~ .cs_arrowprev > label.num0, 112 | .csslider1 > #cs_slide1_1:checked ~ .cs_arrownext > label.num2, 113 | .csslider1 > #cs_slide1_2:checked ~ .cs_arrowprev > label.num1, 114 | .csslider1 > #cs_slide1_2:checked ~ .cs_arrownext > label.num0 { 115 | opacity: 1; 116 | z-index: 5; 117 | } 118 | 119 | /* calculate autoplay */ 120 | @-webkit-keyframes arrow { 121 | 0%, 33.32333333333334% { opacity: 1; z-index: 5; } 122 | 33.333333333333336%, 100% { opacity: 0; z-index: -1; } 123 | } 124 | @-moz-keyframes arrow { 125 | 0%, 33.32333333333334% { opacity: 1; z-index: 5; } 126 | 33.333333333333336%, 100% { opacity: 0; z-index: -1; } 127 | } 128 | @-ms-keyframes arrow { 129 | 0%, 33.32333333333334% { opacity: 1; z-index: 5; } 130 | 33.333333333333336%, 100% { opacity: 0; z-index: -1; } 131 | } 132 | @-o-keyframes arrow { 133 | 0%, 33.32333333333334% { opacity: 1; z-index: 5; } 134 | 33.333333333333336%, 100% { opacity: 0; z-index: -1; } 135 | } 136 | @keyframes arrow { 137 | 0%, 33.32333333333334% { opacity: 1; z-index: 5; } 138 | 33.333333333333336%, 100% { opacity: 0; z-index: -1; } 139 | } 140 | 141 | 142 | .csslider1 > #cs_play1:checked ~ .cs_arrowprev > label.num2, 143 | .csslider1 > #cs_play1:checked ~ .cs_arrownext > label.num1, 144 | .csslider1 > #cs_pause1:checked ~ .cs_arrowprev > label.num2, 145 | .csslider1 > #cs_pause1:checked ~ .cs_arrownext > label.num1 { 146 | -webkit-animation: arrow 12000ms infinite -2000ms; 147 | -moz-animation: arrow 12000ms infinite -2000ms; 148 | -ms-animation: arrow 12000ms infinite -2000ms; 149 | -o-animation: arrow 12000ms infinite -2000ms; 150 | animation: arrow 12000ms infinite -2000ms; 151 | 152 | } 153 | .csslider1 > #cs_play1:checked ~ .cs_arrowprev > label.num0, 154 | .csslider1 > #cs_play1:checked ~ .cs_arrownext > label.num2, 155 | .csslider1 > #cs_pause1:checked ~ .cs_arrowprev > label.num0, 156 | .csslider1 > #cs_pause1:checked ~ .cs_arrownext > label.num2 { 157 | -webkit-animation: arrow 12000ms infinite 2000ms; 158 | -moz-animation: arrow 12000ms infinite 2000ms; 159 | -ms-animation: arrow 12000ms infinite 2000ms; 160 | -o-animation: arrow 12000ms infinite 2000ms; 161 | animation: arrow 12000ms infinite 2000ms; 162 | 163 | } 164 | .csslider1 > #cs_play1:checked ~ .cs_arrowprev > label.num1, 165 | .csslider1 > #cs_play1:checked ~ .cs_arrownext > label.num0, 166 | .csslider1 > #cs_pause1:checked ~ .cs_arrowprev > label.num1, 167 | .csslider1 > #cs_pause1:checked ~ .cs_arrownext > label.num0 { 168 | -webkit-animation: arrow 12000ms infinite 6000ms; 169 | -moz-animation: arrow 12000ms infinite 6000ms; 170 | -ms-animation: arrow 12000ms infinite 6000ms; 171 | -o-animation: arrow 12000ms infinite 6000ms; 172 | animation: arrow 12000ms infinite 6000ms; 173 | 174 | } 175 | 176 | 177 | .csslider1.cs_pauseHover:hover > .cs_arrowprev > label, 178 | .csslider1 > #cs_pause1:checked ~ .cs_arrowprev > label, 179 | .csslider1.cs_pauseHover:hover > .cs_arrownext > label, 180 | .csslider1 > #cs_pause1:checked ~ .cs_arrownext > label { 181 | -webkit-animation-play-state: paused !important; 182 | -moz-animation-play-state: paused !important; 183 | -ms-animation-play-state: paused !important; 184 | -o-animation-play-state: paused !important; 185 | animation-play-state: paused !important; 186 | } 187 | 188 | /* stop */ 189 | .csslider1 > .slide:checked ~ .cs_arrowprev > label, 190 | .csslider1 > .slide:checked ~ .cs_arrownext > label { 191 | -webkit-animation: none; 192 | -moz-animation: none; 193 | -ms-animation: none; 194 | -o-animation: none; 195 | animation: none; 196 | } 197 | 198 | 199 | /* /calculate autoplay */ 200 | .csslider1 > .cs_bullets { 201 | position: absolute; 202 | left: 0; 203 | width: 100%; 204 | z-index: 6; 205 | font-size: 0; 206 | line-height: 8pt; 207 | text-align: center; 208 | -webkit-touch-callout: none; 209 | -webkit-user-select: none; 210 | -khtml-user-select: none; 211 | -moz-user-select: none; 212 | -ms-user-select: none; 213 | user-select: none; 214 | } 215 | .csslider1 > .cs_bullets > div { 216 | margin-left: -50%; 217 | width: 100%; 218 | } 219 | .csslider1 > .cs_bullets > label { 220 | position: relative; 221 | display: inline-block; 222 | cursor: pointer; 223 | } 224 | .csslider1 > .cs_bullets > label > .cs_thumb { 225 | visibility: hidden; 226 | position: absolute; 227 | opacity: 0; 228 | z-index: 1; 229 | line-height: 0; 230 | left: -39.5px; 231 | top: -48px; 232 | }.csslider1 > .cs_description { 233 | z-index: 3; 234 | } 235 | .csslider1 > .cs_description a, 236 | .csslider1 > .cs_description a:visited, 237 | .csslider1 > .cs_description a:active { 238 | color: inherit; 239 | } 240 | .csslider1 > .cs_description a:hover { 241 | text-decoration: none; 242 | } 243 | .csslider1 > .cs_description > label { 244 | position: absolute; 245 | word-wrap: break-word; 246 | white-space: normal; 247 | text-align: left; 248 | max-width: 50%; 249 | left: 0; 250 | } 251 | .csslider1 > .cs_description > label > span { 252 | vertical-align: top; 253 | } 254 | .csslider1 > .cs_description > label span { 255 | display: inline-block; 256 | } 257 | .csslider1 > #cs_slide1_0:checked ~ ul > li.num0, 258 | .csslider1 > #cs_slide1_1:checked ~ ul > li.num1, 259 | .csslider1 > #cs_slide1_2:checked ~ ul > li.num2 { 260 | opacity: 1; 261 | z-index: 2; 262 | } 263 | 264 | .csslider1 > ul > li { 265 | position: absolute; 266 | left: 0; 267 | top: 0; 268 | display: inline-block; 269 | opacity: 0; 270 | z-index: 1; 271 | 272 | -webkit-transition: opacity 2000ms ease; 273 | -moz-transition: opacity 2000ms ease; 274 | -ms-transition: opacity 2000ms ease; 275 | -o-transition: opacity 2000ms ease; 276 | transition: opacity 2000ms ease; 277 | 278 | } 279 | .csslider1 > ul > li.num0 { 280 | opacity: 1; 281 | z-index: 2; 282 | } 283 | .csslider1 > .slide:checked ~ ul > li.num0 { 284 | opacity: 0; 285 | z-index: 1; 286 | } 287 | 288 | /* calculate autoplay */ 289 | @-webkit-keyframes fade { 290 | 0%, 50%, 100% { opacity: 0; z-index: 2; } 291 | 16.666666666666668%, 33.333333333333336% { opacity: 1; z-index: 2; } 292 | } 293 | @-moz-keyframes fade { 294 | 0%, 50%, 100% { opacity: 0; z-index: 2; } 295 | 16.666666666666668%, 33.333333333333336% { opacity: 1; z-index: 2; } 296 | } 297 | @-ms-keyframes fade { 298 | 0%, 50%, 100% { opacity: 0; z-index: 2; } 299 | 16.666666666666668%, 33.333333333333336% { opacity: 1; z-index: 2; } 300 | } 301 | @-o-keyframes fade { 302 | 0%, 50%, 100% { opacity: 0; z-index: 2; } 303 | 16.666666666666668%, 33.333333333333336% { opacity: 1; z-index: 2; } 304 | } 305 | @keyframes fade { 306 | 0%, 50%, 100% { opacity: 0; z-index: 2; } 307 | 16.666666666666668%, 33.333333333333336% { opacity: 1; z-index: 2; } 308 | } 309 | 310 | 311 | .csslider1 > #cs_play1:checked ~ ul > li.num0, 312 | .csslider1 > #cs_pause1:checked ~ ul > li.num0 { 313 | -webkit-animation: fade 12000ms infinite -2000ms; 314 | -moz-animation: fade 12000ms infinite -2000ms; 315 | -ms-animation: fade 12000ms infinite -2000ms; 316 | -o-animation: fade 12000ms infinite -2000ms; 317 | animation: fade 12000ms infinite -2000ms; 318 | 319 | } 320 | .csslider1 > #cs_play1:checked ~ ul > li.num1, 321 | .csslider1 > #cs_pause1:checked ~ ul > li.num1 { 322 | -webkit-animation: fade 12000ms infinite 2000ms; 323 | -moz-animation: fade 12000ms infinite 2000ms; 324 | -ms-animation: fade 12000ms infinite 2000ms; 325 | -o-animation: fade 12000ms infinite 2000ms; 326 | animation: fade 12000ms infinite 2000ms; 327 | 328 | } 329 | .csslider1 > #cs_play1:checked ~ ul > li.num2, 330 | .csslider1 > #cs_pause1:checked ~ ul > li.num2 { 331 | -webkit-animation: fade 12000ms infinite 6000ms; 332 | -moz-animation: fade 12000ms infinite 6000ms; 333 | -ms-animation: fade 12000ms infinite 6000ms; 334 | -o-animation: fade 12000ms infinite 6000ms; 335 | animation: fade 12000ms infinite 6000ms; 336 | 337 | } 338 | 339 | 340 | 341 | 342 | .csslider1 > #cs_play1:checked ~ ul > li, 343 | .csslider1 > #cs_pause1:checked ~ ul > li { 344 | -webkit-transition: none; 345 | -moz-transition: none; 346 | -ms-transition: none; 347 | -o-transition: none; 348 | transition: none; 349 | 350 | } 351 | 352 | .csslider1.cs_pauseHover:hover > ul > li, 353 | .csslider1 > #cs_pause1:checked ~ ul > li{ 354 | -webkit-animation-play-state: paused !important; 355 | -moz-animation-play-state: paused !important; 356 | -ms-animation-play-state: paused !important; 357 | -o-animation-play-state: paused !important; 358 | animation-play-state: paused !important; 359 | } 360 | /* stop */ 361 | 362 | .csslider1 > .slide:checked ~ ul > li { 363 | -webkit-animation: none; 364 | -moz-animation: none; 365 | -ms-animation: none; 366 | -o-animation: none; 367 | animation: none; 368 | } 369 | 370 | /* /calculate autoplay */ 371 | .csslider1 { 372 | -webkit-perspective: 500px; 373 | -moz-perspective: 500px; 374 | -ms-perspective: 500px; 375 | -o-perspective: 500px; 376 | perspective: 500px; 377 | 378 | } 379 | .csslider1 > .cs_play_pause { 380 | -webkit-transition: .5s opacity 0s ease; 381 | -moz-transition: .5s opacity 0s ease; 382 | -ms-transition: .5s opacity 0s ease; 383 | -o-transition: .5s opacity 0s ease; 384 | transition: .5s opacity 0s ease; 385 | 386 | } 387 | .csslider1 > .cs_arrowprev { 388 | -webkit-transition: .5s opacity .15s ease, .5s -webkit-transform .15s cubic-bezier(0.680, -0.550, 0.265, 1.550); 389 | -moz-transition: .5s opacity .15s ease, .5s -moz-transform .15s cubic-bezier(0.680, -0.550, 0.265, 1.550); 390 | -ms-transition: .5s opacity .15s ease, .5s -ms-transform .15s cubic-bezier(0.680, -0.550, 0.265, 1.550); 391 | -o-transition: .5s opacity .15s ease, .5s -o-transform .15s cubic-bezier(0.680, -0.550, 0.265, 1.550); 392 | transition: .5s opacity .15s ease, .5s transform .15s cubic-bezier(0.680, -0.550, 0.265, 1.550); 393 | 394 | -webkit-transform: rotateY(-90deg); 395 | -moz-transform: rotateY(-90deg); 396 | -ms-transform: rotateY(-90deg); 397 | -o-transform: rotateY(-90deg); 398 | transform: rotateY(-90deg); 399 | 400 | } 401 | .csslider1 > .cs_arrownext { 402 | -webkit-transition: .5s opacity .3s ease, .5s -webkit-transform .3s cubic-bezier(0.680, -0.550, 0.265, 1.550); 403 | -moz-transition: .5s opacity .3s ease, .5s -moz-transform .3s cubic-bezier(0.680, -0.550, 0.265, 1.550); 404 | -ms-transition: .5s opacity .3s ease, .5s -ms-transform .3s cubic-bezier(0.680, -0.550, 0.265, 1.550); 405 | -o-transition: .5s opacity .3s ease, .5s -o-transform .3s cubic-bezier(0.680, -0.550, 0.265, 1.550); 406 | transition: .5s opacity .3s ease, .5s transform .3s cubic-bezier(0.680, -0.550, 0.265, 1.550); 407 | 408 | -webkit-transform: rotateY(90deg); 409 | -moz-transform: rotateY(90deg); 410 | -ms-transform: rotateY(90deg); 411 | -o-transform: rotateY(90deg); 412 | transform: rotateY(90deg); 413 | 414 | } 415 | .csslider1 > .cs_arrowprev, 416 | .csslider1 > .cs_arrownext, 417 | .csslider1 > .cs_play_pause { 418 | opacity: 0; 419 | } 420 | .csslider1:hover > .cs_arrowprev, 421 | .csslider1:hover > .cs_arrownext, 422 | .csslider1:hover > .cs_play_pause { 423 | opacity: 1; 424 | -webkit-transform: rotateX(0deg); 425 | -moz-transform: rotateX(0deg); 426 | -ms-transform: rotateX(0deg); 427 | -o-transform: rotateX(0deg); 428 | transform: rotateX(0deg); 429 | 430 | }.csslider1 > .cs_arrowprev > label, 431 | .csslider1 > .cs_arrownext > label { 432 | overflow: hidden; 433 | margin-top: -35px; 434 | width: 40px; 435 | height: 70px; 436 | 437 | /* Fallback for web browsers that doesn't support RGBa */ 438 | background: #000; 439 | background-color: rgba(0,0,0,0.6); 440 | 441 | -webkit-border-radius: 4px; 442 | -moz-border-radius: 4px; 443 | border-radius: 4px; 444 | } 445 | .csslider1 > .cs_arrowprev { 446 | left: 70px; 447 | } 448 | .csslider1 > .cs_arrownext { 449 | right: 70px; 450 | } 451 | .csslider1 > .cs_arrowprev > label { 452 | right: 0; 453 | } 454 | .csslider1 > .cs_arrownext > label { 455 | left: 0; 456 | } 457 | .csslider1 > .cs_arrowprev > label:after { 458 | content: '<'; 459 | } 460 | .csslider1 > .cs_arrownext > label:after { 461 | content: '>'; 462 | } 463 | .csslider1 > .cs_arrowprev > label:after, 464 | .csslider1 > .cs_arrownext > label:after { 465 | display: block; 466 | font: 40px "demurecontrols"; 467 | text-align: center; 468 | line-height: 76px; 469 | color: #fff; 470 | } 471 | 472 | 473 | 474 | 475 | .csslider1 > .cs_arrowprev > label, 476 | .csslider1 > .cs_arrownext > label { 477 | -webkit-transition: 300ms width ease, 300ms margin-left ease, 300ms background-color ease; 478 | -moz-transition: 300ms width ease, 300ms margin-left ease, 300ms background-color ease; 479 | -ms-transition: 300ms width ease, 300ms margin-left ease, 300ms background-color ease; 480 | -o-transition: 300ms width ease, 300ms margin-left ease, 300ms background-color ease; 481 | transition: 300ms width ease, 300ms margin-left ease, 300ms background-color ease; 482 | 483 | } 484 | .csslider1 > .cs_arrowprev:hover > label { 485 | background-color: #1FA5AD; 486 | width: 70px; 487 | } 488 | .csslider1 > .cs_arrownext:hover > label { 489 | background-color: #1FA5AD; 490 | width: 70px; 491 | }.csslider1 > .cs_bullets { 492 | bottom: 5px; 493 | margin-bottom: 5px; 494 | } 495 | 496 | .csslider1 > .cs_bullets > label { 497 | -webkit-perspective: 500px; 498 | -moz-perspective: 500px; 499 | -ms-perspective: 500px; 500 | -o-perspective: 500px; 501 | perspective: 500px; 502 | 503 | } 504 | 505 | .csslider1 > .cs_bullets > label > .cs_thumb { 506 | border: 3px solid #1FA5AD; 507 | margin-top: -11px; 508 | -webkit-transition: opacity 0.5s cubic-bezier(0.175, 0.885, 0.320, 1.275), -webkit-transform 0.5s cubic-bezier(0.175, 0.885, 0.320, 1.275), visibility 0.5s cubic-bezier(0.175, 0.885, 0.320, 1.275); 509 | -moz-transition: opacity 0.5s cubic-bezier(0.175, 0.885, 0.320, 1.275), -moz-transform 0.5s cubic-bezier(0.175, 0.885, 0.320, 1.275), visibility 0.5s cubic-bezier(0.175, 0.885, 0.320, 1.275); 510 | -ms-transition: opacity 0.5s cubic-bezier(0.175, 0.885, 0.320, 1.275), -ms-transform 0.5s cubic-bezier(0.175, 0.885, 0.320, 1.275), visibility 0.5s cubic-bezier(0.175, 0.885, 0.320, 1.275); 511 | -o-transition: opacity 0.5s cubic-bezier(0.175, 0.885, 0.320, 1.275), -o-transform 0.5s cubic-bezier(0.175, 0.885, 0.320, 1.275), visibility 0.5s cubic-bezier(0.175, 0.885, 0.320, 1.275); 512 | transition: opacity 0.5s cubic-bezier(0.175, 0.885, 0.320, 1.275), transform 0.5s cubic-bezier(0.175, 0.885, 0.320, 1.275), visibility 0.5s cubic-bezier(0.175, 0.885, 0.320, 1.275); 513 | 514 | -webkit-transform-origin: 0% 100% 0px; 515 | -moz-transform-origin: 0% 100% 0px; 516 | -ms-transform-origin: 0% 100% 0px; 517 | -o-transform-origin: 0% 100% 0px; 518 | transform-origin: 0% 100% 0px; 519 | 520 | -webkit-transform: rotateX(90deg); 521 | -moz-transform: rotateX(90deg); 522 | -ms-transform: rotateX(90deg); 523 | -o-transform: rotateX(90deg); 524 | transform: rotateX(90deg); 525 | 526 | } 527 | .csslider1 > .cs_bullets > label > .cs_thumb:before { 528 | content: ''; 529 | position: absolute; 530 | width: 0; 531 | height: 0; 532 | left: 50%; 533 | margin-left: -1px; 534 | bottom: -8px; 535 | border-left: 7px solid transparent; 536 | border-right: 7px solid transparent; 537 | 538 | border-top: 7px solid #1FA5AD; 539 | } 540 | .csslider1 > .cs_bullets > label:hover > .cs_thumb { 541 | visibility: visible; 542 | opacity: 1; 543 | -webkit-transform: rotateX(0deg); 544 | -moz-transform: rotateX(0deg); 545 | -ms-transform: rotateX(0deg); 546 | -o-transform: rotateX(0deg); 547 | transform: rotateX(0deg); 548 | 549 | } 550 | 551 | 552 | .csslider1 > .cs_bullets > label { 553 | margin: 0 6px; 554 | padding: 9px; 555 | -webkit-border-radius: 50%; 556 | -moz-border-radius: 50%; 557 | border-radius: 50%; 558 | 559 | /* Fallback for web browsers that doesn't support RGBa */ 560 | background: #000; 561 | background-color: rgba(0,0,0,0.6); 562 | } 563 | 564 | .csslider1 > .cs_bullets > label.num0 { 565 | background-color: #1FA5AD; 566 | } 567 | .csslider1 > .slide:checked ~ .cs_bullets > label { 568 | /* Fallback for web browsers that doesn't support RGBa */ 569 | background: #000; 570 | background-color: rgba(0,0,0,0.6); 571 | } 572 | 573 | .csslider1 > #cs_slide1_0:checked ~ .cs_bullets > label.num0, 574 | .csslider1 > #cs_slide1_1:checked ~ .cs_bullets > label.num1, 575 | .csslider1 > #cs_slide1_2:checked ~ .cs_bullets > label.num2 { 576 | background-color: #1FA5AD; 577 | } 578 | 579 | .csslider1 > .cs_bullets > label:hover { 580 | background-color: #1FA5AD; 581 | } 582 | 583 | /* calculate autoplay */ 584 | @-webkit-keyframes bullet { 585 | 0%, 33.32333333333334% { background-color: #1FA5AD; } 586 | 33.333333333333336%, 100% { background: #000; background-color: rgba(0,0,0,0.6); } 587 | } 588 | @-moz-keyframes bullet { 589 | 0%, 33.32333333333334% { background-color: #1FA5AD; } 590 | 33.333333333333336%, 100% { background: #000; background-color: rgba(0,0,0,0.6); } 591 | } 592 | @-ms-keyframes bullet { 593 | 0%, 33.32333333333334% { background-color: #1FA5AD; } 594 | 33.333333333333336%, 100% { background: #000; background-color: rgba(0,0,0,0.6); } 595 | } 596 | @-o-keyframes bullet { 597 | 0%, 33.32333333333334% { background-color: #1FA5AD; } 598 | 33.333333333333336%, 100% { background: #000; background-color: rgba(0,0,0,0.6); } 599 | } 600 | @keyframes bullet { 601 | 0%, 33.32333333333334% { background-color: #1FA5AD; } 602 | 33.333333333333336%, 100% { background: #000; background-color: rgba(0,0,0,0.6); } 603 | } 604 | 605 | 606 | .csslider1 > #cs_play1:checked ~ .cs_bullets > label.num0, 607 | .csslider1 > #cs_pause1:checked ~ .cs_bullets > label.num0 { 608 | -webkit-animation: bullet 12000ms infinite -2000ms; 609 | -moz-animation: bullet 12000ms infinite -2000ms; 610 | -ms-animation: bullet 12000ms infinite -2000ms; 611 | -o-animation: bullet 12000ms infinite -2000ms; 612 | animation: bullet 12000ms infinite -2000ms; 613 | 614 | } 615 | .csslider1 > #cs_play1:checked ~ .cs_bullets > label.num1, 616 | .csslider1 > #cs_pause1:checked ~ .cs_bullets > label.num1 { 617 | -webkit-animation: bullet 12000ms infinite 2000ms; 618 | -moz-animation: bullet 12000ms infinite 2000ms; 619 | -ms-animation: bullet 12000ms infinite 2000ms; 620 | -o-animation: bullet 12000ms infinite 2000ms; 621 | animation: bullet 12000ms infinite 2000ms; 622 | 623 | } 624 | .csslider1 > #cs_play1:checked ~ .cs_bullets > label.num2, 625 | .csslider1 > #cs_pause1:checked ~ .cs_bullets > label.num2 { 626 | -webkit-animation: bullet 12000ms infinite 6000ms; 627 | -moz-animation: bullet 12000ms infinite 6000ms; 628 | -ms-animation: bullet 12000ms infinite 6000ms; 629 | -o-animation: bullet 12000ms infinite 6000ms; 630 | animation: bullet 12000ms infinite 6000ms; 631 | 632 | } 633 | 634 | 635 | 636 | 637 | .csslider1 > #cs_play1:checked ~ .cs_bullets > label, 638 | .csslider1 > #cs_pause1:checked ~ .cs_bullets > label { 639 | -webkit-transition: none; 640 | -moz-transition: none; 641 | -ms-transition: none; 642 | -o-transition: none; 643 | transition: none; 644 | 645 | } 646 | 647 | .csslider1.cs_pauseHover:hover > .cs_bullets > label, 648 | .csslider1 > #cs_pause1:checked ~ .cs_bullets > label { 649 | -webkit-animation-play-state: paused !important; 650 | -moz-animation-play-state: paused !important; 651 | -ms-animation-play-state: paused !important; 652 | -o-animation-play-state: paused !important; 653 | animation-play-state: paused !important; 654 | } 655 | 656 | /* stop */ 657 | 658 | .csslider1 > .slide:checked ~ .cs_bullets > label { 659 | -webkit-animation: none; 660 | -moz-animation: none; 661 | -ms-animation: none; 662 | -o-animation: none; 663 | animation: none; 664 | } 665 | 666 | /* /calculate autoplay */ 667 | 668 | 669 | .csslider1 > .cs_description > label { 670 | font: 20px 'Roboto', sans-serif; 671 | line-height: normal; 672 | bottom: 35px; 673 | left: 20px; 674 | top: auto; 675 | opacity: 1; 676 | z-index: 1; 677 | 678 | -webkit-perspective: 500px; 679 | -moz-perspective: 500px; 680 | -ms-perspective: 500px; 681 | -o-perspective: 500px; 682 | perspective: 500px; 683 | 684 | } 685 | .csslider1 > .cs_description > label > span { 686 | margin: 1px 10px; 687 | padding: 10px; 688 | color: #fff; 689 | 690 | overflow: hidden; 691 | 692 | -webkit-transform-origin: 0% 0% 0px; 693 | -moz-transform-origin: 0% 0% 0px; 694 | -ms-transform-origin: 0% 0% 0px; 695 | -o-transform-origin: 0% 0% 0px; 696 | transform-origin: 0% 0% 0px; 697 | 698 | 699 | -webkit-border-radius: 4px; 700 | -moz-border-radius: 4px; 701 | border-radius: 4px; 702 | } 703 | 704 | 705 | .csslider1 > #cs_slide1_0:checked ~ .cs_description > .num0, 706 | .csslider1 > #cs_slide1_1:checked ~ .cs_description > .num1, 707 | .csslider1 > #cs_slide1_2:checked ~ .cs_description > .num2 { 708 | z-index: 2; 709 | } 710 | 711 | 712 | 713 | .csslider1 > #cs_slide1_0:checked ~ .cs_description > .num0 > .cs_descr, 714 | .csslider1 > #cs_slide1_1:checked ~ .cs_description > .num1 > .cs_descr, 715 | .csslider1 > #cs_slide1_2:checked ~ .cs_description > .num2 > .cs_descr { 716 | opacity: 1; 717 | visibility: visible; 718 | -webkit-transition: 750ms opacity 1350ms cubic-bezier(0.680, -0.550, 0.265, 1.550), 750ms -webkit-transform 1350ms cubic-bezier(0.680, -0.550, 0.265, 1.550), 750ms visibility 1350ms cubic-bezier(0.680, -0.550, 0.265, 1.550); 719 | -moz-transition: 750ms opacity 1350ms cubic-bezier(0.680, -0.550, 0.265, 1.550), 750ms -moz-transform 1350ms cubic-bezier(0.680, -0.550, 0.265, 1.550), 750ms visibility 1350ms cubic-bezier(0.680, -0.550, 0.265, 1.550); 720 | -ms-transition: 750ms opacity 1350ms cubic-bezier(0.680, -0.550, 0.265, 1.550), 750ms -ms-transform 1350ms cubic-bezier(0.680, -0.550, 0.265, 1.550), 750ms visibility 1350ms cubic-bezier(0.680, -0.550, 0.265, 1.550); 721 | -o-transition: 750ms opacity 1350ms cubic-bezier(0.680, -0.550, 0.265, 1.550), 750ms -o-transform 1350ms cubic-bezier(0.680, -0.550, 0.265, 1.550), 750ms visibility 1350ms cubic-bezier(0.680, -0.550, 0.265, 1.550); 722 | transition: 750ms opacity 1350ms cubic-bezier(0.680, -0.550, 0.265, 1.550), 750ms transform 1350ms cubic-bezier(0.680, -0.550, 0.265, 1.550), 750ms visibility 1350ms cubic-bezier(0.680, -0.550, 0.265, 1.550); 723 | 724 | -webkit-transform: rotateX(0deg); 725 | -moz-transform: rotateX(0deg); 726 | -ms-transform: rotateX(0deg); 727 | -o-transform: rotateX(0deg); 728 | transform: rotateX(0deg); 729 | 730 | } 731 | 732 | 733 | .csslider1 > #cs_slide1_0:checked ~ .cs_description > .num0 > .cs_title, 734 | .csslider1 > #cs_slide1_1:checked ~ .cs_description > .num1 > .cs_title, 735 | .csslider1 > #cs_slide1_2:checked ~ .cs_description > .num2 > .cs_title { 736 | opacity: 1; 737 | visibility: visible; 738 | -webkit-transition: 750ms opacity 1200ms cubic-bezier(0.680, -0.550, 0.265, 1.550), 750ms -webkit-transform 1200ms cubic-bezier(0.680, -0.550, 0.265, 1.550), 750ms visibility 1200ms ease; 739 | -moz-transition: 750ms opacity 1200ms cubic-bezier(0.680, -0.550, 0.265, 1.550), 750ms -moz-transform 1200ms cubic-bezier(0.680, -0.550, 0.265, 1.550), 750ms visibility 1200ms ease; 740 | -ms-transition: 750ms opacity 1200ms cubic-bezier(0.680, -0.550, 0.265, 1.550), 750ms -ms-transform 1200ms cubic-bezier(0.680, -0.550, 0.265, 1.550), 750ms visibility 1200ms ease; 741 | -o-transition: 750ms opacity 1200ms cubic-bezier(0.680, -0.550, 0.265, 1.550), 750ms -o-transform 1200ms cubic-bezier(0.680, -0.550, 0.265, 1.550), 750ms visibility 1200ms ease; 742 | transition: 750ms opacity 1200ms cubic-bezier(0.680, -0.550, 0.265, 1.550), 750ms transform 1200ms cubic-bezier(0.680, -0.550, 0.265, 1.550), 750ms visibility 1200ms ease; 743 | 744 | -webkit-transform: rotateX(0deg); 745 | -moz-transform: rotateX(0deg); 746 | -ms-transform: rotateX(0deg); 747 | -o-transform: rotateX(0deg); 748 | transform: rotateX(0deg); 749 | 750 | } 751 | 752 | 753 | .csslider1 > #cs_slide1_0:checked ~ .cs_description > .num0 .cs_wrapper, 754 | .csslider1 > #cs_slide1_1:checked ~ .cs_description > .num1 .cs_wrapper, 755 | .csslider1 > #cs_slide1_2:checked ~ .cs_description > .num2 .cs_wrapper { 756 | opacity: 1; 757 | -webkit-transform: translateX(0); 758 | -moz-transform: translateX(0); 759 | -ms-transform: translateX(0); 760 | -o-transform: translateX(0); 761 | transform: translateX(0); 762 | 763 | } 764 | 765 | .csslider1 > .cs_description > label > .cs_title { 766 | margin: 0px 10px; 767 | opacity: 0; 768 | visibility: hidden; 769 | z-index: 2; 770 | /* Fallback for web browsers that doesn't support RGBa */ 771 | background: #000; 772 | background-color: rgba(0,0,0,0.6); 773 | -webkit-transform: rotateX(90deg); 774 | -moz-transform: rotateX(90deg); 775 | -ms-transform: rotateX(90deg); 776 | -o-transform: rotateX(90deg); 777 | transform: rotateX(90deg); 778 | 779 | -webkit-transition: 750ms opacity 975ms cubic-bezier(0.680, -0.550, 0.265, 1.550), 750ms -webkit-transform 975ms cubic-bezier(0.680, -0.550, 0.265, 1.550), 750ms visibility 975ms ease; 780 | -moz-transition: 750ms opacity 975ms cubic-bezier(0.680, -0.550, 0.265, 1.550), 750ms -moz-transform 975ms cubic-bezier(0.680, -0.550, 0.265, 1.550), 750ms visibility 975ms ease; 781 | -ms-transition: 750ms opacity 975ms cubic-bezier(0.680, -0.550, 0.265, 1.550), 750ms -ms-transform 975ms cubic-bezier(0.680, -0.550, 0.265, 1.550), 750ms visibility 975ms ease; 782 | -o-transition: 750ms opacity 975ms cubic-bezier(0.680, -0.550, 0.265, 1.550), 750ms -o-transform 975ms cubic-bezier(0.680, -0.550, 0.265, 1.550), 750ms visibility 975ms ease; 783 | transition: 750ms opacity 975ms cubic-bezier(0.680, -0.550, 0.265, 1.550), 750ms transform 975ms cubic-bezier(0.680, -0.550, 0.265, 1.550), 750ms visibility 975ms ease; 784 | 785 | } 786 | .csslider1 > .cs_description > label > .cs_descr { 787 | font-size: 0.8em; 788 | margin: 1px 10px; 789 | opacity: 0; 790 | visibility: hidden; 791 | z-index: 1; 792 | 793 | background-color: #1FA5AD; 794 | 795 | -webkit-transform: rotateX(-90deg); 796 | -moz-transform: rotateX(-90deg); 797 | -ms-transform: rotateX(-90deg); 798 | -o-transform: rotateX(-90deg); 799 | transform: rotateX(-90deg); 800 | 801 | -webkit-transition: 750ms opacity 750ms cubic-bezier(0.680, -0.550, 0.265, 1.550), 750ms -webkit-transform 600ms cubic-bezier(0.680, -0.550, 0.265, 1.550), 750ms visibility 600ms cubic-bezier(0.680, -0.550, 0.265, 1.550); 802 | -moz-transition: 750ms opacity 750ms cubic-bezier(0.680, -0.550, 0.265, 1.550), 750ms -moz-transform 600ms cubic-bezier(0.680, -0.550, 0.265, 1.550), 750ms visibility 600ms cubic-bezier(0.680, -0.550, 0.265, 1.550); 803 | -ms-transition: 750ms opacity 750ms cubic-bezier(0.680, -0.550, 0.265, 1.550), 750ms -ms-transform 600ms cubic-bezier(0.680, -0.550, 0.265, 1.550), 750ms visibility 600ms cubic-bezier(0.680, -0.550, 0.265, 1.550); 804 | -o-transition: 750ms opacity 750ms cubic-bezier(0.680, -0.550, 0.265, 1.550), 750ms -o-transform 600ms cubic-bezier(0.680, -0.550, 0.265, 1.550), 750ms visibility 600ms cubic-bezier(0.680, -0.550, 0.265, 1.550); 805 | transition: 750ms opacity 750ms cubic-bezier(0.680, -0.550, 0.265, 1.550), 750ms transform 600ms cubic-bezier(0.680, -0.550, 0.265, 1.550), 750ms visibility 600ms cubic-bezier(0.680, -0.550, 0.265, 1.550); 806 | 807 | } 808 | 809 | 810 | .csslider1 > .cs_description > label > .cs_title > .cs_wrapper { 811 | -webkit-transform: translateX(-100%); 812 | -moz-transform: translateX(-100%); 813 | -ms-transform: translateX(-100%); 814 | -o-transform: translateX(-100%); 815 | transform: translateX(-100%); 816 | 817 | -webkit-transition: 750ms opacity 1450ms cubic-bezier(0.680, -0.550, 0.265, 1.550), 750ms -webkit-transform 1450ms cubic-bezier(0.680, -0.550, 0.265, 1.550); 818 | -moz-transition: 750ms opacity 1450ms cubic-bezier(0.680, -0.550, 0.265, 1.550), 750ms -moz-transform 1450ms cubic-bezier(0.680, -0.550, 0.265, 1.550); 819 | -ms-transition: 750ms opacity 1450ms cubic-bezier(0.680, -0.550, 0.265, 1.550), 750ms -ms-transform 1450ms cubic-bezier(0.680, -0.550, 0.265, 1.550); 820 | -o-transition: 750ms opacity 1450ms cubic-bezier(0.680, -0.550, 0.265, 1.550), 750ms -o-transform 1450ms cubic-bezier(0.680, -0.550, 0.265, 1.550); 821 | transition: 750ms opacity 1450ms cubic-bezier(0.680, -0.550, 0.265, 1.550), 750ms transform 1450ms cubic-bezier(0.680, -0.550, 0.265, 1.550); 822 | 823 | } 824 | .csslider1 > .cs_description > label > .cs_descr > .cs_wrapper { 825 | -webkit-transform: translateX(100%); 826 | -moz-transform: translateX(100%); 827 | -ms-transform: translateX(100%); 828 | -o-transform: translateX(100%); 829 | transform: translateX(100%); 830 | 831 | -webkit-transition: 750ms opacity 1675ms cubic-bezier(0.680, -0.550, 0.265, 1.550), 750ms -webkit-transform 1675ms cubic-bezier(0.680, -0.550, 0.265, 1.550); 832 | -moz-transition: 750ms opacity 1675ms cubic-bezier(0.680, -0.550, 0.265, 1.550), 750ms -moz-transform 1675ms cubic-bezier(0.680, -0.550, 0.265, 1.550); 833 | -ms-transition: 750ms opacity 1675ms cubic-bezier(0.680, -0.550, 0.265, 1.550), 750ms -ms-transform 1675ms cubic-bezier(0.680, -0.550, 0.265, 1.550); 834 | -o-transition: 750ms opacity 1675ms cubic-bezier(0.680, -0.550, 0.265, 1.550), 750ms -o-transform 1675ms cubic-bezier(0.680, -0.550, 0.265, 1.550); 835 | transition: 750ms opacity 1675ms cubic-bezier(0.680, -0.550, 0.265, 1.550), 750ms transform 1675ms cubic-bezier(0.680, -0.550, 0.265, 1.550); 836 | 837 | } 838 | 839 | 840 | /* calculate autoplay */ 841 | @-webkit-keyframes cs_descrWrapper { 842 | 3.0625%, 37.708333333333336% { z-index: 2; } 843 | 37.718333333333334%, 100% { z-index: 0; } 844 | } 845 | @-moz-keyframes cs_descrWrapper { 846 | 3.0625%, 37.708333333333336% { z-index: 2; } 847 | 37.718333333333334%, 100% { z-index: 0; } 848 | } 849 | @-ms-keyframes cs_descrWrapper { 850 | 3.0625%, 37.708333333333336% { z-index: 2; } 851 | 37.718333333333334%, 100% { z-index: 0; } 852 | } 853 | @-o-keyframes cs_descrWrapper { 854 | 3.0625%, 37.708333333333336% { z-index: 2; } 855 | 37.718333333333334%, 100% { z-index: 0; } 856 | } 857 | @keyframes cs_descrWrapper { 858 | 3.0625%, 37.708333333333336% { z-index: 2; } 859 | 37.718333333333334%, 100% { z-index: 0; } 860 | } 861 | 862 | 863 | 864 | .csslider1 > #cs_play1:checked ~ .cs_description > .num0 { 865 | -webkit-animation: cs_descrWrapper 12000ms infinite -1400ms ease; 866 | -moz-animation: cs_descrWrapper 12000ms infinite -1400ms ease; 867 | -ms-animation: cs_descrWrapper 12000ms infinite -1400ms ease; 868 | -o-animation: cs_descrWrapper 12000ms infinite -1400ms ease; 869 | animation: cs_descrWrapper 12000ms infinite -1400ms ease; 870 | } 871 | .csslider1 > #cs_play1:checked ~ .cs_description > .num1 { 872 | -webkit-animation: cs_descrWrapper 12000ms infinite 2600ms ease; 873 | -moz-animation: cs_descrWrapper 12000ms infinite 2600ms ease; 874 | -ms-animation: cs_descrWrapper 12000ms infinite 2600ms ease; 875 | -o-animation: cs_descrWrapper 12000ms infinite 2600ms ease; 876 | animation: cs_descrWrapper 12000ms infinite 2600ms ease; 877 | } 878 | .csslider1 > #cs_play1:checked ~ .cs_description > .num2 { 879 | -webkit-animation: cs_descrWrapper 12000ms infinite 6600ms ease; 880 | -moz-animation: cs_descrWrapper 12000ms infinite 6600ms ease; 881 | -ms-animation: cs_descrWrapper 12000ms infinite 6600ms ease; 882 | -o-animation: cs_descrWrapper 12000ms infinite 6600ms ease; 883 | animation: cs_descrWrapper 12000ms infinite 6600ms ease; 884 | } 885 | 886 | 887 | 888 | @-webkit-keyframes cs_title { 889 | 3.0625%, 30.260833333333334% { opacity: 1; -webkit-transform: rotateX(-9deg); z-index: 2; visibility: visible;} 890 | 4.375%, 28.948333333333334% { opacity: 1; -webkit-transform: rotateX(0deg); z-index: 2; visibility: visible;} 891 | 33.333333333333336% { opacity: 0; -webkit-transform: rotateX(90deg); z-index: 2; visibility: hidden;} 892 | 33.343333333333334%, 100% { z-index: 0; } 893 | } 894 | @-moz-keyframes cs_title { 895 | 3.0625%, 30.260833333333334% { opacity: 1; -moz-transform: rotateX(-9deg); z-index: 2; visibility: visible;} 896 | 4.375%, 28.948333333333334% { opacity: 1; -moz-transform: rotateX(0deg); z-index: 2; visibility: visible;} 897 | 33.333333333333336% { opacity: 0; -moz-transform: rotateX(90deg); z-index: 2; visibility: hidden;} 898 | 33.343333333333334%, 100% { z-index: 0; } 899 | } 900 | @-ms-keyframes cs_title { 901 | 3.0625%, 30.260833333333334% { opacity: 1; -ms-transform: rotateX(-9deg); z-index: 2; visibility: visible;} 902 | 4.375%, 28.948333333333334% { opacity: 1; -ms-transform: rotateX(0deg); z-index: 2; visibility: visible;} 903 | 33.333333333333336% { opacity: 0; -ms-transform: rotateX(90deg); z-index: 2; visibility: hidden;} 904 | 33.343333333333334%, 100% { z-index: 0; } 905 | } 906 | @-o-keyframes cs_title { 907 | 3.0625%, 30.260833333333334% { opacity: 1; -o-transform: rotateX(-9deg); z-index: 2; visibility: visible;} 908 | 4.375%, 28.948333333333334% { opacity: 1; -o-transform: rotateX(0deg); z-index: 2; visibility: visible;} 909 | 33.333333333333336% { opacity: 0; -o-transform: rotateX(90deg); z-index: 2; visibility: hidden;} 910 | 33.343333333333334%, 100% { z-index: 0; } 911 | } 912 | @keyframes cs_title { 913 | 3.0625%, 30.260833333333334% { opacity: 1; transform: rotateX(-9deg); z-index: 2; visibility: visible;} 914 | 4.375%, 28.948333333333334% { opacity: 1; transform: rotateX(0deg); z-index: 2; visibility: visible;} 915 | 33.333333333333336% { opacity: 0; transform: rotateX(90deg); z-index: 2; visibility: hidden;} 916 | 33.343333333333334%, 100% { z-index: 0; } 917 | } 918 | 919 | 920 | 921 | @-webkit-keyframes cs_descr { 922 | 6.125%, 25.885833333333334% { opacity: 1; -webkit-transform: rotateX(9deg); z-index: 1; visibility: visible;} 923 | 8.75%, 24.573333333333334% { opacity: 1; -webkit-transform: rotateX(0deg); z-index: 1; visibility: visible;} 924 | 33.333333333333336% { opacity: 0; -webkit-transform: rotateX(-90deg); z-index: 1; visibility: hidden;} 925 | 33.343333333333334%, 100% { z-index: 0; } 926 | } 927 | @-moz-keyframes cs_descr { 928 | 6.125%, 25.885833333333334% { opacity: 1; -moz-transform: rotateX(9deg); z-index: 1; visibility: visible;} 929 | 8.75%, 24.573333333333334% { opacity: 1; -moz-transform: rotateX(0deg); z-index: 1; visibility: visible;} 930 | 33.333333333333336% { opacity: 0; -moz-transform: rotateX(-90deg); z-index: 1; visibility: hidden;} 931 | 33.343333333333334%, 100% { z-index: 0; } 932 | } 933 | @-ms-keyframes cs_descr { 934 | 6.125%, 25.885833333333334% { opacity: 1; -ms-transform: rotateX(9deg); z-index: 1; visibility: visible;} 935 | 8.75%, 24.573333333333334% { opacity: 1; -ms-transform: rotateX(0deg); z-index: 1; visibility: visible;} 936 | 33.333333333333336% { opacity: 0; -ms-transform: rotateX(-90deg); z-index: 1; visibility: hidden;} 937 | 33.343333333333334%, 100% { z-index: 0; } 938 | } 939 | @-o-keyframes cs_descr { 940 | 6.125%, 25.885833333333334% { opacity: 1; -o-transform: rotateX(9deg); z-index: 1; visibility: visible;} 941 | 8.75%, 24.573333333333334% { opacity: 1; -o-transform: rotateX(0deg); z-index: 1; visibility: visible;} 942 | 33.333333333333336% { opacity: 0; -o-transform: rotateX(-90deg); z-index: 1; visibility: hidden;} 943 | 33.343333333333334%, 100% { z-index: 0; } 944 | } 945 | @keyframes cs_descr { 946 | 6.125%, 25.885833333333334% { opacity: 1; transform: rotateX(9deg); z-index: 1; visibility: visible;} 947 | 8.75%, 24.573333333333334% { opacity: 1; transform: rotateX(0deg); z-index: 1; visibility: visible;} 948 | 33.333333333333336% { opacity: 0; transform: rotateX(-90deg); z-index: 1; visibility: hidden;} 949 | 33.343333333333334%, 100% { z-index: 0; } 950 | } 951 | 952 | 953 | 954 | .csslider1 > #cs_play1:checked ~ .cs_description > .num0 > .cs_title, 955 | .csslider1 > #cs_pause1:checked ~ .cs_description > .num0 > .cs_title { 956 | -webkit-animation: cs_title 12000ms infinite -1400ms ease; 957 | -moz-animation: cs_title 12000ms infinite -1400ms ease; 958 | -ms-animation: cs_title 12000ms infinite -1400ms ease; 959 | -o-animation: cs_title 12000ms infinite -1400ms ease; 960 | animation: cs_title 12000ms infinite -1400ms ease; 961 | } 962 | .csslider1 > #cs_play1:checked ~ .cs_description > .num1 > .cs_title, 963 | .csslider1 > #cs_pause1:checked ~ .cs_description > .num1 > .cs_title { 964 | -webkit-animation: cs_title 12000ms infinite 2600ms ease; 965 | -moz-animation: cs_title 12000ms infinite 2600ms ease; 966 | -ms-animation: cs_title 12000ms infinite 2600ms ease; 967 | -o-animation: cs_title 12000ms infinite 2600ms ease; 968 | animation: cs_title 12000ms infinite 2600ms ease; 969 | } 970 | .csslider1 > #cs_play1:checked ~ .cs_description > .num2 > .cs_title, 971 | .csslider1 > #cs_pause1:checked ~ .cs_description > .num2 > .cs_title { 972 | -webkit-animation: cs_title 12000ms infinite 6600ms ease; 973 | -moz-animation: cs_title 12000ms infinite 6600ms ease; 974 | -ms-animation: cs_title 12000ms infinite 6600ms ease; 975 | -o-animation: cs_title 12000ms infinite 6600ms ease; 976 | animation: cs_title 12000ms infinite 6600ms ease; 977 | } 978 | 979 | 980 | .csslider1 > #cs_play1:checked ~ .cs_description > .num0 > .cs_descr, 981 | .csslider1 > #cs_pause1:checked ~ .cs_description > .num0 > .cs_descr { 982 | -webkit-animation: cs_descr 12000ms infinite -1400ms ease; 983 | -moz-animation: cs_descr 12000ms infinite -1400ms ease; 984 | -ms-animation: cs_descr 12000ms infinite -1400ms ease; 985 | -o-animation: cs_descr 12000ms infinite -1400ms ease; 986 | animation: cs_descr 12000ms infinite -1400ms ease; 987 | } 988 | .csslider1 > #cs_play1:checked ~ .cs_description > .num1 > .cs_descr, 989 | .csslider1 > #cs_pause1:checked ~ .cs_description > .num1 > .cs_descr { 990 | -webkit-animation: cs_descr 12000ms infinite 2600ms ease; 991 | -moz-animation: cs_descr 12000ms infinite 2600ms ease; 992 | -ms-animation: cs_descr 12000ms infinite 2600ms ease; 993 | -o-animation: cs_descr 12000ms infinite 2600ms ease; 994 | animation: cs_descr 12000ms infinite 2600ms ease; 995 | } 996 | .csslider1 > #cs_play1:checked ~ .cs_description > .num2 > .cs_descr, 997 | .csslider1 > #cs_pause1:checked ~ .cs_description > .num2 > .cs_descr { 998 | -webkit-animation: cs_descr 12000ms infinite 6600ms ease; 999 | -moz-animation: cs_descr 12000ms infinite 6600ms ease; 1000 | -ms-animation: cs_descr 12000ms infinite 6600ms ease; 1001 | -o-animation: cs_descr 12000ms infinite 6600ms ease; 1002 | animation: cs_descr 12000ms infinite 6600ms ease; 1003 | } 1004 | 1005 | 1006 | 1007 | @-webkit-keyframes cs_title_text { 1008 | 3.0625%, 30.260833333333334% { opacity: 1; -webkit-transform: translateX(-1%); } 1009 | 4.375%, 28.948333333333334% { opacity: 1; -webkit-transform: translateX(0%); } 1010 | 33.333333333333336% { opacity: 0; -webkit-transform: translateX(100%); } 1011 | } 1012 | @-moz-keyframes cs_title_text { 1013 | 3.0625%, 30.260833333333334% { opacity: 1; -moz-transform: translateX(-1%); } 1014 | 4.375%, 28.948333333333334% { opacity: 1; -moz-transform: translateX(0%); } 1015 | 33.333333333333336% { opacity: 0; -moz-transform: translateX(100%); } 1016 | } 1017 | @-ms-keyframes cs_title_text { 1018 | 3.0625%, 30.260833333333334% { opacity: 1; -ms-transform: translateX(-1%); } 1019 | 4.375%, 28.948333333333334% { opacity: 1; -ms-transform: translateX(0%); } 1020 | 33.333333333333336% { opacity: 0; -ms-transform: translateX(100%); } 1021 | } 1022 | @-o-keyframes cs_title_text { 1023 | 3.0625%, 30.260833333333334% { opacity: 1; -o-transform: translateX(-1%); } 1024 | 4.375%, 28.948333333333334% { opacity: 1; -o-transform: translateX(0%); } 1025 | 33.333333333333336% { opacity: 0; -o-transform: translateX(100%); } 1026 | } 1027 | @keyframes cs_title_text { 1028 | 3.0625%, 30.260833333333334% { opacity: 1; transform: translateX(-1%); } 1029 | 4.375%, 28.948333333333334% { opacity: 1; transform: translateX(0%); } 1030 | 33.333333333333336% { opacity: 0; transform: translateX(100%); } 1031 | } 1032 | 1033 | 1034 | @-webkit-keyframes cs_descr_text { 1035 | 6.125%, 25.885833333333334% { opacity: 1; -webkit-transform: translateX(1%); } 1036 | 8.75%, 24.573333333333334% { opacity: 1; -webkit-transform: translateX(0%); } 1037 | 33.333333333333336% { opacity: 0; -webkit-transform: translateX(-100%); } 1038 | } 1039 | @-moz-keyframes cs_descr_text { 1040 | 6.125%, 25.885833333333334% { opacity: 1; -moz-transform: translateX(1%); } 1041 | 8.75%, 24.573333333333334% { opacity: 1; -moz-transform: translateX(0%); } 1042 | 33.333333333333336% { opacity: 0; -moz-transform: translateX(-100%); } 1043 | } 1044 | @-ms-keyframes cs_descr_text { 1045 | 6.125%, 25.885833333333334% { opacity: 1; -ms-transform: translateX(1%); } 1046 | 8.75%, 24.573333333333334% { opacity: 1; -ms-transform: translateX(0%); } 1047 | 33.333333333333336% { opacity: 0; -ms-transform: translateX(-100%); } 1048 | } 1049 | @-o-keyframes cs_descr_text { 1050 | 6.125%, 25.885833333333334% { opacity: 1; -o-transform: translateX(1%); } 1051 | 8.75%, 24.573333333333334% { opacity: 1; -o-transform: translateX(0%); } 1052 | 33.333333333333336% { opacity: 0; -o-transform: translateX(-100%); } 1053 | } 1054 | @keyframes cs_descr_text { 1055 | 6.125%, 25.885833333333334% { opacity: 1; transform: translateX(1%); } 1056 | 8.75%, 24.573333333333334% { opacity: 1; transform: translateX(0%); } 1057 | 33.333333333333336% { opacity: 0; transform: translateX(-100%); } 1058 | } 1059 | 1060 | 1061 | 1062 | .csslider1 > #cs_play1:checked ~ .cs_description > .num0 .cs_title > .cs_wrapper, 1063 | .csslider1 > #cs_pause1:checked ~ .cs_description > .num0 .cs_title > .cs_wrapper { 1064 | -webkit-animation: cs_title_text 12000ms infinite -1190ms ease; 1065 | -moz-animation: cs_title_text 12000ms infinite -1190ms ease; 1066 | -ms-animation: cs_title_text 12000ms infinite -1190ms ease; 1067 | -o-animation: cs_title_text 12000ms infinite -1190ms ease; 1068 | animation: cs_title_text 12000ms infinite -1190ms ease; 1069 | } 1070 | .csslider1 > #cs_play1:checked ~ .cs_description > .num1 .cs_title > .cs_wrapper, 1071 | .csslider1 > #cs_pause1:checked ~ .cs_description > .num1 .cs_title > .cs_wrapper { 1072 | -webkit-animation: cs_title_text 12000ms infinite 2810ms ease; 1073 | -moz-animation: cs_title_text 12000ms infinite 2810ms ease; 1074 | -ms-animation: cs_title_text 12000ms infinite 2810ms ease; 1075 | -o-animation: cs_title_text 12000ms infinite 2810ms ease; 1076 | animation: cs_title_text 12000ms infinite 2810ms ease; 1077 | } 1078 | .csslider1 > #cs_play1:checked ~ .cs_description > .num2 .cs_title > .cs_wrapper, 1079 | .csslider1 > #cs_pause1:checked ~ .cs_description > .num2 .cs_title > .cs_wrapper { 1080 | -webkit-animation: cs_title_text 12000ms infinite 6810ms ease; 1081 | -moz-animation: cs_title_text 12000ms infinite 6810ms ease; 1082 | -ms-animation: cs_title_text 12000ms infinite 6810ms ease; 1083 | -o-animation: cs_title_text 12000ms infinite 6810ms ease; 1084 | animation: cs_title_text 12000ms infinite 6810ms ease; 1085 | } 1086 | 1087 | 1088 | .csslider1 > #cs_play1:checked ~ .cs_description > .num0 .cs_descr > .cs_wrapper, 1089 | .csslider1 > #cs_pause1:checked ~ .cs_description > .num0 .cs_descr > .cs_wrapper { 1090 | -webkit-animation: cs_descr_text 12000ms infinite -1190ms ease; 1091 | -moz-animation: cs_descr_text 12000ms infinite -1190ms ease; 1092 | -ms-animation: cs_descr_text 12000ms infinite -1190ms ease; 1093 | -o-animation: cs_descr_text 12000ms infinite -1190ms ease; 1094 | animation: cs_descr_text 12000ms infinite -1190ms ease; 1095 | } 1096 | .csslider1 > #cs_play1:checked ~ .cs_description > .num1 .cs_descr > .cs_wrapper, 1097 | .csslider1 > #cs_pause1:checked ~ .cs_description > .num1 .cs_descr > .cs_wrapper { 1098 | -webkit-animation: cs_descr_text 12000ms infinite 2810ms ease; 1099 | -moz-animation: cs_descr_text 12000ms infinite 2810ms ease; 1100 | -ms-animation: cs_descr_text 12000ms infinite 2810ms ease; 1101 | -o-animation: cs_descr_text 12000ms infinite 2810ms ease; 1102 | animation: cs_descr_text 12000ms infinite 2810ms ease; 1103 | } 1104 | .csslider1 > #cs_play1:checked ~ .cs_description > .num2 .cs_descr > .cs_wrapper, 1105 | .csslider1 > #cs_pause1:checked ~ .cs_description > .num2 .cs_descr > .cs_wrapper { 1106 | -webkit-animation: cs_descr_text 12000ms infinite 6810ms ease; 1107 | -moz-animation: cs_descr_text 12000ms infinite 6810ms ease; 1108 | -ms-animation: cs_descr_text 12000ms infinite 6810ms ease; 1109 | -o-animation: cs_descr_text 12000ms infinite 6810ms ease; 1110 | animation: cs_descr_text 12000ms infinite 6810ms ease; 1111 | } 1112 | 1113 | 1114 | 1115 | 1116 | .csslider1 > #cs_play1:checked ~ .cs_description > label > .cs_title, 1117 | .csslider1 > #cs_play1:checked ~ .cs_description > label > .cs_descr, 1118 | .csslider1 > #cs_play1:checked ~ .cs_description > label > .cs_title > .cs_wrapper, 1119 | .csslider1 > #cs_play1:checked ~ .cs_description > label > .cs_descr > .cs_wrapper, 1120 | .csslider1 > #cs_pause1:checked ~ .cs_description > label > .cs_title, 1121 | .csslider1 > #cs_pause1:checked ~ .cs_description > label > .cs_descr, 1122 | .csslider1 > #cs_pause1:checked ~ .cs_description > label > .cs_title > .cs_wrapper, 1123 | .csslider1 > #cs_pause1:checked ~ .cs_description > label > .cs_descr > .cs_wrapper { 1124 | -webkit-transition: none; 1125 | -moz-transition: none; 1126 | -ms-transition: none; 1127 | -o-transition: none; 1128 | transition: none; 1129 | 1130 | } 1131 | 1132 | .csslider1.cs_pauseHover:hover > .cs_description > label > .cs_title, 1133 | .csslider1.cs_pauseHover:hover > .cs_description > label > .cs_descr, 1134 | .csslider1.cs_pauseHover:hover > .cs_description > label > .cs_title > .cs_wrapper, 1135 | .csslider1.cs_pauseHover:hover > .cs_description > label > .cs_descr > .cs_wrapper, 1136 | .csslider1 > #cs_pause1:checked ~ .cs_description > label > .cs_title, 1137 | .csslider1 > #cs_pause1:checked ~ .cs_description > label > .cs_descr, 1138 | .csslider1 > #cs_pause1:checked ~ .cs_description > label > .cs_title > .cs_wrapper, 1139 | .csslider1 > #cs_pause1:checked ~ .cs_description > label > .cs_descr > .cs_wrapper { 1140 | -webkit-animation-play-state: paused !important; 1141 | -moz-animation-play-state: paused !important; 1142 | -ms-animation-play-state: paused !important; 1143 | -o-animation-play-state: paused !important; 1144 | animation-play-state: paused !important; 1145 | } 1146 | 1147 | /* stop */ 1148 | .csslider1 > .slide:checked ~ .cs_description > label { 1149 | -webkit-animation: none; 1150 | -moz-animation: none; 1151 | -ms-animation: none; 1152 | -o-animation: none; 1153 | animation: none; 1154 | } 1155 | 1156 | 1157 | 1158 | /* /calculate autoplay *//* hide description & bullets on mobile devices */ 1159 | @media 1160 | only screen and (max-width: 480px), 1161 | only screen and (-webkit-max-device-pixel-ratio: 2) and (max-width: 480px), 1162 | only screen and (max--moz-device-pixel-ratio: 2) and (max-width: 480px), 1163 | only screen and (-o-max-device-pixel-loratio: 2/1) and (max-width: 480px), 1164 | only screen and (max-device-pixel-ratio: 2) and (max-width: 480px), 1165 | only screen and (max-resolution: 192dpi) and (max-width: 480px), 1166 | only screen and (max-resolution: 2dppx) and (max-width: 480px) { 1167 | .csslider1 > .cs_description, 1168 | .csslider1 > .cs_bullets { 1169 | display: none; 1170 | } 1171 | } 1172 | -------------------------------------------------------------------------------- /.idea/workspace.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 15 | 16 | 17 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | 93 | 94 | 95 | 96 | 97 | 98 | 99 | 100 | 101 | 102 | 103 | 104 | 105 | 106 | 107 | 108 | 115 | 116 | 117 | 119 | 120 | 163 | 164 | 165 | 166 | 167 | true 168 | DEFINITION_ORDER 169 | 170 | 171 | 176 | 177 | 178 | 179 | 180 | 181 | 182 | 183 | 184 | 185 | 186 | 187 | 188 | 189 | 190 | 191 | 192 | 193 | 194 | 195 | 196 | 197 | 198 | 199 | 200 | 201 | 202 | 203 | 204 | 205 | 206 | 209 | 210 | 211 | 212 | 215 | 216 | 219 | 220 | 221 | 222 | 225 | 226 | 229 | 230 | 233 | 234 | 235 | 236 | 239 | 240 | 243 | 244 | 247 | 248 | 249 | 250 | 253 | 254 | 257 | 258 | 261 | 262 | 265 | 266 | 267 | 268 | 271 | 272 | 275 | 276 | 279 | 280 | 281 | 282 | 283 | 284 | 285 | 286 | 287 | 288 | 289 | 290 | 291 | 292 | 293 | 294 | 295 | 296 | 297 | 298 | 299 | 300 | 301 | 302 | 321 | 322 | 323 | 324 | 325 | 338 | 339 | 352 | 353 | 370 | 371 | 383 | 384 | project 385 | 386 | 387 | 388 | 389 | 390 | 391 | 392 | 393 | 394 | 395 | 396 | 397 | 398 | 399 | 400 | 419 | 420 | 439 | 440 | 461 | 462 | 484 | 485 | 509 | 510 | 511 | 513 | 514 | 515 | 516 | 517 | 518 | 519 | 1472719712938 520 | 524 | 525 | 526 | 527 | 528 | 529 | 530 | 531 | 532 | 533 | 534 | 535 | 536 | 537 | 538 | 539 | 540 | 541 | 542 | 543 | 544 | 545 | 546 | 547 | 548 | 549 | 550 | 551 | 552 | 553 | 554 | 555 | 556 | 557 | 558 | 559 | 560 | 561 | 562 | 563 | 564 | 565 | 566 | 567 | 568 | 569 | 570 | 571 | 574 | 577 | 578 | 579 | 581 | 582 | 583 | 585 | 586 | 587 | 588 | 589 | 590 | 591 | 592 | 593 | 594 | 595 | 596 | 597 | 598 | 599 | 600 | 601 | 602 | 603 | 604 | 605 | 606 | 607 | 608 | 609 | 610 | 611 | 612 | 613 | 614 | 615 | 616 | 617 | 618 | 619 | 620 | 621 | 622 | 623 | 624 | 625 | 626 | 627 | 628 | 629 | 630 | 631 | 632 | 633 | 634 | 635 | 636 | 637 | 638 | 639 | 640 | 641 | 642 | 643 | 644 | 645 | 646 | 647 | 648 | 649 | 650 | 651 | 652 | 653 | 654 | 655 | 656 | 657 | 658 | 659 | 660 | 661 | 662 | 663 | 664 | 665 | 666 | 667 | 668 | 669 | 670 | 671 | 672 | 673 | 674 | 675 | 676 | 677 | 678 | 679 | 680 | 681 | 682 | 683 | 684 | 685 | 686 | 687 | 688 | 689 | 690 | 691 | 692 | 693 | 694 | 695 | 696 | 697 | 698 | 699 | 700 | 701 | 702 | 703 | 704 | 705 | 706 | 707 | 708 | 709 | 710 | 711 | 712 | 713 | 714 | 715 | 716 | 717 | 718 | 719 | 720 | 721 | 722 | 723 | 724 | 725 | 726 | 727 | 728 | 729 | 730 | 731 | 732 | 733 | 734 | 735 | 736 | 737 | 738 | 739 | 740 | 741 | 742 | 743 | 744 | 745 | 746 | 747 | 748 | 749 | 750 | 751 | 752 | 753 | 754 | 755 | 756 | 757 | 758 | 759 | 760 | 761 | 762 | 763 | 764 | 765 | 766 | 767 | 768 | 769 | 770 | 771 | 772 | 773 | 774 | 775 | 776 | 777 | 778 | 779 | 780 | 781 | 782 | 783 | 784 | 785 | 786 | 787 | 788 | 789 | 790 | 791 | 792 | 793 | 794 | 795 | 796 | 797 | 798 | 799 | 800 | 801 | 802 | 803 | 804 | 805 | 806 | 807 | 808 | 809 | 810 | 811 | 812 | 813 | 814 | 815 | 816 | 817 | 818 | 819 | 820 | 821 | 822 | 823 | 824 | 825 | 826 | 827 | 828 | 829 | 830 | 831 | 832 | 833 | 834 | 835 | 836 | 837 | 838 | 839 | 840 | 841 | 842 | 843 | 844 | 845 | 846 | 847 | 848 | 849 | 850 | 851 | 852 | 853 | 854 | 855 | 856 | 857 | 858 | 859 | 860 | 861 | 862 | 863 | 864 | 865 | 866 | 867 | 868 | 869 | 870 | 871 | 872 | 873 | 874 | 875 | 876 | 877 | 878 | 879 | 880 | 881 | 882 | 883 | 884 | 885 | 886 | 887 | 888 | 889 | 890 | 891 | 892 | 893 | 894 | 895 | 896 | 897 | 898 | 899 | 900 | 901 | 902 | 903 | 904 | 905 | 906 | 907 | 908 | 909 | 910 | 911 | 912 | 913 | 914 | 915 | 916 | 917 | 918 | 919 | 920 | 921 | 922 | 923 | 924 | 925 | 926 | 927 | 928 | 929 | 930 | 931 | 932 | 933 | 934 | 935 | 936 | 937 | 938 | 939 | 940 | 941 | 942 | 943 | 944 | 945 | 946 | 947 | 948 | 949 | 950 | 951 | 952 | 953 | 954 | 955 | 956 | 957 | 958 | 959 | 960 | 961 | 962 | 963 | --------------------------------------------------------------------------------