Skip to content

Commit 0c028fd

Browse files
author
redray
committed
login box: login with own login template
1 parent d9c4f7d commit 0c028fd

File tree

3 files changed

+196
-6
lines changed

3 files changed

+196
-6
lines changed

interface/web/index.php

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -31,10 +31,14 @@
3131
require_once('../lib/config.inc.php');
3232
require_once('../lib/app.inc.php');
3333

34-
if(!isset($_SESSION['s']['module']['name'])) $_SESSION['s']['module']['name'] = 'login';
35-
36-
$app->uses('tpl');
37-
$app->tpl->newTemplate('main.tpl.htm');
34+
if(!isset($_SESSION['s']['module']['name']) or $_SESSION['s']['module']['name']=='login') {
35+
$_SESSION['s']['module']['name'] = 'login';
36+
$app->uses('tpl');
37+
$app->tpl->newTemplate('login.tpl.htm');
38+
} else {
39+
$app->uses('tpl');
40+
$app->tpl->newTemplate('main.tpl.htm');
41+
}
3842

3943
// tab change warning?
4044
// read misc config

interface/web/themes/default/css/styles.css

Lines changed: 21 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -96,6 +96,17 @@ header, #nav, #main, footer {
9696
border-radius: 8px;
9797
box-shadow: 0 0px 0px 0px rgba(0, 0, 0, 0.05) inset, 0 0 18px rgba(0, 0, 0, 0.5);
9898
}
99+
#page.loginpage {
100+
width: 400px !important;
101+
min-width: 400px !important;
102+
min-height: 300px !important;
103+
background-color: #ffffff;
104+
text-align:left;
105+
margin: 0 auto;
106+
padding: 10px;
107+
border-radius: 8px;
108+
box-shadow: 0 0px 0px 0px rgba(0, 0, 0, 0.05) inset, 0 0 18px rgba(0, 0, 0, 0.5);
109+
}
99110
.skip, .hideme, .print {
100111
height: 1px;
101112
left: -1000em;
@@ -314,7 +325,12 @@ header span {
314325
margin-right: 0;
315326
padding: 0px 10px 10px 20px;
316327
}
317-
328+
.loginpage #content {
329+
margin-left: 0px;
330+
margin-right: 0;
331+
padding: 0px;
332+
}
333+
318334
/* footer
319335
-------------------------------------------------------------- */
320336

