Commit 0ae8da5c authored by Falko Timme's avatar Falko Timme

- Added nginx support.

- Fixed FS#1745.
parent ebfdb3a1
......@@ -321,6 +321,12 @@ $form["tabs"]['web'] = array(
##################################
# Begin Datatable fields
##################################
'server_type' => array(
'datatype' => 'VARCHAR',
'formtype' => 'SELECT',
'default' => 'apache',
'value' => array('apache' => 'Apache', 'nginx' => 'nginx')
),
'website_basedir' => array(
'datatype' => 'VARCHAR',
'formtype' => 'TEXT',
......@@ -382,6 +388,28 @@ $form["tabs"]['web'] = array(
'width' => '40',
'maxlength' => '255'
),
'nginx_vhost_conf_dir' => array(
'datatype' => 'VARCHAR',
'formtype' => 'TEXT',
'default' => '',
'validators' => array(0 => array('type' => 'NOTEMPTY',
'errmsg' => 'nginx_vhost_conf_dir_error_empty'),
),
'value' => '',
'width' => '40',
'maxlength' => '255'
),
'nginx_vhost_conf_enabled_dir' => array(
'datatype' => 'VARCHAR',
'formtype' => 'TEXT',
'default' => '',
'validators' => array(0 => array('type' => 'NOTEMPTY',
'errmsg' => 'nginx_vhost_conf_enabled_dir_error_empty'),
),
'value' => '',
'width' => '40',
'maxlength' => '255'
),
'CA_path' => array(
'datatype' => 'VARCHAR',
'formtype' => 'TEXT',
......@@ -463,7 +491,7 @@ $form["tabs"]['web'] = array(
),
'value' => '',
'width' => '40',
'maxlength' => '255'
'maxlength' => '4000'
),
'htaccess_allow_override' => array(
'datatype' => 'VARCHAR',
......
......@@ -5,7 +5,7 @@ $wb['jailkit_chroot_app_programs_txt'] = 'Jailkit chrooted Anwendungen';
$wb['jailkit_chroot_cron_programs_txt'] = 'Jailkit cron chrooted Anwendungen';
$wb['website_path_txt'] = 'Website Pfad';
$wb['website_symlinks_txt'] = 'Website Symlinks';
$wb['website_symlinks_rel_txt'] = 'Make relative symlinks';
$wb['website_symlinks_rel_txt'] = 'Erstelle relative Symlinks';
$wb['vhost_conf_dir_txt'] = 'Vhost config dir';
$wb['vhost_conf_enabled_dir_txt'] = 'Vhost config enabled dir';
$wb['getmail_config_dir_txt'] = 'Getmail config dir';
......@@ -85,5 +85,8 @@ $wb['ufw_default_output_policy_txt'] = 'Default Output Policy';
$wb['ufw_default_forward_policy_txt'] = 'Default Forward Policy';
$wb['ufw_default_application_policy_txt'] = 'Default Application Policy';
$wb['ufw_log_level_txt'] = 'Log Level';
$wb['network_config_warning_txt'] = 'The network configuration option is only available for Debian and Ubuntu Servers. Do not enable this option if your network interface is not eth0.';
$wb['network_config_warning_txt'] = 'Die Netzwerk-Konfiguration-Option ist nur auf Debian- und Ubuntu-Servern verfügbar. Aktivieren Sie diese Option nicht, falls Ihr Netzwerk-Interface nicht eth0 heißt.';
$wb["server_type_txt"] = 'Server-Typ';
$wb["nginx_vhost_conf_dir_txt"] = 'nginx Vhost config dir';
$wb["nginx_vhost_conf_enabled_dir_txt"] = 'nginx Vhost config enabled dir';
?>
......@@ -88,4 +88,7 @@ $wb["CA_path_txt"] = 'CA Path';
$wb["CA_pass_txt"] = 'CA passphrase';
$wb["fastcgi_config_syntax_txt"] = 'FastCGI config syntax';
$wb["backup_dir_ftpread_txt"] = 'Backup dir. readable for website FTP users.';
$wb["server_type_txt"] = 'Server Type';
$wb["nginx_vhost_conf_dir_txt"] = 'nginx Vhost config dir';
$wb["nginx_vhost_conf_enabled_dir_txt"] = 'nginx Vhost config enabled dir';
?>
\ No newline at end of file
......@@ -5,6 +5,14 @@
<div class="pnl_formsarea">
<fieldset class="inlineLabels">
<div class="ctrlHolder">
<p class="label">{tmpl_var name='server_type_txt'}</p>
<div class="multiField">
<select name="server_type" id="server_type" class="selectInput">
{tmpl_var name='server_type'}
</select>
</div>
</div>
<div class="ctrlHolder">
<label for="website_basedir">{tmpl_var name='website_basedir_txt'}</label>
<input name="website_basedir" id="website_basedir" value="{tmpl_var name='website_basedir'}" size="40" maxlength="255" type="text" class="textInput" />
......@@ -31,6 +39,14 @@
<label for="vhost_conf_enabled_dir">{tmpl_var name='vhost_conf_enabled_dir_txt'}</label>
<input name="vhost_conf_enabled_dir" id="vhost_conf_enabled_dir" value="{tmpl_var name='vhost_conf_enabled_dir'}" size="40" maxlength="255" type="text" class="textInput" />
</div>
<div class="ctrlHolder">
<label for="nginx_vhost_conf_dir">{tmpl_var name='nginx_vhost_conf_dir_txt'}</label>
<input name="nginx_vhost_conf_dir" id="nginx_vhost_conf_dir" value="{tmpl_var name='nginx_vhost_conf_dir'}" size="40" maxlength="255" type="text" class="textInput" />
</div>
<div class="ctrlHolder">
<label for="nginx_vhost_conf_enabled_dir">{tmpl_var name='nginx_vhost_conf_enabled_dir_txt'}</label>
<input name="nginx_vhost_conf_enabled_dir" id="nginx_vhost_conf_enabled_dir" value="{tmpl_var name='nginx_vhost_conf_enabled_dir'}" size="40" maxlength="255" type="text" class="textInput" />
</div>
<div class="ctrlHolder">
<label for="CA_path">{tmpl_var name='CA_path_txt'}</label>
<input name="CA_path" id="CA_path" value="{tmpl_var name='CA_path'}" size="40" maxlength="255" type="text" class="textInput" />
......@@ -71,7 +87,7 @@
</div>
<div class="ctrlHolder">
<label for="php_open_basedir">{tmpl_var name='php_open_basedir_txt'}</label>
<input name="php_open_basedir" id="php_open_basedir" value="{tmpl_var name='php_open_basedir'}" size="40" maxlength="255" type="text" class="textInput" />
<input name="php_open_basedir" id="php_open_basedir" value="{tmpl_var name='php_open_basedir'}" size="40" type="text" class="textInput" />
</div>
<div class="ctrlHolder">
<label for="htaccess_allow_override">{tmpl_var name='htaccess_allow_override_txt'}</label>
......@@ -116,3 +132,39 @@
</div>
</div>
<script language="JavaScript" type="text/javascript">
var serverType = jQuery('#server_type').val();
adjustForm(serverType);
jQuery('#server_type').change(function(){
serverType = $(this).val();
adjustForm(serverType);
});
function adjustForm(serverType){
if(serverType == "nginx"){
jQuery('#vhost_conf_dir').closest('div.ctrlHolder').hide();
jQuery('#vhost_conf_enabled_dir').closest('div.ctrlHolder').hide();
jQuery('#nginx_vhost_conf_dir').closest('div.ctrlHolder').show();
jQuery('#nginx_vhost_conf_enabled_dir').closest('div.ctrlHolder').show();
jQuery('#security_level').closest('div.ctrlHolder').hide();
jQuery('#check_apache_config').closest('div.ctrlHolder').hide();
jQuery('#user').closest('div.ctrlHolder').hide();
jQuery('#group').closest('div.ctrlHolder').hide();
jQuery('#php_ini_path_apache').closest('div.ctrlHolder').hide();
jQuery('#htaccess_allow_override').closest('div.ctrlHolder').hide();
} else {
jQuery('#vhost_conf_dir').closest('div.ctrlHolder').show();
jQuery('#vhost_conf_enabled_dir').closest('div.ctrlHolder').show();
jQuery('#nginx_vhost_conf_dir').closest('div.ctrlHolder').hide();
jQuery('#nginx_vhost_conf_enabled_dir').closest('div.ctrlHolder').hide();
jQuery('#security_level').closest('div.ctrlHolder').show();
jQuery('#check_apache_config').closest('div.ctrlHolder').show();
jQuery('#user').closest('div.ctrlHolder').show();
jQuery('#group').closest('div.ctrlHolder').show();
jQuery('#php_ini_path_apache').closest('div.ctrlHolder').show();
jQuery('#htaccess_allow_override').closest('div.ctrlHolder').show();
}
}
</script>
\ No newline at end of file
This diff is collapsed.
Animation Release Notes
*** version 2.2.0 **
* Fixed AnimMgr.stop() when called without tween
*** version 0.12.2 ***
* raised AnimMgr.fps to 1000
*** version 0.12.1 ***
* minified version no longer strips line breaks
*** version 0.12.0 ***
* added boolean finish argument to Anim.stop()
*** version 0.11.3 ***
* no changes
*** version 0.11.1 ***
* changed "prototype" shorthand to "proto" (workaround firefox < 1.5 scoping
bug)
*** version 0.11.0 ***
* ColorAnim subclass added
* Motion and Scroll now inherit from ColorAnim
* getDefaultUnit method added
* defaultUnit and defaultUnits deprecated
* getDefault and setDefault methods deprecated
*** version 0.10.0 ***
* Scroll now handles relative ("by") animation correctly
* Now converts "auto" values of "from" to appropriate initial values
*** version 0.9.0 ***
* Initial release
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
AutoComplete Release Notes
*** version 2.2.0 ***
* No changes.
*** version 0.12.2 ***
* No changes.
*** version 0.12.1 ***
* No longer trigger typeAhead feature when user is backspacing on input text.
*** version 0.12.0 ***
* The following constants must be defined as static class properties and are no longer
available as instance properties:
YAHOO.widget.DataSource.ERROR_DATANULL
YAHOO.widget.DataSource.ERROR_DATAPARSE
YAHOO.widget.DS_XHR.TYPE_JSON
YAHOO.widget.DS_XHR.TYPE_XML
YAHOO.widget.DS_XHR.TYPE_FLAT
YAHOO.widget.DS_XHR.ERROR_DATAXHR
* The property minQueryLength now supports zero and negative number values for
DS_JSFunction and DS_XHR objects, to enable null or empty string queries and to disable
AutoComplete functionality altogether, respectively.
* Enabling the alwaysShowContainer feature will no longer send containerExpandEvent or
containerCollapseEvent.
**** version 0.11.3 ***
* The iFrameSrc property has been deprecated. Implementers no longer need to
specify an https URL to avoid IE security warnings when working with sites over
SSL.
*** version 0.11.0 ***
* The method getListIds() has been deprecated for getListItems(), which returns
an array of DOM references.
* All classnames have been prefixed with "yui-ac-".
* Container elements should no longer have CSS property "display" set to "none".
* The useIFrame property can now be set after instantiation.
* On some browsers, the unmatchedItemSelectEvent may not be fired properly when
delimiter characters are defined.
* On some browsers, defining delimiter characters while enabling forceSelection
may result in unexpected behavior.
*** version 0.10.0 ***
* Initial release
* In order to enable the useIFrame property, it should be set in the
constructor.
* On some browsers, defining delimiter characters while enabling forceSelection
may result in unexpected behavior.
This diff is collapsed.
This diff is collapsed.
*** Version 2.2.0 ***
* Button Control introduced
\ No newline at end of file
/*
Copyright (c) 2007, Yahoo! Inc. All rights reserved.
Code licensed under the BSD License:
http://developer.yahoo.net/yui/license.txt
version: 2.2.0
*/
.yuibutton {
display:-moz-inline-stack; /* Gecko */
display:inline-block; /* IE, Opera and Safari */
border-width:1px 0;
border-style:solid;
border-color:#999;
background:#ecece3 url(background.png) left center;
/* Give the transparent background image to IE 6 */
_background-image:none;
_filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src='../../build/button/assets/background.png', sizingMethod = 'scale');
margin:auto .25em;
}
.yuibutton .first-child {
display:block; /* Gecko, Opera and Safari */
*display:inline-block; /* IE */
border-width:0 1px;
border-style:solid;
border-color:#999;
margin:0 -1px;
*position:relative;
*left:-1px;
}
.yuibutton button,
.yuibutton a {
display:block; /* Opera and Safari */
display:-moz-inline-block; /* Gecko */
*display:inline-block; /* IE */
padding:.25em .5em;
border:1px solid #ccc;
}
.yuibutton button {
overflow:visible; /* Remove superfluous padding for IE */
font-size:100%; /* Makes form controls resizable in IE */
background-color:transparent;
cursor:pointer;
cursor:hand;
}
.yuibutton a {
text-decoration:none;
color:#000;
}
.yuibutton.splitbutton button,
.yuibutton.menubutton button {
padding-right:20px;
background-position:right center;
background-repeat:no-repeat;
}
.yuibutton.menubutton button {
background-image:url(menuarrow.gif);
}
.yuibutton.splitbutton button {
background-image:url(splitarrow.gif);
}
/* Focus state */
.yuibutton.focus {
border-color:#5e5c95;
}
.yuibutton.focus .first-child {
border-color:#5e5c95;
}
.yuibutton.focus button,
.yuibutton.focus a {
border-color:#cec1fc;
}
/* Hover state */
.yuibutton.hover {
border-color:#406fac;
background-color:#98d5fc;
}
.yuibutton.hover .first-child {
border-color:#406fac;
}
.yuibutton.hover button,
.yuibutton.hover a {
border-color:#7099ce;
}
/* Active state */
.yuibutton.active {
border-color:#7a8180;
background-color:#333;
}
.yuibutton.active .first-child {
border-color:#7a8180;
}
.yuibutton.active button,
.yuibutton.active a {
border-color:#98a09f;
}
.yuibutton.splitbutton.activeoption button {
background-color:transparent;
background-image:url(splitarrow_active.gif);
}
/* Checked state */
.yuibutton.radio.checked,
.yuibutton.checkbox.checked {
border-color:#7a8180;
background-color:#333;
}
.yuibutton.radio.checked .first-child,
.yuibutton.checkbox.checked .first-child {
border-color:#7a8180;
}
.yuibutton.radio.checked button,
.yuibutton.checkbox.checked button {
border-color:#98a09f;
}
/* Disabled state */
.yuibutton.disabled {
border-color:#cbcdc5;
background:#ecece3;
_filter:none;
}
.yuibutton.disabled .first-child {
border-color:#cbcdc5;
}
.yuibutton.disabled button,
.yuibutton.disabled a {
border-color:transparent;
color:#b9b9b9;
cursor:default;
}
\ No newline at end of file
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
Calendar Release Notes
*** version 2.2.0 ***
- Image customization can now be done through CSS. Images for Close, Left and Right Arrows are now pulled in using CSS defined in calendar.css and by default use relative paths to the images in the same directory as calendar.css.
- Deprecated Calendar.IMG_ROOT and NAV_ARROW_LEFT, NAV_ARROW_RIGHT configuration properties. Customizations based on older releases which set these properties will still function as expected.
- Deprecated CalendarGroup.CSS_2UPCLOSE. Calendar's Style.CSS_CLOSE property now represents the new default CSS class (calclose) for the close button. CSS_2UPCLOSE is still applied along with CSS_CLOSE to the new markup for the close button to support existing customizations of the CSS_2UPCLOSE CSS class (close-icon)
- Fixed problem with Safari setting Calendar pages to incorrect dates if the pages spanned a year boundary in CalendarGroups with 3 or more pages, due to a bug in Safari's implementation of Date setMonth
- Fixed problem with CalendarGroup setMonth rendering Calendar pages with incorrect dates in all browsers if current pages spanned year boundary
- Fixed incorrect CalendarGroup logging statement in calendar-debug.js
- Fixed domEventMap support for Safari versions prior to 2.0.2, caused by hasOwnProperty not being supported
- Removed unused private property : _pageDate from Calendar class
*** version 0.12.2 ***
- Corrected documentation for clearTime function to reflect the change from midnight to noon
*** version 0.12.1 ***
- Calendar and CalendarGroup now automatically parse the argument passed to setMonth and setYear into an integer, eliminating potential concatenation bugs.
*** version 0.12 ***
- New documentation format implemented
- Calendar2up and Calendar_Core are now deprecated. Now, Calendar alone represents the single Calendar instance, and CalendarGroup represents an n-up instance, defaulting to 2up
- Added semantic style classes to Calendar elements to allow for custom styling solely using CSS.
- Remapped all configuration properties to use the Config object (familiar to those who use the Container collection of controls). Property names are the same as their previous counterparts, but wrapped into Calendar.cfg, allowing for runtime reconfiguration of most properties
- Added "title" property for setting the Calendar title
- Added "close" property for enabling and disabling the close icon
- Added "iframe" property for enabling an iframe shim in Internet Explorer 6 and below to fix the select bleed-through bug
- pageDate moved to property: "pagedate"
- selectedDates moved to property: "selected"
- minDate moved to property : "mindate", which accepts a JavaScript Date object like its predecessor, but also supports string dates
- maxDate moved to property : "maxdate", which accepts a JavaScript Date object like its predecessor, but also supports string dates
- Moved style declarations to initStyles function
- Optimized event handling in doSelectCell/doCellMouseOver/doCellMouseOut by only attaching the listener to the outer Calendar container, and only reacting to events on cells with the "selectable" CSS class.
- Added domEventMap field for applying DOM event listeners to cells containing specific class and tag combinations.
- Moved all cell DOM event attachment to applyListeners function
- Added getDateByCellId / getDateFieldsByCellId helper functions
- Corrected DateMath.getWeekNumber to comply with ISO week number handling
- Separated renderCellDefault style portions into styleCellDefault function for easy extension
- Deprecated onBeforeSelect. Created beforeSelectEvent which automatically subscribes to its deprecated predecessor.
- Deprecated onSelect. Created selectEvent, which automatically subscribes to its deprecated predecessor.
- Deprecated onBeforeDeselect. Created beforeSelectEvent which automatically subscribes to its deprecated predecessor.
- Deprecated onDeselect. Created beforeDeselectEvent, which automatically subscribes to its deprecated predecessor.
- Deprecated onChangePage. Created changePageEvent, which automatically subscribes to its deprecated predecessor.
- Deprecated onRender. Created renderEvent, which automatically subscribes to its deprecated predecessor.