├── 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 |
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 |
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 | | 序号 | IP地址 | 用户名 | 内存 | 硬盘 | 操作系统 | 描述 |
23 | {% for node in node_list %}
24 | | {{ forloop.counter }} | {{node.ip}} | {{node.hostname}} | {{node.run_neicun}} | {{node.disk_neicun}} | {{node.os}} | {{node.desc}} |
25 | {%endfor %}
26 |
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 |
7 | {% else%}
8 |
9 | {% endif %}
10 | {% endblock %}
11 | {% block center%}
12 |
13 |
14 |
15 |
22 |
31 |
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 |
9 | {% else%}
10 |
11 | {% endif %}
12 | {% endblock %}
13 | {% block center_index%}{%endblock%}
14 | {% block center %}
15 |
16 |
HIVE SESSION
17 |
18 |
19 |
20 |
历史提交事务
21 |
22 | {% for sess in sess_list %}
23 | - {{ sess }}
24 | {% endfor %}
25 |
26 |
27 |
28 |
29 | {% if sessionname %}
30 |
当前事务:{{ sessionname }}
31 |
38 |
{{ result }}
39 | {% else %}
40 |
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 |
9 | {% else%}
10 |
11 | {% endif %}
12 | {% endblock %}
13 | {% block center_index%}{%endblock%}
14 | {% block center%}
15 |
16 |
运行MapReduce
17 |
18 |
41 |
42 |
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 |
25 |
26 |
27 | | Permission | Owner | Group | Replication | Length |
28 | BlockSize | Type | Children Num | FileId | Name | Action |
29 |
30 | {% for mess in mess_list %}
31 |
32 | | {{mess.permission}} | {{mess.owner}} | {{mess.group}} | {{mess.replication}} | {{mess.length}} | {{mess.blockSize}} |
33 | {{mess.type}} | {{mess.childrenNum}} | {{mess.fileId}} | {{ mess.path }} |
34 | 查看详情/其他操作 |
35 |
36 | {%endfor %}
37 |
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 | | {{ k }} |
53 | {% endfor %}
54 |
55 |
56 | {% for k,v in more_mess.items %}
57 | | {{ v }} |
58 | {% endfor %}
59 |
60 |
61 |
目录【{{path_value}} 】 的具体操作:
62 |
63 |
64 |
65 |
66 |
67 |
71 |
72 |
76 |
77 |
81 |
82 |
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 |
30 |
31 |
32 | {% block center_index %}
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 |
49 |
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 |
111 |
来自云端的公告
112 |
122 |
123 |
124 | {% endblock %}
125 |
126 | {% block center %}{% endblock %}
127 |
128 |
140 |
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 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
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 |
118 |
119 |
120 |
121 |
122 |
123 |
124 |
125 |
126 |
127 |
128 |
129 |
130 |
131 |
132 |
133 |
134 |
135 |
136 |
137 |
138 |
139 |
140 |
141 |
142 |
143 |
144 |
145 |
146 |
147 |
148 |
149 |
150 |
151 |
152 |
153 |
154 |
155 |
156 |
157 |
158 |
159 |
160 |
161 |
162 |
163 |
164 |
165 |
166 |
167 | true
168 | DEFINITION_ORDER
169 |
170 |
171 |
172 |
173 |
174 |
175 |
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 |
207 |
208 |
209 |
210 |
211 |
212 |
213 |
214 |
215 |
216 |
217 |
218 |
219 |
220 |
221 |
222 |
223 |
224 |
225 |
226 |
227 |
228 |
229 |
230 |
231 |
232 |
233 |
234 |
235 |
236 |
237 |
238 |
239 |
240 |
241 |
242 |
243 |
244 |
245 |
246 |
247 |
248 |
249 |
250 |
251 |
252 |
253 |
254 |
255 |
256 |
257 |
258 |
259 |
260 |
261 |
262 |
263 |
264 |
265 |
266 |
267 |
268 |
269 |
270 |
271 |
272 |
273 |
274 |
275 |
276 |
277 |
278 |
279 |
280 |
281 |
282 |
283 |
284 |
285 |
286 |
287 |
288 |
289 |
290 |
291 |
292 |
293 |
294 |
295 |
296 |
297 |
298 |
299 |
300 |
301 |
302 |
303 |
304 |
305 |
306 |
307 |
308 |
309 |
310 |
311 |
312 |
313 |
314 |
315 |
316 |
317 |
318 |
319 |
320 |
321 |
322 |
323 |
324 |
325 |
326 |
327 |
328 |
329 |
330 |
331 |
332 |
333 |
334 |
335 |
336 |
337 |
338 |
339 |
340 |
341 |
342 |
343 |
344 |
345 |
346 |
347 |
348 |
349 |
350 |
351 |
352 |
353 |
354 |
355 |
356 |
357 |
358 |
359 |
360 |
361 |
362 |
363 |
364 |
365 |
366 |
367 |
368 |
369 |
370 |
371 |
372 |
373 |
374 |
375 |
376 |
377 |
378 |
379 |
380 |
381 |
382 |
383 |
384 | project
385 |
386 |
387 |
388 |
389 |
390 |
391 |
392 |
393 |
394 |
395 |
396 |
397 |
398 |
399 |
400 |
401 |
402 |
403 |
404 |
405 |
406 |
407 |
408 |
409 |
410 |
411 |
412 |
413 |
414 |
415 |
416 |
417 |
418 |
419 |
420 |
421 |
422 |
423 |
424 |
425 |
426 |
427 |
428 |
429 |
430 |
431 |
432 |
433 |
434 |
435 |
436 |
437 |
438 |
439 |
440 |
441 |
442 |
443 |
444 |
445 |
446 |
447 |
448 |
449 |
450 |
451 |
452 |
453 |
454 |
455 |
456 |
457 |
458 |
459 |
460 |
461 |
462 |
463 |
464 |
465 |
466 |
467 |
468 |
469 |
470 |
471 |
472 |
473 |
474 |
475 |
476 |
477 |
478 |
479 |
480 |
481 |
482 |
483 |
484 |
485 |
486 |
487 |
488 |
489 |
490 |
491 |
492 |
493 |
494 |
495 |
496 |
497 |
498 |
499 |
500 |
501 |
502 |
503 |
504 |
505 |
506 |
507 |
508 |
509 |
510 |
511 |
512 |
513 |
514 |
515 |
516 |
517 |
518 |
519 | 1472719712938
520 |
521 |
522 | 1472719712938
523 |
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 |
572 |
573 |
574 |
575 |
576 |
577 |
578 |
579 |
580 |
581 |
582 |
583 |
584 |
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 |
--------------------------------------------------------------------------------