@@ -1164,7 +1180,7 @@ select.flags option[value=ZW], select.flags option[value=zw], .country-ZW {backg
11641180

11651181
.panel_login {
11661182
max-width: 80%;
1167-
min-width: 680px;
1183+
min-width: 400px;
11681184
}
11691185
div.subsectiontoggle {
11701186
border:1px solid #ccc;
@@ -1786,6 +1802,9 @@ p.value {
17861802
.uniForm .inlineLabels label,
17871803
.uniForm .inlineLabels .label{ width: 20%; /* <- Required property */ margin: .3em 2% 0 0; /* <- Required property */ }
17881804

1805+
.loginpage .uniForm .inlineLabels label,
1806+
.loginpage .uniForm .inlineLabels .label{ width: 40%; /* <- Required property */ margin: .3em 2% 0 0; /* <- Required property */ }
1807+
17891808
.uniForm .inlineLabels .textInput,
17901809
.uniForm .inlineLabels .fileUpload{ width: 35%; /* <- Required property */ }
17911810

Lines changed: 167 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,167 @@
1+
<!DOCTYPE html>
2+
<html dir="ltr" lang="en-US">
3+
<head>
4+
<!--Possible? Vars in lang= ?-->
5+
<meta charset="<tmpl_var name="html_content_encoding">" />
6+
<title><tmpl_var name="app_title"> <tmpl_var name="app_version"></title>
7+
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
8+
<link href="themes/default/css/styles.css" rel="stylesheet" media="screen" type="text/css" />
9+
<link href="themes/default/css/print.css" rel="stylesheet" media="print" type="text/css" />
10+
<!--[if IE 9]><link href="themes/default/css/iehacks.css" rel="stylesheet" type="text/css" /><![endif]-->
11+
<!--[if lte IE 8]><script type="text/javascript" src="themes/default/js/html5shiv.js"></script><![endif]-->
12+
<!--[if lte IE 7]><link href="themes/default/css/iehacks.css" rel="stylesheet" type="text/css" /><![endif]-->
13+
<link href="themes/default/css/jquery-ui-1.8.16.custom.css" rel="stylesheet" type="text/css" />
14+
<link rel="shortcut icon" href="/themes/default/images/favicon.ico" />
15+
<script type="text/javascript" src="js/jquery-1.6.3.min.js"></script>
16+
<script type="text/javascript" src="js/jquery-ui-1.8.16.custom.min.js"></script>
17+
<script type="text/javascript" src="js/scrigo.js.php"></script>
18+
<script type="text/javascript" src="js/uni-form/uni-form.jquery.js"></script>
19+
<script type="text/javascript" src="js/jquery.ispconfigsearch.js"></script>
20+
<script type="text/javascript" src="js/jquery.tipsy.js"></script>
21+
<script language="JavaScript" type="text/javascript">
22+
jQuery(document).ready(function() {
23+
loadInitContent();
24+
25+
$("#pageForm").submit(function(e){
26+
//Prevent form submit: e.preventDefault() in lists
27+
if ($(".panel #Filter").length > 0) {
28+
e.preventDefault();
29+
}
30+
});
31+
32+
jQuery('.subsectiontoggle').live("click", function(){
33+
jQuery(this).children().toggleClass('showing').end().next().slideToggle();
34+
});
35+
36+
jQuery('#globalsearch').ispconfigSearch({
37+
dataSrc: '/dashboard/ajax_get_json.php?type=globalsearch',
38+
resultsLimit: '$ <tmpl_var name="globalsearch_resultslimit_of_txt"> % <tmpl_var name="globalsearch_resultslimit_results_txt">',
39+
noResultsText: '<tmpl_var name="globalsearch_noresults_text_txt">',
40+
noResultsLimit: '<tmpl_var name="globalsearch_noresults_limit_txt">',
41+
searchFieldWatermark: '<tmpl_var name="globalsearch_searchfield_watermark_txt">'
42+
});
43+
44+
jQuery('.ttip').tipsy({live: true, gravity: 'ne', html: true});
45+
46+
tabChangeDiscard = '<tmpl_var name="tabchange_discard_enabled>';
47+
tabChangeWarning = '<tmpl_var name="tabchange_warning_enabled>';
48+
tabChangeWarningTxt = '<tmpl_var name="global_tabchange_warning_txt">';
49+
tabChangeDiscardTxt = '<tmpl_var name="global_tabchange_discard_txt">';
50+
51+
// Store password in browser; works in Firefox, but not Chrome
52+
$('#username').live("blur", function(){
53+
if($('#dummy_username').val() == '' || $('#dummy_username').val() != $(this).val()){
54+
$('#dummy_login').show();
55+
$('#dummy_username').attr('value', $(this).val()).trigger('focus').trigger('blur');
56+
$('#dummy_login').hide();
57+
}
58+
if($('#dummy_username').val() == $(this).val() && $(this).val() != ''){
59+
$('#passwort').val($('#dummy_passwort').val());
60+
} else {
61+
$('#passwort').val('');
62+
}
63+
$('#passwort').focus();
64+
});
65+
66+
$('#username').live("keyup", function(){
67+
$('#dummy_username').val('');
68+
$('#dummy_passwort').val('');
69+
$('#passwort').val('');
70+
});
71+
72+
});
73+
74+
75+
jQuery(document).bind("change", function(event) {
76+
var elName = event.target.localName;
77+
if (jQuery(".panel #Filter").length > 0 && elName == 'select') {
78+
event.preventDefault();
79+
jQuery(".panel #Filter").trigger('click');
80+
}
81+
if(elName == 'select' || elName == 'input' || elName == 'textarea') {
82+
if(jQuery(event.target).hasClass('no-page-form-change') == false) {
83+
// set marker that something was changed
84+
pageFormChanged = true;
85+
}
86+
}
87+
});
88+
89+
jQuery(document).bind("keypress", function(event) {
90+
//Use jQuery submit with keypress Enter in panel filterbar
91+
if (event.which == '13' && jQuery(".panel #Filter").length > 0 && jQuery(event.target).hasClass('ui-autocomplete-input') == false ) {
92+
event.preventDefault();
93+
jQuery(".panel #Filter").trigger('click');
94+
}
95+
//Use jQuery submit with keypress Enter in forms
96+
if (event.which == '13' && jQuery(".pnl_formsarea button.positive").length > 0 && event.target.localName != 'textarea' && jQuery(event.target).is(':input')) {
97+
event.preventDefault();
98+
jQuery(".pnl_formsarea button.positive:first").not("[disabled='disabled']").trigger('click');
99+
}
100+
});
101+
102+
jQuery(document).delegate('.pnl_listarea th', 'click', function(event) {
103+
if(jQuery(this).attr('class').length > 0 && jQuery(".panel #Filter").length > 0 && jQuery(this).hasClass('tbl_col_buttons') == false && jQuery(this).hasClass('tbl_col_limit') == false && jQuery(this).hasClass('tbl_col_nosort') == false) {
104+
event.preventDefault();
105+
var clickevent = jQuery('#Filter').attr('onclick');
106+
var element = jQuery(this).attr('class');
107+
if(typeof clickevent == 'string') {
108+
jQuery('#Filter').attr('onclick', clickevent.replace(".php')", ".php?orderby=" + element + "')"));
109+
}
110+
jQuery(".panel #Filter").trigger('click');
111+
112+
jQuery("#pageForm").ajaxComplete(function() {
113+
if(jQuery("th."+element).css("background-position") == '0px -15px') {
114+
if(jQuery("th."+element).css("text-align") == "right") {
115+
jQuery("th."+element).css("text-align","left");
116+
} else {
117+
jQuery("th."+element).css("text-align","right");
118+
}
119+
} else {
120+
jQuery(".pnl_listarea th").css("text-align","");
121+
}
122+
jQuery(".pnl_listarea th").css("background-position","0 0");
123+
jQuery("th."+element).css("background-position","0 -15px");
124+
});
125+
}
126+
});
127+
128+
</script>
129+
</head>
130+
<body>
131+
<div id="page" class="loginpage">
132+
<!-- begin: header -->
133+
<header>
134+
<h1 id="ir-HeaderLogo" class="swap" style="background-image:url('{tmpl_var name='app_logo'}');"><span>ISPConfig 3</span></h1>
135+
</header>
136+
<!-- end: header -->
137+
138+
<!-- begin: main content area #main -->
139+
<section id="main" name="content">
140+
<!-- begin: #content -->
141+
<section id="content">
142+
<form method="post" action="" id="pageForm" name="pageForm" enctype="multipart/form-data" class="uniForm">
143+
<div id="pageContent"><!-- AJAX CONTENT --></div>
144+
</form>
145+
<div id="ie_clearing">&nbsp;</div>
146+
<!-- End: IE Column Clearing -->
147+
</section>
148+
<!-- end: #content -->
149+
</section>
150+
<!-- end: #main -->
151+
</div>
152+
<!-- begin: footer -->
153+
<footer>
154+
Powered by <a href="<tmpl_var name="app_link">" target="_blank"><tmpl_var name="app_title"></a>
155+
</footer>
156+
<!-- end: footer -->
157+
158+
<div id="dummy_login" style="display:none;position:absolute;top:-1000px;left:-1000px;">
159+
<form action="" method="post" target="dummy_login" id="dummy_login_form">
160+
<input name="username" id="dummy_username" type="text" autocomplete="on" value="" />
161+
<input name="passwort" id="dummy_passwort" type="password" autocomplete="on" value="" />
162+
<input type="submit" value="Login" id="dummy_submit"/>
163+
</form>
164+
<iframe id="dummy_iframe" src="dummy_login.html" name="dummy_login" style="display:none;"></iframe>
165+
</div>
166+
</body>
167+
</html>

0 commit comments

Comments
 (0)