Merge master into task/3530/upgrade_to_django_1.11
This commit is contained in:
commit
17d95609c6
21 changed files with 782 additions and 614 deletions
13
Changelog
13
Changelog
|
@ -1,10 +1,17 @@
|
||||||
Next release:
|
Next:
|
||||||
|
* #3911: [dcl] Integrate resend activation link into dcl landing payment page
|
||||||
|
* #3972: [hosting] Add ungleich company info to invoice footer
|
||||||
|
* #3974: [hosting] Improve invoice number: Show 404 for invoice resources that do not belong to the user
|
||||||
|
1.2.13: 2017-12-09
|
||||||
|
* [cms] Introduce UngleichHeaderBackgroundImageAndTextSliderPlugin that allows to have scrolling images and texts
|
||||||
|
* [cms] Remove <p> tag for ungleich cms customer item template
|
||||||
|
1.2.12: 2017-12-09
|
||||||
|
* #3594: [digitalglarus] Remove white scroll bar on the right in mobile
|
||||||
* #3905: [ungleich] Update ungleich.ch header into a slider
|
* #3905: [ungleich] Update ungleich.ch header into a slider
|
||||||
* [all] Enable logging custom modules
|
* [all] Enable logging custom modules
|
||||||
1.2.11: 2017-11-30
|
1.2.11: 2017-11-30
|
||||||
* [all] TravisCI: Test against python 3.4.2 only
|
* [all] TravisCI: Test against python 3.4.2 only
|
||||||
* [ungleich] Remove data-replaced image in ungleich CMS services item
|
* [ungleich] Remove data-replaced image in ungleich CMS services item plugin template
|
||||||
plugin template
|
|
||||||
1.2.10: 2017-11-26
|
1.2.10: 2017-11-26
|
||||||
* #3843: [ungleich] Add generic ungleich CMS template
|
* #3843: [ungleich] Add generic ungleich CMS template
|
||||||
* #3672: [all] Clean existing automated tests
|
* #3672: [all] Clean existing automated tests
|
||||||
|
|
|
@ -39,7 +39,7 @@
|
||||||
<p>
|
<p>
|
||||||
{% trans "Don't have an account yet?" %}<br>
|
{% trans "Don't have an account yet?" %}<br>
|
||||||
{% trans "You can sign up by filling in the information below." %}<br>
|
{% trans "You can sign up by filling in the information below." %}<br>
|
||||||
<a href="{% url 'hosting:reset_password' %}">{% trans "Forgot password?" %}</a>
|
<a href="{% url 'hosting:reset_password' %}" target="_blank">{% trans "Forgot password?" %}</a> or <a href="{% url 'hosting:resend_activation_link' %}" target="_blank">{% trans "Resend activation link" %}?</a>
|
||||||
</p>
|
</p>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -235,7 +235,7 @@ fieldset[disabled] .btn-xl.active {
|
||||||
.navbar-default .navbar-brand {
|
.navbar-default .navbar-brand {
|
||||||
font-family: "Helvetica Neue", Helvetica, Arial, cursive;
|
font-family: "Helvetica Neue", Helvetica, Arial, cursive;
|
||||||
color: #a1cfd7;
|
color: #a1cfd7;
|
||||||
padding-top: 10px;
|
padding-top: 11px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.navbar-default .navbar-brand:hover,
|
.navbar-default .navbar-brand:hover,
|
||||||
|
|
|
@ -250,6 +250,7 @@ header.history {
|
||||||
text-align:center;
|
text-align:center;
|
||||||
line-height: 2.5;
|
line-height: 2.5;
|
||||||
color: #fff;
|
color: #fff;
|
||||||
|
margin-bottom: 100px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.supporter-intro {
|
.supporter-intro {
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
#page-top #services .container .row .col-lg-12.text-center .section-heading {
|
#page-top #services .section-heading {
|
||||||
font-style: normal;
|
font-style: normal;
|
||||||
color: #494949;
|
color: #494949;
|
||||||
padding-top: 50px;
|
padding-top: 50px;
|
||||||
|
|
|
@ -4,150 +4,148 @@
|
||||||
|
|
||||||
{% block content %}
|
{% block content %}
|
||||||
|
|
||||||
|
|
||||||
<style type="text/css">
|
<style type="text/css">
|
||||||
|
@media screen and (max-width: 600px) {
|
||||||
@media screen and (max-width: 600px) {
|
#timeline{
|
||||||
|
display: none;
|
||||||
#timeline{
|
}
|
||||||
display: none;
|
h2 {font-size: 2em !important;}
|
||||||
}
|
}
|
||||||
h2 {font-size: 2em !important;}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
</style>
|
</style>
|
||||||
|
|
||||||
<!-- Header -->
|
<!-- Header -->
|
||||||
<header class="history">
|
<header class="history">
|
||||||
<div class="container header-history">
|
<div class="container header-history">
|
||||||
<div class="intro-text">
|
<div class="intro-text">
|
||||||
<p>
|
<div class="intro-headline">
|
||||||
</p>
|
<span class="intro-headline">
|
||||||
<div class="intro-headline">
|
Where great minds work
|
||||||
<span class="intro-headline">
|
</span>
|
||||||
Where great minds work
|
|
||||||
</span>
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</header>
|
</header>
|
||||||
<!-- form section ends-->
|
<!-- form section ends-->
|
||||||
<!-- Services Section -->
|
|
||||||
<section id="history">
|
|
||||||
<div class="container-fluid">
|
|
||||||
<div class="row-fluid">
|
|
||||||
<div class="col-lg-12 col-md-12 text-center wow fadeInDown">
|
|
||||||
<span class="glyphicon glyphicon-star glyphicon-inverse"></span>
|
|
||||||
<h2 class="section-heading">the story of Digital Glarus</h2>
|
|
||||||
|
|
||||||
<p class="carousel-text text-center supporter-black">
|
<!-- Services Section -->
|
||||||
In search for a better environment for creativity, ungleich
|
<section id="history">
|
||||||
arrived at a small village in Glarus. First we were driven by the
|
<div class="container-fluid">
|
||||||
cheap real estate price, then we were genuinely surprised by the beauty of its nature. People were incredibly friendly as well. Working just became so relaxed and enjoyable in such a beautiful
|
<div class="text-center wow fadeInDown">
|
||||||
surrounding..How come we are the only ones here?! We can't be
|
<span class="glyphicon glyphicon-star glyphicon-inverse"></span>
|
||||||
enjoying this alone, we need to let others know about this great
|
<h2 class="section-heading">the story of Digital Glarus</h2>
|
||||||
place. That's how it all started...
|
<p class="carousel-text text-center supporter-black">
|
||||||
</p>
|
In search for a better environment for creativity, ungleich
|
||||||
<span class="glyphicon glyphicon-heart glyphicon-inverse"></span>
|
arrived at a small village in Glarus. First we were driven by the
|
||||||
<h2 class="section-heading">we fell in love</h2>
|
cheap real estate price, then we were genuinely surprised by the
|
||||||
|
beauty of its nature. People were incredibly friendly as well.
|
||||||
|
Working just became so relaxed and enjoyable in such a beautiful
|
||||||
|
surrounding..How come we are the only ones here?! We can't be
|
||||||
|
enjoying this alone, we need to let others know about this great
|
||||||
|
place. That's how it all started...
|
||||||
|
</p>
|
||||||
|
<span class="glyphicon glyphicon-heart glyphicon-inverse"></span>
|
||||||
|
|
||||||
<p class="carousel-text text-center supporter-black">
|
<h2 class="section-heading">we fell in love</h2>
|
||||||
We didn't see this coming, but we really fell in love with Glarus. The lakes, the mountains, the mist, the (amazing) snow,
|
<p class="carousel-text text-center supporter-black">
|
||||||
the fresh air, the stream, the people, the stars...how could we not? And before long, we found an 100 something years old house,
|
We didn't see this coming, but we really fell in love with Glarus.
|
||||||
formerly a family home, but long time unused, next to a river in
|
The lakes, the mountains, the mist, the (amazing) snow,
|
||||||
Schwanden. Full of old furniture, the house and the neighborhood
|
the fresh air, the stream, the people, the stars...how could we
|
||||||
was stepping in a time machine. There, we found our first
|
not? And before long, we found an 100 something years old house,
|
||||||
coworking space in Glarus.</p>
|
formerly a family home, but long time unused, next to a river in
|
||||||
<span class="glyphicon glyphicon-home glyphicon-inverse"></span>
|
Schwanden. Full of old furniture, the house and the neighborhood
|
||||||
<h2 class="section-heading">Our crowdfunding success</h2>
|
was stepping in a time machine. There, we found our first
|
||||||
|
coworking space in Glarus.
|
||||||
|
</p>
|
||||||
|
<span class="glyphicon glyphicon-home glyphicon-inverse"></span>
|
||||||
|
|
||||||
<p class="carousel-text text-center supporter-black">
|
<h2 class="section-heading">Our crowdfunding success</h2>
|
||||||
What comes with a very old house? Lots of charm, yes. Great
|
<p class="carousel-text text-center supporter-black">
|
||||||
history, yes. A contract stating that we can park our goats in the
|
What comes with a very old house? Lots of charm, yes. Great
|
||||||
storage room, yes. And, yes, tons of things to be fixed. We
|
history, yes. A contract stating that we can park our goats in the
|
||||||
couldn't afford much of renovation-we are a young start up rich
|
storage room, yes. And, yes, tons of things to be fixed. We
|
||||||
with creativity but not much money (yet)-that is why we decided to ask for help. To our surprise, generous people found hope and
|
couldn't afford much of renovation-we are a young start up rich
|
||||||
inspiration from our project. We got much supports from people we
|
with creativity but not much money (yet)-that is why we decided to
|
||||||
know and we don't know. People wrote to us, called us, met us. We
|
ask for help. To our surprise, generous people found hope and
|
||||||
were on the cover of newspaper. We were on TV. We became the talk
|
inspiration from our project. We got much supports from people we
|
||||||
of the town.
|
know and we don't know. People wrote to us, called us, met us. We
|
||||||
</p>
|
were on the cover of newspaper. We were on TV. We became the talk
|
||||||
|
of the town.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<div>
|
||||||
|
<iframe class="center-block" frameborder="0" height="330" scrolling="no" src="//www.100-days.net/de/projekt/start-digital-glarus/widget/v2" width="220"></iframe>
|
||||||
|
</div>
|
||||||
|
<span class="glyphicon glyphicon-road glyphicon-inverse"></span>
|
||||||
|
|
||||||
<div><iframe class="center-block" frameborder="0" height="330" scrolling="no" src="//www.100-days.net/de/projekt/start-digital-glarus/widget/v2" width="220"></iframe></div>
|
<h2 class="section-heading text-cente">And the story continues..!</h2>
|
||||||
<span class="glyphicon glyphicon-road glyphicon-inverse"></span>
|
<p class="carousel-text text-center supporter-black">
|
||||||
<h2 class="section-heading text-cente">And the story continues..!</h2>
|
With the money we raised from our crowdfunding campaign, we
|
||||||
<p class="carousel-text text-center supporter-black">
|
started renovating the hourse, ripping floors off and fixing
|
||||||
With the money we raised from our crowdfunding campaign, we
|
walls, giving a fresh coat of paint on old walls. We hired Samuel,
|
||||||
started renovating the hourse, ripping floors off and fixing
|
who came to Glarus as a refugee from Eritrea, as our intern to
|
||||||
walls, giving a fresh coat of paint on old walls. We hired Samuel,
|
renovate the house and learn computer science. We opened our door
|
||||||
who came to Glarus as a refugee from Eritrea, as our intern to
|
for students to live. Our coworking space is growing slowly but
|
||||||
renovate the house and learn computer science. We opened our door for students to live. Our coworking space is growing slowly but
|
meaningfully. Our journey only started!
|
||||||
meaningfully. Our journey only started!
|
</p>
|
||||||
</p>
|
<hr class="primary">
|
||||||
<hr class="primary">
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<!-- Half Page Image Background Carousel -->
|
||||||
|
<section>
|
||||||
|
<div id="timeline">
|
||||||
|
<iframe frameborder="0" width="100%" height="650" src="//cdn.knightlab.com/libs/timeline3/latest/embed/index.html?source=15clFd1fjnVScVziBlF-X7j5M7V6uNFt9jt9QZVylaYI&font=Default&lang=en&initial_zoom=2&height=650" width="100%"></iframe>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<!-- Supporters -->
|
||||||
|
<section id="supporters">
|
||||||
|
<div class="supporter-bg">
|
||||||
|
<div class="container">
|
||||||
|
<div class="text-center wow fadeInUp">
|
||||||
|
<h2 class="supporter-headline">Our Supporters</h2>
|
||||||
|
<hr class="primary">
|
||||||
|
<p class="carousel-text supporter-intro text-muted text-center">
|
||||||
|
Here are our proud supporters of project Digital Glarus. Thanks to our supporters,
|
||||||
|
the first cowerking space in Glarus is going to have a new look!
|
||||||
|
</p>
|
||||||
|
<p class="supporter" style="text-transform: uppercase;">
|
||||||
|
{% for supporter in supporters %}
|
||||||
|
{{ supporter.name }}
|
||||||
|
<br>
|
||||||
|
{% endfor %}
|
||||||
|
<br>
|
||||||
|
<a href="{% url 'digitalglarus:supportus' %}" class="btn btn-default btn-primary sr-button">Become a supporter</a>
|
||||||
|
</p>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</section>
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
<!-- Half Page Image Background Carousel -->
|
<section id="contact">
|
||||||
<section>
|
<div class="fill">
|
||||||
<div id="timeline">
|
<div class="container">
|
||||||
<iframe frameborder="0" width="100%" height="650" src="//cdn.knightlab.com/libs/timeline3/latest/embed/index.html?source=15clFd1fjnVScVziBlF-X7j5M7V6uNFt9jt9QZVylaYI&font=Default&lang=en&initial_zoom=2&height=650" width="100%"></iframe>
|
<div class="wow fadeInUp text-center">
|
||||||
</div>
|
<h2 class="section-heading" style="margin-top: 40px;">Contact Us</h2>
|
||||||
|
<div class="map-wrap">
|
||||||
</section>
|
<iframe style="margin-top:20px;" src="https://www.google.com/maps/embed?pb=!1m18!1m12!1m3!1d2721.4267495037207!2d9.070190915609343!3d46.99259307914885!2m3!1f0!2f0!3f0!3m2!1i1024!2i768!4f13.1!3m3!1m2!1s0x47852e9322cc1971%3A0xf1558647dfdfaa60!2sIn+der+Au+7%2C+8762+Glarus+S%C3%BCd!5e0!3m2!1sen!2sch!4v1470238006004" width="100%" height="450" frameborder="0" style="border:0"></iframe>
|
||||||
<!-- Supporters -->
|
|
||||||
<section id="supporters">
|
|
||||||
<div class="supporter-bg">
|
|
||||||
<div class="container">
|
|
||||||
<div class="col-lg-12 text-center wow fadeInDown">
|
|
||||||
<h2 class="supporter-headline">Our Supporters</h2>
|
|
||||||
<hr class="primary">
|
|
||||||
<p class="carousel-text supporter-intro text-muted text-center"> Here are our proud supporters of project Digital Glarus. Thanks to our supporters, the first cowerking space in Glarus
|
|
||||||
is going to have a new look!</p>
|
|
||||||
<p class="supporter" style="text-transform: uppercase;">
|
|
||||||
|
|
||||||
{% for supporter in supporters %}
|
|
||||||
{{ supporter.name }}
|
|
||||||
<br>
|
|
||||||
{% endfor %}
|
|
||||||
<br>
|
|
||||||
<a href="{% url 'digitalglarus:supportus' %}" class="btn btn-default btn-primary sr-button">Become a supporter</a>
|
|
||||||
<br>
|
|
||||||
<br>
|
|
||||||
<br>
|
|
||||||
<br>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
|
|
||||||
<section id="contact">
|
|
||||||
<div class="fill">
|
|
||||||
<div class="row" class="wow fadeInDown">
|
|
||||||
<div class="col-lg-12 text-center wow fadeInDown">
|
|
||||||
<div class=" map-wrap">
|
|
||||||
<iframe style="pointer-events:none;margin-top:20px;" src="https://www.google.com/maps/embed?pb=!1m18!1m12!1m3!1d2721.4267495037207!2d9.070190915609343!3d46.99259307914885!2m3!1f0!2f0!3f0!3m2!1i1024!2i768!4f13.1!3m3!1m2!1s0x47852e9322cc1971%3A0xf1558647dfdfaa60!2sIn+der+Au+7%2C+8762+Glarus+S%C3%BCd!5e0!3m2!1sen!2sch!4v1470238006004" width="100%" height="450" frameborder="0" style="border:0"></iframe>
|
|
||||||
</div>
|
</div>
|
||||||
<div class="col-md-4 map-title">
|
</div>
|
||||||
Digital Glarus<br>
|
<div class="row">
|
||||||
<span class="map-caption">In der Au 7 Schwanden 8762 Switzerland
|
<div class="col-md-4 map-title">
|
||||||
|
Digital Glarus<br>
|
||||||
|
<span class="map-caption">
|
||||||
|
In der Au 7 Schwanden 8762 Switzerland
|
||||||
<br>info@digitalglarus.ch
|
<br>info@digitalglarus.ch
|
||||||
<br>
|
<br>
|
||||||
(044) 534-66-22
|
(044) 534-66-22
|
||||||
<p> </p>
|
<br>
|
||||||
</span>
|
</span>
|
||||||
</div>
|
<p> </p>
|
||||||
<p> </p>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</section>
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
{% endblock %}
|
{% endblock %}
|
|
@ -3,245 +3,248 @@
|
||||||
|
|
||||||
{% block content %}
|
{% block content %}
|
||||||
|
|
||||||
<!-- Header -->
|
<style type="text/css">
|
||||||
<header>
|
|
||||||
<div class="container">
|
|
||||||
<div class="intro-text">
|
|
||||||
<p>
|
|
||||||
</p>
|
|
||||||
<div class="intro-headline">
|
|
||||||
<span class="intro-headline">
|
|
||||||
Where great minds work
|
|
||||||
</span>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="container-fluid darkened-container">
|
.caption-style-1{
|
||||||
<h3 class="intro-small">
|
list-style-type: none;
|
||||||
Book a date today and dive in</h3>
|
margin: 0px;
|
||||||
<a href="{% url 'digitalglarus:booking' %}" class="btn btn-primary">Join now</a>
|
padding: 0px;
|
||||||
<!-- <form class="form-inline">
|
}
|
||||||
<div class="form-group">
|
|
||||||
<label class="sr-only" for="exampleInputPassword3">Pick a date</label>
|
|
||||||
<input type="password" class="form-control" id="exampleInputPassword3" placeholder="Pick a date">
|
|
||||||
<div class="form-group">
|
|
||||||
<label class="sr-only" for="exampleInputEmail3">Email address</label>
|
|
||||||
<input type="email" class="form-control" id="exampleInputEmail3" placeholder="Enter email">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<button type="submit" class="btn btn-primary">book a date</button>
|
|
||||||
</form> -->
|
|
||||||
|
|
||||||
</div>
|
.caption-style-1 li{
|
||||||
|
float: left;
|
||||||
|
padding: 0px;
|
||||||
|
position: relative;
|
||||||
|
overflow: hidden;
|
||||||
|
}
|
||||||
|
|
||||||
<style type="text/css">
|
.caption-style-1 li:hover .caption{
|
||||||
|
opacity: 1;
|
||||||
|
}
|
||||||
|
|
||||||
.caption-style-1{
|
.caption-style-1 img{
|
||||||
list-style-type: none;
|
margin: 0px;
|
||||||
margin: 0px;
|
padding: 0px;
|
||||||
padding: 0px;
|
float: left;
|
||||||
|
z-index: 4;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
.caption-style-1 .caption{
|
||||||
|
cursor: pointer;
|
||||||
|
opacity: 0;
|
||||||
|
-webkit-transition:all 0.45s ease-in-out;
|
||||||
|
-moz-transition:all 0.45s ease-in-out;
|
||||||
|
-o-transition:all 0.45s ease-in-out;
|
||||||
|
-ms-transition:all 0.45s ease-in-out;
|
||||||
|
transition:all 0.45s ease-in-out;
|
||||||
|
}
|
||||||
|
.caption-style-1 .blur{
|
||||||
|
background-color: rgba(0,0,0,0.65);
|
||||||
|
height: 800px;
|
||||||
|
width: 800px;
|
||||||
|
z-index: 10;
|
||||||
|
position: absolute;
|
||||||
|
}
|
||||||
|
|
||||||
.caption-style-1 li{
|
.caption-style-1 .caption-text h1{
|
||||||
float: left;
|
text-transform: uppercase;
|
||||||
padding: 0px;
|
font-size: 24px;
|
||||||
position: relative;
|
}
|
||||||
overflow: hidden;
|
.caption-style-1 .caption-text{
|
||||||
}
|
z-index: 0;
|
||||||
|
color: #fff;
|
||||||
|
width: 400px;
|
||||||
|
height: 200px;
|
||||||
|
text-align: center;
|
||||||
|
top:30px;
|
||||||
|
}
|
||||||
|
|
||||||
.caption-style-1 li:hover .caption{
|
/** content **/
|
||||||
opacity: 1;
|
.content{
|
||||||
|
margin-top: 100px;
|
||||||
|
margin-left: 100px;
|
||||||
|
width: 700px;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
.content p{
|
||||||
|
color: #ecf0f1;
|
||||||
|
font-family: "Lato";
|
||||||
|
line-height: 28px;
|
||||||
|
font-size: 15px;
|
||||||
|
padding-top: 50px;
|
||||||
|
}
|
||||||
|
|
||||||
|
p.credit{
|
||||||
|
padding-top: 20px;
|
||||||
|
font-size: 12px;
|
||||||
|
}
|
||||||
|
|
||||||
.caption-style-1 img{
|
p a{
|
||||||
margin: 0px;
|
color: #ecf0f1;
|
||||||
padding: 0px;
|
}
|
||||||
float: left;
|
.section-top-content {
|
||||||
z-index: 4;
|
font-size: 30px;
|
||||||
}
|
font-weight: 600;
|
||||||
|
padding-top: 50px;
|
||||||
|
display: flex;
|
||||||
.caption-style-1 .caption{
|
justify-content: center;
|
||||||
cursor: pointer;
|
}
|
||||||
opacity: 0;
|
.section-top-content span{
|
||||||
-webkit-transition:all 0.45s ease-in-out;
|
font-weight: 300;
|
||||||
-moz-transition:all 0.45s ease-in-out;
|
}
|
||||||
-o-transition:all 0.45s ease-in-out;
|
.section-top-txt {
|
||||||
-ms-transition:all 0.45s ease-in-out;
|
padding-top: 80px;
|
||||||
transition:all 0.45s ease-in-out;
|
text-transform: uppercase;
|
||||||
|
text-align: right;
|
||||||
}
|
}
|
||||||
.caption-style-1 .blur{
|
.section-top-img {
|
||||||
background-color: rgba(0,0,0,0.65);
|
max-width: 50%;
|
||||||
height: 800px;
|
padding: 0px;
|
||||||
width: 800px;
|
}
|
||||||
z-index: 10;
|
@media(max-width:500px) {
|
||||||
position: absolute;
|
.section-top-txt {
|
||||||
}
|
padding: 55px 5px 0 0px;
|
||||||
|
}
|
||||||
.caption-style-1 .caption-text h1{
|
.section-top-content {
|
||||||
text-transform: uppercase;
|
font-size: 28px;
|
||||||
font-size: 24px;
|
}
|
||||||
}
|
}
|
||||||
.caption-style-1 .caption-text{
|
@media(max-width:360px) {
|
||||||
z-index: 0;
|
.section-top-txt {
|
||||||
color: #fff;
|
padding: 32px 5px 0 0px;
|
||||||
width: 400px;
|
}
|
||||||
height: 200px;
|
.section-top-content {
|
||||||
text-align: center;
|
font-size: 18px;
|
||||||
top:30px;
|
}
|
||||||
|
}
|
||||||
|
@media screen and (min-device-width: 768px) and (max-device-width: 991px) {
|
||||||
}
|
.section-top-txt {
|
||||||
|
padding-top: 43px;
|
||||||
/** content **/
|
}
|
||||||
.content{
|
}
|
||||||
margin-top: 100px;
|
@media screen and (min-device-width: 992px) and (max-device-width: 1200px) {
|
||||||
margin-left: 100px;
|
.section-top-txt {
|
||||||
width: 700px;
|
padding-top: 65px;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
.content p{
|
@media screen and (min-device-width: 361px) and (max-device-width: 428px) {
|
||||||
color: #ecf0f1;
|
.section-top-txt {
|
||||||
font-family: "Lato";
|
padding: 35px 5px 0 0px;
|
||||||
line-height: 28px;
|
}
|
||||||
font-size: 15px;
|
.section-top-content {
|
||||||
padding-top: 50px;
|
font-size: 22px;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
p.credit{
|
|
||||||
padding-top: 20px;
|
|
||||||
font-size: 12px;
|
|
||||||
}
|
|
||||||
|
|
||||||
p a{
|
|
||||||
color: #ecf0f1;
|
|
||||||
}
|
|
||||||
.section-top-content {
|
|
||||||
font-size: 30px;
|
|
||||||
font-weight: 600;
|
|
||||||
padding-top: 50px;
|
|
||||||
}
|
|
||||||
.section-top-content span{
|
|
||||||
font-weight: 300;
|
|
||||||
}
|
|
||||||
.section-top-txt {
|
|
||||||
padding-top: 80px;
|
|
||||||
text-transform: uppercase;
|
|
||||||
text-align: right;
|
|
||||||
}
|
|
||||||
.section-top-img {
|
|
||||||
padding:0px;
|
|
||||||
}
|
|
||||||
@media(max-width:500px) {
|
|
||||||
.section-top-txt {
|
|
||||||
padding: 55px 5px 0 0px;
|
|
||||||
}
|
|
||||||
.section-top-content {
|
|
||||||
font-size: 28px;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@media(max-width:360px) {
|
|
||||||
.section-top-txt {
|
|
||||||
padding: 32px 5px 0 0px;
|
|
||||||
}
|
|
||||||
.section-top-content {
|
|
||||||
font-size: 18px;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@media screen and (min-device-width: 768px) and (max-device-width: 991px) {
|
|
||||||
.section-top-txt {
|
|
||||||
padding-top: 43px;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@media screen and (min-device-width: 992px) and (max-device-width: 1200px) {
|
|
||||||
.section-top-txt {
|
|
||||||
padding-top: 65px;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
</style>
|
</style>
|
||||||
|
|
||||||
|
<!-- Header -->
|
||||||
|
<header>
|
||||||
</header>
|
<div class="container">
|
||||||
<!-- form section ends-->
|
<div class="intro-text">
|
||||||
<!-- Services Section -->
|
<div class="intro-headline">
|
||||||
<section id="services">
|
<span class="intro-headline">
|
||||||
<div class="container">
|
Where great minds work
|
||||||
<div class="row">
|
</span>
|
||||||
<div class="col-lg-12 text-center wow fadeInDown section-top-content">
|
</div>
|
||||||
<div class="col-lg-3 col-sm-2 col-xs-12"></div>
|
|
||||||
<div class="col-lg-6 col-sm-10 col-xs-12">
|
|
||||||
<div class="col-lg-5 col-sm-5 col-xs-6 section-top-txt">Partner <span>of</span></div>
|
|
||||||
<div class="col-lg-7 col-sm-4 col-xs-6 section-top-img"><a href="https://zurich.impacthub.ch" target="_blank"><img src="{% static 'digitalglarus/img/impacthub_logo.jpg' %}" class="img-responsive" alt=""></a></div>
|
|
||||||
</div>
|
|
||||||
<div class="col-lg-3 col-sm-12 col-xs-12"></div>
|
|
||||||
</div>
|
</div>
|
||||||
<div class="col-lg-12 col-xs-12 text-center wow fadeInDown">
|
</div>
|
||||||
|
|
||||||
|
<div class="container-fluid darkened-container">
|
||||||
|
<h3 class="intro-small">Book a date today and dive in</h3>
|
||||||
|
<a href="{% url 'digitalglarus:booking' %}" class="btn btn-primary">Join now</a>
|
||||||
|
|
||||||
|
{% comment %}
|
||||||
|
<form class="form-inline">
|
||||||
|
<div class="form-group">
|
||||||
|
<label class="sr-only" for="exampleInputPassword3">Pick a date</label>
|
||||||
|
<input type="password" class="form-control" id="exampleInputPassword3" placeholder="Pick a date">
|
||||||
|
<div class="form-group">
|
||||||
|
<label class="sr-only" for="exampleInputEmail3">Email address</label>
|
||||||
|
<input type="email" class="form-control" id="exampleInputEmail3" placeholder="Enter email">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<button type="submit" class="btn btn-primary">book a date</button>
|
||||||
|
</form>
|
||||||
|
{% endcomment %}
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</header>
|
||||||
|
<!-- form section ends-->
|
||||||
|
|
||||||
|
<!-- Services Section -->
|
||||||
|
<section id="services">
|
||||||
|
<div class="container">
|
||||||
|
<div class="text-center wow fadeInUp section-top-content">
|
||||||
|
<div class="section-top-txt">Partner <span>of</span></div>
|
||||||
|
<div class="section-top-img">
|
||||||
|
<a href="https://zurich.impacthub.ch" target="_blank">
|
||||||
|
<img src="{% static 'digitalglarus/img/impacthub_logo.jpg' %}" class="img-responsive" alt="">
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="text-center wow fadeInUp">
|
||||||
<h2 class="section-heading">In Digital Glarus you can..</h2>
|
<h2 class="section-heading">In Digital Glarus you can..</h2>
|
||||||
<hr class="primary">
|
<hr class="primary">
|
||||||
</div>
|
</div>
|
||||||
</div>
|
|
||||||
<!--dropdown icons-->
|
<!--dropdown icons-->
|
||||||
<div class="row text-center">
|
<div class="row text-center">
|
||||||
<div class="col-xs-6 col-sm-3">
|
<div class="col-xs-6 col-sm-3">
|
||||||
<div class="team-member wow fadeInDown" data-wow-delay="0.3s">
|
<div class="team-member wow fadeInUp" data-wow-delay="0.3s">
|
||||||
<img src="{% static 'digitalglarus/img/services/sleep.svg' %}" class="img-responsive img-toggle" alt="">
|
<img src="{% static 'digitalglarus/img/services/sleep.svg' %}" class="img-responsive img-toggle" alt="">
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
<div class="col-xs-6 col-sm-3">
|
||||||
<div class="col-xs-6 col-sm-3">
|
<div class="team-member wow fadeInUp" data-wow-delay="0.5s">
|
||||||
<div class="team-member wow fadeInDown" data-wow-delay="0.5s">
|
<img src="{% static 'digitalglarus/img/services/eat.svg' %}" class="img-responsive img-toggle" alt="">
|
||||||
<img src="{% static 'digitalglarus/img/services/eat.svg' %}" class="img-responsive img-toggle" alt="">
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
<div class="col-xs-6 col-sm-3">
|
||||||
<div class="col-xs-6 col-sm-3">
|
<div class="team-member wow fadeInUp" data-wow-delay="0.7s">
|
||||||
<div class="team-member wow fadeInDown" data-wow-delay="0.7s">
|
<img src="{% static 'digitalglarus/img/services/freshenup.svg' %}" class="img-responsive img-toggle cursor-pointer" alt="">
|
||||||
<img src="{% static 'digitalglarus/img/services/freshenup.svg' %}" class="img-responsive img-toggle cursor-pointer" alt="">
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
<div class="col-xs-6 col-sm-3">
|
||||||
<div class="col-xs-6 col-sm-3">
|
<div class="team-member wow fadeInUp" data-wow-delay="0.8s">
|
||||||
<div class="team-member wow fadeInDown" data-wow-delay="0.8s">
|
<img src="{% static 'digitalglarus/img/services/work.svg' %}" class="img-responsive img-toggle" alt="">
|
||||||
<img src="{% static 'digitalglarus/img/services/work.svg' %}" class="img-responsive img-toggle" alt="">
|
</div>
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="row text-center" style="margin-left: 0px; margin-right: 0px;">
|
|
||||||
<div class="col-xs-6 col-sm-3">
|
|
||||||
<div class="team-member wow fadeInDown" data-wow-delay="0.9s">
|
|
||||||
<img src="{% static 'digitalglarus/img/services/enjoy.svg' %}" class="img-responsive img-toggle" alt="">
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
<div class="row text-center" style="margin-left: 0px; margin-right: 0px;">
|
||||||
<div class="col-xs-6 col-sm-3">
|
<div class="col-xs-6 col-sm-3">
|
||||||
<div class="team-member wow fadeInDown" data-wow-delay="1s">
|
<div class="team-member wow fadeInUp" data-wow-delay="0.9s">
|
||||||
<img src="{% static 'digitalglarus/img/services/network.svg' %}" class="img-responsive img-toggle" alt="">
|
<img src="{% static 'digitalglarus/img/services/enjoy.svg' %}" class="img-responsive img-toggle" alt="">
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-xs-6 col-sm-3">
|
<div class="col-xs-6 col-sm-3">
|
||||||
<div class="team-member wow fadeInDown" data-wow-delay="1.1s">
|
<div class="team-member wow fadeInUp" data-wow-delay="1s">
|
||||||
<img src="{% static 'digitalglarus/img/services/lightbulb.svg' %}" class="img-responsive img-toggle cursor-pointer" alt="">
|
<img src="{% static 'digitalglarus/img/services/network.svg' %}" class="img-responsive img-toggle" alt="">
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-xs-6 col-sm-3">
|
<div class="col-xs-6 col-sm-3">
|
||||||
<div class="team-member wow fadeInDown" data-wow-delay="1.2s">
|
<div class="team-member wow fadeInUp" data-wow-delay="1.1s">
|
||||||
<img src="{% static 'digitalglarus/img/services/beinspired.svg' %}" class="img-responsive img-toggle" alt="">
|
<img src="{% static 'digitalglarus/img/services/lightbulb.svg' %}" class="img-responsive img-toggle cursor-pointer" alt="">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="col-xs-6 col-sm-3">
|
||||||
|
<div class="team-member wow fadeInUp" data-wow-delay="1.2s">
|
||||||
|
<img src="{% static 'digitalglarus/img/services/beinspired.svg' %}" class="img-responsive img-toggle" alt="">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<!-- start:recommendationSlider -->
|
<!-- start:recommendationSlider -->
|
||||||
<hr class="primary">
|
<hr class="primary">
|
||||||
<div id="carousel-recommendation-ungleich" class="carousel slide ungleich ungleich-gallery ungleich-gallery-text-carousel" data-ride="carousel" data-interval="false">
|
<div id="carousel-recommendation-ungleich" class="carousel slide ungleich ungleich-gallery ungleich-gallery-text-carousel" data-ride="carousel" data-interval="false">
|
||||||
<!-- Indicators -->
|
<!-- Indicators -->
|
||||||
<ol class="carousel-indicators">
|
<ol class="carousel-indicators">
|
||||||
<li data-target="#carousel-recommendation-ungleich" data-slide-to="0" class="active"></li>
|
<li data-target="#carousel-recommendation-ungleich" data-slide-to="0" class="active"></li>
|
||||||
<li data-target="#carousel-recommendation-ungleich" data-slide-to="1"></li>
|
<li data-target="#carousel-recommendation-ungleich" data-slide-to="1"></li>
|
||||||
<li data-target="#carousel-recommendation-ungleich" data-slide-to="2"></li>
|
<li data-target="#carousel-recommendation-ungleich" data-slide-to="2"></li>
|
||||||
</ol>
|
</ol>
|
||||||
|
|
||||||
<!-- Wrapper for slides -->
|
<!-- Wrapper for slides -->
|
||||||
<div class="carousel-inner" role="listbox">
|
<div class="carousel-inner" role="listbox">
|
||||||
<div class="item active">
|
<div class="item active">
|
||||||
<p class="carousel-text text-muted text-center">
|
<p class="carousel-text text-muted text-center">
|
||||||
When we first moved our company HQ to Glarus,
|
When we first moved our company HQ to Glarus,
|
||||||
|
@ -256,13 +259,13 @@
|
||||||
</div>
|
</div>
|
||||||
<div class="item">
|
<div class="item">
|
||||||
<p class="carousel-text text-muted text-center">
|
<p class="carousel-text text-muted text-center">
|
||||||
After my first visit to Digital Glarus, I felt
|
After my first visit to Digital Glarus, I felt
|
||||||
right at home and at peace. Now that 200ok has a
|
right at home and at peace. Now that 200ok has a
|
||||||
mountain-side office, our meetings, workshops and
|
mountain-side office, our meetings, workshops and
|
||||||
code-retreats are so much more intense and productive
|
code-retreats are so much more intense and productive
|
||||||
for everyone. And in the end, when people came
|
for everyone. And in the end, when people came
|
||||||
over from the city for work, they want to come back
|
over from the city for work, they want to come back
|
||||||
real soon, because it just feels like going on vacation.
|
real soon, because it just feels like going on vacation.
|
||||||
</p>
|
</p>
|
||||||
<p class="text-center">
|
<p class="text-center">
|
||||||
<strong> - Alain Lafon </strong>, CEO of 200ok GmbH
|
<strong> - Alain Lafon </strong>, CEO of 200ok GmbH
|
||||||
|
@ -281,205 +284,185 @@
|
||||||
Swiss Federal Institute for Forest, Snow and Landscape Research WSL
|
Swiss Federal Institute for Forest, Snow and Landscape Research WSL
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<!-- end:recommendationSlider -->
|
<!-- end:recommendationSlider -->
|
||||||
</div></section>
|
</section>
|
||||||
|
|
||||||
|
<!-- Portfolio Grid Section -->
|
||||||
<!-- Portfolio Grid Section -->
|
<section id="portfolio" class="no-padding">
|
||||||
<section id="portfolio" class="no-padding">
|
|
||||||
<div class="container-fluid">
|
<div class="container-fluid">
|
||||||
<!--<div class="row">
|
<!--<div class="row">
|
||||||
<div class="col-lg-12 text-center wow fadeInDown">
|
<div class="col-lg-12 text-center wow fadeInUp">
|
||||||
<h2 class="section-heading">here you can</h2>
|
<h2 class="section-heading">here you can</h2>
|
||||||
<h3 class="section-subheading text-muted">Join our community. Inspire and be inspired.</h3>
|
<h3 class="section-subheading text-muted">Join our community. Inspire and be inspired.</h3>
|
||||||
</div>-->
|
</div>-->
|
||||||
</div>
|
|
||||||
<div class="row no-gutter popup-gallery">
|
|
||||||
|
|
||||||
|
<div class="row no-gutter popup-gallery">
|
||||||
<div class="col-lg-4 col-md-4 col-sm-6 portfolio-item wow fadeInDown text-center" data-wow-delay="0.5s">
|
<div class="col-lg-4 col-md-4 col-sm-6 portfolio-item wow fadeInUp text-center" data-wow-delay="0.5s">
|
||||||
<ul class="caption-style-1">
|
<ul class="caption-style-1">
|
||||||
<li>
|
<li>
|
||||||
<img src="{% static 'digitalglarus/img/portfolio/excursion.png' %}" class="img-responsive inline-block" alt="">
|
<img src="{% static 'digitalglarus/img/portfolio/excursion.png' %}" class="img-responsive inline-block" alt="">
|
||||||
<div class="caption">
|
<div class="caption">
|
||||||
<div class="blur"></div>
|
<div class="blur"></div>
|
||||||
|
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</li>
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
<div class="caption portfolio-caption-white">excursions</div>
|
<div class="caption portfolio-caption-white">excursions</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
</div>
|
<div class="col-lg-4 col-md-4 col-sm-6 portfolio-item wow fadeInUp text-center" data-wow-delay="0.8s">
|
||||||
|
|
||||||
<div class="col-lg-4 col-md-4 col-sm-6 portfolio-item wow fadeInDown text-center" data-wow-delay="0.8s">
|
|
||||||
<ul class="caption-style-1">
|
<ul class="caption-style-1">
|
||||||
<li>
|
<li>
|
||||||
<img src="{% static 'digitalglarus/img/portfolio/ski.png' %}" class="img-responsive inline-block" alt="">
|
<img src="{% static 'digitalglarus/img/portfolio/ski.png' %}" class="img-responsive inline-block" alt="">
|
||||||
<div class="caption">
|
<div class="caption">
|
||||||
<div class="blur"></div>
|
<div class="blur"></div>
|
||||||
|
</div>
|
||||||
</div>
|
|
||||||
</li>
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
<div class="caption portfolio-caption-white">enjoy the great outdoors</div>
|
<div class="caption portfolio-caption-white">enjoy the great outdoors</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<div class="col-lg-4 col-md-4 col-sm-6 portfolio-item wow fadeInUp text-center" data-wow-delay="1.1s">
|
||||||
<div class="col-lg-4 col-md-4 col-sm-6 portfolio-item wow fadeInDown text-center" data-wow-delay="1.1s">
|
<ul class="caption-style-1">
|
||||||
<ul class="caption-style-1">
|
<li>
|
||||||
<li>
|
<img src="{% static 'digitalglarus/img/portfolio/concert.png' %}" class="img-responsive inline-block" alt="">
|
||||||
<img src="{% static 'digitalglarus/img/portfolio/concert.png' %}" class="img-responsive inline-block" alt="">
|
|
||||||
<div class="caption">
|
|
||||||
<div class="blur"></div>
|
|
||||||
|
|
||||||
</div>
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
<div class="caption portfolio-caption-white">cultural events</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="col-lg-4 col-md-4 col-sm-6 portfolio-item wow fadeInDown text-center" data-wow-delay="1.2s">
|
|
||||||
<ul class="caption-style-1">
|
|
||||||
<li>
|
|
||||||
<img src="{% static 'digitalglarus/img/portfolio/inspire.png' %}" class="img-responsive inline-block" alt="">
|
|
||||||
<div class="caption">
|
|
||||||
<div class="blur"></div>
|
|
||||||
|
|
||||||
</div>
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
<div class="caption portfolio-caption-white">be inspired</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<div class="col-lg-4 col-md-4 col-sm-6 portfolio-item wow fadeInDown text-center" data-wow-delay="1.3s">
|
|
||||||
<ul class="caption-style-1">
|
|
||||||
<li>
|
|
||||||
<img src="{% static 'digitalglarus/img/portfolio/workshop.png' %}" class="img-responsive inline-block" alt="">
|
|
||||||
<div class="caption">
|
<div class="caption">
|
||||||
<div class="blur"></div>
|
<div class="blur"></div>
|
||||||
</div>
|
</div>
|
||||||
</li>
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
<div class="caption portfolio-caption-white">workshops</div>
|
<div class="caption portfolio-caption-white">cultural events</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="col-lg-4 col-md-4 col-sm-6 portfolio-item wow fadeInDown text-center" data-wow-delay="1.4s">
|
<div class="col-lg-4 col-md-4 col-sm-6 portfolio-item wow fadeInUp text-center" data-wow-delay="1.2s">
|
||||||
<ul class="caption-style-1">
|
<ul class="caption-style-1">
|
||||||
<li>
|
<li>
|
||||||
<img src="{% static 'digitalglarus/img/portfolio/recharge.png' %}" class="img-responsive inline-block" alt="">
|
<img src="{% static 'digitalglarus/img/portfolio/inspire.png' %}" class="img-responsive inline-block" alt="">
|
||||||
<div class="caption">
|
<div class="caption">
|
||||||
<div class="blur"></div>
|
<div class="blur"></div>
|
||||||
</div>
|
</div>
|
||||||
</li>
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
<div class="caption portfolio-caption-white">recharge</div>
|
<div class="caption portfolio-caption-white">be inspired</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="col-lg-4 col-md-4 col-sm-6 portfolio-item wow fadeInUp text-center" data-wow-delay="1.3s">
|
||||||
|
<ul class="caption-style-1">
|
||||||
|
<li>
|
||||||
|
<img src="{% static 'digitalglarus/img/portfolio/workshop.png' %}" class="img-responsive inline-block" alt="">
|
||||||
|
<div class="caption">
|
||||||
|
<div class="blur"></div>
|
||||||
|
</div>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
<div class="caption portfolio-caption-white">workshops</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="col-lg-4 col-md-4 col-sm-6 portfolio-item wow fadeInUp text-center" data-wow-delay="1.4s">
|
||||||
|
<ul class="caption-style-1">
|
||||||
|
<li>
|
||||||
|
<img src="{% static 'digitalglarus/img/portfolio/recharge.png' %}" class="img-responsive inline-block" alt="">
|
||||||
|
<div class="caption">
|
||||||
|
<div class="blur"></div>
|
||||||
|
</div>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
<div class="caption portfolio-caption-white">recharge</div>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
</div>
|
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
|
<!--aside-->
|
||||||
|
<aside class="bg-dark">
|
||||||
|
<div class="container text-center">
|
||||||
<!--aside-->
|
<div class="call-to-action aside-caption-white">
|
||||||
<aside class="bg-dark">
|
Join our community. Be our member now!
|
||||||
<div class="container text-center">
|
|
||||||
<div class="call-to-action aside-caption-white">
|
|
||||||
Join our community. Be our member now!
|
|
||||||
<br>
|
|
||||||
<br>
|
|
||||||
<a href="{% url 'digitalglarus:signup' %}" class="btn btn-default btn-primary sr-button"> Sign Up </a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</aside>
|
|
||||||
<!-- Half Page Image Background Carousel -->
|
|
||||||
<section id="myCarousel" class="carousel slide">
|
|
||||||
<!-- Indicators -->
|
|
||||||
<ol class="carousel-indicators">
|
|
||||||
<li data-target="#myCarousel" data-slide-to="0" class="active"></li>
|
|
||||||
<li data-target="#myCarousel" data-slide-to="1"></li>
|
|
||||||
<li data-target="#myCarousel" data-slide-to="2"></li>
|
|
||||||
<li data-target="#myCarousel" data-slide-to="3"></li>
|
|
||||||
</ol>
|
|
||||||
|
|
||||||
<!-- Wrapper for Slides -->
|
|
||||||
<div class="carousel-inner">
|
|
||||||
<div class="item active">
|
|
||||||
<!-- Set the first background image using inline CSS below. -->
|
|
||||||
<div class="fill" style="background-image:url({% static 'digitalglarus/img/portfolio/slider_1.png' %})"></div>
|
|
||||||
<div class="carousel-caption carousel-caption-text">
|
|
||||||
<strong>OpenNebula workshop</strong> : <br>
|
|
||||||
push your geeky boundary with us at Digital Chalet
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="item">
|
|
||||||
<!-- Set the second background image using inline CSS below. -->
|
|
||||||
<div class="fill" style="background-image:url({% static 'digitalglarus/img/portfolio/slider_2.png' %})"></div>
|
|
||||||
<div class="carousel-caption carousel-caption-text">
|
|
||||||
<strong>Lorawan meetup</strong> : <br>
|
|
||||||
connect with like-minded people and discuss your latest tech obsession.
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="item">
|
|
||||||
<!-- Set the third background image using inline CSS below. -->
|
|
||||||
<div class="fill" style="background-image:url({% static 'digitalglarus/img/portfolio/slider_3.png' %})"></div>
|
|
||||||
<div class="carousel-caption carousel-caption-text">
|
|
||||||
Cooking and Hacking at Digital Chalet Schwanden
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="item">
|
|
||||||
<!-- Set the third background image using inline CSS below. -->
|
|
||||||
<div class="fill" style="background-image:url({% static 'digitalglarus/img/portfolio/slider_4.png' %})"></div>
|
|
||||||
<div class="carousel-caption carousel-caption-text">
|
|
||||||
Dive into the beautiful nature around you anytime you want
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<!-- Controls -->
|
|
||||||
<a class="left carousel-control" href="#myCarousel" data-slide="prev">
|
|
||||||
<span class="glyphicon glyphicon-chevron-left"></span>
|
|
||||||
|
|
||||||
</a>
|
|
||||||
<a class="right carousel-control" href="#myCarousel" data-slide="next">
|
|
||||||
<span class="glyphicon glyphicon-chevron-right"></span>
|
|
||||||
</a>
|
|
||||||
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<section id="contact">
|
|
||||||
<div class="fill">
|
|
||||||
<div class="row" class="wow fadeInDown">
|
|
||||||
<div class="col-lg-12 text-center wow fadeInDown">
|
|
||||||
<h2 class="section-heading">Contact Us</h2>
|
|
||||||
<div class=" map-wrap">
|
|
||||||
<iframe style="pointer-events:none" src="https://www.google.com/maps/embed?pb=!1m18!1m12!1m3!1d2721.4267495037207!2d9.070190915609343!3d46.99259307914885!2m3!1f0!2f0!3f0!3m2!1i1024!2i768!4f13.1!3m3!1m2!1s0x47852e9322cc1971%3A0xf1558647dfdfaa60!2sIn+der+Au+7%2C+8762+Glarus+S%C3%BCd!5e0!3m2!1sen!2sch!4v1470238006004" width="100%" height="450" frameborder="0" style="border:0"></iframe></div>
|
|
||||||
<div class="col-md-4 map-title">
|
|
||||||
Digital Glarus<br>
|
|
||||||
<span class="map-caption">In der Au 7 Schwanden 8762 Switzerland
|
|
||||||
<br>info@digitalglarus.ch
|
|
||||||
<br>
|
<br>
|
||||||
(044) 534-66-22
|
<br>
|
||||||
<p> </p>
|
<a href="{% url 'digitalglarus:signup' %}" class="btn btn-default btn-primary sr-button"> Sign Up </a>
|
||||||
</span>
|
|
||||||
</div>
|
</div>
|
||||||
<p> </p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
|
</aside>
|
||||||
|
|
||||||
|
<!-- Half Page Image Background Carousel -->
|
||||||
|
<section id="myCarousel" class="carousel slide">
|
||||||
|
<!-- Indicators -->
|
||||||
|
<ol class="carousel-indicators">
|
||||||
|
<li data-target="#myCarousel" data-slide-to="0" class="active"></li>
|
||||||
|
<li data-target="#myCarousel" data-slide-to="1"></li>
|
||||||
|
<li data-target="#myCarousel" data-slide-to="2"></li>
|
||||||
|
<li data-target="#myCarousel" data-slide-to="3"></li>
|
||||||
|
</ol>
|
||||||
|
|
||||||
|
<!-- Wrapper for Slides -->
|
||||||
|
<div class="carousel-inner">
|
||||||
|
<div class="item active">
|
||||||
|
<!-- Set the first background image using inline CSS below. -->
|
||||||
|
<div class="fill" style="background-image:url({% static 'digitalglarus/img/portfolio/slider_1.png' %})"></div>
|
||||||
|
<div class="carousel-caption carousel-caption-text">
|
||||||
|
<strong>OpenNebula workshop</strong> : <br>
|
||||||
|
push your geeky boundary with us at Digital Chalet
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</section>
|
<div class="item">
|
||||||
|
<!-- Set the second background image using inline CSS below. -->
|
||||||
|
<div class="fill" style="background-image:url({% static 'digitalglarus/img/portfolio/slider_2.png' %})"></div>
|
||||||
|
<div class="carousel-caption carousel-caption-text">
|
||||||
|
<strong>Lorawan meetup</strong> : <br>
|
||||||
|
connect with like-minded people and discuss your latest tech obsession.
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="item">
|
||||||
|
<!-- Set the third background image using inline CSS below. -->
|
||||||
|
<div class="fill" style="background-image:url({% static 'digitalglarus/img/portfolio/slider_3.png' %})"></div>
|
||||||
|
<div class="carousel-caption carousel-caption-text">
|
||||||
|
Cooking and Hacking at Digital Chalet Schwanden
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="item">
|
||||||
|
<!-- Set the third background image using inline CSS below. -->
|
||||||
|
<div class="fill" style="background-image:url({% static 'digitalglarus/img/portfolio/slider_4.png' %})"></div>
|
||||||
|
<div class="carousel-caption carousel-caption-text">
|
||||||
|
Dive into the beautiful nature around you anytime you want
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<!-- Controls -->
|
||||||
|
<a class="left carousel-control" href="#myCarousel" data-slide="prev">
|
||||||
|
<span class="glyphicon glyphicon-chevron-left"></span>
|
||||||
|
</a>
|
||||||
|
<a class="right carousel-control" href="#myCarousel" data-slide="next">
|
||||||
|
<span class="glyphicon glyphicon-chevron-right"></span>
|
||||||
|
</a>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<section id="contact">
|
||||||
|
<div class="fill">
|
||||||
|
<div class="container">
|
||||||
|
<div class="wow fadeInUp">
|
||||||
|
<div class="text-center">
|
||||||
|
<h2 class="section-heading">Contact Us</h2>
|
||||||
|
<div class="map-wrap">
|
||||||
|
<iframe src="https://www.google.com/maps/embed?pb=!1m18!1m12!1m3!1d2721.4267495037207!2d9.070190915609343!3d46.99259307914885!2m3!1f0!2f0!3f0!3m2!1i1024!2i768!4f13.1!3m3!1m2!1s0x47852e9322cc1971%3A0xf1558647dfdfaa60!2sIn+der+Au+7%2C+8762+Glarus+S%C3%BCd!5e0!3m2!1sen!2sch!4v1470238006004" width="100%" height="450" frameborder="0" style="border:0"></iframe>
|
||||||
|
</div>
|
||||||
|
<div class="map-title">
|
||||||
|
Digital Glarus<br>
|
||||||
|
<span class="map-caption">In der Au 7 Schwanden 8762 Switzerland
|
||||||
|
<br>info@digitalglarus.ch
|
||||||
|
<br>
|
||||||
|
(044) 534-66-22
|
||||||
|
<p> </p>
|
||||||
|
</span>
|
||||||
|
</div>
|
||||||
|
<p> </p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
|
||||||
<!--
|
<!--
|
||||||
|
|
|
@ -7,7 +7,7 @@
|
||||||
|
|
||||||
@media(min-width: 768px) {
|
@media(min-width: 768px) {
|
||||||
.order-detail-container {
|
.order-detail-container {
|
||||||
padding: 30px;
|
padding: 30px 30px 20px;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -53,7 +53,7 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
.order-detail-container .order-details {
|
.order-detail-container .order-details {
|
||||||
margin-bottom: 30px;
|
margin-bottom: 15px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.order-detail-container .order-details strong {
|
.order-detail-container .order-details strong {
|
||||||
|
@ -90,3 +90,18 @@
|
||||||
width: 16px;
|
width: 16px;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.order_detail_footer {
|
||||||
|
font-size: 9px;
|
||||||
|
letter-spacing: 1px;
|
||||||
|
color: #333333;
|
||||||
|
}
|
||||||
|
|
||||||
|
.order_detail_footer strong {
|
||||||
|
font-size: 11px;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
#virtual_machine_create_form {
|
||||||
|
padding: 15px 0;
|
||||||
|
}
|
|
@ -135,9 +135,7 @@
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
{% if not order %}
|
<hr>
|
||||||
<hr>
|
|
||||||
{% endif %}
|
|
||||||
</div>
|
</div>
|
||||||
{% if not order %}
|
{% if not order %}
|
||||||
{% block submit_btn %}
|
{% block submit_btn %}
|
||||||
|
@ -155,6 +153,11 @@
|
||||||
</div>
|
</div>
|
||||||
</form>
|
</form>
|
||||||
{% endblock submit_btn %}
|
{% endblock submit_btn %}
|
||||||
|
{% else %}
|
||||||
|
<div class="order_detail_footer">
|
||||||
|
<strong>ungleich glarus ag</strong> Bahnhotstrasse 1, 8783 Linthal, Switzerland<br>
|
||||||
|
www.datacenterlight.ch | info@datacenterlight.ch
|
||||||
|
</div>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -39,27 +39,25 @@
|
||||||
</thead>
|
</thead>
|
||||||
<tbody>
|
<tbody>
|
||||||
{% for vm in vms %}
|
{% for vm in vms %}
|
||||||
<tr>
|
<tr>
|
||||||
<td data-header="ID">{{vm.vm_id}}</td>
|
<td data-header="ID">{{vm.vm_id}}</td>
|
||||||
{% if vm.ipv6 %}
|
<td data-header="IPv4">{% if vm.ipv4 %}{{vm.ipv4}}{% endif %}</td>
|
||||||
<td data-header="IPv4">{{vm.ipv4}}</td>
|
<td data-header="IPv6">{% if vm.ipv6 %}{{vm.ipv6}}{% endif %}</td>
|
||||||
<td data-header="IPv6">{{vm.ipv6}}</td>
|
<td data-header="{% trans 'Status' %}">
|
||||||
{% endif %}
|
<strong>
|
||||||
<td data-header="{% trans 'Status' %}">
|
{% if vm.state == 'ACTIVE' %}
|
||||||
<strong>
|
<span class="vm-status-active">{{vm.state|title}}</span>
|
||||||
{% if vm.state == 'ACTIVE' %}
|
{% elif vm.state == 'FAILED' %}
|
||||||
<span class="vm-status-active">{{vm.state|title}}</span>
|
<span class="vm-status-failed">{{vm.state|title}}</span>
|
||||||
{% elif vm.state == 'FAILED' %}
|
{% else %}
|
||||||
<span class="vm-status-failed">{{vm.state|title}}</span>
|
<span class="vm-status">{{vm.state|title}}</span>
|
||||||
{% else %}
|
{% endif %}
|
||||||
<span class="vm-status">{{vm.state|title}}</span>
|
</strong>
|
||||||
{% endif %}
|
</td>
|
||||||
</strong>
|
<td class="text-right last-td">
|
||||||
</td>
|
<a class="btn btn-vm-detail" href="{% url 'hosting:virtual_machines' vm.vm_id %}">{% trans "View Detail" %}</a>
|
||||||
<td class="text-right last-td">
|
</td>
|
||||||
<a class="btn btn-vm-detail" href="{% url 'hosting:virtual_machines' vm.vm_id %}">{% trans "View Detail" %}</a>
|
</tr>
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
|
|
|
@ -8,7 +8,8 @@ from .views import (
|
||||||
MarkAsReadNotificationView, PasswordResetView, PasswordResetConfirmView,
|
MarkAsReadNotificationView, PasswordResetView, PasswordResetConfirmView,
|
||||||
HostingPricingView, CreateVirtualMachinesView, HostingBillListView,
|
HostingPricingView, CreateVirtualMachinesView, HostingBillListView,
|
||||||
HostingBillDetailView, SSHKeyDeleteView, SSHKeyCreateView, SSHKeyListView,
|
HostingBillDetailView, SSHKeyDeleteView, SSHKeyCreateView, SSHKeyListView,
|
||||||
SSHKeyChoiceView, DashboardView, SettingsView, ResendActivationEmailView)
|
SSHKeyChoiceView, DashboardView, SettingsView, ResendActivationEmailView
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
urlpatterns = [
|
urlpatterns = [
|
||||||
|
|
|
@ -672,13 +672,25 @@ class OrdersHostingDetailView(LoginRequiredMixin,
|
||||||
permission_required = ['view_hostingorder']
|
permission_required = ['view_hostingorder']
|
||||||
model = HostingOrder
|
model = HostingOrder
|
||||||
|
|
||||||
def get_object(self):
|
def get_object(self, queryset=None):
|
||||||
return HostingOrder.objects.get(
|
order_id = self.kwargs.get('pk')
|
||||||
pk=self.kwargs.get('pk')) if self.kwargs.get('pk') else None
|
try:
|
||||||
|
hosting_order_obj = HostingOrder.objects.get(pk=order_id)
|
||||||
|
logger.debug("Found HostingOrder for id {order_id}".format(
|
||||||
|
order_id=order_id
|
||||||
|
))
|
||||||
|
except HostingOrder.DoesNotExist:
|
||||||
|
logger.debug("HostingOrder not found for id {order_id}".format(
|
||||||
|
order_id=order_id
|
||||||
|
))
|
||||||
|
hosting_order_obj = None
|
||||||
|
return hosting_order_obj
|
||||||
|
|
||||||
def get_context_data(self, **kwargs):
|
def get_context_data(self, **kwargs):
|
||||||
# Get context
|
# Get context
|
||||||
context = super(DetailView, self).get_context_data(**kwargs)
|
context = super(
|
||||||
|
OrdersHostingDetailView, self
|
||||||
|
).get_context_data(**kwargs)
|
||||||
obj = self.get_object()
|
obj = self.get_object()
|
||||||
owner = self.request.user
|
owner = self.request.user
|
||||||
stripe_api_cus_id = self.request.session.get('customer')
|
stripe_api_cus_id = self.request.session.get('customer')
|
||||||
|
@ -692,6 +704,17 @@ class OrdersHostingDetailView(LoginRequiredMixin,
|
||||||
context['page_header_text'] = _('Confirm Order')
|
context['page_header_text'] = _('Confirm Order')
|
||||||
else:
|
else:
|
||||||
context['page_header_text'] = _('Invoice')
|
context['page_header_text'] = _('Invoice')
|
||||||
|
if not self.request.user.has_perm(
|
||||||
|
self.permission_required[0], obj
|
||||||
|
):
|
||||||
|
logger.debug(
|
||||||
|
"User {user} does not have permission on HostingOrder "
|
||||||
|
"{order_id}. Raising 404 error now.".format(
|
||||||
|
user=self.request.user.email,
|
||||||
|
order_id=obj.id if obj else 'None'
|
||||||
|
)
|
||||||
|
)
|
||||||
|
raise Http404
|
||||||
|
|
||||||
if obj is not None:
|
if obj is not None:
|
||||||
# invoice for previous order
|
# invoice for previous order
|
||||||
|
|
|
@ -1,11 +1,11 @@
|
||||||
Babel==2.3.4
|
Babel==2.3.4
|
||||||
Django==1.11.8
|
Django==1.9.4
|
||||||
Django-Select2==4.3.2
|
Django-Select2==4.3.2
|
||||||
Pillow==4.3.0
|
Pillow==3.2.0
|
||||||
URLObject==2.4.0
|
URLObject==2.4.0
|
||||||
Unidecode==0.04.21
|
Unidecode==0.04.19
|
||||||
YURL==0.13
|
YURL==0.13
|
||||||
aldryn-apphooks-config==0.3.3
|
aldryn-apphooks-config==0.2.7
|
||||||
aldryn-boilerplates==0.7.4
|
aldryn-boilerplates==0.7.4
|
||||||
aldryn-categories==1.0.3
|
aldryn-categories==1.0.3
|
||||||
aldryn-common==1.0.1
|
aldryn-common==1.0.1
|
||||||
|
@ -14,48 +14,41 @@ aldryn-people==1.2.0
|
||||||
aldryn-reversion==1.0.8
|
aldryn-reversion==1.0.8
|
||||||
aldryn-search==0.2.11
|
aldryn-search==0.2.11
|
||||||
aldryn-translation-tools==0.2.1
|
aldryn-translation-tools==0.2.1
|
||||||
amqp==2.2.1
|
|
||||||
backport-collections==0.1
|
backport-collections==0.1
|
||||||
billiard==3.5.0.3
|
|
||||||
cdist==4.7.0
|
|
||||||
celery==4.0.2
|
|
||||||
cmsplugin-filer==1.0.1
|
cmsplugin-filer==1.0.1
|
||||||
coverage==4.3.4
|
|
||||||
django-admin-honeypot==1.0.0
|
|
||||||
django-appconf==1.0.2
|
django-appconf==1.0.2
|
||||||
django-appdata==0.1.6
|
django-appdata==0.1.5
|
||||||
django-bootstrap3==9.1.0
|
django-bootstrap3==7.0.1
|
||||||
django-celery-results==1.0.1
|
django-classy-tags==0.7.2
|
||||||
django-classy-tags==0.8.0
|
django-cms==3.2.5
|
||||||
django-cms==3.4.5
|
|
||||||
django-compressor==2.0
|
django-compressor==2.0
|
||||||
django-debug-toolbar==1.4
|
django-debug-toolbar==1.4
|
||||||
django-dotenv==1.4.1
|
django-dotenv==1.4.1
|
||||||
django-extensions==1.6.7
|
django-extensions==1.6.7
|
||||||
django-filer==1.3.0
|
django-filer==1.2.0
|
||||||
django-filter==0.13.0
|
django-filter==0.13.0
|
||||||
django-formtools==2.1
|
django-formtools==1.0
|
||||||
django-guardian==1.4.9
|
django-guardian==1.4.4
|
||||||
django-haystack==2.4.1
|
django-haystack==2.4.1
|
||||||
django-meta==1.2
|
django-meta==1.2
|
||||||
django-meta-mixin==0.3.0
|
django-meta-mixin==0.3.0
|
||||||
django-model-utils==2.5
|
django-model-utils==2.5
|
||||||
django-mptt==0.8.7
|
django-mptt==0.8.4
|
||||||
django-parler==1.6.3
|
django-parler==1.6.3
|
||||||
django-phonenumber-field==1.1.0
|
django-phonenumber-field==1.1.0
|
||||||
django-polymorphic==1.3
|
django-polymorphic==0.9.2
|
||||||
django-reversion==1.10.2
|
django-reversion==1.10.2
|
||||||
django-sekizai==0.10.0
|
django-sekizai==0.9.0
|
||||||
django-sortedm2m==1.2.2
|
django-sortedm2m==1.2.2
|
||||||
django-spurl==0.6.4
|
django-spurl==0.6.4
|
||||||
django-standard-form==1.1.1
|
django-standard-form==1.1.1
|
||||||
django-stored-messages==1.4.0
|
django-stored-messages==1.4.0
|
||||||
django-taggit==0.22.1
|
django-taggit==0.18.3
|
||||||
django-taggit-autosuggest==0.3.1
|
django-taggit-autosuggest==0.2.8
|
||||||
django-taggit-templatetags==0.2.5
|
django-taggit-templatetags==0.2.5
|
||||||
django-templatetag-sugar==1.0
|
django-templatetag-sugar==1.0
|
||||||
django-treebeard==4.1.2
|
django-treebeard==4.0.1
|
||||||
djangocms-admin-style==1.2.7
|
djangocms-admin-style==1.1.1
|
||||||
djangocms-apphook-setup==0.1.2
|
djangocms-apphook-setup==0.1.2
|
||||||
djangocms-blog==0.7.0
|
djangocms-blog==0.7.0
|
||||||
djangocms-file==1.0
|
djangocms-file==1.0
|
||||||
|
@ -68,33 +61,39 @@ djangocms-picture==1.0.0
|
||||||
djangocms-teaser==0.2.0
|
djangocms-teaser==0.2.0
|
||||||
djangocms-text-ckeditor==2.9.3
|
djangocms-text-ckeditor==2.9.3
|
||||||
djangocms-video==1.0.0
|
djangocms-video==1.0.0
|
||||||
djangorestframework==3.6.3
|
easy-thumbnails==2.3
|
||||||
easy-thumbnails==2.4.2
|
|
||||||
flake8==3.3.0
|
|
||||||
html5lib==0.9999999
|
html5lib==0.9999999
|
||||||
kombu==4.1.0
|
|
||||||
lxml==3.6.0
|
lxml==3.6.0
|
||||||
mccabe==0.6.1
|
|
||||||
model-mommy==1.2.6
|
model-mommy==1.2.6
|
||||||
git+https://github.com/ungleich/python-oca.git#egg=python-oca
|
|
||||||
olefile==0.44
|
|
||||||
phonenumbers==7.4.0
|
phonenumbers==7.4.0
|
||||||
phonenumberslite==7.4.0
|
phonenumberslite==7.4.0
|
||||||
psycopg2==2.6.1
|
psycopg2==2.7.1
|
||||||
pycodestyle==2.3.1
|
|
||||||
pycryptodome==3.4
|
pycryptodome==3.4
|
||||||
pyflakes==1.5.0
|
|
||||||
pylibmc==1.5.1
|
pylibmc==1.5.1
|
||||||
python-dateutil==2.5.3
|
python-dateutil==2.5.3
|
||||||
python-memcached==1.58
|
|
||||||
python-slugify==1.2.0
|
python-slugify==1.2.0
|
||||||
pytz==2017.3
|
pytz==2016.4
|
||||||
rcssmin==1.0.6
|
rcssmin==1.0.6
|
||||||
redis==2.10.5
|
|
||||||
requests==2.10.0
|
requests==2.10.0
|
||||||
rjsmin==1.0.12
|
rjsmin==1.0.12
|
||||||
six==1.10.0
|
six==1.10.0
|
||||||
sqlparse==0.1.19
|
sqlparse==0.1.19
|
||||||
stripe==1.33.0
|
stripe==1.33.0
|
||||||
vine==1.1.4
|
|
||||||
wheel==0.29.0
|
wheel==0.29.0
|
||||||
|
django-admin-honeypot==1.0.0
|
||||||
|
coverage==4.3.4
|
||||||
|
git+https://github.com/ungleich/python-oca.git#egg=python-oca
|
||||||
|
djangorestframework==3.6.3
|
||||||
|
flake8==3.3.0
|
||||||
|
python-memcached==1.58
|
||||||
|
celery==4.0.2
|
||||||
|
redis==2.10.5
|
||||||
|
django-celery-results==1.0.1
|
||||||
|
kombu==4.1.0
|
||||||
|
mccabe==0.6.1
|
||||||
|
pycodestyle==2.3.1
|
||||||
|
pyflakes==1.5.0
|
||||||
|
billiard==3.5.0.3
|
||||||
|
amqp==2.2.1
|
||||||
|
vine==1.1.4
|
||||||
|
cdist==4.7.0
|
||||||
|
|
|
@ -5,7 +5,9 @@ from .models import (
|
||||||
UngelichContactUsSection, UngelichTextSection, Service, ServiceItem,
|
UngelichContactUsSection, UngelichTextSection, Service, ServiceItem,
|
||||||
About, AboutItem, SectionWithImage, UngleichServiceItem, UngleichHeader,
|
About, AboutItem, SectionWithImage, UngleichServiceItem, UngleichHeader,
|
||||||
UngleichHeaderItem, UngleichProductItem, UngleichProduct, UngleichCustomer,
|
UngleichHeaderItem, UngleichProductItem, UngleichProduct, UngleichCustomer,
|
||||||
UngleichCustomerItem, UngleichHTMLOnly, UngleichSimpleHeader
|
UngleichCustomerItem, UngleichHTMLOnly, UngleichSimpleHeader,
|
||||||
|
UngleichHeaderWithBackgroundImageSlider,
|
||||||
|
UngleichHeaderWithBackgroundImageSliderItem
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
|
@ -224,6 +226,41 @@ class UngleichHeaderItemPlugin(CMSPluginBase):
|
||||||
return context
|
return context
|
||||||
|
|
||||||
|
|
||||||
|
@plugin_pool.register_plugin
|
||||||
|
class UngleichHeaderBackgroundImageAndTextSliderPlugin(CMSPluginBase):
|
||||||
|
name = "ungleich Header with Background and Image Slider Plugin"
|
||||||
|
model = UngleichHeaderWithBackgroundImageSlider
|
||||||
|
render_template = (
|
||||||
|
'ungleich_page/ungleich/header_with_background_image_slider.html'
|
||||||
|
)
|
||||||
|
cache = False
|
||||||
|
allow_children = True
|
||||||
|
child_classes = ['UngleichHeaderBackgroundImageAndTextItemPlugin']
|
||||||
|
|
||||||
|
def render(self, context, instance, placeholder):
|
||||||
|
context['instance'] = instance
|
||||||
|
return context
|
||||||
|
|
||||||
|
|
||||||
|
@plugin_pool.register_plugin
|
||||||
|
class UngleichHeaderBackgroundImageAndTextItemPlugin(CMSPluginBase):
|
||||||
|
name = "ungleich Header with Background and Image and Text Item Plugin"
|
||||||
|
model = UngleichHeaderWithBackgroundImageSliderItem
|
||||||
|
render_template = (
|
||||||
|
'ungleich_page/ungleich/_header_with_background_image_slider_item.html'
|
||||||
|
)
|
||||||
|
cache = False
|
||||||
|
require_parent = True
|
||||||
|
parent_classes = ['UngleichHeaderBackgroundImageAndTextSliderPlugin']
|
||||||
|
|
||||||
|
def render(self, context, instance, placeholder):
|
||||||
|
context = super(
|
||||||
|
UngleichHeaderBackgroundImageAndTextItemPlugin, self
|
||||||
|
).render(context, instance, placeholder)
|
||||||
|
context['instance'] = instance
|
||||||
|
return context
|
||||||
|
|
||||||
|
|
||||||
@plugin_pool.register_plugin
|
@plugin_pool.register_plugin
|
||||||
class UngleichProductsPlugin(CMSPluginBase):
|
class UngleichProductsPlugin(CMSPluginBase):
|
||||||
name = "ungleich Products Plugin"
|
name = "ungleich Products Plugin"
|
||||||
|
|
|
@ -22,7 +22,7 @@ msgid "Glasfaser menu"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
msgid "\"Sorry, we could not find the page you are looking for!\""
|
msgid "\"Sorry, we could not find the page you are looking for!\""
|
||||||
msgstr ""
|
msgstr "\"Leider konnten wir die von dir gesuchte Seite nicht finden!\""
|
||||||
|
|
||||||
msgid "Toggle navigation"
|
msgid "Toggle navigation"
|
||||||
msgstr "Umschalten"
|
msgstr "Umschalten"
|
||||||
|
|
|
@ -0,0 +1,43 @@
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
# Generated by Django 1.9.4 on 2017-12-02 07:30
|
||||||
|
from __future__ import unicode_literals
|
||||||
|
|
||||||
|
from django.db import migrations, models
|
||||||
|
import django.db.models.deletion
|
||||||
|
import djangocms_text_ckeditor.fields
|
||||||
|
import filer.fields.image
|
||||||
|
|
||||||
|
|
||||||
|
class Migration(migrations.Migration):
|
||||||
|
|
||||||
|
dependencies = [
|
||||||
|
('filer', '0004_auto_20160328_1434'),
|
||||||
|
('cms', '0014_auto_20160404_1908'),
|
||||||
|
('ungleich_page', '0015_ungleichsimpleheader'),
|
||||||
|
]
|
||||||
|
|
||||||
|
operations = [
|
||||||
|
migrations.CreateModel(
|
||||||
|
name='UngleichHeaderWithBackgroundImageSlider',
|
||||||
|
fields=[
|
||||||
|
('cmsplugin_ptr', models.OneToOneField(auto_created=True, on_delete=django.db.models.deletion.CASCADE, parent_link=True, primary_key=True, serialize=False, to='cms.CMSPlugin')),
|
||||||
|
('carousel_data_interval', models.IntegerField(default=2000)),
|
||||||
|
],
|
||||||
|
options={
|
||||||
|
'abstract': False,
|
||||||
|
},
|
||||||
|
bases=('cms.cmsplugin',),
|
||||||
|
),
|
||||||
|
migrations.CreateModel(
|
||||||
|
name='UngleichHeaderWithBackgroundImageSliderItem',
|
||||||
|
fields=[
|
||||||
|
('cmsplugin_ptr', models.OneToOneField(auto_created=True, on_delete=django.db.models.deletion.CASCADE, parent_link=True, primary_key=True, serialize=False, to='cms.CMSPlugin')),
|
||||||
|
('description', djangocms_text_ckeditor.fields.HTMLField(default='<div class="intro-cap">We Design, Configure & Maintain <br>Your Linux Infrastructure</div><p class="intro_lead">Ruby on Rails, Django, Java, Webserver, Mailserver, any infrastructure that needs to configured, we provide comprehensive solutions. Amazon, rackspace or bare metal servers, we configure for you.</p><p style="text-align: right;"><a class="btn btn-trans" href="">Learn More</a></p>')),
|
||||||
|
('background_image', filer.fields.image.FilerImageField(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='ungleich_header_slider_item_image', to='filer.Image')),
|
||||||
|
],
|
||||||
|
options={
|
||||||
|
'abstract': False,
|
||||||
|
},
|
||||||
|
bases=('cms.cmsplugin',),
|
||||||
|
),
|
||||||
|
]
|
|
@ -124,6 +124,27 @@ class UngleichHeader(CMSPlugin):
|
||||||
carousel_data_interval = models.IntegerField(default=5000)
|
carousel_data_interval = models.IntegerField(default=5000)
|
||||||
|
|
||||||
|
|
||||||
|
class UngleichHeaderWithBackgroundImageSliderItem(CMSPlugin):
|
||||||
|
background_image = FilerImageField(
|
||||||
|
null=True, blank=True,
|
||||||
|
related_name="ungleich_header_slider_item_image",
|
||||||
|
on_delete=models.SET_NULL
|
||||||
|
)
|
||||||
|
description = HTMLField(
|
||||||
|
default='<div class="intro-cap">We Design, Configure & Maintain '
|
||||||
|
'<br>Your Linux Infrastructure</div><p class="intro_lead">'
|
||||||
|
'Ruby on Rails, Django, Java, Webserver, Mailserver, any '
|
||||||
|
'infrastructure that needs to configured, we provide '
|
||||||
|
'comprehensive solutions. Amazon, rackspace or bare metal '
|
||||||
|
'servers, we configure for you.</p><p style="text-align: '
|
||||||
|
'right;"><a class="btn btn-trans" href="">Learn More</a></p>'
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
|
class UngleichHeaderWithBackgroundImageSlider(CMSPlugin):
|
||||||
|
carousel_data_interval = models.IntegerField(default=2000)
|
||||||
|
|
||||||
|
|
||||||
class UngleichHeaderItem(CMSPlugin):
|
class UngleichHeaderItem(CMSPlugin):
|
||||||
image = FilerImageField(
|
image = FilerImageField(
|
||||||
null=True,
|
null=True,
|
||||||
|
|
|
@ -280,7 +280,10 @@ fieldset[disabled] .btn-xl.active {
|
||||||
}
|
}
|
||||||
|
|
||||||
.navbar-default .navbar-brand {
|
.navbar-default .navbar-brand {
|
||||||
padding: 8px;
|
padding: 4px 8px 12px;
|
||||||
|
}
|
||||||
|
.navbar-default.navbar-shrink .navbar-brand {
|
||||||
|
padding: 6px 8px 10px;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -440,6 +443,7 @@ section h3.section-subheading {
|
||||||
max-width: 400px;
|
max-width: 400px;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
background-color: #fff;
|
background-color: #fff;
|
||||||
|
width: 100%;
|
||||||
}
|
}
|
||||||
|
|
||||||
#portfolio .portfolio-item .portfolio-caption h4 {
|
#portfolio .portfolio-item .portfolio-caption h4 {
|
||||||
|
|
|
@ -1,2 +1,2 @@
|
||||||
<a href="{{ instance.url }}"><img class="center-block img-client img-responsive" src="{{ instance.image.url}}"></a>
|
<a href="{{ instance.url }}"><img class="center-block img-client img-responsive" src="{{ instance.image.url}}"></a>
|
||||||
<p class="carousel-text text-muted text-center">{{ instance.description }}</p>
|
{{ instance.description }}
|
|
@ -0,0 +1,4 @@
|
||||||
|
<div class="bg_img" style="background-image:url({{ instance.background_image.url }})"></div>
|
||||||
|
<div class="container">
|
||||||
|
{{ instance.description }}
|
||||||
|
</div>
|
|
@ -0,0 +1,31 @@
|
||||||
|
{% load cms_tags %}
|
||||||
|
<header class="header_slider">
|
||||||
|
<div id="carousel-header-ungleich" class="carousel slide" data-interval="{{ instance.carousel_data_interval}}">
|
||||||
|
<!-- Indicators -->
|
||||||
|
{% if instance.child_plugin_instances|length > 1 %}
|
||||||
|
<ol class="carousel-indicators">
|
||||||
|
{% for plugin in instance.child_plugin_instances %}
|
||||||
|
<li data-target="#carousel-header-ungleich" data-slide-to="{{forloop.counter0}}" {% if forloop.counter0 == 0 %}class="active" {% endif %}></li>
|
||||||
|
{% endfor %}
|
||||||
|
</ol>
|
||||||
|
{% endif %}
|
||||||
|
<!-- Wrapper for slides -->
|
||||||
|
<div class="carousel-inner" role="listbox">
|
||||||
|
{% for plugin in instance.child_plugin_instances %}
|
||||||
|
<div class="item {% if forloop.counter0 == 0 %}active{% endif %}">
|
||||||
|
{% render_plugin plugin %}
|
||||||
|
</div>
|
||||||
|
{% endfor %}
|
||||||
|
</div>
|
||||||
|
{% if instance.child_plugin_instances|length > 1 %}
|
||||||
|
<a class="left carousel-control" href="#carousel-header-ungleich" role="button" data-slide="prev">
|
||||||
|
<span class="fa fa-angle-left" aria-hidden="true"></span>
|
||||||
|
<span class="sr-only">Previous</span>
|
||||||
|
</a>
|
||||||
|
<a class="right carousel-control" href="#carousel-header-ungleich" role="button" data-slide="next">
|
||||||
|
<span class="fa fa-angle-right" aria-hidden="true"></span>
|
||||||
|
<span class="sr-only">Next</span>
|
||||||
|
</a>
|
||||||
|
{% endif %}
|
||||||
|
</div>
|
||||||
|
</header>
|
Loading…
Add table
Reference in a new issue