123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190 |
- {% load staticfiles %}
-
- <!DOCTYPE html>
- <html lang="en">
- <head>
- <meta charset="utf-8">
- <meta http-equiv="X-UA-Compatible" content="IE=edge">
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
- <meta name="description" content="">
- <meta name="author" content="">
- <link rel="shortcut icon" href="{% static 'img/favicon.ico' %}">
- <title>Django tickets</title>
- <!-- Bootstrap core CSS -->
- <link href="{% static 'bootstrap/css/bootstrap.css' %}" rel="stylesheet">
- <!-- Custom styles for this site -->
-
- <link href="{% static 'css/frontpage.css' %}" rel="stylesheet">
- <!-- Custom tags for the head tag -->
- <!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries -->
- <!--[if lt IE 9]>
- <script src="https://oss.maxcdn.com/libs/html5shiv/3.7.0/html5shiv.js"></script>
- <script src="https://oss.maxcdn.com/libs/respond.js/1.3.0/respond.min.js"></script>
- <![endif]-->
-
- </head>
- <body>
- <div class="navbar navbar-inverse navbar-fixed-top" role="navigation">
- <div class="container">
- <div class="navbar-header">
- </div>
- <div class="collapse navbar-collapse">
- <ul class="nav navbar-nav">
- </ul>
- <ul class="nav navbar-nav navbar-right">
- <!-- <li><a href="{% url 'inbox' %}">Login</a></li> -->
- <li><a href="#" title="Login" data-toggle="modal" data-target="#LoginModal">Login</a></li>
- </ul>
- </div><!--/.nav-collapse -->
- </div>
- </div>
-
-
- <div class="jumbotron jumbotron-carousel corporate-jumbo">
- <div class="container">
- <div class="row">
- <div class="col-md-8 col-sm-12">
- <h1 style="color: white;">Tickets</h1>
- <p>A simple ticketing application</p>
- </div>
- </div>
- </div>
- </div>
-
- <div class="container">
-
- <div class="row">
- <div class="col-lg-4">
- <h2><i class="fa fa-cloud"></i> Web based</h2>
- <p>This is a web based ticketing application. So there is no need for local installations on the working stations of the users (besides a web browser).</p>
- </div>
- <div class="col-lg-4">
- <h2><i class="fa fa-users"></i> Multi User</h2>
- <p>It is a multi user application. Every user can create tickets, assign tickets to other users, comment tickets, change the ticket status and so on.</p>
- </div>
- <div class="col-lg-4">
- <h2><i class="fa fa-envelope"></i> Email integration</h2>
- <p>One of the main features is the ability to create new tickets via email. The app checks an IMAP account for new email regularly and creates a ticket for every email found in the inbox.</p>
- </div>
- </div>
-
- <div class="row">
- <div class="col-lg-4">
- <h2><i class="fa fa-lock"></i> Security</h2>
- <p>Django is innately a very secure web framework. But there are some best practices of the django community that enhance security. In this application I tried to implement these good security best practices.</p>
- </div>
- <div class="col-lg-4">
- <h2><i class="fa fa-code"></i> Python/Django</h2>
- <p>The application is based on the programming language <a href="https://www.python.org/" target="new">Python</a> and the web framework <a href="https://www.djangoproject.com/" target="new">Django</a>.</p>
- </div>
- <div class="col-lg-4">
- <h2><i class="fa fa-dot-circle-o"></i> Minimal Feature Set</h2>
- <p>By now, this is just a very simple app with a minimal features set. It is not intended to grow up to a kitchen sink. But I will add some features in the future.</p>
- </div>
- </div>
-
- </div>
-
-
- <!-- Site footer -->
- <!-- Some social button for contact will do -->
- <a name="contact"></a>
- <div class="container">
- <div class="footer">
- <div class="row">
- <div class="col-lg-6">
- <p>Powered by <a href="https://www.python.org/" target="_new">Python</a>, <a href="https://www.djangoproject.com/" target="_new">Django</a>, and <a href="http://getbootstrap.com/" target="_new">Bootstrap</a></p>
- </div>
- <div class="col-lg-6 text-right">
- <p>License: <a href="https://github.com/suenkler/django-tickets">MIT</a></p>
- </div>
- </div>
- </div>
- </div>
-
-
- <!-- Bootstrap Modal -->
- <div class="modal fade" id="LoginModal" tabindex="-1" role="dialog" aria-labelledby="LoginModalLabel" aria-hidden="true">
- <div class="modal-dialog" style="width: 450px;">
- <div class="modal-content">
- <div class="modal-header">
- <button type="button" class="close" data-dismiss="modal"><span aria-hidden="true">×</span><span class="sr-only">Close</span></button>
- <h4 class="modal-title" id="myModalLabel">Please sign in</h4>
- </div>
- <div class="modal-body">
- <form class="form-signin" role="form" method="post" action="{% url 'django.contrib.auth.views.login' %}">
- {% csrf_token %}
- <!-- <h2 class="form-signin-heading">Please sign in</h2> -->
- <label for="login-username" class="sr-only">User name</label>
- <input type="text" id="username" name="username" class="form-control" placeholder="User name" required autofocus>
- <label for="login-password" class="sr-only">Password</label>
- <input type="password" id="password" name="password" class="form-control" placeholder="Password" required>
-
- <button class="btn btn-lg btn-primary btn-block" value="login" type="submit">Sign in</button>
- <input type="hidden" name="next" value="{{ next }}" />
- </form>
-
- </div>
- <div class="modal-footer" style="text-align: left;">
- Forgot your password? Shit happens.
- </div>
- </div>
- </div>
- </div>
-
-
-
-
-
- <!-- Bootstrap Modal -->
- <div class="modal fade" id="ErrorModal" tabindex="-1" role="dialog" aria-labelledby="ErrorModalLabel" aria-hidden="true">
- <div class="modal-dialog" style="width: 450px;">
- <div class="modal-content">
-
- <div class="modal-body">
-
- <div class="alert alert-danger" role="alert" style="background: #f1f1f1;"><i class="fa fa-frown-o" style="float: right; color: red; padding: 10px; margin-left: 10px; font-size: 80px;"></i><b>Ooooops!</b><br/>Your credentials are invalid! Please <a href="#" title="Login" data-toggle="modal" data-target="#LoginModal" id="LinkLogin">try again</a>. If you have any questions, please do not contact me.</div>
-
-
- </div>
-
- </div>
- </div>
- </div>
-
-
- <!-- Bootstrap core JavaScript
- ================================================== -->
- <!-- Placed at the end of the document so the pages load faster -->
- <script src="https://code.jquery.com/jquery-1.10.2.min.js"></script>
- <script src="{% static 'bootstrap/js/bootstrap.min.js' %}"></script>
-
-
- {% if form.errors %}
- <script>
-
- /* Modal mit Error-Message beim Laden der Seite öffnen, wenn es Form Errors gibt. */
- $('#ErrorModal').modal()
-
- /* Wenn dann im Error-Modal auf "try again" geklickt wird, soll das Error-Modal
- geschlossen und das Login-Modal wieder geöffnet werden. */
- $('#LinkLogin').click( function() {
- $('#ErrorModal').modal('hide');
- $('#LoginModal').modal('show');
- /* $('#username').focus(); */
- return false; } );
-
- </script>
- {% endif %}
-
- <script>
- /* Autofocus field with 'autofocus' attribute in Bootstrap Modals */
- $('.modal').on('shown.bs.modal', function() {
- $(this).find('[autofocus]').focus();
- });
- </script>
-
- </body>
- </html>
-
|