Compare commits
15 Commits
11_0_0-2_e
...
11_0_0-14_
Author | SHA1 | Date | |
---|---|---|---|
![]() |
295c6b3ff3 | ||
![]() |
dbeacddd96 | ||
![]() |
1a4c172969 | ||
![]() |
cd6c752805 | ||
![]() |
95dedd2f38 | ||
![]() |
50edcdee9c | ||
![]() |
0d7f87c6aa | ||
![]() |
b42afb227a | ||
![]() |
767cf3bc19 | ||
![]() |
dbdd5217d9 | ||
![]() |
f516d2b759 | ||
![]() |
4551efc1ed | ||
![]() |
79b2e7f492 | ||
![]() |
93b8d4cb6f | ||
![]() |
cc4e08b14a |
1
root/usr/share/smanager/themes/AdminLTE/public/dist/css/jquery-ui.min.css
vendored
Symbolic link
1
root/usr/share/smanager/themes/AdminLTE/public/dist/css/jquery-ui.min.css
vendored
Symbolic link
@@ -0,0 +1 @@
|
||||
/usr/share/javascript/jquery-ui/jquery-ui.min.css
|
7
root/usr/share/smanager/themes/AdminLTE/public/dist/js/bootstrap.min.js
vendored
Normal file
7
root/usr/share/smanager/themes/AdminLTE/public/dist/js/bootstrap.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
1
root/usr/share/smanager/themes/AdminLTE/public/dist/js/bootstrap.min.js.map
vendored
Normal file
1
root/usr/share/smanager/themes/AdminLTE/public/dist/js/bootstrap.min.js.map
vendored
Normal file
File diff suppressed because one or more lines are too long
1
root/usr/share/smanager/themes/AdminLTE/public/dist/js/jquery-ui.min.js
vendored
Symbolic link
1
root/usr/share/smanager/themes/AdminLTE/public/dist/js/jquery-ui.min.js
vendored
Symbolic link
@@ -0,0 +1 @@
|
||||
/usr/share/javascript/jquery-ui/jquery-ui.min.js
|
1
root/usr/share/smanager/themes/AdminLTE/public/dist/js/jquery.min.js
vendored
Symbolic link
1
root/usr/share/smanager/themes/AdminLTE/public/dist/js/jquery.min.js
vendored
Symbolic link
@@ -0,0 +1 @@
|
||||
/usr/share/javascript/jquery/jquery.min.js
|
6
root/usr/share/smanager/themes/AdminLTE/public/dist/js/popper.min.js
vendored
Normal file
6
root/usr/share/smanager/themes/AdminLTE/public/dist/js/popper.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
1
root/usr/share/smanager/themes/AdminLTE/public/dist/js/popper.min.js.map
vendored
Normal file
1
root/usr/share/smanager/themes/AdminLTE/public/dist/js/popper.min.js.map
vendored
Normal file
File diff suppressed because one or more lines are too long
Binary file not shown.
After Width: | Height: | Size: 1.1 KiB |
@@ -88,3 +88,18 @@
|
||||
cursor: default; /* Prevent text cursor */
|
||||
|
||||
}
|
||||
|
||||
|
||||
/* TD and buttons in user lists */
|
||||
|
||||
.user-td-no-right {
|
||||
border-left-width: 0px;
|
||||
}
|
||||
|
||||
.user-td-no-left {
|
||||
border-left-width: 0px;
|
||||
}
|
||||
|
||||
.user-valign-center {
|
||||
text-align: center;
|
||||
}
|
@@ -0,0 +1,298 @@
|
||||
document.addEventListener('DOMContentLoaded', () => {
|
||||
const flagContainer = document.getElementById('flag-container');
|
||||
// Mapping of language codes to country codes and their names
|
||||
const languageToCountryMap = {
|
||||
"af": { code: "NA", name: "Namibia" },
|
||||
"agq": { code: "CM", name: "Cameroon" },
|
||||
"ak": { code: "GH", name: "Ghana" },
|
||||
"am": { code: "ET", name: "Ethiopia" },
|
||||
"ar": { code: "SA", name: "Saudi Arabia" },
|
||||
"as": { code: "IN", name: "India" },
|
||||
"asa": { code: "TZ", name: "Tanzania" },
|
||||
"ast": { code: "ES", name: "Spain" },
|
||||
"az": { code: "AZ", name: "Azerbaijan" },
|
||||
"bas": { code: "CM", name: "Cameroon" },
|
||||
"be": { code: "BY", name: "Belarus" },
|
||||
"bem": { code: "ZM", name: "Zambia" },
|
||||
"bez": { code: "TZ", name: "Tanzania" },
|
||||
"bg": { code: "BG", name: "Bulgaria" },
|
||||
"bm": { code: "ML", name: "Mali" },
|
||||
"bn": { code: "BD", name: "Bangladesh" },
|
||||
"bo": { code: "CN", name: "China" },
|
||||
"br": { code: "FR", name: "France" },
|
||||
"brx": { code: "IN", name: "India" },
|
||||
"bs": { code: "BA", name: "Bosnia and Herzegovina" },
|
||||
"ca": { code: "AD", name: "Andorra" },
|
||||
"ccp": { code: "BD", name: "Bangladesh" },
|
||||
"ce": { code: "RU", name: "Russia" },
|
||||
"cgg": { code: "UG", name: "Uganda" },
|
||||
"chr": { code: "US", name: "United States" },
|
||||
"ckb": { code: "IQ", name: "Iraq" },
|
||||
"cs": { code: "CZ", name: "Czech Republic" },
|
||||
"cy": { code: "GB", name: "United Kingdom" },
|
||||
"da": { code: "DK", name: "Denmark" },
|
||||
"dav": { code: "KE", name: "Kenya" },
|
||||
"de": { code: "DE", name: "Germany" },
|
||||
"dje": { code: "NE", name: "Niger" },
|
||||
"dsb": { code: "DE", name: "Germany" },
|
||||
"dua": { code: "CM", name: "Cameroon" },
|
||||
"dyo": { code: "SN", name: "Senegal" },
|
||||
"dz": { code: "BT", name: "Bhutan" },
|
||||
"ebu": { code: "KE", name: "Kenya" },
|
||||
"ee": { code: "GH", name: "Ghana" },
|
||||
"el": { code: "CY", name: "Cyprus" },
|
||||
"en": { code: "US", name: "United States" }, // Assume US for English if unspecified
|
||||
"es": { code: "ES", name: "Spain" },
|
||||
"et": { code: "EE", name: "Estonia" },
|
||||
"eu": { code: "ES", name: "Spain" },
|
||||
"ewo": { code: "CM", name: "Cameroon" },
|
||||
"fa": { code: "AF", name: "Afghanistan" },
|
||||
"ff": { code: "CM", name: "Cameroon" },
|
||||
"fi": { code: "FI", name: "Finland" },
|
||||
"fil": { code: "PH", name: "Philippines" },
|
||||
"fo": { code: "FO", name: "Faroe Islands" },
|
||||
"fr": { code: "FR", name: "France" },
|
||||
"fur": { code: "IT", name: "Italy" },
|
||||
"fy": { code: "NL", name: "Netherlands" },
|
||||
"ga": { code: "IE", name: "Ireland" },
|
||||
"gd": { code: "GB", name: "United Kingdom" },
|
||||
"gl": { code: "ES", name: "Spain" },
|
||||
"gsw": { code: "CH", name: "Switzerland" },
|
||||
"gu": { code: "IN", name: "India" },
|
||||
"guz": { code: "KE", name: "Kenya" },
|
||||
"gv": { code: "IM", name: "Isle of Man" },
|
||||
"ha": { code: "GH", name: "Ghana" },
|
||||
"haw": { code: "US", name: "United States" },
|
||||
"he": { code: "IL", name: "Israel" },
|
||||
"hi": { code: "IN", name: "India" },
|
||||
"hr": { code: "HR", name: "Croatia" },
|
||||
"hsb": { code: "DE", name: "Germany" },
|
||||
"hu": { code: "HU", name: "Hungary" },
|
||||
"hy": { code: "AM", name: "Armenia" },
|
||||
"id": { code: "ID", name: "Indonesia" },
|
||||
"ig": { code: "NG", name: "Nigeria" },
|
||||
"ii": { code: "CN", name: "China" },
|
||||
"is": { code: "IS", name: "Iceland" },
|
||||
"it": { code: "IT", name: "Italy" },
|
||||
"ja": { code: "JP", name: "Japan" },
|
||||
"jgo": { code: "CM", name: "Cameroon" },
|
||||
"jmc": { code: "TZ", name: "Tanzania" },
|
||||
"ka": { code: "GE", name: "Georgia" },
|
||||
"kab": { code: "DZ", name: "Algeria" },
|
||||
"kam": { code: "KE", name: "Kenya" },
|
||||
"kde": { code: "TZ", name: "Tanzania" },
|
||||
"kea": { code: "CV", name: "Cabo Verde" },
|
||||
"khq": { code: "ML", name: "Mali" },
|
||||
"ki": { code: "KE", name: "Kenya" },
|
||||
"kk": { code: "KZ", name: "Kazakhstan" },
|
||||
"kkj": { code: "CM", name: "Cameroon" },
|
||||
"kl": { code: "GL", name: "Greenland" },
|
||||
"kln": { code: "KE", name: "Kenya" },
|
||||
"km": { code: "KH", name: "Cambodia" },
|
||||
"kn": { code: "IN", name: "India" },
|
||||
"ko": { code: "KP", name: "North Korea" },
|
||||
"kok": { code: "IN", name: "India" },
|
||||
"ks": { code: "IN", name: "India" },
|
||||
"ksb": { code: "TZ", name: "Tanzania" },
|
||||
"ksf": { code: "CM", name: "Cameroon" },
|
||||
"ksh": { code: "DE", name: "Germany" },
|
||||
"kw": { code: "GB", name: "United Kingdom" },
|
||||
"ky": { code: "KG", name: "Kyrgyzstan" },
|
||||
"lag": { code: "TZ", name: "Tanzania" },
|
||||
"lb": { code: "LU", name: "Luxembourg" },
|
||||
"lg": { code: "UG", name: "Uganda" },
|
||||
"lkt": { code: "US", name: "United States" },
|
||||
"ln": { code: "AO", name: "Angola" },
|
||||
"lo": { code: "LA", name: "Laos" },
|
||||
"lrc": { code: "IQ", name: "Iraq" },
|
||||
"lt": { code: "LT", name: "Lithuania" },
|
||||
"lu": { code: "CD", name: "Democratic Republic of the Congo" },
|
||||
"luo": { code: "KE", name: "Kenya" },
|
||||
"Luo": { code: "KE", name: "Kenya" },
|
||||
"luy": { code: "KE", name: "Kenya" },
|
||||
"lv": { code: "LV", name: "Latvia" },
|
||||
"mas": { code: "KE", name: "Kenya" },
|
||||
"mer": { code: "KE", name: "Kenya" },
|
||||
"mfe": { code: "MU", name: "Mauritius" },
|
||||
"mg": { code: "MG", name: "Madagascar" },
|
||||
"mgh": { code: "MZ", name: "Mozambique" },
|
||||
"mgo": { code: "CM", name: "Cameroon" },
|
||||
"mk": { code: "MK", name: "North Macedonia" },
|
||||
"ml": { code: "IN", name: "India" },
|
||||
"mn": { code: "MN", name: "Mongolia" },
|
||||
"mr": { code: "IN", name: "India" },
|
||||
"ms": { code: "BN", name: "Brunei" },
|
||||
"mt": { code: "MT", name: "Malta" },
|
||||
"mua": { code: "CM", name: "Cameroon" },
|
||||
"my": { code: "MM", name: "Myanmar" },
|
||||
"mzn": { code: "IR", name: "Iran" },
|
||||
"naq": { code: "NA", name: "Namibia" },
|
||||
"nb": { code: "NO", name: "Norway" },
|
||||
"nd": { code: "ZW", name: "Zimbabwe" },
|
||||
"nds": { code: "DE", name: "Germany" },
|
||||
"ne": { code: "IN", name: "India" },
|
||||
"nl": { code: "NL", name: "Netherlands" },
|
||||
"nmg": { code: "CM", name: "Cameroon" },
|
||||
"nn": { code: "NO", name: "Norway" },
|
||||
"nnh": { code: "CM", name: "Cameroon" },
|
||||
"nus": { code: "SS", name: "South Sudan" },
|
||||
"nyn": { code: "UG", name: "Uganda" },
|
||||
"om": { code: "ET", name: "Ethiopia" },
|
||||
"or": { code: "IN", name: "India" },
|
||||
"os": { code: "GE", name: "Georgia" },
|
||||
"pa": { code: "PK", name: "Pakistan" },
|
||||
"pl": { code: "PL", name: "Poland" },
|
||||
"ps": { code: "AF", name: "Afghanistan" },
|
||||
"pt": { code: "PT", name: "Portugal" },
|
||||
"qu": { code: "BO", name: "Bolivia" },
|
||||
"rm": { code: "CH", name: "Switzerland" },
|
||||
"rn": { code: "BI", name: "Burundi" },
|
||||
"ro": { code: "RO", name: "Romania" },
|
||||
"rof": { code: "TZ", name: "Tanzania" },
|
||||
"ru": { code: "RU", name: "Russia" },
|
||||
"rw": { code: "RW", name: "Rwanda" },
|
||||
"rwk": { code: "TZ", name: "Tanzania" },
|
||||
"sah": { code: "RU", name: "Russia" },
|
||||
"saq": { code: "KE", name: "Kenya" },
|
||||
"sbp": { code: "TZ", name: "Tanzania" },
|
||||
"se": { code: "SE", name: "Sweden" },
|
||||
"seh": { code: "MZ", name: "Mozambique" },
|
||||
"ses": { code: "ML", name: "Mali" },
|
||||
"sg": { code: "CF", name: "Central African Republic" },
|
||||
"shi": { code: "TN", name: "Tunisia" },
|
||||
"si": { code: "LK", name: "Sri Lanka" },
|
||||
"sk": { code: "SK", name: "Slovakia" },
|
||||
"sl": { code: "SI", name: "Slovenia" },
|
||||
"smn": { code: "FI", name: "Finland" },
|
||||
"sn": { code: "ZW", name: "Zimbabwe" },
|
||||
"so": { code: "SO", name: "Somalia" },
|
||||
"sq": { code: "AL", name: "Albania" },
|
||||
"sr": { code: "RS", name: "Serbia" },
|
||||
"sv": { code: "SE", name: "Sweden" },
|
||||
"sw": { code: "CD", name: "Democratic Republic of the Congo" },
|
||||
"ta": { code: "IN", name: "India" },
|
||||
"te": { code: "IN", name: "India" },
|
||||
"teo": { code: "KE", name: "Kenya" },
|
||||
"tg": { code: "TJ", name: "Tajikistan" },
|
||||
"th": { code: "TH", name: "Thailand" },
|
||||
"ti": { code: "ER", name: "Eritrea" },
|
||||
"to": { code: "TO", name: "Tonga" },
|
||||
"tr": { code: "TR", name: "Turkey" },
|
||||
"tt": { code: "RU", name: "Russia" },
|
||||
"twq": { code: "NE", name: "Niger" },
|
||||
"tzm": { code: "MA", name: "Morocco" },
|
||||
"ug": { code: "CN", name: "China" },
|
||||
"uk": { code: "UA", name: "Ukraine" },
|
||||
"ur": { code: "IN", name: "India" },
|
||||
"uz": { code: "UZ", name: "Uzbekistan" },
|
||||
"vai": { code: "TN", name: "Tunisia" },
|
||||
"Vai": { code: "TN", name: "Tunisia" },
|
||||
"vi": { code: "VN", name: "Vietnam" },
|
||||
"vun": { code: "TZ", name: "Tanzania" },
|
||||
"wae": { code: "CH", name: "Switzerland" },
|
||||
"wo": { code: "SN", name: "Senegal" },
|
||||
"xog": { code: "UG", name: "Uganda" },
|
||||
"yav": { code: "CM", name: "Cameroon" },
|
||||
"yi": { code: "01", name: "Unknown" }, // Placeholder for unspecified region
|
||||
"yo": { code: "BJ", name: "Benin" },
|
||||
"yue": { code: "CN", name: "China" },
|
||||
"zgh": { code: "MA", name: "Morocco" },
|
||||
"zh": { code: "CN", name: "China" },
|
||||
"zu": { code: "ZA", name: "South Africa" },
|
||||
};
|
||||
|
||||
|
||||
//async function getCountryName(countryCode) {
|
||||
//try {
|
||||
//const response = await fetch(`https://restcountries.com/v3.1/alpha/${countryCode}`);
|
||||
//if (!response.ok) throw new Error('Country not found');
|
||||
//const data = await response.json();
|
||||
//// Return the name in the native language
|
||||
//return data[0].name.common;
|
||||
//} catch (error) {
|
||||
//console.error(error);
|
||||
//return 'Unknown Country';
|
||||
//}
|
||||
//}
|
||||
|
||||
function getCountryNameFromLanguage(language) {
|
||||
return languageToCountryMap[language] ? languageToCountryMap[language].name : null;
|
||||
}
|
||||
|
||||
function getCountryCodeFromLanguage(language) {
|
||||
return languageToCountryMap[language] ? languageToCountryMap[language].code : null;
|
||||
}
|
||||
|
||||
function getCountryNameFromCountryCode(countryCode) {
|
||||
//alert(`Country code: ${countryCode}`);
|
||||
for (const language in languageToCountryMap) {
|
||||
if (languageToCountryMap.hasOwnProperty(language)) {
|
||||
if (languageToCountryMap[language].code === countryCode) {
|
||||
return languageToCountryMap[language].name;
|
||||
}
|
||||
}
|
||||
}
|
||||
return null; // Return null if country code not found
|
||||
}
|
||||
|
||||
function getFlagEmoji(locale) {
|
||||
// Split the locale to get the language and country code
|
||||
const parts = locale.split('-');
|
||||
let countryCode;
|
||||
|
||||
// Handle single subtag (language only) or double subtag (language-country)
|
||||
if (parts.length === 1) {
|
||||
countryCode = getCountryCodeFromLanguage(parts[0]);
|
||||
} else if (parts.length === 2) {
|
||||
countryCode = parts[1].toLowerCase(); // Use the country code
|
||||
}
|
||||
|
||||
// If country code is not found, set a fallback output
|
||||
if (!countryCode) {
|
||||
const fallback = `? ${locale.toUpperCase()}`; // Just a question mark and the full locale
|
||||
return { flag: fallback, isUnknown: true, countryName: 'Unknown Country' };
|
||||
}
|
||||
|
||||
// Convert the country code to a flag emoji
|
||||
return {
|
||||
flag: String.fromCodePoint(...[...countryCode.toUpperCase()].map(char => 0x1F1E6 + char.charCodeAt(0) - 'A'.charCodeAt(0))),
|
||||
isUnknown: false,
|
||||
countryCode: countryCode
|
||||
};
|
||||
}
|
||||
|
||||
function displayLocaleAndFlag() {
|
||||
// Get the browser locale
|
||||
const userLocale = navigator.language || navigator.userLanguage;
|
||||
//alert(`User Locale: ${userLocale}`); // Alert the detected locale
|
||||
|
||||
const { flag, isUnknown, countryCode } = getFlagEmoji(userLocale);
|
||||
|
||||
//alert(`Country Code: ${countryCode}, Is Unknown: ${isUnknown}`); // Debug country code and unknown flag status
|
||||
|
||||
// Display the locale and the corresponding flag (or fallback)
|
||||
//document.getElementById('locale').textContent = `Your Locale: ${userLocale}`;
|
||||
|
||||
if (isUnknown) {
|
||||
const fallbackDiv = document.createElement('div');
|
||||
fallbackDiv.className = 'fallback-box';
|
||||
fallbackDiv.textContent = `? ${userLocale.toUpperCase()}`; // Show ? and locale code inside the box
|
||||
document.getElementById('flag-container').appendChild(fallbackDiv);
|
||||
|
||||
// Tooltip for fallback
|
||||
fallbackDiv.title = "Unknown Country"; // Tooltip for fallback
|
||||
//alert('Fallback triggered: Unknown Country'); // Debug fallback
|
||||
} else {
|
||||
const countryName = getCountryNameFromCountryCode(countryCode.toUpperCase());
|
||||
//alert(`Country Name from Country Code: ${countryName}`); // Alert the country name
|
||||
|
||||
const flagSpan = document.createElement('span');
|
||||
flagSpan.textContent = flag; // Use flag emoji
|
||||
flagSpan.title = countryName; // Tooltip for the flag in country language
|
||||
document.getElementById('flag-container').appendChild(flagSpan);
|
||||
|
||||
//alert(`Flag Emoji: ${flag}`); // Debug flag emoji display
|
||||
}
|
||||
}
|
||||
displayLocaleAndFlag();
|
||||
});
|
@@ -0,0 +1,28 @@
|
||||
$(document).ready(function() {
|
||||
function toggleUPSClasses() {
|
||||
var selectedOption = $('#Nutmode_select').val();
|
||||
$('.masterups').toggle(selectedOption === 'netserver' || selectedOption === 'standalone'); // Show/Hide masterups based on Net Server or Standalone
|
||||
$('.slaveups').toggle(selectedOption === 'netclient'); // Show/Hide slaveups based on Net Client
|
||||
|
||||
// Enable/Disable inputs based on the selected option
|
||||
$('.masterups input').prop('disabled', !(selectedOption === 'netserver' || selectedOption === 'standalone'));
|
||||
$('.slaveups input').prop('disabled', selectedOption !== 'netclient');
|
||||
}
|
||||
|
||||
function toggleGenerics() {
|
||||
var upsModelValue = $('#UPS_Model_select').val().toLowerCase(); // Get the current value from UPS_Model
|
||||
var isGenericUps = upsModelValue === 'genericups'; // Check if it's 'genericups'
|
||||
|
||||
// Show/Hide generics section and enable/disable inputs
|
||||
$('.generics').toggle(isGenericUps);
|
||||
$('.generics input').prop('disabled', !isGenericUps); // Enable/Disable inputs based on the value
|
||||
}
|
||||
|
||||
// Event listener for the selections
|
||||
$('#Nutmode_select').change(toggleUPSClasses);
|
||||
$('#UPS_Model_select').change(toggleGenerics); // Listen for changes in the UPS_Model dropdown
|
||||
|
||||
// Set the initial state based on current selections
|
||||
toggleGenerics();
|
||||
toggleUPSClasses();
|
||||
});
|
@@ -0,0 +1,51 @@
|
||||
/*
|
||||
This should work on class sidebar-wrapper
|
||||
*/
|
||||
|
||||
const SELECTOR_SIDEBAR_WRAPPER = '.sidebar-wrapper';
|
||||
|
||||
const Default = {
|
||||
scrollbarTheme: 'os-theme-light',
|
||||
scrollbarAutoHide: 'leave',
|
||||
scrollbarClickScroll: true,
|
||||
};
|
||||
|
||||
document.addEventListener('DOMContentLoaded', function () {
|
||||
const sidebarWrapper = document.querySelector(SELECTOR_SIDEBAR_WRAPPER);
|
||||
if (sidebarWrapper && typeof OverlayScrollbarsGlobal?.OverlayScrollbars !== 'undefined') {
|
||||
OverlayScrollbarsGlobal.OverlayScrollbars(sidebarWrapper, {
|
||||
scrollbars: {
|
||||
theme: Default.scrollbarTheme,
|
||||
autoHide: Default.scrollbarAutoHide,
|
||||
clickScroll: Default.scrollbarClickScroll,
|
||||
},
|
||||
overflow: {
|
||||
x: 'hidden',
|
||||
y: 'scroll',
|
||||
},
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
/* This should work with class=data-overlayscrollbars-initialize and id=scrolltarget */
|
||||
|
||||
/* https://kingsora.github.io/OverlayScrollbars/ */
|
||||
|
||||
/* const { OverlayScrollbars, ClickScrollPlugin } = OverlayScrollbarsGlobal;
|
||||
|
||||
// optional: use the ClickScrollPlugin to make the option "scrollbars.clickScroll: true" available
|
||||
OverlayScrollbars.plugin(ClickScrollPlugin);
|
||||
|
||||
OverlayScrollbars(document.body, {
|
||||
scrollbars: {
|
||||
clickScroll: true,
|
||||
},
|
||||
overflow: {
|
||||
x: 'hidden',
|
||||
y: 'scroll',
|
||||
},
|
||||
});
|
||||
OverlayScrollbars(document.getElementById('scrollTarget'), {});
|
||||
|
||||
*/
|
@@ -0,0 +1,25 @@
|
||||
document.addEventListener('DOMContentLoaded', function() {
|
||||
const analysisType = document.getElementById('analysis_type');
|
||||
const messageIdGroup = document.getElementById('message_id_group');
|
||||
const emailAddressGroup = document.getElementById('email_address_group');
|
||||
|
||||
// Initially hide both controls
|
||||
messageIdGroup.style.display = 'none';
|
||||
emailAddressGroup.style.display = 'none';
|
||||
|
||||
analysisType.addEventListener('change', function() {
|
||||
// Hide both controls first
|
||||
messageIdGroup.style.display = 'none';
|
||||
emailAddressGroup.style.display = 'none';
|
||||
|
||||
// Show the relevant control based on the selected option
|
||||
switch(this.value) {
|
||||
case 'trace_message':
|
||||
messageIdGroup.style.display = 'block';
|
||||
break;
|
||||
case 'user_activity':
|
||||
emailAddressGroup.style.display = 'block';
|
||||
break;
|
||||
}
|
||||
});
|
||||
});
|
@@ -0,0 +1,33 @@
|
||||
// js/sme-password.js
|
||||
|
||||
$(document).ready(function() {
|
||||
/* // For each password input
|
||||
$('.sme-password').each(function() {
|
||||
// Create a new container
|
||||
//alert("sme-password");
|
||||
var $inputContainer = $('<div class="input-container"></div>');
|
||||
|
||||
// Move the input into the new container
|
||||
$(this).wrap($inputContainer);
|
||||
|
||||
// Create the toggle image
|
||||
var $togglePassword = $('<img src="images/visible.png" alt="Show Password" class="toggle-password" />');
|
||||
|
||||
// Append the toggle image to the container
|
||||
$(this).after($togglePassword);
|
||||
}); */
|
||||
|
||||
$('.toggle-password').on('click', function() {
|
||||
// Find the associated password field
|
||||
var input = $(this).siblings('.sme-password');
|
||||
|
||||
// Toggle the type attribute between password and text
|
||||
var inputType = input.attr('type') === 'password' ? 'text' : 'password';
|
||||
input.attr('type', inputType);
|
||||
|
||||
// Toggle the icon source based on the input type
|
||||
// Check boostrap colours?
|
||||
// var iconSrc = inputType === 'password' ? 'images/visible.png' : 'images/visible-slash.png';
|
||||
// $(this).attr('src', iconSrc);
|
||||
});
|
||||
});
|
@@ -2,7 +2,7 @@
|
||||
|
||||
% content_for 'module' => begin
|
||||
|
||||
<div id="" class="">
|
||||
<div class="card-body">
|
||||
% if (config->{debug} == 1) {
|
||||
<p>
|
||||
%= dumper $c->current_route
|
||||
@@ -29,7 +29,8 @@
|
||||
<p>
|
||||
<span class="">
|
||||
%=l 'bac_ENABLE_TAPE_BACKUP'
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
% if ( $bac_datas->{status} eq 'checked' ) {
|
||||
<input type='checkbox' name='Tapebackup' checked >
|
||||
%} else {
|
||||
@@ -42,7 +43,8 @@
|
||||
<p>
|
||||
<span class="">
|
||||
%=l 'bac_TAPE_BACKUP_TIME'
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
% param 'BackupHour' => $bac_datas->{backupHour} unless param 'BackupHour';
|
||||
%= text_field 'BackupHour', size => '2'
|
||||
% param 'BackupMin' => $bac_datas->{backupMin} unless param 'BackupMin';
|
||||
@@ -50,7 +52,8 @@
|
||||
</span>
|
||||
<!--span class="">
|
||||
%=l 'AM/PM:'
|
||||
<!--/span--><span class="">
|
||||
<!--/span-->
|
||||
<span class="">
|
||||
% param 'BackupAMPM' => $bac_datas->{backupAMPM} unless param 'BackupAMPM';
|
||||
%= select_field 'BackupAMPM' => ['AM', 'PM'], class => ""
|
||||
</span>
|
||||
@@ -59,7 +62,8 @@
|
||||
<p>
|
||||
<span class="">
|
||||
%=l 'bac_LOAD_TAPE_REMINDER_TIME'
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
% param 'ReminderHour' => $bac_datas->{reminderHour} unless param 'ReminderHour';
|
||||
%= text_field 'ReminderHour', size => '2'
|
||||
% param 'ReminderMin' => $bac_datas->{reminderMin} unless param 'ReminderMin';
|
||||
@@ -67,7 +71,8 @@
|
||||
</span>
|
||||
<!--span class="">
|
||||
%=l 'AM/PM:'
|
||||
<!--/span--><span class="">
|
||||
<!--/span-->
|
||||
<span class="">
|
||||
% param 'ReminderAMPM' => $bac_datas->{reminderAMPM} unless param 'ReminderAMPM';
|
||||
%= select_field 'ReminderAMPM' => ['AM', 'PM'], class => ""
|
||||
</span>
|
||||
|
@@ -2,7 +2,8 @@
|
||||
|
||||
% content_for 'module' => begin
|
||||
|
||||
<div id="" class="">
|
||||
<div class="card-body">
|
||||
|
||||
% if (config->{debug} == 1) {
|
||||
<p>
|
||||
%= dumper $c->current_route
|
||||
@@ -13,7 +14,7 @@
|
||||
% if ( stash 'error' ) {
|
||||
<br><div class="">
|
||||
%= $c->render_to_string(inline => stash 'error')
|
||||
</div>
|
||||
</div>
|
||||
%}
|
||||
|
||||
<h1><%= $title%></h1>
|
||||
|
@@ -2,7 +2,8 @@
|
||||
|
||||
% content_for 'module' => begin
|
||||
|
||||
<div id="" class="">
|
||||
<div class="card-body">
|
||||
|
||||
% if (config->{debug} == 1) {
|
||||
<p>
|
||||
%= dumper $c->current_route
|
||||
@@ -29,19 +30,24 @@
|
||||
%=l 'bac_WORKSTN_BACKUP_ENABLED'
|
||||
<span class="">
|
||||
%= $bac_datas->{status}
|
||||
</span><br>
|
||||
</span>
|
||||
<br>
|
||||
|
||||
%= $c->render_to_string(inline => $c->workstnBackupConfig())
|
||||
|
||||
<p><h3>
|
||||
<p>
|
||||
<h3>
|
||||
%= l 'bac_WORKSTATION_BACKUP_SETCONF'
|
||||
</h3><br>
|
||||
</h3>
|
||||
<br>
|
||||
<span class="">
|
||||
%=l 'bac_SELECT_VFS_TYPE'
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
% param 'VFSType' => $bac_datas->{vfstype} unless param 'VFSType';
|
||||
%= select_field 'VFSType' => $c->get_VFSType_options(), class => ""
|
||||
</span></p>
|
||||
</span>
|
||||
</p>
|
||||
|
||||
%= hidden_field 'Function' => $bac_datas->{'function'} . '1'
|
||||
%= submit_button $c->l('NEXT'), class => ""
|
||||
|
@@ -2,7 +2,8 @@
|
||||
|
||||
% content_for 'module' => begin
|
||||
|
||||
<div id="" class="">
|
||||
<div class="card-body">
|
||||
|
||||
% if (config->{debug} == 1) {
|
||||
<p>
|
||||
%= dumper $c->current_route
|
||||
@@ -11,7 +12,7 @@
|
||||
% }
|
||||
|
||||
% if ( stash 'error' ) {
|
||||
<br><div class="">
|
||||
<br><div>
|
||||
%= $c->render_to_string(inline => stash 'error')
|
||||
</div>
|
||||
%}
|
||||
@@ -29,7 +30,8 @@
|
||||
<p>
|
||||
<span class="">
|
||||
%=l 'bac_ENABLE_WORKSTN_BACKUP'
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
% if ( $bac_datas->{status} eq 'checked' ) {
|
||||
<input type='checkbox' name='Workstnbackup' checked >
|
||||
%} else {
|
||||
@@ -38,60 +40,73 @@
|
||||
</span>
|
||||
|
||||
</p>
|
||||
<p><h3>
|
||||
<p>
|
||||
<h3>
|
||||
%= l 'bac_WORKSTATION_BACKUP_DEST'
|
||||
</h3><br>
|
||||
</h3>
|
||||
<br>
|
||||
|
||||
% if ( $bac_datas->{vfstype} =~ m/cifs|nfs/s ) {
|
||||
<span class="">
|
||||
%=l 'bac_WORKSTN_NAME'
|
||||
</span><span class="">
|
||||
% param 'BackupwkStation' => $bac_datas->{station} unless param 'BackupwkStation';
|
||||
%= text_field 'BackupwkStation', size => 20, class => ""
|
||||
</span><br>
|
||||
<span class="">
|
||||
%=l 'bac_WORKSTN_NAME'
|
||||
</span>
|
||||
<span class="">
|
||||
% param 'BackupwkStation' => $bac_datas->{station} unless param 'BackupwkStation';
|
||||
%= text_field 'BackupwkStation', size => 20, class => ""
|
||||
</span>
|
||||
<br>
|
||||
%}
|
||||
% if ( $bac_datas->{vfstype} eq 'usb' ) {
|
||||
<span class="">
|
||||
%=l 'bac_local removable disk'
|
||||
</span><span class="">
|
||||
% param 'BackupwkFolder' => $bac_datas->{mount} unless param 'BackupwkFolder';
|
||||
%= select_field 'BackupwkFolder' => $c->get_BackupwkDest_options( $bac_datas->{vfstype}), class => ""
|
||||
</span><br>
|
||||
<span class="">
|
||||
%=l 'bac_local removable disk'
|
||||
</span>
|
||||
<span class="">
|
||||
% param 'BackupwkFolder' => $bac_datas->{mount} unless param 'BackupwkFolder';
|
||||
%= select_field 'BackupwkFolder' => $c->get_BackupwkDest_options( $bac_datas->{vfstype}), class => ""
|
||||
</span>
|
||||
<br>
|
||||
% } elsif ( $bac_datas->{vfstype} eq 'mnt') {
|
||||
<span class="">
|
||||
%=l 'bac_Mounted disk'
|
||||
</span><span class="">
|
||||
% param 'BackupwkFolder' => $bac_datas->{folder} unless param 'BackupwkFolder';
|
||||
%= select_field 'BackupwkFolder' => $c->get_BackupwkDest_options( $bac_datas->{vfstype}), class => ""
|
||||
</span><br>
|
||||
%=l 'bac_Mounted disk'
|
||||
</span>
|
||||
<span class="">
|
||||
% param 'BackupwkFolder' => $bac_datas->{folder} unless param 'BackupwkFolder';
|
||||
%= select_field 'BackupwkFolder' => $c->get_BackupwkDest_options( $bac_datas->{vfstype}), class => ""
|
||||
</span>
|
||||
<br>
|
||||
% } else {
|
||||
<span class="">
|
||||
%=l 'bac_SHARED_FOLDER_NAME'
|
||||
</span><span class="">
|
||||
% param 'BackupwkFolder' => $bac_datas->{folder} unless param 'BackupwkFolder';
|
||||
%= text_field 'BackupwkFolder', size => 20, class => ""
|
||||
</span><br>
|
||||
<span class="">
|
||||
%=l 'bac_SHARED_FOLDER_NAME'
|
||||
</span><span class="">
|
||||
% param 'BackupwkFolder' => $bac_datas->{folder} unless param 'BackupwkFolder';
|
||||
%= text_field 'BackupwkFolder', size => 20, class => ""
|
||||
</span>
|
||||
<br>
|
||||
%}
|
||||
% if ( $bac_datas->{vfstype} eq 'cifs' ) {
|
||||
<span class="">
|
||||
%=l 'bac_WORKSTN_LOGIN'
|
||||
</span><span class="">
|
||||
% param 'BackupwkLogin' => $bac_datas->{login} unless param 'BackupwkLogin';
|
||||
%= text_field 'BackupwkLogin', size => 12, class => ""
|
||||
</span><br><span class="">
|
||||
%=l 'bac_PASSWORD'
|
||||
</span><span class="">
|
||||
% param 'BackupwkPassword' => $bac_datas->{password} unless param 'BackupwkPassword';
|
||||
%= password_field 'BackupwkPassword', size => 12, class => ""
|
||||
</span>
|
||||
<span class="">
|
||||
%=l 'bac_WORKSTN_LOGIN'
|
||||
</span><span class="">
|
||||
% param 'BackupwkLogin' => $bac_datas->{login} unless param 'BackupwkLogin';
|
||||
%= text_field 'BackupwkLogin', size => 12, class => ""
|
||||
</span>
|
||||
<br>
|
||||
<span class="">
|
||||
%=l 'bac_PASSWORD'
|
||||
</span><span class="">
|
||||
% param 'BackupwkPassword' => $bac_datas->{password} unless param 'BackupwkPassword';
|
||||
%= password_field 'BackupwkPassword', size => 12, class => ""
|
||||
</span>
|
||||
%}
|
||||
</p><br><h3>
|
||||
%= l 'bac_WORKSTN_BACKUP_SETTINGS'
|
||||
</h3><br>
|
||||
|
||||
<p><span class="">
|
||||
<p>
|
||||
<span class="">
|
||||
%=l 'bac_NUMBER_OF_SETS'
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
% param 'SetsNumber' => $bac_datas->{setsNumber} unless param 'SetsNumber';
|
||||
%= text_field 'SetsNumber', size => '3'
|
||||
</span>
|
||||
@@ -104,7 +119,8 @@
|
||||
<p>
|
||||
<span class="">
|
||||
%=l 'bac_WORKSTN_BACKUP_TIME'
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
% param 'BackupwkHour' => $bac_datas->{hour} unless param 'BackupwkHour';
|
||||
%= text_field 'BackupwkHour', size => '2'
|
||||
% param 'BackupwkMin' => $bac_datas->{min} unless param 'BackupwkMin';
|
||||
@@ -119,23 +135,25 @@
|
||||
|
||||
<p><span class="">
|
||||
%=l 'bac_WORKSTN_TIMEOUT'
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
% param 'BackupwkTimeout' => $bac_datas->{timeout} unless param 'BackupwkTimeout';
|
||||
%= text_field 'BackupwkTimeout', size => '2'
|
||||
</span>
|
||||
%=l 'bac_INC_ONLY_TIMEOUT'
|
||||
<span class="">
|
||||
% if ( $bac_datas->{incOnlyTimeout} eq 'checked' ) {
|
||||
<input type='checkbox' name='IncOnlyTimeout' checked >
|
||||
<input type='checkbox' name='IncOnlyTimeout' checked >
|
||||
%} else {
|
||||
%= check_box 'IncOnlyTimeout'
|
||||
%= check_box 'IncOnlyTimeout'
|
||||
%}
|
||||
</span></p>
|
||||
|
||||
<p>
|
||||
<span class="">
|
||||
%=l 'bac_COMPRESSION_LEVEL'
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
% param 'Compression' => $bac_datas->{compression} unless param 'Compression';
|
||||
%= text_field 'Compression', size => '1'
|
||||
</span>
|
||||
@@ -143,7 +161,8 @@
|
||||
<span class="">
|
||||
% param 'Dof' => $bac_datas->{dof} unless param 'Dof';
|
||||
%= select_field 'Dof' => $c->get_dow_list(), class => ""
|
||||
</p><br>
|
||||
</p>
|
||||
<br>
|
||||
|
||||
|
||||
%= hidden_field 'Function' => $bac_datas->{function}
|
||||
|
@@ -2,7 +2,8 @@
|
||||
|
||||
% content_for 'module' => begin
|
||||
|
||||
<div id="" class="">
|
||||
<div class="card-body">
|
||||
|
||||
% if (config->{debug} == 1) {
|
||||
<p>
|
||||
%= dumper $c->current_route
|
||||
@@ -33,7 +34,8 @@
|
||||
|
||||
<br><br><span class="">
|
||||
%=l 'bac_SELECT_BACKUP_FILE'
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
%= select_field 'Backupset' => $c->get_Backupset_options(), class => ""
|
||||
</span><br><br>
|
||||
|
||||
|
@@ -2,7 +2,8 @@
|
||||
|
||||
% content_for 'module' => begin
|
||||
|
||||
<div id="" class="">
|
||||
<div class="card-body">
|
||||
|
||||
% if (config->{debug} == 1) {
|
||||
<p>
|
||||
%= dumper $c->current_route
|
||||
|
@@ -2,7 +2,8 @@
|
||||
|
||||
% content_for 'module' => begin
|
||||
|
||||
<div id="" class="">
|
||||
<div class="card-body">
|
||||
|
||||
% if (config->{debug} == 1) {
|
||||
<p>
|
||||
%= dumper $c->current_route
|
||||
@@ -26,17 +27,22 @@
|
||||
|
||||
<h3><%=l 'bac_BACKUP_CHOICE' %></h3>
|
||||
|
||||
<br><span class="">
|
||||
<br>
|
||||
<span class="">
|
||||
%=l 'bac_SELECT_BACKUP_FILE'
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
%= select_field 'Backupset' => $c->get_Restoreset_options(), class => ""
|
||||
</span><br>
|
||||
|
||||
<br><span class="">
|
||||
</span>
|
||||
<br>
|
||||
<br>
|
||||
<span class="">
|
||||
%=l 'bac_FILTER_EXPRESSION'
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
%= text_field 'Filterexp', size => 32, class => ""
|
||||
</span><br>
|
||||
</span>
|
||||
<br>
|
||||
<br>
|
||||
%= hidden_field 'Function' => $bac_datas->{'function'}
|
||||
%= submit_button $c->l('PERFORM'), class => ""
|
||||
|
@@ -2,7 +2,8 @@
|
||||
|
||||
% content_for 'module' => begin
|
||||
|
||||
<div id="" class="">
|
||||
<div class="card-body">
|
||||
|
||||
% if (config->{debug} == 1) {
|
||||
<p>
|
||||
%= dumper $c->current_route
|
||||
@@ -19,7 +20,8 @@
|
||||
<h1><%= $title%></h1>
|
||||
|
||||
|
||||
<h2><%=l 'bac_WORKSTN_SELECTIVE_RESTORE' %></h2><br>
|
||||
<h2><%=l 'bac_WORKSTN_SELECTIVE_RESTORE' %></h2>
|
||||
<br>
|
||||
|
||||
%= $c->render_to_string(inline => (l 'bac_READ_COMPLETE'))
|
||||
|
||||
@@ -27,15 +29,19 @@
|
||||
|
||||
<br><span class="">
|
||||
%=l 'bac_SELECT_FILES_TO_RESTORE'
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
%= select_field 'Restorefiles' => $c->get_Restorefiles_options($bac_datas->{'filterexp'},$bac_datas->{'backupset'}), class => "", multiple => 1, size => 15
|
||||
</span><br>
|
||||
|
||||
<br><span class="">
|
||||
</span>
|
||||
<br>
|
||||
<br>
|
||||
<span class="">
|
||||
%=l 'bac_SELECT_DATE_BEFORE'
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
%= text_field 'Seldatebefore', size => 32, class => ""
|
||||
</span><br>
|
||||
</span>
|
||||
<br>
|
||||
<br>
|
||||
%= hidden_field 'Function' => $bac_datas->{'function'}
|
||||
%= hidden_field 'Backupset' => $bac_datas->{'backupset'}
|
||||
|
@@ -2,7 +2,8 @@
|
||||
|
||||
% content_for 'module' => begin
|
||||
|
||||
<div id="" class="">
|
||||
<div class="card-body">
|
||||
|
||||
% if (config->{debug} == 1) {
|
||||
<p>
|
||||
%= dumper $c->current_route
|
||||
@@ -11,9 +12,10 @@
|
||||
% }
|
||||
|
||||
% if ( stash 'error' ) {
|
||||
<br><div class="">
|
||||
<br>
|
||||
<div class="">
|
||||
%= $c->render_to_string(inline => stash 'error')
|
||||
</div>
|
||||
</div>
|
||||
%}
|
||||
|
||||
<h1><%= $title%></h1>
|
||||
|
@@ -1,18 +1,20 @@
|
||||
% layout 'AdminLTE', title => "Sme server 2 - backup - verify";
|
||||
% content_for 'module' => begin
|
||||
|
||||
<div id="" class="">
|
||||
<div class="card-body">
|
||||
|
||||
% if (config->{debug} == 1) {
|
||||
<p>
|
||||
%= dumper $c->current_route
|
||||
%= dumper $bac_datas
|
||||
</p>
|
||||
<p>
|
||||
%= dumper $c->current_route
|
||||
%= dumper $bac_datas
|
||||
</p>
|
||||
% }
|
||||
|
||||
% if ( stash 'error' ) {
|
||||
<br><div class="">
|
||||
<br>
|
||||
<div class="">
|
||||
%= $c->render_to_string(inline => stash 'error')
|
||||
</div>
|
||||
</div>
|
||||
%}
|
||||
|
||||
<h1><%= $title%></h1>
|
||||
@@ -24,25 +26,34 @@
|
||||
%= form_for '/backup' => (method => 'POST') => begin
|
||||
|
||||
% if ($bac_datas->{status} ne 'enabled') {
|
||||
%= $c->render_to_string(inline => (l 'bac_CONFIGURATION_TO_BE_DONE'))
|
||||
%= $c->render_to_string(inline => (l 'bac_CONFIGURATION_TO_BE_DONE'))
|
||||
% } else {
|
||||
%= $c->render_to_string(inline => (l 'bac_VERIFY_WORKSTN_BACKUP_DESC') . ' ' . $c->get_shared_folder_to_verify())
|
||||
%= $c->render_to_string(inline => (l 'bac_VERIFY_WORKSTN_BACKUP_DESC') . ' ' . $c->get_shared_folder_to_verify())
|
||||
%}
|
||||
<br><br><span class="">
|
||||
<br>
|
||||
<br>
|
||||
<span class="">
|
||||
%=l 'bac_SELECT_BACKUP_FILE'
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
%= select_field 'Backupset' => $c->get_Backupset_options(), class => ""
|
||||
</span><br>
|
||||
</span>
|
||||
<br>
|
||||
|
||||
<p><span class="">
|
||||
<p>
|
||||
<span class="">
|
||||
%=l 'bac_CHECK_TO_VERIFY_FULL_RESTORE'
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
%= check_box 'Verifyall'
|
||||
</span></p><br>
|
||||
</span>
|
||||
</p>
|
||||
<br>
|
||||
|
||||
%=l 'bac_CHECK_INTEGRITY_WARNING'
|
||||
|
||||
<br><br>
|
||||
<br>
|
||||
<br>
|
||||
%= hidden_field 'Function' => $bac_datas->{'function'} . '1'
|
||||
%= submit_button $c->l('bac_VERIFY'), class => ""
|
||||
|
||||
|
@@ -1,7 +1,8 @@
|
||||
% layout 'AdminLTE', title => "Sme server 2 - backup - verify";
|
||||
% content_for 'module' => begin
|
||||
|
||||
<div id="" class="">
|
||||
<div class="card-body">
|
||||
|
||||
% if (config->{debug} == 1) {
|
||||
<p>
|
||||
%= dumper $c->current_route
|
||||
@@ -11,9 +12,10 @@
|
||||
% }
|
||||
|
||||
% if ( stash 'error' ) {
|
||||
<br><div class="">
|
||||
<br>
|
||||
<div class="">
|
||||
%= $c->render_to_string(inline => stash 'error')
|
||||
</div>
|
||||
</div>
|
||||
%}
|
||||
|
||||
<h1><%= $title%></h1>
|
||||
|
@@ -3,8 +3,8 @@
|
||||
my $backups = esmith::BackupHistoryDB->open;
|
||||
my $now = time();
|
||||
my $backup_rec = $backups->new_record($now, {
|
||||
type => 'backup_record', BackupType => 'desktop',
|
||||
StartEpochTime => $now,
|
||||
type => 'backup_record', BackupType => 'desktop',
|
||||
StartEpochTime => $now,
|
||||
});
|
||||
|
||||
# Dump the current mysql tables so that they are part of the image.
|
||||
|
@@ -2,7 +2,8 @@
|
||||
|
||||
% content_for 'module' => begin
|
||||
|
||||
<div id="" class="">
|
||||
<div class="card-body">
|
||||
|
||||
% if (config->{debug} == 1) {
|
||||
<p>
|
||||
%= dumper $c->current_route
|
||||
@@ -11,14 +12,16 @@
|
||||
% }
|
||||
|
||||
% if ( stash 'warning' ) {
|
||||
<br><div class="">
|
||||
<br>
|
||||
<div class="">
|
||||
%= $c->render_to_string(inline => stash 'warning')
|
||||
</div>
|
||||
</div>
|
||||
%}
|
||||
% if ( stash 'error' ) {
|
||||
<br><div class="">
|
||||
<br>
|
||||
<div class="">
|
||||
%= $c->render_to_string(inline => stash 'error')
|
||||
</div>
|
||||
</div>
|
||||
%}
|
||||
|
||||
<h1><%= $title%></h1>
|
||||
@@ -35,39 +38,49 @@
|
||||
%=l 'bac_BACKUP_CONFIG_STATUS'
|
||||
</h2>
|
||||
|
||||
<p><span class="">
|
||||
<p>
|
||||
<span class="">
|
||||
%=l 'bac_TAPE_BACKUPS',
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
%= $c->l(uc($bac_datas->{'backupStatus'})).'.'
|
||||
</span>
|
||||
% if ( $bac_datas->{'backupStatus'} eq 'enabled' ) {
|
||||
%= $c->l('bac_BACKUPS_RUN_AT')
|
||||
<span class="">
|
||||
%= $bac_datas->{'backupTime'}
|
||||
</span>
|
||||
%= $c->l('bac_REMINDER_MESSAGE_AT')
|
||||
<span class="">
|
||||
%= $bac_datas->{'reminderTime'}
|
||||
</span>
|
||||
%= $c->l('bac_BACKUPS_RUN_AT')
|
||||
<span class="">
|
||||
%= $bac_datas->{'backupTime'}
|
||||
</span>
|
||||
%= $c->l('bac_REMINDER_MESSAGE_AT')
|
||||
<span class="">
|
||||
%= $bac_datas->{'reminderTime'}
|
||||
</span>
|
||||
%}
|
||||
<p><span class="">
|
||||
</p>
|
||||
|
||||
<p>
|
||||
<span class="">
|
||||
%=l 'bac_WORKSTN_BACKUPS',
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
%= $c->l(uc($bac_datas->{'backupwkStatus'})).'.'
|
||||
</span>
|
||||
% if ( $bac_datas->{'backupwkStatus'} eq 'enabled' ) {
|
||||
%= $c->l('bac_WKBACKUPS_RUN_AT')
|
||||
<b>
|
||||
%= $bac_datas->{'backupwkTime'}
|
||||
</b>
|
||||
%= $c->l('bac_WKBACKUPS_RUN_AT')
|
||||
<b>
|
||||
%= $bac_datas->{'backupwkTime'}
|
||||
</b>
|
||||
%}
|
||||
</p>
|
||||
|
||||
<p><span class="">
|
||||
<p>
|
||||
<span class="">
|
||||
%=l 'bac_SELECT_AN_ACTION'
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
% param 'Function' => $bac_datas->{function} unless param 'Function';
|
||||
%= select_field 'Function' => $c->get_function_options(), class => ""
|
||||
</span></p>
|
||||
</span>
|
||||
</p>
|
||||
|
||||
<br>
|
||||
%= submit_button $c->l('PERFORM'), class => ""
|
||||
|
@@ -2,7 +2,7 @@
|
||||
|
||||
% content_for 'module' => begin
|
||||
|
||||
<div id="" class="">
|
||||
<div class="card-body">
|
||||
|
||||
% if (config->{debug} == 1) {
|
||||
<p>
|
||||
@@ -15,39 +15,53 @@
|
||||
<!--br><%= $modul %><br-->
|
||||
|
||||
<b>
|
||||
%=l ('bugr_DO_NOT_PANIC')
|
||||
%=l ('bugr_DO_NOT_PANIC')
|
||||
</b>
|
||||
<p>
|
||||
%=l ('bugr_SME_EXPERIENCE')
|
||||
</p><p>
|
||||
%=l ('bugr_SME_EXPERIENCE')
|
||||
</p>
|
||||
<p>
|
||||
%=l ('bugr_USE_TEMPLATE')
|
||||
: <a href="https://wiki.koozali.org/Bugzilla_Help#Reporting_Bugs"
|
||||
target="_blank">https://wiki.koozali.org/Bugzilla_Help#Reporting_Bugs</a>.
|
||||
</p><p>
|
||||
</p>
|
||||
<p>
|
||||
%=l ('bugr_PLEASE_REPORT_HERE')
|
||||
: <a href="https://bugs.koozali.org" target="_blank">https://bugs.koozali.org</a>.
|
||||
</p><p>
|
||||
%=l ('bugr_FOLLOWING_REPORT_MIGHT_HELP')
|
||||
</p><p>
|
||||
%=l ('bugr_REPORT_CONTENT')
|
||||
<br><ul><li>
|
||||
%=l ('bugr_SME_VERSION')
|
||||
</li><li>
|
||||
%=l ('bugr_SERVER_MODE')
|
||||
</li><li>
|
||||
%=l ('bugr_PREVIOUS_SERVER_MODE')
|
||||
</li><li>
|
||||
%=l ('bugr_KERNEL_AND_ARCH')
|
||||
</li><li>
|
||||
%=l ('bugr_INSTALLED_RPMS')
|
||||
</li><li>
|
||||
%=l ('bugr_ALTERED_TEMPLATES')
|
||||
</li><li>
|
||||
%=l ('bugr_ALTERED_EVENTS')
|
||||
</li><li>
|
||||
%=l ('bugr_YUM_REPOS')
|
||||
</li><br></ul>
|
||||
%=l ('bugr_PRIVACY')
|
||||
</p>
|
||||
<p>
|
||||
%=l ('bugr_FOLLOWING_REPORT_MIGHT_HELP')
|
||||
</p>
|
||||
<p>
|
||||
%=l ('bugr_REPORT_CONTENT')
|
||||
<br>
|
||||
<ul>
|
||||
<li>
|
||||
%=l ('bugr_SME_VERSION')
|
||||
</li>
|
||||
<li>
|
||||
%=l ('bugr_SERVER_MODE')
|
||||
</li>
|
||||
<li>
|
||||
%=l ('bugr_PREVIOUS_SERVER_MODE')
|
||||
</li>
|
||||
<li>
|
||||
%=l ('bugr_KERNEL_AND_ARCH')
|
||||
</li>
|
||||
<li>
|
||||
%=l ('bugr_INSTALLED_RPMS')
|
||||
</li>
|
||||
<li>
|
||||
%=l ('bugr_ALTERED_TEMPLATES')
|
||||
</li>
|
||||
<li>
|
||||
%=l ('bugr_ALTERED_EVENTS')
|
||||
</li> <li>
|
||||
%=l ('bugr_YUM_REPOS')
|
||||
</li>
|
||||
<br>
|
||||
</ul>
|
||||
%=l ('bugr_PRIVACY')
|
||||
</p>
|
||||
|
||||
<% my $btn = l('bugr_CREATE_REPORT'); %>
|
||||
@@ -57,14 +71,17 @@
|
||||
% end
|
||||
|
||||
<p><b>
|
||||
%=l ('bugr_DONATING')
|
||||
</b><br><br>
|
||||
%=l ('bugr_AWARE_SME')
|
||||
<br><br><b>
|
||||
%=l ('bugr_YOUR_HELP')
|
||||
</b><br><br>
|
||||
%=l ('bugr_CONSIDER_DONATING')
|
||||
<br><br>
|
||||
%=l ('bugr_DONATING')
|
||||
</b>
|
||||
<br><br>
|
||||
%=l ('bugr_AWARE_SME')
|
||||
<br><br>
|
||||
<b>
|
||||
%=l ('bugr_YOUR_HELP')
|
||||
</b>
|
||||
<br><br>
|
||||
%=l ('bugr_CONSIDER_DONATING')
|
||||
<br><br>
|
||||
</p>
|
||||
|
||||
%= link_to 'https://wiki.koozali.org/Donate' => begin
|
||||
|
@@ -2,7 +2,7 @@
|
||||
|
||||
% content_for 'module' => begin
|
||||
|
||||
<div id="" class="">
|
||||
<div class="card-body">
|
||||
|
||||
% if (config->{debug} == 1) {
|
||||
<p>
|
||||
|
@@ -1,7 +1,9 @@
|
||||
% layout 'AdminLTE', title => "Sme server 2 - clamav";
|
||||
|
||||
% content_for 'module' => begin
|
||||
<div id="" class="">
|
||||
|
||||
<div class="card-body">
|
||||
|
||||
%if (config->{debug} == 1) {
|
||||
<p>(DBG)route: <%= $c->current_route %><br>
|
||||
(DBG)FsS stat: <%= $clm_datas->{FilesystemScan}%> <br>
|
||||
@@ -15,29 +17,32 @@
|
||||
|
||||
%= form_for 'clamav' => (method => 'POST') => begin
|
||||
<p>
|
||||
<span class="">
|
||||
%=l 'clm_LABEL_FILESYSTEM_SCAN_PERIOD'
|
||||
</span><span class="">
|
||||
% param 'FilesystemScan' => $clm_datas->{FilesystemScan} unless param 'FilesystemScan';
|
||||
%= select_field 'FilesystemScan' => [[ (l 'clm_DAILY') => 'daily'], [ (l 'clm_NEVER') => 'disabled'], [ (l 'clm_WEEKLY') => 'weekly']], class => ""
|
||||
</span>
|
||||
<span class="">
|
||||
%=l 'clm_LABEL_FILESYSTEM_SCAN_PERIOD'
|
||||
</span>
|
||||
<span class="">
|
||||
% param 'FilesystemScan' => $clm_datas->{FilesystemScan} unless param 'FilesystemScan';
|
||||
%= select_field 'FilesystemScan' => [[ (l 'clm_DAILY') => 'daily'], [ (l 'clm_NEVER') => 'disabled'], [ (l 'clm_WEEKLY') => 'weekly']], class => ""
|
||||
</span>
|
||||
</p>
|
||||
<p>
|
||||
<span class="">
|
||||
%=l 'clm_LABEL_QUARANTINE'
|
||||
</span><span class="">
|
||||
% param 'Quarantine' => $clm_datas->{Quarantine} unless param 'Quarantine';
|
||||
%= select_field 'Quarantine' => [[ (l 'ENABLED') => 'enabled'], [ (l 'DISABLED') => 'disabled']], class => ""
|
||||
<br>
|
||||
</span>
|
||||
<span class="">
|
||||
%=l 'clm_LABEL_QUARANTINE'
|
||||
</span>
|
||||
<span class="">
|
||||
% param 'Quarantine' => $clm_datas->{Quarantine} unless param 'Quarantine';
|
||||
%= select_field 'Quarantine' => [[ (l 'ENABLED') => 'enabled'], [ (l 'DISABLED') => 'disabled']], class => ""
|
||||
<br>
|
||||
</span>
|
||||
</p>
|
||||
<p>
|
||||
<span class="">
|
||||
%=l 'clm_LABEL_CLAM_VERSIONS'
|
||||
</span><span class="">
|
||||
%= $clm_datas->{clam_versions}
|
||||
<br>
|
||||
</span>
|
||||
<span class="">
|
||||
%=l 'clm_LABEL_CLAM_VERSIONS'
|
||||
</span>
|
||||
<span class="">
|
||||
%= $clm_datas->{clam_versions}
|
||||
<br>
|
||||
</span>
|
||||
</p>
|
||||
%= submit_button "$btn", class => ""
|
||||
% end
|
||||
|
@@ -1,7 +1,9 @@
|
||||
<!-- common_css.html.ep -->
|
||||
|
||||
%= stylesheet 'css/sme-jquery-overrides.css'
|
||||
%= stylesheet 'dist/css/adminlte.min.css'
|
||||
%= stylesheet 'koozali/css/adminlte.koozali.css'
|
||||
%= stylesheet 'koozali/css/flag-icon.min.css'
|
||||
|
||||
%#= stylesheet 'css/sme-jquery-overrides.css'
|
||||
|
||||
%= stylesheet 'dist/css/adminlte.min.css'
|
||||
%= stylesheet 'dist/icons/font/bootstrap-icons.min.css'
|
||||
%#= stylesheet 'dist/css/overlayscrollbars.min.css'
|
@@ -1,6 +1,9 @@
|
||||
<!-- Include files across the whole site -->
|
||||
%= javascript 'js/jquery.min.js'
|
||||
<!-- common_js.html.ep -->
|
||||
%= javascript 'dist/js/jquery.min.js'
|
||||
%= javascript 'dist/js/bootstrap.min.js'
|
||||
%= javascript 'dist/js/popper.min.js'
|
||||
%= javascript 'dist/js/adminlte.min.js'
|
||||
|
||||
%= javascript '/js/flag-by-locale.js'
|
||||
%= javascript '/js/sme-password.js'
|
||||
%= javascript 'koozali/js/flag-by-locale.js'
|
||||
%= javascript 'koozali/js/sme-password.js'
|
||||
|
||||
|
@@ -1,8 +1,9 @@
|
||||
% layout 'AdminLTE', title => "Sme server 2 - err 400";
|
||||
|
||||
% content_for 'module' => begin
|
||||
<div id="" class="">
|
||||
<div class="">
|
||||
|
||||
<div class="card-body">
|
||||
<div class="text-danger">
|
||||
%= l 'CSRF_VALIDATION_FAILURE'
|
||||
</div>
|
||||
|
||||
|
@@ -1,7 +1,8 @@
|
||||
% layout 'AdminLTE', title => "Sme server 2 - datetime";
|
||||
|
||||
% content_for 'module' => begin
|
||||
<div id="" class="">
|
||||
|
||||
<div class="card-body">
|
||||
|
||||
% if (config->{debug} == 1) {
|
||||
<p>
|
||||
@@ -11,7 +12,8 @@
|
||||
% }
|
||||
|
||||
% if ( stash 'error' ) {
|
||||
<br><div class="">
|
||||
<br>
|
||||
<div class="">
|
||||
%= $c->render_to_string(inline => stash 'error')
|
||||
</div>
|
||||
%}
|
||||
@@ -49,7 +51,8 @@
|
||||
<br>
|
||||
<span class="">
|
||||
%=l 'dat_NTP_SERVER'
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
%= text_field 'Ntpserver' => $dat_datas->{ntpserver}, class => ""
|
||||
</span>
|
||||
</p>
|
||||
@@ -78,36 +81,44 @@
|
||||
<br>
|
||||
<span class="">
|
||||
%=l 'dat_NEW_M/D/Y'
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
% param 'Month' => $dat_datas->{month} unless param 'Month';
|
||||
%= select_field 'Month' => $c->getMonth_list(), class => ""
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
% param 'Day' => $dat_datas->{day} unless param 'Day';
|
||||
%= text_field 'Day', size => '2', class => ""
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
% param 'Year' => $dat_datas->{year} unless param 'Year';
|
||||
%= text_field 'Year', size => '4', class => ""
|
||||
</span>
|
||||
<br>
|
||||
<span class="">
|
||||
%=l 'dat_NEW_H/M/S'
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
% param 'Hour' => $dat_datas->{hour} unless param 'Hour';
|
||||
%= text_field 'Hour', size => '2', class => ""
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
% param 'Minute' => $dat_datas->{minute} unless param 'Minute';
|
||||
%= text_field 'Minute', size => '2', class => ""
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
% param 'Second' => $dat_datas->{second} unless param 'Second';
|
||||
%= text_field 'Second', size => '2', class => ""
|
||||
</span>
|
||||
<br>
|
||||
<span class="">
|
||||
%=l 'dat_AM/PM_AND_TZ'
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
% param 'Ampm' => $dat_datas->{ampm} unless param 'Ampm';
|
||||
%= select_field 'Ampm' => ['AM', 'PM'], class => ""
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
% param 'Timezone' => $c->getTimezone() unless param 'Timezone';
|
||||
%= select_field 'Timezone' => $c->getZone_list(), class => ""
|
||||
</span>
|
||||
|
@@ -2,7 +2,8 @@
|
||||
|
||||
% content_for 'module' => begin
|
||||
|
||||
<div id="" class="">
|
||||
<div class="card-body">
|
||||
|
||||
<p><%= $title %></p>
|
||||
<%= $modul %>
|
||||
<p>
|
||||
|
@@ -1,7 +1,8 @@
|
||||
% layout 'AdminLTE', title => "Sme server 2 - directory";
|
||||
|
||||
% content_for 'module' => begin
|
||||
<div>
|
||||
|
||||
<div class="card-body">
|
||||
|
||||
%if (config->{debug} == 1) {
|
||||
<p>
|
||||
|
@@ -1,7 +1,8 @@
|
||||
% layout 'AdminLTE', title => "Sme server 2 - domains";
|
||||
|
||||
% content_for 'module' => begin
|
||||
<div>
|
||||
|
||||
<div class="card-body">
|
||||
|
||||
% if (config->{debug} == 1) {
|
||||
<p>
|
||||
|
@@ -1,7 +1,8 @@
|
||||
% layout 'AdminLTE', title => "Sme server 2 - emailaccess";
|
||||
|
||||
% content_for 'module' => begin
|
||||
<div id="" class="">
|
||||
|
||||
<div class="card-body">
|
||||
|
||||
% if (config->{debug} == 1) {
|
||||
<p>
|
||||
@@ -22,30 +23,39 @@
|
||||
|
||||
%=l 'mai_DESC_POP_ACCESS_CONTROL'
|
||||
|
||||
<p><span class="">
|
||||
<p>
|
||||
<span class="">
|
||||
%=l 'mai_LABEL_POP_ACCESS_CONTROL'
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
% param 'POPAccess' => $c->get_current_pop3_access() unless param 'POPAccess';
|
||||
%= select_field 'POPAccess' => $c->get_pop_opt(), class => ""
|
||||
</span></p>
|
||||
</span>
|
||||
</p>
|
||||
|
||||
%=l 'mai_DESC_IMAP_ACCESS_CONTROL'
|
||||
|
||||
<p><span class="">
|
||||
<p>
|
||||
<span class="">
|
||||
%=l 'mai_LABEL_IMAP_ACCESS_CONTROL'
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
% param 'IMAPAccess' => $c->get_current_imap_access() unless param 'IMAPAccess';
|
||||
%= select_field 'IMAPAccess' => $c->get_imap_opt(), class => ""
|
||||
</span></p>
|
||||
</span>
|
||||
</p>
|
||||
|
||||
%=l 'mai_DESC_WEBMAIL'
|
||||
|
||||
<p><span class="">
|
||||
<p>
|
||||
<span class="">
|
||||
%=l 'mai_LABEL_WEBMAIL'
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
% param 'WebMail' => $c->get_current_webmail_status() unless param 'WebMail';
|
||||
%= select_field 'WebMail' => $c->get_webmail_opt(), class => ""
|
||||
</span></p>
|
||||
</span>
|
||||
</p>
|
||||
|
||||
% my $btn = l('SAVE');
|
||||
%= submit_button "$btn", class => ""
|
||||
|
@@ -1,7 +1,8 @@
|
||||
% layout 'AdminLTE', title => "Sme server 2 - emaildeliver";
|
||||
|
||||
% content_for 'module' => begin
|
||||
<div id="" class="">
|
||||
|
||||
<div class="card-body">
|
||||
|
||||
% if (config->{debug} == 1) {
|
||||
<p>
|
||||
@@ -11,9 +12,10 @@
|
||||
% }
|
||||
|
||||
% if ( stash 'error' ) {
|
||||
<br><div class="">
|
||||
<br>
|
||||
<div class="">
|
||||
%= $c->render_to_string(inline => stash 'error')
|
||||
</div>
|
||||
</div>
|
||||
%}
|
||||
|
||||
<h1><%= $title%></h1>
|
||||
@@ -26,12 +28,15 @@
|
||||
|
||||
%=l 'mai_DESC_UNKNOWN'
|
||||
|
||||
<p><span class="">
|
||||
<p>
|
||||
<span class="">
|
||||
%=l 'mai_LABEL_UNKNOWN'
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
% param 'EmailUnknownUser' => $mai_datas->{emailunknownuser} unless param 'EmailUnknownUser';
|
||||
%= select_field 'EmailUnknownUser' => $c->get_emailunknownuser_opt(), class => ""
|
||||
</span></p>
|
||||
</span>
|
||||
</p>
|
||||
|
||||
<!--<hr class="" />-->
|
||||
<h2>
|
||||
@@ -40,12 +45,15 @@
|
||||
|
||||
%=l 'mai_DESC_DELEGATE'
|
||||
|
||||
<p><span class="">
|
||||
<p>
|
||||
<span class="">
|
||||
%=l 'mai_LABEL_DELEGATE'
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
% param 'DelegateMailServer' => $mai_datas->{delegatemailserver} unless param 'DelegateMailServer';
|
||||
%= text_field 'DelegateMailServer', class => ""
|
||||
</span></p>
|
||||
</span>
|
||||
</p>
|
||||
|
||||
<!--<hr class="" />-->
|
||||
<h2>
|
||||
@@ -54,33 +62,45 @@
|
||||
|
||||
%=l 'mai_DESC_SMARTHOST'
|
||||
|
||||
<p><span class="">
|
||||
<p>
|
||||
<span class="">
|
||||
%=l 'mai_LABEL_SMARTHOST'
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
% param 'SMTPSmartHost' => $mai_datas->{smtpsmarthost} unless param 'SMTPSmartHost';
|
||||
%= text_field 'SMTPSmartHost', class => ""
|
||||
</span></p>
|
||||
</span>
|
||||
</p>
|
||||
|
||||
<p><span class="">
|
||||
<p>
|
||||
<span class="">
|
||||
%=l 'mai_LABEL_SMARTHOST_SMTPAUTH_STATUS'
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
% param 'SMTPAUTHPROXY_status' => $mai_datas->{smtpauthproxystatus} unless param 'SMTPAUTHPROXY_status';
|
||||
%= select_field 'SMTPAUTHPROXY_status' => [[(l 'DISABLED') => 'disabled'], [(l 'ENABLED') => 'enabled']], class => ""
|
||||
</span></p>
|
||||
</span>
|
||||
</p>
|
||||
|
||||
<p><span class="">
|
||||
<p>
|
||||
<span class="">
|
||||
%=l 'mai_LABEL_SMARTHOST_SMTPAUTH_USERID'
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
% param 'SMTPAUTHPROXY_Userid' => $mai_datas->{smtpauthproxyuserid} unless param 'SMTPAUTHPROXY_Userid';
|
||||
%= text_field 'SMTPAUTHPROXY_Userid', class => ""
|
||||
</span></p>
|
||||
</span>
|
||||
</p>
|
||||
|
||||
<p><span class="">
|
||||
<p>
|
||||
<span class="">
|
||||
%=l 'mai_LABEL_SMARTHOST_SMTPAUTH_PASSWD'
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
% param 'SMTPAUTHPROXY_Passwd' => $mai_datas->{smtpauthproxypassword} unless param 'SMTPAUTHPROXY_Passwd';
|
||||
%= password_field 'SMTPAUTHPROXY_Passwd', class => ""
|
||||
</span></p>
|
||||
</span>
|
||||
</p>
|
||||
|
||||
% my $btn = l('SAVE');
|
||||
%= submit_button "$btn", class => ""
|
||||
|
@@ -1,7 +1,8 @@
|
||||
% layout 'AdminLTE', title => "Sme server 2 - emailfilter";
|
||||
|
||||
% content_for 'module' => begin
|
||||
<div id="" class="">
|
||||
|
||||
<div class="card-body"
|
||||
|
||||
% if (config->{debug} == 1) {
|
||||
<p>
|
||||
@@ -11,9 +12,10 @@
|
||||
% }
|
||||
|
||||
% if ( stash 'error' ) {
|
||||
<br><div class="">
|
||||
<br>
|
||||
<div class="">
|
||||
%= $c->render_to_string(inline => stash 'error')
|
||||
</div>
|
||||
</div>
|
||||
%}
|
||||
|
||||
<h1><%= $title%></h1>
|
||||
@@ -22,74 +24,102 @@
|
||||
|
||||
%=l 'mai_DESC_VIRUS_SCAN'
|
||||
|
||||
<p><span class="">
|
||||
<p>
|
||||
<span class="">
|
||||
%=l 'mai_LABEL_VIRUS_SCAN'
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
% param 'VirusStatus' => $mai_datas->{virusstatus} unless param 'VirusStatus';
|
||||
%= select_field 'VirusStatus' => [[(l 'DISABLED') => 'disabled'], [ (l 'ENABLED') => 'enabled']], class => ""
|
||||
</span><br></p>
|
||||
</span>
|
||||
<br>
|
||||
</p>
|
||||
|
||||
%=l 'mai_DESC_SPAM_SCAN'
|
||||
|
||||
<p><span class="">
|
||||
<p>
|
||||
<span class="">
|
||||
%=l 'mai_LABEL_SPAM_SCAN'
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
% param 'Spamstatus' => $mai_datas->{spamstatus} unless param 'Spamstatus';
|
||||
%= select_field 'Spamstatus' => [[(l 'DISABLED') => 'disabled'], [ (l 'ENABLED') => 'enabled']], class => ""
|
||||
</span></p>
|
||||
</span>
|
||||
</p>
|
||||
|
||||
<p><span class="">
|
||||
<p>
|
||||
<span class="">
|
||||
%=l 'mai_LABEL_SPAM_SENSITIVITY'
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
% param 'SpamSensitivity' => $mai_datas->{spamsensitivity} unless param 'SpamSensitivity';
|
||||
%= select_field 'SpamSensitivity' => $c->get_spam_sensitivity_opt(), class => ""
|
||||
</span></p>
|
||||
</span>
|
||||
</p>
|
||||
|
||||
<p><span class="">
|
||||
<p>
|
||||
<span class="">
|
||||
%=l 'mai_LABEL_SPAM_TAGLEVEL'
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
% param 'SpamTagLevel' => $mai_datas->{spamtaglevel} unless param 'SpamTagLevel';
|
||||
%= select_field 'SpamTagLevel' => $c->get_spam_level_options(), class => ""
|
||||
</span></p>
|
||||
</span>
|
||||
</p>
|
||||
|
||||
<p><span class="">
|
||||
<p>
|
||||
<span class="">
|
||||
%=l 'mai_LABEL_SPAM_REJECTLEVEL'
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
% param 'SpamRejectLevel' => $mai_datas->{spamrejectlevel} unless param 'SpamRejectLevel';
|
||||
%= select_field 'SpamRejectLevel' => $c->get_spam_level_options(), class => ""
|
||||
</span></p>
|
||||
</span>
|
||||
</p>
|
||||
|
||||
<p><span class="">
|
||||
<p>
|
||||
<span class="">
|
||||
%=l 'mai_LABEL_SORTSPAM'
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
% param 'SpamSortSpam' => $mai_datas->{spamsortspam} unless param 'SpamSortSpam';
|
||||
%= select_field 'SpamSortSpam' => [[(l 'DISABLED') => 'disabled'], [ (l 'ENABLED') => 'enabled']], class => ""
|
||||
</span></p>
|
||||
</span>
|
||||
</p>
|
||||
|
||||
%=l 'mai_DESC_SPAM_SUBJECT'
|
||||
|
||||
<p><span class="">
|
||||
<p>
|
||||
<span class="">
|
||||
%=l 'mai_LABEL_SPAM_SUBJECTTAG'
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
% param 'SpamSubjectTag' => $mai_datas->{spamsubjecttag} unless param 'SpamSubjectTag';
|
||||
%= select_field 'SpamSubjectTag' => [[(l 'DISABLED') => 'disabled'], [ (l 'ENABLED') => 'enabled']], class => ""
|
||||
</span></p>
|
||||
</span>
|
||||
</p>
|
||||
|
||||
<p><span class="">
|
||||
<p>
|
||||
<span class="">
|
||||
%=l 'mai_LABEL_SPAM_SUBJECT'
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
% param 'SpamSubject' => $mai_datas->{spamsubject} unless param 'SpamSubject';
|
||||
%= text_field 'SpamSubject' => class => ""
|
||||
</span></p>
|
||||
</span>
|
||||
</p>
|
||||
|
||||
%=l 'mai_DESC_BLOCK_EXECUTABLE_CONTENT'
|
||||
|
||||
<p><span class="">
|
||||
<p>
|
||||
<span class="">
|
||||
%=l 'mai_LABEL_CONTENT_TO_BLOCK'
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
% param 'BlockExecutableContent' => $c->get_patterns_current_opt() unless param 'BlockExecutableContent';
|
||||
%= select_field 'BlockExecutableContent' => $c->get_patterns_opt(), class => "", multiple => "1"
|
||||
</span></p>
|
||||
</span>
|
||||
</p>
|
||||
|
||||
% my $btn = l('SAVE');
|
||||
%= submit_button "$btn", class => ""
|
||||
|
@@ -5,7 +5,7 @@
|
||||
% use constant FALSE => 0;
|
||||
% use constant TRUE => 1;
|
||||
|
||||
<div id="" class="">
|
||||
<div class="card-body">
|
||||
|
||||
% if (config->{debug} == 1) {
|
||||
<p>
|
||||
@@ -16,9 +16,10 @@
|
||||
% }
|
||||
|
||||
% if ( stash 'error' ) {
|
||||
<br><div class="">
|
||||
<br>
|
||||
<div class="">
|
||||
%= $c->render_to_string(inline => stash 'error')
|
||||
</div>
|
||||
</div>
|
||||
%}
|
||||
|
||||
<h1><%= $title%></h1>
|
||||
@@ -27,9 +28,11 @@
|
||||
|
||||
%=l 'mai_DESC_MODE'
|
||||
|
||||
<p><span class="">
|
||||
<p>
|
||||
<span class="">
|
||||
%=l 'mai_LABEL_MODE'
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
% param 'FetchmailMethod' => $mai_datas->{fetchmailmethod} unless param 'FetchmailMethod';
|
||||
<!--
|
||||
<pre>
|
||||
@@ -39,7 +42,8 @@
|
||||
</pre>
|
||||
-->
|
||||
%= select_field 'FetchmailMethod' => $c->get_retrieval_opt(), class => ""
|
||||
</span></p>
|
||||
</span>
|
||||
</p>
|
||||
|
||||
%#=l 'mai_DESC_SMTP_AUTH_CONTROL'
|
||||
<br />
|
||||
@@ -51,9 +55,11 @@
|
||||
<br />
|
||||
|
||||
% my $smtp_mesg=l('SMTP port %u allow client to authenticate:');
|
||||
<p><span class="">
|
||||
<p>
|
||||
<span class="">
|
||||
%= sprintf($smtp_mesg,$c->get_db_prop('qpsmtpd','TCPPort',25));
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
% param 'SMTPAuth' => $c->get_current_smtp_auth( FALSE ) unless param 'SMTPAuth';
|
||||
<!--
|
||||
<pre>
|
||||
@@ -64,23 +70,28 @@
|
||||
</pre>
|
||||
-->
|
||||
%= select_field 'SMTPAuth' => $c->get_smtp_auth_opt(), class => ""
|
||||
</span></p>
|
||||
</span>
|
||||
</p>
|
||||
|
||||
% my $smtp_mesg=l('SMTPS SSL/TLS auth: port %u status:');
|
||||
<p><span class="">
|
||||
<p>
|
||||
<span class="">
|
||||
%= sprintf($smtp_mesg,$c->get_db_prop('sqpsmtpd','TCPPort',465));
|
||||
</span><span class="">
|
||||
% param 'sSMTPAuth' => $c->get_current_smtp_ssl_auth(FALSE,'s', TRUE) unless param 'sSMTPAuth';
|
||||
|
||||
</span>
|
||||
<span class="">
|
||||
% param 'sSMTPAuth' => $c->get_current_smtp_ssl_auth(FALSE,'s', TRUE) unless param 'sSMTPAuth';
|
||||
%= select_field 'sSMTPAuth' => $c->get_smtp_ssl_auth_opt(), class => ""
|
||||
</span></p>
|
||||
</span>
|
||||
</p>
|
||||
|
||||
%my $smtp_mesg=l('Submission port %u status:');
|
||||
<p><span class="">
|
||||
<p>
|
||||
<span class="">
|
||||
%= sprintf($smtp_mesg,$c->get_db_prop('uqpsmtpd','TCPPort',587));
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
% param 'uSMTPAuth' => $c->get_current_smtp_ssl_auth(FALSE,'u', TRUE) unless param 'uSMTPAuth';
|
||||
<!--
|
||||
<!--
|
||||
<pre>
|
||||
%= dumper $c->get_smtp_ssl_auth_opt()
|
||||
%= dumper $c->get_current_smtp_ssl_auth(FALSE,'s', TRUE)
|
||||
@@ -88,9 +99,10 @@
|
||||
%= dumper $c->get_db_prop("uqpsmtpd","access")
|
||||
%= param 'uSMTPAuth'
|
||||
</pre>
|
||||
-->
|
||||
-->
|
||||
%= select_field 'uSMTPAuth' => $c->get_smtp_ssl_auth_opt(), class => ""
|
||||
</span></p>
|
||||
</span>
|
||||
</p>
|
||||
|
||||
<!--<hr class="" />-->
|
||||
<h2>
|
||||
@@ -99,63 +111,87 @@
|
||||
|
||||
%=l 'mai_DESC_SECONDARY'
|
||||
|
||||
<p><span class="">
|
||||
<p>
|
||||
<span class="">
|
||||
%=l 'mai_LABEL_SECONDARY'
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
% param 'SecondaryMailServer' => $mai_datas->{secondarymailserver} unless param 'SecondaryMailServer';
|
||||
%= text_field 'SecondaryMailServer', class => ""
|
||||
</span></p>
|
||||
</span>
|
||||
</p>
|
||||
|
||||
%=l 'mai_DESC_FETCH_PERIOD'
|
||||
|
||||
<p><span class="">
|
||||
<p>
|
||||
<span class="">
|
||||
%=l 'mai_LABEL_FETCH_PERIOD'
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
% param 'FreqOffice' => $mai_datas->{freqoffice} unless param 'FreqOffice';
|
||||
%= select_field 'FreqOffice' => $c->fetchmail_freq(), class => ""
|
||||
</span></p>
|
||||
</span>
|
||||
</p>
|
||||
|
||||
<p><span class="">
|
||||
<p>
|
||||
<span class="">
|
||||
%=l 'mai_LABEL_FETCH_PERIOD_NIGHTS'
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
% param 'FreqOutside' => $mai_datas->{freqoutside} unless param 'FreqOutside';
|
||||
%= select_field 'FreqOutside' => $c->fetchmail_freq(), class => ""
|
||||
</span></p>
|
||||
</span>
|
||||
</p>
|
||||
|
||||
<p><span class="">
|
||||
<p>
|
||||
<span class="">
|
||||
%=l 'mai_LABEL_FETCH_PERIOD_WEEKENDS'
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
% param 'FreqWeekend' => $mai_datas->{freqweekend} unless param 'FreqWeekend';
|
||||
%= select_field 'FreqWeekend' => $c->fetchmail_freq(), class => ""
|
||||
</span></p>
|
||||
</span>
|
||||
</p>
|
||||
|
||||
<p><span class="">
|
||||
<p>
|
||||
<span class="">
|
||||
%=l 'mai_LABEL_POP_ACCOUNT'
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
% param 'SecondaryMailAccount' => $mai_datas->{secondarymailaccount} unless param 'SecondaryMailAccount';
|
||||
%= text_field 'SecondaryMailAccount', class => ""
|
||||
</span></p>
|
||||
</span>
|
||||
</p>
|
||||
|
||||
<p><span class="">
|
||||
<p>
|
||||
<span class="">
|
||||
%=l 'mai_LABEL_POP_PASS'
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
% param 'SecondaryMailPassword' => $mai_datas->{secondarymailpassword} unless param 'SecondaryMailPassword';
|
||||
%= password_field 'SecondaryMailPassword', class => ""
|
||||
</span></p>
|
||||
</span>
|
||||
</p>
|
||||
|
||||
<p><span class="">
|
||||
<p>
|
||||
<span class="">
|
||||
%=l 'mai_LABEL_SORT_METHOD'
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
% param 'SpecifyHeader' => $mai_datas->{specifyheader} unless param 'SpecifyHeader';
|
||||
%= select_field 'SpecifyHeader' => [[(l 'mai_DEFAULT') => 'off'], [(l 'mai_SPECIFY_BELOW') => 'on']], class => ""
|
||||
</span></p>
|
||||
</span>
|
||||
</p>
|
||||
|
||||
<p><span class="">
|
||||
<p>
|
||||
<span class="">
|
||||
%=l 'mai_LABEL_SORT_HEADER'
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
% param 'SecondaryMailEnvelope' => $mai_datas->{secondarymailenvelope} unless param 'SecondaryMailEnvelope';
|
||||
%= text_field 'SecondaryMailEnvelope', class => ""
|
||||
</span></p>
|
||||
</span>
|
||||
</p>
|
||||
|
||||
% my $btn = l('SAVE');
|
||||
%= submit_button "$btn", class => ""
|
||||
|
@@ -5,9 +5,9 @@
|
||||
% use constant FALSE => 0;
|
||||
% use constant TRUE => 1;
|
||||
|
||||
<div id="" class="">
|
||||
<div class="card-body">
|
||||
|
||||
% if (config->{debug} == TRUE) {
|
||||
% if (config->{debug} == 1) {
|
||||
<p>
|
||||
%= dumper $c->current_route
|
||||
%= dumper $mai_datas
|
||||
@@ -17,31 +17,40 @@
|
||||
% if ( stash 'error' ) {
|
||||
<br><div class="">
|
||||
%= $c->render_to_string(inline => stash 'error')
|
||||
</div>
|
||||
</div>
|
||||
%}
|
||||
|
||||
<h1><%= $title%></h1>
|
||||
|
||||
%= form_for 'emailsettings' => (method => 'POST') => begin
|
||||
<p><span class="">
|
||||
<p>
|
||||
<span class="">
|
||||
%=l 'mai_LABEL_POP_ACCESS_CONTROL'
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
%= $c->get_current_pop3_access( TRUE )
|
||||
</span></p>
|
||||
</span>
|
||||
</p>
|
||||
|
||||
<p><span class="">
|
||||
<p>
|
||||
<span class="">
|
||||
%=l 'mai_LABEL_IMAP_ACCESS_CONTROL'
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
%= $c->get_current_imap_access( TRUE )
|
||||
</span></p>
|
||||
</span>
|
||||
</p>
|
||||
|
||||
<p><span class="">
|
||||
<p>
|
||||
<span class="">
|
||||
%=l 'mai_LABEL_WEBMAIL'
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
%= $c->get_current_webmail_status( TRUE )
|
||||
</span></p>
|
||||
</span>
|
||||
</p>
|
||||
|
||||
% my $btn = l('mai_DESC_STATE_ACCESS_BUTTON');
|
||||
% my $btn = l('mai_DESC_STATE_ACCESS_BUTTON');
|
||||
<div class="">
|
||||
%= submit_button "$btn", class => ""
|
||||
</div>
|
||||
@@ -53,23 +62,32 @@
|
||||
<!--<hr class="" />-->
|
||||
|
||||
%= form_for 'emailsettings' => (method => 'POST') => begin
|
||||
<p><span class="">
|
||||
<p>
|
||||
<span class="">
|
||||
%=l 'mai_LABEL_VIRUS_SCAN'
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
%= $c->get_virus_status(TRUE)
|
||||
</span></p>
|
||||
</span>
|
||||
</p>
|
||||
|
||||
<p><span class="">
|
||||
<p>
|
||||
<span class="">
|
||||
%=l 'mai_LABEL_SPAM_SCAN'
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
%= $c->get_spam_status(TRUE)
|
||||
</span></p>
|
||||
</span>
|
||||
</p>
|
||||
|
||||
<p><span class="">
|
||||
<p>
|
||||
<span class="">
|
||||
%=l 'mai_LABEL_BLOCK_EXECUTABLE_CONTENT'
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
%= $c->get_patterns_status(TRUE)
|
||||
</span></p>
|
||||
</span>
|
||||
</p>
|
||||
|
||||
% my $btn = l('mai_DESC_STATE_FILTERING_BUTTON');
|
||||
<div class="">
|
||||
@@ -83,34 +101,46 @@
|
||||
<!--<hr class="" />-->
|
||||
|
||||
%= form_for 'emailsettings' => (method => 'POST') => begin
|
||||
<p><span class="">
|
||||
<p>
|
||||
<span class="">
|
||||
%=l 'mai_LABEL_MODE'
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
%= $mai_datas->{fetchmailmethod}
|
||||
</span></p>
|
||||
</span>
|
||||
</p>
|
||||
|
||||
% my $smtp_mesg;
|
||||
|
||||
% $smtp_mesg=l('SMTP port %u allow client to authenticate:');
|
||||
<p><span class="">
|
||||
<p>
|
||||
<span class="">
|
||||
%= sprintf($smtp_mesg,$c->get_db_prop('qpsmtpd','TCPPort',25));
|
||||
</span><span class="">
|
||||
%= $c->get_current_smtp_auth( TRUE )
|
||||
</span></p>
|
||||
</span>
|
||||
<span class="">
|
||||
%= $c->get_current_smtp_auth( TRUE )
|
||||
</span>
|
||||
</p>
|
||||
|
||||
% $smtp_mesg=l('SMTPS SSL/TLS auth: port %u status:');
|
||||
<p><span class="">
|
||||
<p>
|
||||
<span class="">
|
||||
%= sprintf($smtp_mesg,$c->get_db_prop('sqpsmtpd','TCPPort',465));
|
||||
</span><span class="">
|
||||
%= $c->get_current_smtp_ssl_auth( TRUE, 's', FALSE )
|
||||
</span></p>
|
||||
</span>
|
||||
<span class="">
|
||||
%= $c->get_current_smtp_ssl_auth( TRUE, 's', FALSE )
|
||||
</span>
|
||||
</p>
|
||||
|
||||
% $smtp_mesg=l 'Submission port %u status:';
|
||||
<p><span class="">
|
||||
<p>
|
||||
<span class="">
|
||||
%= sprintf($smtp_mesg,$c->get_db_prop('uqpsmtpd','TCPPort',587));
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
%= $c->get_current_smtp_ssl_auth( TRUE,'u', FALSE )
|
||||
</span></p>
|
||||
</span>
|
||||
</p>
|
||||
<br />
|
||||
|
||||
% my $btn = l('mai_DESC_STATE_RECEPTION_BUTTON');
|
||||
@@ -125,27 +155,36 @@
|
||||
<!--<hr class="" />-->
|
||||
|
||||
%= form_for 'emailsettings' => (method => 'POST') => begin
|
||||
<p><span class="">
|
||||
<p>
|
||||
<span class="">
|
||||
%=l 'mai_LABEL_UNKNOWN'
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
%= $c->get_emailunknownuser_status( TRUE )
|
||||
</span></p>
|
||||
</span>
|
||||
</p>
|
||||
|
||||
<p><span class="">
|
||||
<p>
|
||||
<span class="">
|
||||
%=l 'mai_LABEL_DELEGATE'
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
%= $c->get_value('DelegateMailServer')
|
||||
</span></p>
|
||||
</span>
|
||||
</p>
|
||||
|
||||
<p><span class="">
|
||||
<p>
|
||||
<span class="">
|
||||
%=l 'mai_LABEL_SMARTHOST'
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
%= $c->get_value('SMTPSmartHost')
|
||||
</span></p>
|
||||
</span>
|
||||
</p>
|
||||
|
||||
% my $btn = l('mai_DESC_STATE_DELIVERY_BUTTON');
|
||||
% my $btn = l('mai_DESC_STATE_DELIVERY_BUTTON');
|
||||
<div class="">
|
||||
%= submit_button "$btn", class => ""
|
||||
%= submit_button "$btn", class => ""
|
||||
</div>
|
||||
|
||||
%= hidden_field 'trt' => 'DEL'
|
||||
|
@@ -2,18 +2,21 @@
|
||||
|
||||
% content_for 'module' => begin
|
||||
|
||||
<div id="" class="">
|
||||
<div class="card-body">
|
||||
|
||||
% if (config->{debug} == 1) {
|
||||
<p>
|
||||
%= dumper $c->current_route
|
||||
</p>
|
||||
% }
|
||||
% if ( stash 'error' ) {
|
||||
<br><div class="">
|
||||
<br>
|
||||
<div class="">
|
||||
%= $c->render_to_string(inline => stash 'error')
|
||||
</div>
|
||||
%}
|
||||
<h1> Embedded - <%=$title %></h1><br>
|
||||
<h1> Embedded - <%=$title %></h1>
|
||||
<br>
|
||||
<p>If the legacy panel does not appear, then you may not be logged into the original Server manager.<br />You can log in by clicking <a href="/server-manager" target='_blank'>here</a>. Or by clicking on the "Legacy SM" button at the top of the window.</p>
|
||||
% my $height = $c->stash('height') | '600px';
|
||||
% if ($height !~ /px$/) { $height = $height.'px';}
|
||||
|
@@ -2,7 +2,7 @@
|
||||
|
||||
% content_for 'module' => begin
|
||||
|
||||
<div>
|
||||
<div class="card-body">
|
||||
<p>
|
||||
<br>dev<br>
|
||||
Oups !!!
|
||||
|
@@ -1,7 +1,8 @@
|
||||
% layout 'AdminLTE', title => "Sme server 2 - groups";
|
||||
|
||||
% content_for 'module' => begin
|
||||
<div>
|
||||
|
||||
<div class="card-body">
|
||||
|
||||
% if (config->{debug} == 1) {
|
||||
<p>
|
||||
|
@@ -1,7 +1,8 @@
|
||||
% layout 'AdminLTE', title => "Sme server 2 - hostentries";
|
||||
|
||||
% content_for 'module' => begin
|
||||
<div>
|
||||
|
||||
<div class="card-body">
|
||||
|
||||
% if (config->{debug} == 1) {
|
||||
<p>
|
||||
|
@@ -1,7 +1,8 @@
|
||||
% layout 'AdminLTE', title => "Sme server 2 - ibays";
|
||||
|
||||
% content_for 'module' => begin
|
||||
<div>
|
||||
|
||||
<div class="card-body">
|
||||
|
||||
% if (config->{debug} == 1) {
|
||||
<p>
|
||||
|
@@ -8,7 +8,7 @@
|
||||
</p>
|
||||
% }
|
||||
|
||||
<div>
|
||||
<div class="card-body">
|
||||
|
||||
% if ( stash 'error' ) {
|
||||
<br>
|
||||
@@ -18,11 +18,10 @@
|
||||
% }
|
||||
|
||||
<h3><%= $title %> </h3>
|
||||
<!-- <h3>template: initial.html.ep</h3> -->
|
||||
<!-- <H1>Initial AdminLTE</H1> -->
|
||||
<p>
|
||||
<!-- <h3>template: initial.html.ep</h3> -->
|
||||
<!-- <H1>Initial AdminLTE</H1> -->
|
||||
|
||||
%= $modul
|
||||
</p>
|
||||
|
||||
</div>
|
||||
|
||||
|
@@ -1,38 +1,43 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html>
|
||||
<!-- default +jquery -->
|
||||
<!-- https://icons.getbootstrap.com/ -->
|
||||
|
||||
<!-- Nice mojo links -->
|
||||
<!-- https://en.mojolicious.perlzemi.com/blog/20140414139745.html -->
|
||||
<!-- https://en.mojolicious.perlzemi.com/blog/20110616130993.html -->
|
||||
|
||||
<head>
|
||||
<title>
|
||||
<%= $title %>
|
||||
</title>
|
||||
<link rel="made" href="mailto:bugs%40koozali.org">
|
||||
<link rel="icon" type="image/x-icon" href="koozali/assets/img/favicon.ico">
|
||||
<meta name="copyright" content="(head.tmpl)Copyright 2003-2004 Mitel Corporation">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
|
||||
%= content_for 'head_contrib'
|
||||
% if (config 'hasJquery') {
|
||||
%= include 'partials/_js_imports'
|
||||
%= include 'common_js'
|
||||
% }
|
||||
|
||||
%= content_for 'refresh'
|
||||
|
||||
%= include 'common_js'
|
||||
%= include 'common_css'
|
||||
|
||||
<!-- Custom overrides js/css? -->
|
||||
<!-- This needs refining - do contribs add in their own stuff?? -->
|
||||
<!-- This needs refining -->
|
||||
|
||||
% if (config 'hasJquery') {
|
||||
%= include 'partials/_js_imports'
|
||||
|
||||
<!-- Custom overrides? -->
|
||||
|
||||
% if ($c->current_route eq 'nutups') {
|
||||
%= include 'partials/_nutups_overrides'
|
||||
% }
|
||||
|
||||
% }
|
||||
|
||||
% if ($c->current_route eq 'nutups') {
|
||||
%= include 'partials/_nutups_overrides'
|
||||
% }
|
||||
|
||||
</head>
|
||||
|
||||
<body class="sidebar-expand-lg bg-body-tertiary">
|
||||
<body class="sidebar-expand-lg bg-body-tertiary app-loaded">
|
||||
|
||||
|
||||
<!-- This is set from the data at the top of the _partials -->
|
||||
@@ -47,133 +52,155 @@
|
||||
<div class="app-wrapper">
|
||||
|
||||
|
||||
<!-- Should create a new separate header partial -->
|
||||
<!-- Should create a new separate header partial?? -->
|
||||
|
||||
<!--begin::Header-->
|
||||
<nav id="koozali_grad" class="app-header navbar navbar-expand bg-success-subtle" data-bs-theme="light">
|
||||
<!--begin::Container-->
|
||||
<div class="container-fluid">
|
||||
<!--begin::Start Navbar Links-->
|
||||
<!-- Top bar links -->
|
||||
<ul class="navbar-nav">
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" data-lte-toggle="sidebar" href="#" role="button">
|
||||
<i class="bi bi-list"></i>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li class="nav-item d-none d-md-block"><a href="/smanager" class="nav-link">Home</a></li>
|
||||
% if ( not defined $c->session->{username} ) {
|
||||
<li class="nav-item d-none d-md-block"><a href="login" class="nav-link">Login</a></li>
|
||||
% } else {
|
||||
<li class="nav-item d-none d-md-block"><a href="logout" class="nav-link">Logout</a></li>
|
||||
% }
|
||||
<li class="nav-item d-none d-md-block">
|
||||
%= include 'partials/_flag_icon'
|
||||
</li>
|
||||
</ul>
|
||||
<!--end::Start Navbar Links-->
|
||||
<!-- this can do direct to header so always available-->
|
||||
% if ($c->is_logged_in && scalar @{SrvMngr::theme_list( $c )} > 1) {
|
||||
%= include 'partials/_swt_theme'
|
||||
% }
|
||||
|
||||
|
||||
</div>
|
||||
<!--end::Container-->
|
||||
</nav>
|
||||
<nav id="koozali_grad" class="app-header navbar navbar-expand bg-success-subtle" data-bs-theme="light">
|
||||
|
||||
<!--begin::Container-->
|
||||
<div class="container-fluid">
|
||||
<!--begin::Start Navbar Links-->
|
||||
<!-- Top bar links -->
|
||||
<ul class="navbar-nav">
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" data-lte-toggle="sidebar" href="#" role="button">
|
||||
<i class="bi bi-list"></i>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li class="nav-item d-none d-md-block"><a href="/smanager" class="nav-link">Home</a></li>
|
||||
% if ( not defined $c->session->{username} ) {
|
||||
<li class="nav-item d-none d-md-block"><a href="login" class="nav-link">Login</a></li>
|
||||
% } else {
|
||||
<li class="nav-item d-none d-md-block"><a href="logout" class="nav-link">Logout</a></li>
|
||||
% }
|
||||
<li class="nav-item d-none d-md-block">
|
||||
%= include 'partials/_flag_icon'
|
||||
</li>
|
||||
</ul>
|
||||
<!--end::Start Navbar Links-->
|
||||
|
||||
<!-- this can do direct to header so always available-->
|
||||
% if ($c->is_logged_in && scalar @{SrvMngr::theme_list( $c )} > 1) {
|
||||
%= include 'partials/_swt_theme'
|
||||
% }
|
||||
|
||||
</div>
|
||||
<!--end::Container-->
|
||||
</nav>
|
||||
|
||||
<!--end::Header-->
|
||||
|
||||
|
||||
|
||||
<!--begin::Sidebar-->
|
||||
<aside class="app-sidebar bg-success-subtle" data-bs-theme="light">
|
||||
<!--begin::Sidebar Brand-->
|
||||
<div class="sidebar-brand sidebar-dark-primary">
|
||||
<!--begin::Brand Link-->
|
||||
<a href="../index.html" class="brand-link">
|
||||
<!--begin::Brand Image-->
|
||||
<img src="koozali/assets/img/Koozali_EyeIcon.png" alt="Koozali Logo"
|
||||
class="brand-image opacity-75 shadow" />
|
||||
<!--end::Brand Image-->
|
||||
<!--begin::Brand Text-->
|
||||
<span class="brand-text fw-light">Koozali</span>
|
||||
<!--end::Brand Text-->
|
||||
</a>
|
||||
<!--end::Brand Link-->
|
||||
</div>
|
||||
<!--end::Sidebar Brand-->
|
||||
|
||||
<!--begin::Sidebar Wrapper-->
|
||||
<div class="sidebar-wrapper">
|
||||
<nav class="mt-2">
|
||||
<!--begin::Sidebar Menu-->
|
||||
<ul class="nav sidebar-menu flex-column" data-lte-toggle="treeview" role="menu" data-accordion="false">
|
||||
<aside class="app-sidebar bg-success-subtle" data-bs-theme="light">
|
||||
<!--begin::Sidebar Brand-->
|
||||
<div class="sidebar-brand sidebar-dark-primary">
|
||||
<!--begin::Brand Link-->
|
||||
<a href="../index.html" class="brand-link">
|
||||
<!--begin::Brand Image-->
|
||||
<img src="koozali/assets/img/Koozali_EyeIcon.png" alt="Koozali Logo"
|
||||
class="brand-image opacity-75 shadow" />
|
||||
<!--end::Brand Image-->
|
||||
<!--begin::Brand Text-->
|
||||
<span class="brand-text fw-light">Koozali</span>
|
||||
<!--end::Brand Text-->
|
||||
</a>
|
||||
<!--end::Brand Link-->
|
||||
</div>
|
||||
<!--end::Sidebar Brand-->
|
||||
|
||||
<!--begin::Sidebar Wrapper-->
|
||||
<div class="sidebar-wrapper navbar-nav-scroll">
|
||||
<nav class="mt-2">
|
||||
<!--begin::Sidebar Menu-->
|
||||
<ul class="nav sidebar-menu flex-column" data-lte-toggle="treeview" role="menu" data-accordion="false">
|
||||
|
||||
%= include 'partials/_sidebar_support_menu'
|
||||
|
||||
% if ( $c->is_logged_in ) {
|
||||
%= include 'partials/_sidebar_user_menu'
|
||||
% }
|
||||
|
||||
% if ( $c->is_admin ) {
|
||||
%= include 'partials/_sidebar_main_menu'
|
||||
% }
|
||||
|
||||
</ul>
|
||||
<!--end::Sidebar Menu-->
|
||||
</nav>
|
||||
</div>
|
||||
<!--end::Sidebar Wrapper-->
|
||||
</aside>
|
||||
|
||||
%= include 'partials/_sidebar_support_menu'
|
||||
|
||||
% if ( $c->is_logged_in ) {
|
||||
%= include 'partials/_sidebar_user_menu'
|
||||
% }
|
||||
|
||||
% if ( $c->is_admin ) {
|
||||
%= include 'partials/_sidebar_main_menu'
|
||||
% }
|
||||
|
||||
</ul>
|
||||
<!--end::Sidebar Menu-->
|
||||
</nav>
|
||||
</div>
|
||||
<!--end::Sidebar Wrapper-->
|
||||
</aside>
|
||||
<!--end::Sidebar-->
|
||||
|
||||
|
||||
<!--begin::App Main-->
|
||||
<main class="app-main">
|
||||
|
||||
<!-- Can add a header row here? -->
|
||||
<!-- %= include 'partials/_app_content_header' -->
|
||||
<main class="app-main">
|
||||
|
||||
<!-- Can add a header row here? -->
|
||||
<!-- %= include 'partials/_app_content_header' -->
|
||||
|
||||
<!--begin::App Content-->
|
||||
<div class="app-content">
|
||||
<!--begin::Container-->
|
||||
<div class="container-fluid">
|
||||
<!--begin::Rows-->
|
||||
<!-- Add breadcrumb here -->
|
||||
%= include 'partials/_app_content_breadcrumb'
|
||||
|
||||
<!-- We can add extra rows in the main panel here -->
|
||||
|
||||
<!-- %#= include 'partials/_app_content_first_row' -->
|
||||
<!-- %#= include 'partials/_app_content_demo_row' -->
|
||||
|
||||
<!--end::Rows-->
|
||||
|
||||
<!-- <br> -->
|
||||
|
||||
<!-- This is the main page content depening on the calling module -->
|
||||
<!-- nameofpanel.html.ep -->
|
||||
<!-- That will also include it's own _partials -->
|
||||
%#= dumper $c->current_route
|
||||
% if ($c->current_route ne 'login') {
|
||||
%= include 'partials/_panel_card_top'
|
||||
%= include 'partials/_panel_card_header'
|
||||
% }
|
||||
|
||||
%= content 'module'
|
||||
|
||||
<!--begin::App Content-->
|
||||
<div class="app-content">
|
||||
<!--begin::Container-->
|
||||
<div class="container-fluid">
|
||||
<!--begin::Rows-->
|
||||
<!-- Add breadcrumb here -->
|
||||
%= include 'partials/_app_content_breadcrumb'
|
||||
|
||||
<! We can add extra rows in the main panel here -->
|
||||
<!-- %#= include 'partials/_app_content_first_row' -->
|
||||
<!-- %#= include 'partials/_app_content_demo_row' -->
|
||||
|
||||
<!--end::Rows-->
|
||||
<br>
|
||||
|
||||
<!-- This is the main page content depening on the calling module -->
|
||||
%= content 'module'
|
||||
% if ($c->current_route ne 'login') {
|
||||
%= include 'partials/_panel_card_footer'
|
||||
%= include 'partials/_panel_card_bottom'
|
||||
% }
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!--end::App Content-->
|
||||
|
||||
</main>
|
||||
<!--end::App Content-->
|
||||
|
||||
</main>
|
||||
<!--end::App Main-->
|
||||
|
||||
<!-- This is the original footer - move content to new one -->
|
||||
<!-- %= include 'partials/_footer' -->
|
||||
|
||||
<!--begin::Footer-->
|
||||
<footer class="app-footer">
|
||||
<!--begin::To the end-->
|
||||
<div class="float-end d-none d-sm-inline">Anything you want</div>
|
||||
<!--end::To the end-->
|
||||
<!--begin::Copyright-->
|
||||
<strong>
|
||||
Copyright © 2014-2025
|
||||
<a href="https://adminlte.io" class="text-decoration-none">AdminLTE.io</a>.
|
||||
</strong>
|
||||
All rights reserved.
|
||||
<!--end::Copyright-->
|
||||
</footer>
|
||||
<footer class="app-footer">
|
||||
<!--begin::To the end-->
|
||||
<div class="float-end d-none d-sm-inline">Anything you want</div>
|
||||
<!--end::To the end-->
|
||||
<!--begin::Copyright-->
|
||||
<strong>
|
||||
Copyright © 2014-2025
|
||||
<a href="https://adminlte.io" class="text-decoration-none">AdminLTE.io</a>.
|
||||
</strong>
|
||||
All rights reserved.
|
||||
<!--end::Copyright-->
|
||||
</footer>
|
||||
<!--end::Footer-->
|
||||
</div>
|
||||
<!--end::App Wrapper-->
|
||||
|
@@ -6,9 +6,11 @@
|
||||
|
||||
% content_for 'module' => begin
|
||||
|
||||
<!-- needs moving -->
|
||||
|
||||
%= stylesheet '/css/letsencrypt.css'
|
||||
|
||||
<div>
|
||||
<div class="card-body">
|
||||
|
||||
% if (config->{debug} == 1) {
|
||||
<pre>
|
||||
|
@@ -1,7 +1,8 @@
|
||||
% layout 'AdminLTE', title => "Sme server 2 - localnetworks";
|
||||
|
||||
% content_for 'module' => begin
|
||||
<div>
|
||||
|
||||
<div class="card-body">
|
||||
|
||||
% if (config->{debug} == 1) {
|
||||
<p>
|
||||
|
@@ -77,7 +77,7 @@
|
||||
<!-- /.col -->
|
||||
<div class="col-4">
|
||||
<div class="d-grid gap-2">
|
||||
<button type="submit" class="btn btn-primary">Sign In</button>
|
||||
<button type="submit" class="btn btn-primary">Login</button>
|
||||
</div>
|
||||
</div>
|
||||
<!-- /.col -->
|
||||
|
@@ -1,69 +0,0 @@
|
||||
% layout 'AdminLTE' , title => "Sme server 2 - login";
|
||||
|
||||
% content_for 'module' => begin
|
||||
|
||||
<div id="" class="">
|
||||
|
||||
%if ( config 'debug' ) {
|
||||
<p>
|
||||
%= dumper $c->current_route
|
||||
%if ( stash 'trt' ) {
|
||||
%= dumper stash 'trt'
|
||||
%}
|
||||
</p>
|
||||
%}
|
||||
|
||||
% if ( stash 'error' ) {
|
||||
<br><div class="">
|
||||
%= $c->render_to_string(inline => stash 'error')
|
||||
</div>
|
||||
%}
|
||||
|
||||
% my $btn = l('use_SIGNIN');
|
||||
% if ( $trt eq 'RESET' ) {
|
||||
<br><div class=""><h2>
|
||||
%= $c->render_to_string(inline => l 'use_DESC_RESET')
|
||||
</h2></div>
|
||||
% $btn = l('use_RESET');
|
||||
%}
|
||||
|
||||
<h1>
|
||||
%=l 'use_TITLE'
|
||||
</h1>
|
||||
|
||||
%= form_for '/login' => (method => 'POST') => begin
|
||||
|
||||
<p><span class="">
|
||||
%=l 'USER_NAME'
|
||||
</span><span class="">
|
||||
%= text_field 'Username'
|
||||
</span></p>
|
||||
|
||||
% if ( $trt ne 'RESET' ) {
|
||||
<p><span class="">
|
||||
%=l 'PASSWORD'
|
||||
</span><span class="">
|
||||
%= password_field 'Password', id => "", autocomplete => 'current-password', class=>""
|
||||
% if (config 'hasJquery') {
|
||||
%#<a href='#' id="" class=""> <img src="images/visible.png" height="16" alt="Visible"></a>
|
||||
% }
|
||||
</span></p>
|
||||
%}
|
||||
|
||||
%= hidden_field 'From' => $c->tx->req->url
|
||||
%= hidden_field 'Trt' => $trt
|
||||
|
||||
<br>
|
||||
<div class="">
|
||||
%= submit_button "$btn", class => ""
|
||||
</div>
|
||||
%if ( config 'pwdreset' ) {
|
||||
<div class=""><a href='login2'>
|
||||
%=l 'use_FORGOT'
|
||||
</a></div>
|
||||
%}
|
||||
|
||||
% end
|
||||
|
||||
</div>
|
||||
%end
|
@@ -1,8 +1,11 @@
|
||||
% layout 'AdminLTE', title => 'Sme server 2 - Manual';
|
||||
|
||||
% content_for 'module' => begin
|
||||
<div id="" class="">
|
||||
<p><h1><%= $title %></h1></p>
|
||||
|
||||
<div class="card-body">
|
||||
<p>
|
||||
<h1><%= $title %></h1>
|
||||
</p>
|
||||
%= $c->render_to_string( inline => stash 'modul' )
|
||||
</div>
|
||||
|
||||
|
@@ -2,9 +2,11 @@
|
||||
|
||||
% content_for 'module' => begin
|
||||
|
||||
<!-- should be moved? -->
|
||||
|
||||
%= stylesheet '/css/module.css'
|
||||
|
||||
<div id="" class="">
|
||||
<div class="card-body">
|
||||
% if (config->{debug} == 1) {
|
||||
<p>
|
||||
<strong>Debug Info:</strong>
|
||||
|
@@ -2,8 +2,9 @@
|
||||
|
||||
% content_for 'module' => begin
|
||||
|
||||
<div id="" class="">
|
||||
<p><br>dev<br> Oups !!!
|
||||
<div class="card-body">
|
||||
<p>
|
||||
<br>dev<br> Oups !!!
|
||||
The page you were requesting
|
||||
"<%= $self->req->url->path || '/' %>"
|
||||
could not be found.
|
||||
|
@@ -1,6 +1,7 @@
|
||||
% layout 'AdminLTE', title => 'Sme server 2 - Error P';
|
||||
<div id="" class="">
|
||||
<p><br><br>
|
||||
<div class="card-body">
|
||||
<p>
|
||||
<br><br>
|
||||
The page you were requesting
|
||||
"<%= $self->req->url->path || '/' %>"
|
||||
could not be found.
|
||||
|
@@ -2,7 +2,7 @@
|
||||
|
||||
% content_for 'module' => begin
|
||||
|
||||
<div id="" class="">
|
||||
<div class="card-body">
|
||||
<p><br>dev<br> Oups !!!
|
||||
The page you were requesting
|
||||
"<%= $self->req->url->path || '/' %>"
|
||||
|
@@ -6,7 +6,7 @@
|
||||
|
||||
% content_for 'module' => begin
|
||||
|
||||
<div>
|
||||
<div class="card-body">
|
||||
|
||||
% if (config->{debug} == 1) {
|
||||
<pre>
|
||||
|
@@ -8,7 +8,10 @@
|
||||
<div class="col-sm-6">
|
||||
<ol class="breadcrumb float-sm-start">
|
||||
<li class="breadcrumb-item"><a href="initial">Home</a></li>
|
||||
<li class="breadcrumb-item active" aria-current="page"><%= $c->current_route %></li>
|
||||
<li class="breadcrumb-item active" aria-current="page">
|
||||
<a href="<%= $c->stash('controller') %>"> <%= $c->stash('controller') %>
|
||||
</a>
|
||||
</li>
|
||||
</ol>
|
||||
</div>
|
||||
</div>
|
||||
|
@@ -1,5 +1,5 @@
|
||||
|
||||
<div id="flag-container" class = "flag-style">
|
||||
<div id="flag-container" class="flag-style">
|
||||
<!-- class=flag-style" -->
|
||||
<!-- The flag icon will be inserted here -->
|
||||
</div>
|
||||
|
@@ -1,14 +1,12 @@
|
||||
<div id="" class="">
|
||||
<div>
|
||||
<!--<HR class="">-->
|
||||
<a href="https://mojolicious.org" target="_blank"><img src="images/sme-mojo-logo-white.png" style="position:relative;"></a>
|
||||
<font class="">
|
||||
% if ( $c->is_logged_in && $c->is_admin) {
|
||||
SME Server <%= session 'releaseVersion' %>-<%= $c->app->VERSION %> Manager II
|
||||
% my $mode;
|
||||
% if (config->{mode} eq 'development'){ $mode = '-dev';} else { $mode = '';}
|
||||
(Mojo:<%= Mojolicious->VERSION %><%= $mode %>)
|
||||
% }
|
||||
<br>Copyright 1999-2006 Mitel Corporation<br>
|
||||
%= session 'copyRight'
|
||||
<br>Copyright (c) 2013-2024 Koozali Foundation Inc.<br>
|
||||
</font>
|
||||
% if ( $c->is_logged_in && $c->is_admin) {
|
||||
SME Server <%= session 'releaseVersion' %>-<%= $c->app->VERSION %> Manager II
|
||||
% my $mode;
|
||||
% if (config->{mode} eq 'development'){ $mode = '-dev';} else { $mode = '';}
|
||||
(Mojo:<%= Mojolicious->VERSION %><%= $mode %>)
|
||||
% }
|
||||
<br>Copyright 1999-2006 Mitel Corporation<br>
|
||||
%= session 'copyRight'
|
||||
<br>Copyright (c) 2013-2024 Koozali Foundation Inc.<br>
|
@@ -4,32 +4,34 @@
|
||||
|
||||
%= form_for '/groups' => (method => 'POST') => begin
|
||||
|
||||
%= hidden_field 'trt' => 'ADD'
|
||||
%= hidden_field 'trt' => 'ADD'
|
||||
|
||||
<p> <br>
|
||||
%= submit_button "$btn", class => ""
|
||||
</p>
|
||||
<br>
|
||||
|
||||
<div>
|
||||
<button type="submit" class="btn btn-primary"><%= $btn %> </button>
|
||||
</div>
|
||||
|
||||
% end
|
||||
|
||||
|
||||
<p> <h2>
|
||||
%=l 'grp_CURRENT_LIST'
|
||||
</h2><br><br>
|
||||
<br>
|
||||
<h2><%=l 'grp_CURRENT_LIST' %></h2>
|
||||
<br><br>
|
||||
% my $numGroups = @$groups;
|
||||
% if ($numGroups == 0){
|
||||
%=l 'ACCOUNT_GROUP_NONE'
|
||||
% } else {
|
||||
<table class="table table-bordered">
|
||||
<table class="table table-bordered user-table-max-wdith">
|
||||
<thead>
|
||||
<tr>
|
||||
<th class="">
|
||||
%=l 'GROUP'
|
||||
<th class="col-sm">
|
||||
%=l 'GROUP'
|
||||
</th>
|
||||
<th class="">
|
||||
%=l 'DESCRIPTION'
|
||||
<th class="col-sm">
|
||||
%=l 'DESCRIPTION'
|
||||
</th>
|
||||
<th class="">
|
||||
%=l 'ACTION'
|
||||
<th class="user-valign-center col-sm" colspan="2">
|
||||
%=l 'ACTION'
|
||||
</th>
|
||||
</tr>
|
||||
</thead>
|
||||
@@ -38,37 +40,38 @@
|
||||
% foreach my $group ( @$groups )
|
||||
% {
|
||||
<tr>
|
||||
%= t td => (class => "") => $group->key
|
||||
%= t td => (class => "") => $group->prop('Description')
|
||||
<td class="" style="min-width:15em">
|
||||
<td><%= $group->key %></td>
|
||||
<td><%= $group->prop('Description') %></td>
|
||||
|
||||
%my $modify_text = l('MODIFY'); # Localized text
|
||||
%my $csrf_token = "TOKEN"; # CSRF token for security
|
||||
%my $group_name = $group->key; # group name extracted from the data structure
|
||||
%my $actionModify = qq{
|
||||
% <a href="groups2?CsrfDef=$csrf_token&trt=UPD&group=$group_name">
|
||||
% <button type='button' class="" title='$modify_text' >
|
||||
% $modify_text
|
||||
% </button>
|
||||
% </a>
|
||||
%<a href="groups2?CsrfDef=$csrf_token&trt=UPD&group=$group_name">
|
||||
% <button type='button' class="btn btn-primary" title='$modify_text' >
|
||||
% $modify_text
|
||||
% </button>
|
||||
%</a>
|
||||
%};
|
||||
%my $remove_text = l('REMOVE'); # Localized text
|
||||
%my $csrf_token = "TOKEN"; # CSRF token for security
|
||||
%my $group_name = $group->key; # group name extracted from the data structure
|
||||
%my $actionRemove = qq{
|
||||
% <a href="groups2?CsrfDef=$csrf_token&trt=DEL&group=$group_name">
|
||||
% <button type='button' class="" title='$remove_text' >
|
||||
%<a href="groups2?CsrfDef=$csrf_token&trt=DEL&group=$group_name">
|
||||
% <button type='button' class="btn btn-primary" title='$remove_text' >
|
||||
% $remove_text
|
||||
% </button>
|
||||
% </a>
|
||||
%</a>
|
||||
%};
|
||||
<%= $c->render_to_string(inline => $actionModify) %> <%= $c->render_to_string(inline => $actionRemove) %>
|
||||
</td>
|
||||
|
||||
<td class="user-valign-center"><%= $c->render_to_string(inline => $actionModify) %></td>
|
||||
<td class="user-valign-center"><%= $c->render_to_string(inline => $actionRemove) %></td>
|
||||
</tr>
|
||||
% }
|
||||
</tbody>
|
||||
</table>
|
||||
<%} %>
|
||||
</p>
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
@@ -18,7 +18,7 @@
|
||||
%=l 'PASSWORD_NEW', class => ""
|
||||
</span>
|
||||
<span class="">
|
||||
%= password_field 'newPass', class => "" , class="">'sme-password'
|
||||
%= password_field 'newPass', class => "" , class=> 'sme-password'
|
||||
</span>
|
||||
</p>
|
||||
|
||||
@@ -27,7 +27,7 @@
|
||||
%=l 'PASSWORD_VERIFY_NEW', class => ""
|
||||
</span>
|
||||
<span class="">
|
||||
%= password_field 'newPassVerify', class => "", class="">'sme-password'
|
||||
%= password_field 'newPassVerify', class => "", class=> 'sme-password'
|
||||
</span>
|
||||
</p>
|
||||
|
||||
@@ -41,4 +41,4 @@
|
||||
|
||||
% end
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
@@ -25,19 +25,19 @@
|
||||
<a href='letsencryptd?trt=PARAMS' class="">
|
||||
%= l('lets_CONFIG')
|
||||
</a>
|
||||
%#= link_to l('lets_CONFIG'), 'letsencryptd?trt=PARAMS' , class="">'link link2'
|
||||
%#= link_to l('lets_CONFIG'), 'letsencryptd?trt=PARAMS' , class=> 'link link2'
|
||||
|
||||
|
||||
<a href='letsencryptd?trt=CHECKALLDOMAINS' class="">
|
||||
%= l('lets_CHECK_ALL_DOMAINS')
|
||||
</a>
|
||||
%#= link_to l('lets_CHECK_ALL_DOMAINS'), 'letsencryptd?trt=CHECKALLDOMAINS' , class="">'link link3'
|
||||
%#= link_to l('lets_CHECK_ALL_DOMAINS'), 'letsencryptd?trt=CHECKALLDOMAINS' , class=> 'link link3'
|
||||
|
||||
|
||||
<a href='letsencryptd?trt=CHECKALLENABLEDDOMAINS' class="">
|
||||
%= l('lets_CHECK_ALL_ENABLED_DOMAINS')
|
||||
</a>
|
||||
%#= link_to l('lets_CHECK_ALL_ENABLED_DOMAINS'), 'letsencryptd?trt=CHECKALLENABLEDDOMAINS' , class="">'link link4'
|
||||
%#= link_to l('lets_CHECK_ALL_ENABLED_DOMAINS'), 'letsencryptd?trt=CHECKALLENABLEDDOMAINS' , class=> 'link link4'
|
||||
|
||||
|
||||
</div>
|
||||
@@ -105,7 +105,8 @@
|
||||
<p>
|
||||
<span class="">
|
||||
%=l('lets_Not_Before')
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
% param 'NotBefore' => $lets_data->{NotBefore} unless param 'NotBefore';
|
||||
%= text_field 'NotBefore', size => '50', class => "" , pattern=>'.*' , placeholder=>'NotBefore', Readonly=>'true'
|
||||
<br>
|
||||
@@ -148,4 +149,4 @@
|
||||
|
||||
%# Probably finally by a submit.
|
||||
%end
|
||||
</div>
|
||||
</div>
|
||||
|
@@ -29,7 +29,8 @@
|
||||
<p>
|
||||
<span class="">
|
||||
%=l('lets_SERVICE_STATUS')
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
%# my @status_options = [['Disabled' => 'disabled'], ['Enabled' => 'enabled'], ['TEST' => 'test']];
|
||||
% my @status_options = selected_field([['Disabled' => 'disabled'], ['Enabled' => 'enabled'], ['TEST' => 'test']], $lets_data->{status});
|
||||
%# param 'status' => $lets_data->{status} unless param 'status';
|
||||
@@ -77,7 +78,8 @@
|
||||
<p>
|
||||
<span class="">
|
||||
%=l('lets_API_STATUS')
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
% my @API_options = [['2' => '2']];
|
||||
% param 'API' => $lets_data->{API} unless param 'API';
|
||||
%= select_field 'API' => @API_options, class => ""
|
||||
|
@@ -26,7 +26,7 @@
|
||||
<a href='nutupsd?trt=CONFIG' class="">
|
||||
%= l('nut_Configure_NutUPS')
|
||||
</a>
|
||||
%#= link_to l('nut_Configure_NutUPS'), 'nutupsd?trt=CONFIG' , class="">'link link1'
|
||||
%#= link_to l('nut_Configure_NutUPS'), 'nutupsd?trt=CONFIG' , class=> 'link link1'
|
||||
|
||||
|
||||
</div>
|
||||
@@ -53,4 +53,4 @@
|
||||
|
||||
%# Probably finally by a submit.
|
||||
%end
|
||||
</div>
|
||||
</div>
|
||||
|
@@ -1,4 +1,4 @@
|
||||
|
||||
<!-- card footer -->
|
||||
<div class="card-footer">Footer</div>
|
||||
<div class="card-footer">Card Footer</div>
|
||||
<!-- /.card-footer-->
|
@@ -1,7 +1,7 @@
|
||||
|
||||
<div class="card-header">
|
||||
<h3 class="card-title">Card Title <%= $title%></h3>
|
||||
<h3 class="card-title">Card Title - <%= $title%></h3>
|
||||
|
||||
%= include 'partials/_panel_card_tools'
|
||||
%= include 'partials/_panel_card_tools'
|
||||
|
||||
</div>
|
@@ -1,5 +1,7 @@
|
||||
|
||||
<!--
|
||||
<div class="card-tools">
|
||||
|
||||
<button type="button" class="btn btn-tool" data-lte-toggle="card-collapse"
|
||||
title="Collapse">
|
||||
<i data-lte-icon="expand" class="bi bi-plus-lg"></i>
|
||||
@@ -9,4 +11,5 @@
|
||||
title="Remove">
|
||||
<i class="bi bi-x-lg"></i>
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
-->
|
||||
|
@@ -0,0 +1,121 @@
|
||||
<div>
|
||||
<table class="table table-bordered">
|
||||
<thead>
|
||||
<tr>
|
||||
<th><%= l 'rvw_NETWORKING_PARAMS' %></th>
|
||||
<th> </th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td><%= l 'rvw_SERVER_MODE' %></td>
|
||||
<td><%= $rvw_datas->{servermode} %></td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td><%= l 'rvw_LOCAL_IP_ADDRESS_SUBNET_MASK' %></td>
|
||||
<td><%= $rvw_datas->{localip} %></td>
|
||||
</tr>
|
||||
|
||||
% if ( $rvw_datas->{publicip} ) {
|
||||
<tr>
|
||||
<td><%=l 'rvw_INTERNET_VISIBLE_ADDRESS' %></td>
|
||||
<td><%= $rvw_datas->{publicip} %></td>
|
||||
</tr>
|
||||
% }
|
||||
|
||||
<tr>
|
||||
<td><%= l 'rvw_GATEWAY'%></td>
|
||||
<td>
|
||||
<%= $rvw_datas->{gateway} %>
|
||||
<%= $rvw_datas->{serveronly} %>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td>Local Networks (not translated?)</td>
|
||||
<td><%= $c->render_to_string( inline => $rvw_datas->{addlocalnetworks} );%> </td>
|
||||
<tr>
|
||||
|
||||
<tr>
|
||||
<td><%= l 'rvw_DHCP_SERVER' %></td>
|
||||
<td><%= $rvw_datas->{dhcpserver} %></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<table class="table table-bordered">
|
||||
<thead>
|
||||
<tr>
|
||||
<th><%= l 'rvw_SERVER_NAMES' %></th>
|
||||
<th> </th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td><%= l 'rvw_DNS_SERVER' %></td>
|
||||
<td><%= $rvw_datas->{dnsserver} %></td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td><%= l 'rvw_WEB_SERVER' %></td>
|
||||
<td><%= $rvw_datas->{webserver} %></tr>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td><%= l 'rvw_PROXY_SERVER' %></td>
|
||||
<td><%= $rvw_datas->{proxyserver} %></tr>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td><%= l 'rvw_FTP_SERVER' %></td>
|
||||
<td><%= $rvw_datas->{ftpserver} %></tr>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td><%= l 'rvw_SMTP_POP_AND_IMAP_MAIL_SERVERS' %></td>
|
||||
<td><%= $rvw_datas->{smtpserver} %></tr>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<table class="table table-bordered">
|
||||
<thead>
|
||||
<tr>
|
||||
<th><%= l 'rvw_DOMAIN_INFORMATION' %></th>
|
||||
<th> </th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td><%= l 'rvw_PRIMARY_DOMAIN' %></td>
|
||||
<td><%= $rvw_datas->{domainname} %></td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td><%= l 'rvw_VIRTUAL_DOMAINS' %></td>
|
||||
<td><%= $rvw_datas->{virtualdomains} %></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><%= l 'rvw_PRIMARY_WEB_SITE' %></td>
|
||||
<td><%= $rvw_datas->{primarywebsite} %></td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td><%= l 'rvw_SERVER_MANAGER' %></td>
|
||||
<td><%= $rvw_datas->{servermanager} %></td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td><%= l 'rvw_USER_PASSWORD_PANEL' %></td>
|
||||
<td><%= $rvw_datas->{usermanager} %></td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td><%= l 'rvw_EMAIL_ADDRESSES' %></td>
|
||||
<td><%= $rvw_datas->{emailaddresses} %></td>
|
||||
</tr>
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
@@ -25,11 +25,11 @@
|
||||
% foreach (sort { $a->{'WEIGHT'} <=> $b->{'WEIGHT'} } @{$nav{$h}{'DESCRIPTIONS'}}) {
|
||||
% next if ($_->{'MENUCAT'} ne 'U' ); # menu User
|
||||
% if ( $_->{'FILENAME'} =~ m/^2\// ) {
|
||||
% $target = '_self';
|
||||
% $target = '_self';
|
||||
% (my $file2 = $_->{'FILENAME'}) =~ s|^2/||;
|
||||
% $href = '/smanager/' . $file2;
|
||||
% } else {
|
||||
% $target = 'main';
|
||||
% $target = 'main';
|
||||
% $href = '/server-manager' . $_->{'FILENAME'};
|
||||
% }
|
||||
|
||||
|
@@ -1,40 +1,34 @@
|
||||
|
||||
<!-- Both Theme drop downs but only the first works curently -->
|
||||
|
||||
<div id="">
|
||||
% my $btn = l('swt_THEME');
|
||||
%= form_for $c->url_for('swttheme') => (method => 'POST') => begin
|
||||
% my $value = $c->session->{'CurrentTheme'};
|
||||
% $value = session 'CurrentTheme';
|
||||
<div>
|
||||
%# content_for 'module' => begin
|
||||
|
||||
% param 'Theme' => $value unless param 'Theme';
|
||||
%= select_field 'Theme' => $c->theme_list(), class => ""
|
||||
%= hidden_field 'From' => $c->tx->req->url
|
||||
%= submit_button "$btn"
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
%# my $value = $c->session->{'CurrentTheme'};
|
||||
% my $value = $c->session->{'CurrentTheme'};
|
||||
% $value = session 'CurrentTheme';
|
||||
% my $formUrl = $c->url_for('swttheme');
|
||||
% param 'Theme' => $value unless param 'Theme';
|
||||
% my @themes = $c->theme_list();
|
||||
|
||||
%# my @themes = $c->theme_list();
|
||||
|
||||
%#= dumper $c
|
||||
|
||||
%#= my $size = keys ($c->theme_list)
|
||||
|
||||
% my @themeList = $c->theme_list();
|
||||
%# = dumper @themeList
|
||||
% my @themes = $themeList[0];
|
||||
|
||||
|
||||
% param 'Theme' => $value unless param 'Theme';
|
||||
|
||||
<form action="<%= $formUrl %>" method="POST" >
|
||||
<div class="row g-3 align-items-center">
|
||||
<div class="col-auto">
|
||||
<label class="visually-hidden" for="inlineFormSelectPref">Preference</label>
|
||||
<select class="form-select" id="inlineFormSelectPref">
|
||||
<option selected><%= $value %></option>
|
||||
% foreach my $theme (@themes) {
|
||||
<option value="<%= $theme %>"><%= $theme %></option>
|
||||
% };
|
||||
</select>
|
||||
|
||||
%= select_field 'Theme' => $c->theme_list(), class => "form-select"
|
||||
|
||||
%= hidden_field 'From' => $c->tx->req->url
|
||||
</div>
|
||||
|
||||
@@ -45,4 +39,7 @@
|
||||
</form>
|
||||
|
||||
|
||||
% end
|
||||
%# end
|
||||
</div>
|
||||
|
||||
|
||||
|
@@ -1,23 +1,47 @@
|
||||
<div id="">
|
||||
<div>
|
||||
|
||||
% my $btn = l('REMOVE');
|
||||
% my $btn = l('REMOVE');
|
||||
|
||||
%= form_for '/useraccountsd' => (method => 'POST') => begin
|
||||
<p>
|
||||
<h2>
|
||||
%=l 'usr_REMOVE_ACCOUNT_TITLE'
|
||||
</h2>
|
||||
|
||||
<div>
|
||||
<h2><%= l 'usr_REMOVE_ACCOUNT_TITLE' %></h2>
|
||||
</div>
|
||||
<br>
|
||||
<div>
|
||||
Needs a text change in the Lex files
|
||||
<br>
|
||||
%= $c->l('usr_REMOVE_DESC', $usr_datas->{user}, $usr_datas->{name} );
|
||||
</div>
|
||||
|
||||
<br><br>
|
||||
|
||||
<table class="table table-bordered user-table-max-wdith">
|
||||
<thead>
|
||||
<tr>
|
||||
<th class="col-sm">
|
||||
%=l 'ACCOUNT'
|
||||
</th>
|
||||
<th class="col-sm">
|
||||
%=l 'USER_NAME'
|
||||
</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td><%= $usr_datas->{user} %></td>
|
||||
<td><%= $usr_datas->{name} %></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<br>
|
||||
%= $c->render_to_string(inline => $c->l('usr_REMOVE_DESC2'))
|
||||
</p>
|
||||
|
||||
<p>
|
||||
<br>
|
||||
%= submit_button "$btn", class => ""
|
||||
</p>
|
||||
<div class="row g-3 align-items-center">
|
||||
<div class="col-md-2">
|
||||
<button type="submit" class="btn btn-primary"><%= $btn %></button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
%= hidden_field 'trt' => $usr_datas->{trt}
|
||||
%= hidden_field 'user' => $usr_datas->{user}
|
||||
|
@@ -5,150 +5,157 @@
|
||||
|
||||
%= form_for '/useraccounts' => (method => 'POST') => begin
|
||||
|
||||
<p>
|
||||
<br>
|
||||
%= submit_button "$btn", class => ""
|
||||
</p>
|
||||
<br>
|
||||
|
||||
<div>
|
||||
<button type="submit" class="btn btn-primary"><%= $btn %> </button>
|
||||
</div>
|
||||
|
||||
% end
|
||||
|
||||
<p>
|
||||
<br>
|
||||
%= $c->render_to_string(inline => $c->l('usr_FIRSTPAGE_DESC'))
|
||||
<br>
|
||||
</p>
|
||||
|
||||
|
||||
%#= dumper @$users
|
||||
|
||||
% my $numUsers = @$users;
|
||||
% if ($numUsers == 0){
|
||||
%=l 'usr_NO_USER_ACCOUNTS'
|
||||
% } else {
|
||||
<table class="table table-bordered">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>
|
||||
%=l 'ACCOUNT'
|
||||
</th>
|
||||
<th>
|
||||
%=l 'USER_NAME'
|
||||
</th>
|
||||
<th>
|
||||
%=l 'usr_VPN_CLIENT_ACCESS'
|
||||
</th>
|
||||
<th>
|
||||
%=l 'usr_FORWARDING_ADDRESS'
|
||||
</th>
|
||||
<th>
|
||||
%=l 'ACTION'
|
||||
</th>
|
||||
</tr>
|
||||
</thead><tbody>
|
||||
|
||||
% foreach my $user (@$users) {
|
||||
|
||||
% my $username = $user->key();
|
||||
% my $first = $user->prop('FirstName');
|
||||
% my $last = $user->prop('LastName');
|
||||
% my $lockable = $user->prop('Lockable') || 'yes';
|
||||
% my $removable = $user->prop('Removable') || 'yes';
|
||||
% my $fwd = (($user->prop('EmailForward') || 'local') =~ m/^forward|both$/) ?
|
||||
% $user->prop('ForwardAddress') : '';
|
||||
% my $vpnaccess = $user->prop('VPNClientAccess') || 'no';
|
||||
% $vpnaccess = $vpnaccess eq 'yes' ? $c->l('YES') : $c->l('NO');
|
||||
% my $password_set = $user->prop('PasswordSet');
|
||||
|
||||
<tr>
|
||||
%= t td => (class => "") => $username
|
||||
%= t td => (class => "") => "$first $last"
|
||||
%= t td => (class => "") => $vpnaccess
|
||||
%= t td => (class => "") => $fwd
|
||||
% my ($actionModify, $actionLock, $actionResetPw, $actionRemove,$actionroundcube) = ' ';
|
||||
% my $modify_text = l('MODIFY'); # Localized text
|
||||
% my $csrf_token = "TOKEN"; # CSRF token for security
|
||||
% my $useraccounts_user_name = $user->key; # useraccountss_entry name extracted from the data structure
|
||||
% my $password_text = l("PASSWORD_RESET");
|
||||
%if ($useraccounts_user_name eq 'admin') {
|
||||
%$actionModify = qq{
|
||||
%<a href="useraccountsd?CsrfDef=$csrf_token&trt=UPS&user=$useraccounts_user_name">
|
||||
% <button type='button' class="" title='$modify_text'>
|
||||
% $modify_text
|
||||
% </button>
|
||||
%</a>
|
||||
%};
|
||||
%$actionResetPw = qq{
|
||||
%<a href="useraccountsd?CsrfDef=$csrf_token&trt=PWS&user=$useraccounts_user_name">
|
||||
% <button type='button' class="" title='$password_text' >
|
||||
% $password_text
|
||||
% </button>
|
||||
%</a>
|
||||
%};
|
||||
%} else {
|
||||
%$actionModify = qq{
|
||||
%<a href="useraccountsd?CsrfDef=$csrf_token&trt=UPD&user=$useraccounts_user_name">
|
||||
% <button type='button' class="" title='$modify_text' >
|
||||
% $modify_text
|
||||
% </button>
|
||||
%</a>
|
||||
%};
|
||||
%}
|
||||
%if ($password_set ne 'yes') {
|
||||
%$actionLock = l('ACCOUNT_LOCKED');
|
||||
%$actionResetPw = qq{
|
||||
%<a href="useraccountsd?CsrfDef=$csrf_token&trt=PWD&user=$useraccounts_user_name">
|
||||
% <button type='button' class="" title="$password_text - currently unset" style = background:pink; >
|
||||
% $password_text
|
||||
% </button>
|
||||
%</a>
|
||||
%};
|
||||
%} elsif ($useraccounts_user_name ne 'admin') {
|
||||
% my $lock_text = l('ACCOUNT LOCKED'); # Localized text
|
||||
% my $csrf_token = "TOKEN"; # CSRF token for security
|
||||
% my $useraccounts_user_name = $user->key; # useraccountss_entry name extracted from the data structure
|
||||
%$actionLock = qq{
|
||||
%<a href="useraccountsd?CsrfDef=$csrf_token&trt=LCK&user=$useraccounts_user_name">
|
||||
% <button type='button' class="" title='$lock_text' >
|
||||
% $lock_text
|
||||
% </button>
|
||||
%</a>
|
||||
%};
|
||||
%$actionResetPw = qq{
|
||||
%<a href="useraccountsd?CsrfDef=$csrf_token&trt=PWD&user=$useraccounts_user_name">
|
||||
% <button type='button' class="" title='$password_text' >
|
||||
% $password_text
|
||||
% </button>
|
||||
%</a>
|
||||
%};
|
||||
%}
|
||||
%if ( $removable eq 'yes' ) {
|
||||
% my $remove_text = l('REMOVE'); # Localized text
|
||||
% my $csrf_token = "TOKEN"; # CSRF token for security
|
||||
%$actionRemove = qq{
|
||||
%<a href="useraccountsd?CsrfDef=$csrf_token&trt=DEL&user=$useraccounts_user_name">
|
||||
% <button type='button' class="" title='$remove_text' >
|
||||
% $remove_text
|
||||
% </button>
|
||||
%</a>
|
||||
%};
|
||||
%}
|
||||
|
||||
% my $thisdomain = $c->req->url->to_abs->host;
|
||||
% my $roundcube_text = l('Webmail'); # Localized text
|
||||
% $csrf_token = "TOKEN"; # CSRF token for security
|
||||
% $useraccounts_user_name = $user->key; # useraccountss_entry name extracted from the data structure
|
||||
% $actionroundcube = qq{
|
||||
%<a href="roundcubepanel?CsrfDef=$csrf_token&url=https://$thisdomain/roundcube?_user=$useraccounts_user_name&height=600px">
|
||||
% <button type='button' class="" title='$roundcube_text' >
|
||||
% $roundcube_text
|
||||
% </button>
|
||||
%</a>
|
||||
%};
|
||||
<td class="">
|
||||
<%= $c->render_to_string(inline => $actionModify) %>
|
||||
<%= $c->render_to_string(inline => $actionResetPw) %>
|
||||
<%= $c->render_to_string(inline => $actionLock) %>
|
||||
<%= $c->render_to_string(inline => $actionRemove) %>
|
||||
<%= $c->render_to_string(inline => $actionroundcube) %>
|
||||
</td>
|
||||
<th>
|
||||
%=l 'ACCOUNT'
|
||||
</th>
|
||||
<th>
|
||||
%=l 'USER_NAME'
|
||||
</th>
|
||||
<th>
|
||||
%=l 'usr_VPN_CLIENT_ACCESS'
|
||||
</th>
|
||||
<th>
|
||||
%=l 'usr_FORWARDING_ADDRESS'
|
||||
</th>
|
||||
<th class="user-valign-center" colspan="5">
|
||||
%=l 'ACTION'
|
||||
</th>
|
||||
</tr>
|
||||
% }
|
||||
</thead>
|
||||
<tbody>
|
||||
|
||||
% foreach my $user (@$users) {
|
||||
|
||||
% my $username = $user->key();
|
||||
% my $first = $user->prop('FirstName');
|
||||
% my $last = $user->prop('LastName');
|
||||
% my $lockable = $user->prop('Lockable') || 'yes';
|
||||
% my $removable = $user->prop('Removable') || 'yes';
|
||||
% my $fwd = (($user->prop('EmailForward') || 'local') =~ m/^forward|both$/) ?
|
||||
% $user->prop('ForwardAddress') : '';
|
||||
% my $vpnaccess = $user->prop('VPNClientAccess') || 'no';
|
||||
% $vpnaccess = $vpnaccess eq 'yes' ? $c->l('YES') : $c->l('NO');
|
||||
% my $password_set = $user->prop('PasswordSet');
|
||||
|
||||
<tr>
|
||||
<td><%= $username %></td>
|
||||
<td><%=$first %> <%=$last %></td>
|
||||
<td><%= $vpnaccess %></td>
|
||||
<td><%= $fwd %></td>
|
||||
|
||||
% my ($actionModify, $actionLock, $actionResetPw, $actionRemove,$actionroundcube) = ' ';
|
||||
% my $modify_text = l('MODIFY'); # Localized text
|
||||
% my $csrf_token = "TOKEN"; # CSRF token for security
|
||||
% my $useraccounts_user_name = $user->key; # useraccountss_entry name extracted from the data structure
|
||||
% my $password_text = l("PASSWORD_RESET");
|
||||
|
||||
% if ($useraccounts_user_name eq 'admin') {
|
||||
%$actionModify = qq{
|
||||
%<a href="useraccountsd?CsrfDef=$csrf_token&trt=UPS&user=$useraccounts_user_name">
|
||||
% <button type='button' class="btn btn-primary" title='$modify_text'>
|
||||
% $modify_text
|
||||
% </button>
|
||||
%</a>
|
||||
%};
|
||||
%$actionResetPw = qq{
|
||||
%<a href="useraccountsd?CsrfDef=$csrf_token&trt=PWS&user=$useraccounts_user_name">
|
||||
% <button type='button' class="btn btn-primary" title='$password_text' >
|
||||
% $password_text
|
||||
% </button>
|
||||
%</a>
|
||||
%};
|
||||
% } else {
|
||||
%$actionModify = qq{
|
||||
%<a href="useraccountsd?CsrfDef=$csrf_token&trt=UPD&user=$useraccounts_user_name">
|
||||
% <button type='button' class="btn btn-primary" title='$modify_text' >
|
||||
% $modify_text
|
||||
% </button>
|
||||
%</a>
|
||||
%};
|
||||
% }
|
||||
|
||||
|
||||
% if ($password_set ne 'yes') {
|
||||
%$actionLock = l('ACCOUNT_LOCKED');
|
||||
%$actionResetPw = qq{
|
||||
%<a href="useraccountsd?CsrfDef=$csrf_token&trt=PWD&user=$useraccounts_user_name">
|
||||
% <button type='button' class="btn btn-primary" title="$password_text - currently unset" style = background:pink; >
|
||||
% $password_text
|
||||
% </button>
|
||||
%</a>
|
||||
%};
|
||||
% } elsif ($useraccounts_user_name ne 'admin') {
|
||||
% my $lock_text = l('usr_LOCK'); # Localized text
|
||||
% my $csrf_token = "TOKEN"; # CSRF token for security
|
||||
% my $useraccounts_user_name = $user->key; # useraccountss_entry name extracted from the data structure
|
||||
%$actionLock = qq{
|
||||
%<a href="useraccountsd?CsrfDef=$csrf_token&trt=LCK&user=$useraccounts_user_name">
|
||||
% <button type='button' class="btn btn-primary" title='$lock_text' >
|
||||
% $lock_text
|
||||
% </button>
|
||||
%</a>
|
||||
%};
|
||||
%$actionResetPw = qq{
|
||||
%<a href="useraccountsd?CsrfDef=$csrf_token&trt=PWD&user=$useraccounts_user_name">
|
||||
% <button type='button' class="btn btn-primary" title='$password_text' >
|
||||
% $password_text
|
||||
% </button>
|
||||
%</a>
|
||||
%};
|
||||
% }
|
||||
|
||||
% if ( $removable eq 'yes' ) {
|
||||
% my $remove_text = l('REMOVE'); # Localized text
|
||||
% my $csrf_token = "TOKEN"; # CSRF token for security
|
||||
%$actionRemove = qq{
|
||||
%<a href="useraccountsd?CsrfDef=$csrf_token&trt=DEL&user=$useraccounts_user_name">
|
||||
% <button type='button' class="btn btn-primary" title='$remove_text' >
|
||||
% $remove_text
|
||||
% </button>
|
||||
%</a>
|
||||
%};
|
||||
% }
|
||||
|
||||
% my $thisdomain = $c->req->url->to_abs->host;
|
||||
% my $roundcube_text = l('Webmail'); # Localized text
|
||||
% $csrf_token = "TOKEN"; # CSRF token for security
|
||||
% $useraccounts_user_name = $user->key; # useraccountss_entry name extracted from the data structure
|
||||
% $actionroundcube = qq{
|
||||
%<a href="roundcubepanel?CsrfDef=$csrf_token&url=https://$thisdomain/roundcube?_user=$useraccounts_user_name&height=600px">
|
||||
% <button type='button' class="btn btn-primary" title='$roundcube_text' >
|
||||
% $roundcube_text
|
||||
% </button>
|
||||
%</a>
|
||||
%};
|
||||
<td class="user-valign-center"><%= $c->render_to_string(inline => $actionModify) %></td>
|
||||
<td class="user-valign-center"><%= $c->render_to_string(inline => $actionResetPw) %></td>
|
||||
<td class="user-valign-center"><%= $c->render_to_string(inline => $actionLock) %></td>
|
||||
<td class="user-valign-center"><%= $c->render_to_string(inline => $actionRemove) %></td>
|
||||
<td class="user-valign-center"><%= $c->render_to_string(inline => $actionroundcube) %></td>
|
||||
</tr>
|
||||
% }
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
@@ -157,3 +164,4 @@
|
||||
%= hidden_field 'trt' => $usr_datas->{trt}
|
||||
|
||||
</div>
|
||||
|
||||
|
@@ -3,21 +3,46 @@
|
||||
% my $btn = l('usr_LOCK');
|
||||
|
||||
%= form_for '/useraccountsd' => (method => 'POST') => begin
|
||||
<p>
|
||||
<h2>
|
||||
%=l 'usr_LOCK_ACCOUNT_TITLE'
|
||||
</h2>
|
||||
|
||||
<div>
|
||||
<h2><%= l 'usr_LOCK_ACCOUNT_TITLE' %></h2>
|
||||
</div>
|
||||
<br>
|
||||
%= $c->l('usr_LOCK_DESC', $usr_datas->{user}, $usr_datas->{name} );
|
||||
<div>
|
||||
Needs a text change in the Lex files
|
||||
<br>
|
||||
<%= $c->l('usr_LOCK_DESC', $usr_datas->{user}, $usr_datas->{name} ) %>
|
||||
</div>
|
||||
|
||||
<br><br>
|
||||
|
||||
<table class="table table-bordered user-table-max-wdith">
|
||||
<thead>
|
||||
<tr>
|
||||
<th class="col-sm">
|
||||
%=l 'ACCOUNT'
|
||||
</th>
|
||||
<th class="col-sm">
|
||||
%=l 'USER_NAME'
|
||||
</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td><%= $usr_datas->{user} %></td>
|
||||
<td><%= $usr_datas->{name} %></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<br>
|
||||
%= $c->render_to_string(inline => $c->l('usr_LOCK_DESC2'))
|
||||
</p>
|
||||
|
||||
<p>
|
||||
<br>
|
||||
%= submit_button "$btn", class => ""
|
||||
</p>
|
||||
<div class="row g-3 align-items-center">
|
||||
<div class="col-md-2">
|
||||
<button type="submit" class="btn btn-primary"><%= $btn %></button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
%= hidden_field 'trt' => $usr_datas->{trt}
|
||||
%= hidden_field 'user' => $usr_datas->{user}
|
||||
|
@@ -1,40 +1,81 @@
|
||||
<div>
|
||||
|
||||
% my $btn = l('SAVE');
|
||||
% my $btn = l('SAVE');
|
||||
|
||||
%= form_for '/useraccountsd' => (method => 'POST') => begin
|
||||
<p>
|
||||
<h2>
|
||||
%=l 'RESET_PASSWORD_TITLE'
|
||||
</h2>
|
||||
|
||||
<div>
|
||||
<h2><%= l 'RESET_PASSWORD_TITLE' %></h2>
|
||||
</div>
|
||||
|
||||
<br>
|
||||
|
||||
<div>
|
||||
%= $c->l('usr_RESET_DESC', $usr_datas->{user}, $usr_datas->{name} );
|
||||
</div>
|
||||
|
||||
<br>
|
||||
|
||||
<table class="table table-bordered user-table-max-wdith">
|
||||
<thead>
|
||||
<tr>
|
||||
<th class="col-sm">
|
||||
%=l 'ACCOUNT'
|
||||
</th>
|
||||
<th class="col-sm">
|
||||
%=l 'USER_NAME'
|
||||
</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td><%= $usr_datas->{user} %></td>
|
||||
<td><%= $usr_datas->{name} %></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<br>
|
||||
%= $c->l('usr_RESET_DESC', $usr_datas->{user}, $usr_datas->{name} );
|
||||
|
||||
<div>
|
||||
<%= l 'usr_RESET_DESC2' %>
|
||||
</div>
|
||||
|
||||
<br>
|
||||
%= l 'usr_RESET_DESC2'
|
||||
</p>
|
||||
|
||||
<div>
|
||||
<%= l 'PASSWORD_NEW' %>
|
||||
</div>
|
||||
|
||||
<br>
|
||||
|
||||
<div class="row g-3 align-items-center">
|
||||
<div class="col-md-2">
|
||||
<input name="newPass" id="newPass" type="password" class="form-control sme-password" placeholder="Password">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<p>
|
||||
<span class="">
|
||||
%=l 'PASSWORD_NEW', class => ""
|
||||
</span><span class="">
|
||||
%= password_field 'newPass', class => "", class="">'sme-password'
|
||||
</span>
|
||||
</p>
|
||||
<br>
|
||||
|
||||
<div>
|
||||
<%= l 'PASSWORD_VERIFY_NEW' %>
|
||||
</div>
|
||||
|
||||
<p>
|
||||
<span class="">
|
||||
%=l 'PASSWORD_VERIFY_NEW', class => ""
|
||||
</span>
|
||||
<span class="">
|
||||
%= password_field 'newPassVerify', class => "", class="">'sme-password'
|
||||
</span>
|
||||
</p>
|
||||
<br>
|
||||
|
||||
<p>
|
||||
<br><br>
|
||||
%= submit_button "$btn", class => ""
|
||||
</p>
|
||||
<div class="row g-3 align-items-center">
|
||||
<div class="col-md-2">
|
||||
<input name="newPassVerify" id="newPassVerify" type="password" class="form-control sme-password" placeholder="Password">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<br>
|
||||
|
||||
<div class="row g-3 align-items-center">
|
||||
<div class="col-md-2">
|
||||
<button type="submit" class="btn btn-primary"><%= $btn %></button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
%= hidden_field 'trt' => $usr_datas->{trt}
|
||||
%= hidden_field 'user' => $usr_datas->{user}
|
||||
@@ -42,4 +83,4 @@
|
||||
|
||||
% end
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
@@ -3,41 +3,70 @@
|
||||
% my $btn = l('SAVE');
|
||||
|
||||
%= form_for '/useraccountsd' => (method => 'POST') => begin
|
||||
<p>
|
||||
%= l 'usr_SYSTEM_PASSWORD_DESCRIPTION'
|
||||
</p>
|
||||
|
||||
<p>
|
||||
<span class="">
|
||||
%=l 'usr_CURRENT_SYSTEM_PASSWORD', class => ""
|
||||
</span>
|
||||
<span class="">
|
||||
%= password_field 'CurPass', class => "", class="">'sme-password'
|
||||
</span>
|
||||
</p>
|
||||
<div>
|
||||
<h2><%= l 'PASSWORD_RESET' %></h2>
|
||||
</div>
|
||||
|
||||
<br>
|
||||
|
||||
<p>
|
||||
<span class="">
|
||||
%=l 'usr_NEW_SYSTEM_PASSWORD', class => ""
|
||||
</span>
|
||||
<span class="">
|
||||
%= password_field 'Pass', class => "", class="">'sme-password'
|
||||
</span>
|
||||
</p>
|
||||
<div>
|
||||
<%= l 'usr_SYSTEM_PASSWORD_DESCRIPTION' %>
|
||||
</div>
|
||||
|
||||
<p>
|
||||
<span class="">
|
||||
%=l 'usr_NEW_SYSTEM_PASSWORD_VERIFY', class => ""
|
||||
</span>
|
||||
<span class="">
|
||||
%= password_field 'PassVerify', class => "", class="">'sme-password'
|
||||
</span>
|
||||
</p>
|
||||
<br>
|
||||
|
||||
<p>
|
||||
<br><br>
|
||||
%= submit_button "$btn", class => ""
|
||||
</p>
|
||||
<div>
|
||||
<%=l 'usr_CURRENT_SYSTEM_PASSWORD' %>
|
||||
</div>
|
||||
|
||||
<br>
|
||||
|
||||
<div class="row g-3 align-items-center">
|
||||
<div class="col-md-2">
|
||||
<input name="CurPass" id="Pass" type="password" class="form-control sme-password" placeholder="Current Password">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<br>
|
||||
|
||||
<div>
|
||||
<%= l 'usr_NEW_SYSTEM_PASSWORD' %>
|
||||
</div>
|
||||
|
||||
<br>
|
||||
|
||||
<div class="row g-3 align-items-center">
|
||||
<div class="col-md-2">
|
||||
<input name="Pass" id="Pass" type="password" class="form-control sme-password" placeholder="New Password">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<br>
|
||||
|
||||
|
||||
<div>
|
||||
<%= l 'usr_NEW_SYSTEM_PASSWORD_VERIFY' %>
|
||||
</div>
|
||||
|
||||
<br>
|
||||
|
||||
<div class="row g-3 align-items-center">
|
||||
<div class="col-md-2">
|
||||
<input name="PassVerify" id="PassVerify" type="password" class="form-control sme-password" placeholder="New Password verify">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<br>
|
||||
|
||||
<br>
|
||||
|
||||
<div class="row g-3 align-items-center">
|
||||
<div class="col-md-2">
|
||||
<button type="submit" class="btn btn-primary"><%= $btn %></button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
%= hidden_field 'trt' => $usr_datas->{trt}
|
||||
%= hidden_field 'user' => $usr_datas->{user}
|
||||
|
@@ -1,195 +1,303 @@
|
||||
<div>
|
||||
% content_for 'module' => begin
|
||||
|
||||
% my $btn = l('ADD');
|
||||
|
||||
%= form_for '/useraccountsd' => (method => 'POST') => begin
|
||||
<p>
|
||||
<h2>
|
||||
%=l 'usr_P2_TITLE'
|
||||
</h2>
|
||||
<div class="container-sm">
|
||||
<br>
|
||||
%= $c->render_to_string(inline => l ('usr_CREATE_MODIFY_DESC'))
|
||||
</p>
|
||||
|
||||
<p>
|
||||
<span class="">
|
||||
%=l 'usr_ACCOUNT_NAME'
|
||||
</span>
|
||||
<span class="">
|
||||
% if ( $usr_datas->{trt} eq 'ADD' ) {
|
||||
% param 'user' => $usr_datas->{user} unless param 'user';
|
||||
%= text_field 'user', class => ""
|
||||
% } else {
|
||||
% $btn = l('SAVE');
|
||||
%= $usr_datas->{user}, class => ""
|
||||
% }
|
||||
</span>
|
||||
</p>
|
||||
|
||||
<p>
|
||||
<span class="">
|
||||
%=l 'usr_FIRSTNAME'
|
||||
</span><span class="">
|
||||
% param 'FirstName' => $usr_datas->{firstname} unless param 'FirstName';
|
||||
%= text_field 'FirstName', class => ""
|
||||
</span>
|
||||
</p>
|
||||
<p>
|
||||
<span class="">
|
||||
%=l 'usr_LASTNAME'
|
||||
</span>
|
||||
<span class="">
|
||||
% param 'LastName' => $usr_datas->{lastname} unless param 'LastName';
|
||||
%= text_field 'LastName', class => ""
|
||||
</span>
|
||||
</p>
|
||||
|
||||
<p>
|
||||
<span class="">
|
||||
%=l 'usr_DEPARTMENT'
|
||||
</span><span class="">
|
||||
% param 'Dept' => $usr_datas->{dept} unless param 'Dept';
|
||||
%= text_field 'Dept', class => ""
|
||||
</span>
|
||||
</p>
|
||||
<p>
|
||||
<span class="">
|
||||
%=l 'usr_COMPANY'
|
||||
</span>
|
||||
<span class="">
|
||||
% param 'Company' => $usr_datas->{company} unless param 'Company';
|
||||
%= text_field 'Company', class => ""
|
||||
</span>
|
||||
</p>
|
||||
<p>
|
||||
<span class="">
|
||||
%=l 'usr_STREET_ADDRESS'
|
||||
</span><span class="">
|
||||
% param 'Street' => $usr_datas->{street} unless param 'Street';
|
||||
%= text_field 'Street', class => ""
|
||||
</span>
|
||||
</p>
|
||||
<p>
|
||||
<span class="">
|
||||
%=l 'usr_CITY'
|
||||
</span>
|
||||
<span class="">
|
||||
% param 'City' => $usr_datas->{city} unless param 'City';
|
||||
%= text_field 'City', class => ""
|
||||
</span>
|
||||
</p>
|
||||
<p>
|
||||
<span class="">
|
||||
%=l 'usr_PHONE_NUMBER'
|
||||
</span>
|
||||
<span class="">
|
||||
% param 'Phone' => $usr_datas->{phone} unless param 'Phone';
|
||||
%= text_field 'Phone', class => ""
|
||||
</span>
|
||||
</p>
|
||||
<p>
|
||||
<span class="">
|
||||
%=l 'usr_EMAIL_DELIVERY'
|
||||
</span>
|
||||
<span class="">
|
||||
% param 'EmailForward' => $usr_datas->{emailforward} unless param 'EmailForward';
|
||||
%= select_field 'EmailForward' => $c->emailForward_list(), class => ""
|
||||
</span>
|
||||
</p>
|
||||
<p>
|
||||
<span class="">
|
||||
%=l 'usr_FORWARDING_ADDRESS'
|
||||
</span>
|
||||
<span class="">
|
||||
% param 'ForwardAddress' => $usr_datas->{forwardaddress} unless param 'ForwardAddress';
|
||||
%= text_field 'ForwardAddress', class => ""
|
||||
</span>
|
||||
</p>
|
||||
|
||||
<p>
|
||||
<span class="">
|
||||
%=l 'usr_VPN_CLIENT_ACCESS'
|
||||
</span>
|
||||
<span class="">
|
||||
% param 'VPNClientAccess' => $usr_datas->{vpnclientaccess} unless param 'VPNClientAccess';
|
||||
%= select_field 'VPNClientAccess' => [[ (l 'NO') => 'no'], [ (l 'YES') => 'yes']], class => ""
|
||||
</span>
|
||||
</p>
|
||||
|
||||
% if ( $usr_datas->{trt} eq 'UPD' and $c->ipsec_for_acct eq 'OK' ) {
|
||||
% my $btn2 = $c->l('DOWNLOAD');
|
||||
%= form_for '/useraccountso' => (method => 'POST') => begin
|
||||
<p>
|
||||
<span class="">
|
||||
%=l 'usr_LABEL_IPSECRW_DOWNLOAD'
|
||||
</span>
|
||||
<span class="">
|
||||
%= submit_button $btn2, class => ""
|
||||
</span>
|
||||
</p>
|
||||
%= hidden_field 'trt' => 'CRT'
|
||||
%= hidden_field 'user' => $usr_datas->{user}
|
||||
%end
|
||||
% }
|
||||
|
||||
% my @groups = @{$c->get_groups()};
|
||||
% if ( @groups ) {
|
||||
<p>
|
||||
<span class="">
|
||||
%=l 'usr_GROUP_MEMBERSHIPS'
|
||||
</span>
|
||||
<span class="">
|
||||
<table class="tabel table-bordered">
|
||||
<thead>
|
||||
<tr><th class="">
|
||||
%=l 'usr_MEMBER'
|
||||
</th><th class="">
|
||||
%=l 'GROUP'
|
||||
</th><th class="">
|
||||
%=l 'DESCRIPTION'
|
||||
</th>
|
||||
</tr>
|
||||
</thead><tbody>
|
||||
|
||||
% foreach my $g ( @groups) {
|
||||
% my $user = $usr_datas->{user};
|
||||
% my $groupname = $g->key();
|
||||
% my $description = $g->prop('Description');
|
||||
% my $checked = '';
|
||||
% if ( $user and $c->is_user_in_group($user, $groupname) ) {
|
||||
% $checked = 'checked';
|
||||
% }
|
||||
<tr>
|
||||
|
||||
<td>
|
||||
% if ( $checked eq 'checked' ) {
|
||||
<!-- % = check_box 'groupMemberships', value => $groupname, checked => $checked -->
|
||||
<input type='checkbox' name='groupMemberships' checked value='<%= $groupname %>'>
|
||||
%} else {
|
||||
%= check_box 'groupMemberships' => $groupname
|
||||
%}
|
||||
</td>
|
||||
<!-- t td => (class => "") => (check_box ' groupMemberships' => $groupname $checked) -->
|
||||
%= t td => (class => "") => $groupname
|
||||
%= t td => (class => "") => "$description"
|
||||
</tr>
|
||||
% }
|
||||
</tbody>
|
||||
</table>
|
||||
</span>
|
||||
</p>
|
||||
% }
|
||||
|
||||
<p>
|
||||
<h2><%= l 'usr_P2_TITLE' %></h2>
|
||||
<br>
|
||||
<%= $c->render_to_string(inline => l ('usr_CREATE_MODIFY_DESC')) %>
|
||||
<br><br>
|
||||
%= submit_button $btn, class => ""
|
||||
</p>
|
||||
|
||||
%= hidden_field 'trt' => $usr_datas->{trt}
|
||||
% if ( $usr_datas->{trt} eq 'UPD' ) {
|
||||
%= hidden_field 'user' => $usr_datas->{user}
|
||||
% }
|
||||
|
||||
% end
|
||||
% my $btn = l('ADD');
|
||||
|
||||
<form action="/smanager/useraccountsd" method="POST">
|
||||
%#= form_for '/useraccountsd' => (method => 'POST') => begin
|
||||
|
||||
% if ( $usr_datas->{trt} eq 'ADD' ) {
|
||||
|
||||
% param 'user' => $usr_datas->{user} unless param 'user';
|
||||
|
||||
<div class="row g-3 align-items-center">
|
||||
<div class="col-md-2">
|
||||
<label for="inputLastNAme" class="col-form-label"><%= l 'usr_ACCOUNT_NAME' %></label>
|
||||
</div>
|
||||
<div class="col-auto">
|
||||
<input type="text" id="inputUser" class="form-control" aria-describedby="LastName" value="<%= $usr_datas->{user} %>" >
|
||||
</div>
|
||||
<div class="col-auto">
|
||||
<span id="passwordHelpInline" class="form-text">
|
||||
User
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
%#= text_field 'user'
|
||||
|
||||
% } else {
|
||||
<!-- If not user set Button Save not Add -->
|
||||
% $btn = l('SAVE');
|
||||
|
||||
<div class="row g-3 align-items-center">
|
||||
<div class="col-md-2">
|
||||
<label for="inputLastNAme" class="col-form-label"><%= l 'usr_ACCOUNT_NAME' %></label>
|
||||
</div>
|
||||
<div class="col-auto">
|
||||
<input disabled type="text" id="disabledTextInput" class="form-control" placeholder="<%= $usr_datas->{user} %>">
|
||||
</div>
|
||||
|
||||
</div>
|
||||
% }
|
||||
|
||||
<br>
|
||||
|
||||
<div class="row g-3 align-items-center">
|
||||
<div class="col-md-2">
|
||||
<label for="inputFirstName" class="col-form-label"><%= l 'usr_FIRSTNAME' %></label>
|
||||
</div>
|
||||
<div class="col-auto">
|
||||
<input type="text" name="FirstName" id="inputFirstName" class="form-control" aria-describedby="FirstName" value="<%= $usr_datas->{firstname} %>" >
|
||||
</div>
|
||||
<div class="col-auto">
|
||||
<span id="passwordHelpInline" class="form-text">
|
||||
First Name
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
<br>
|
||||
|
||||
% param 'LastName' => $usr_datas->{lastname} unless param 'LastName';
|
||||
|
||||
<div class="row g-3 align-items-center">
|
||||
<div class="col-md-2">
|
||||
<label for="inputLastNAme" class="col-form-label"><%= l 'usr_LASTNAME' %></label>
|
||||
</div>
|
||||
<div class="col-auto">
|
||||
<input type="text" name="LastName" id="inputLastName" class="form-control" aria-describedby="LastName" value="<%= $usr_datas->{lastname} %>" >
|
||||
</div>
|
||||
<div class="col-auto">
|
||||
<span id="passwordHelpInline" class="form-text">
|
||||
Last Name
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
<br>
|
||||
|
||||
|
||||
% param 'Dept' => $usr_datas->{dept} unless param 'Dept';
|
||||
|
||||
<div class="row g-3 align-items-center">
|
||||
<div class="col-md-2">
|
||||
<label for="inputDepartment" class="col-form-label"><%= l 'usr_DEPARTMENT' %></label>
|
||||
</div>
|
||||
<div class="col-auto">
|
||||
<input type="text" name="Dept" id="inputEmail" class="form-control" aria-describedby="Dept" value="<%= $usr_datas->{dept} %>" >
|
||||
</div>
|
||||
<div class="col-auto">
|
||||
<span id="passwordHelpInline" class="form-text">
|
||||
Department
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
<br>
|
||||
|
||||
|
||||
% param 'Company' => $usr_datas->{company} unless param 'Company';
|
||||
|
||||
<div class="row g-3 align-items-center">
|
||||
<div class="col-md-2">
|
||||
<label for="inputCompany" class="col-form-label"><%= l 'usr_COMPANY' %></label>
|
||||
</div>
|
||||
<div class="col-auto">
|
||||
<input type="text" name="Company" id="inputCompany" class="form-control" aria-describedby="Company" value="<%= $usr_datas->{company} %>" >
|
||||
</div>
|
||||
<div class="col-auto">
|
||||
<span id="passwordHelpInline" class="form-text">
|
||||
Company
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
<br>
|
||||
|
||||
|
||||
% param 'Street' => $usr_datas->{street} unless param 'Street';
|
||||
|
||||
<div class="row g-3 align-items-center">
|
||||
<div class="col-md-2">
|
||||
<label for="inputStreet" class="col-form-label"><%= l 'usr_STREET_ADDRESS' %></label>
|
||||
</div>
|
||||
<div class="col-auto">
|
||||
<input type="text" name="Street" id="inputCompany" class="form-control" aria-describedby="Street" value="<%= $usr_datas->{street} %>" >
|
||||
</div>
|
||||
<div class="col-auto">
|
||||
<span id="passwordHelpInline" class="form-text">
|
||||
Street
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
<br>
|
||||
|
||||
% param 'City' => $usr_datas->{city} unless param 'City';
|
||||
|
||||
<div class="row g-3 align-items-center">
|
||||
<div class="col-md-2">
|
||||
<label for="inputCity" class="col-form-label"><%= l 'usr_CITY' %></label>
|
||||
</div>
|
||||
<div class="col-auto">
|
||||
<input type="text" name="City" id="inputCity" class="form-control" aria-describedby="City" value="<%= $usr_datas->{city} %>" >
|
||||
</div>
|
||||
<div class="col-auto">
|
||||
<span id="passwordHelpInline" class="form-text">
|
||||
City
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
<br>
|
||||
|
||||
|
||||
|
||||
% param 'Phone' => $usr_datas->{phone} unless param 'Phone';
|
||||
|
||||
<div class="row g-3 align-items-center">
|
||||
<div class="col-md-2">
|
||||
<label for="inputPhone" class="col-form-label"><%= l 'usr_PHONE_NUMBER' %></label>
|
||||
</div>
|
||||
<div class="col-auto">
|
||||
<input type="text" name="Phone" id="inputPhone" class="form-control" aria-describedby="City" value="<%= $usr_datas->{phone} %>" >
|
||||
</div>
|
||||
<div class="col-auto">
|
||||
<span id="passwordHelpInline" class="form-text">
|
||||
Phone
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
<br>
|
||||
|
||||
|
||||
% param 'EmailForward' => $usr_datas->{emailforward} unless param 'EmailForward';
|
||||
|
||||
<div class="row g-3 align-items-center">
|
||||
<div class="col-md-2">
|
||||
<label for="inputEmailDelivery" class="col-form-label"><%= l 'usr_EMAIL_DELIVERY' %></label>
|
||||
</div>
|
||||
<div class="col-auto">
|
||||
%= select_field 'EmailForward' => $c->emailForward_list(), class => "form-select"
|
||||
</div>
|
||||
</div>
|
||||
<br>
|
||||
|
||||
% param 'ForwardAddress' => $usr_datas->{forwardaddress} unless param 'ForwardAddress';
|
||||
|
||||
<div class="row g-3 align-items-center">
|
||||
<div class="col-md-2">
|
||||
<label for="inputEmail" class="col-form-label"><%= l 'usr_FORWARDING_ADDRESS' %></label>
|
||||
</div>
|
||||
<div class="col-auto">
|
||||
<input type="email" name="ForwardAddresss" id="inputEmail" class="form-control" aria-describedby="Email" value=<%= $usr_datas->{forwardaddress} %>>
|
||||
</div>
|
||||
<div class="col-auto">
|
||||
<span id="passwordHelpInline" class="form-text">
|
||||
Email forwarding address
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
<br>
|
||||
|
||||
|
||||
% param 'VPNClientAccess' => $usr_datas->{vpnclientaccess} unless param 'VPNClientAccess';
|
||||
|
||||
<div class="row g-3 align-items-center">
|
||||
<div class="col-md-2">
|
||||
<label for="inputVPNClientAccess" class="col-form-label"><%= l 'usr_VPN_CLIENT_ACCESS' %></label>
|
||||
</div>
|
||||
<div class="col-auto">
|
||||
%= select_field 'VPNClientAccess' => [[ (l 'NO') => 'no'], [ (l 'YES') => 'yes']], class => "form-select"
|
||||
</div>
|
||||
</div>
|
||||
<br>
|
||||
|
||||
<!-- fix from here -->
|
||||
|
||||
|
||||
<!-- Begin if ipsec needs fixing -->
|
||||
% if ( $usr_datas->{trt} eq 'UPD' and $c->ipsec_for_acct eq 'OK' ) {
|
||||
% my $btn2 = $c->l('DOWNLOAD');
|
||||
%= form_for '/useraccountso' => (method => 'POST') => begin
|
||||
%= l 'usr_LABEL_IPSECRW_DOWNLOAD'
|
||||
%= submit_button $btn2, class => ""
|
||||
%= hidden_field 'trt' => 'CRT'
|
||||
%= hidden_field 'user' => $usr_datas->{user}
|
||||
% end
|
||||
% }
|
||||
<!-- End if ipsec -->
|
||||
|
||||
|
||||
<!-- Groups begin -->
|
||||
<div>
|
||||
% my @groups = @{$c->get_groups()};
|
||||
|
||||
%#= dumper @groups
|
||||
|
||||
% if ( @groups ) {
|
||||
|
||||
<br><br>
|
||||
|
||||
%=l 'usr_GROUP_MEMBERSHIPS'
|
||||
|
||||
<br><br>
|
||||
|
||||
<table class="table table-bordered user-table-max-wdith">
|
||||
<thead>
|
||||
<tr>
|
||||
<th class="col-sm-1"><%= l 'usr_MEMBER' %></th>
|
||||
<th class="col-sm-1"><%=l 'GROUP' %></th>
|
||||
<th class="col-sm-1"><%=l 'DESCRIPTION' %></th>
|
||||
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
|
||||
% foreach my $g ( @groups) {
|
||||
% my $user = $usr_datas->{user};
|
||||
% my $groupname = $g->key();
|
||||
% my $description = $g->prop('Description');
|
||||
% my $checked = '';
|
||||
% if ( $user and $c->is_user_in_group($user, $groupname) ) {
|
||||
% $checked = 'checked';
|
||||
% }
|
||||
|
||||
<tr>
|
||||
<td>
|
||||
% if ( $checked eq 'checked' ) {
|
||||
<input type='checkbox' name='groupMemberships' checked value='<%= $groupname %>'>
|
||||
%} else {
|
||||
%= check_box 'groupMemberships' => $groupname
|
||||
%}
|
||||
</td>
|
||||
<td><%= $groupname %></td>
|
||||
<td><%= $description %></td>
|
||||
</tr>
|
||||
% }
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
% }
|
||||
<!-- Groups End -->
|
||||
</div>
|
||||
|
||||
<div class="row g-3 align-items-center">
|
||||
<div class="col-md-2">
|
||||
<button type="submit" class="btn btn-primary"><%= $btn %></button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
%= hidden_field 'trt' => $usr_datas->{trt}
|
||||
|
||||
% if ( $usr_datas->{trt} eq 'UPD' ) {
|
||||
%= hidden_field 'user' => $usr_datas->{user}
|
||||
% }
|
||||
|
||||
% end
|
||||
</form>
|
||||
</div>
|
||||
|
||||
<!-- End of containers-sm -->
|
@@ -1,96 +1,116 @@
|
||||
<div>
|
||||
% content_for 'module' => begin
|
||||
|
||||
% my $btn = l('SAVE');
|
||||
|
||||
%= form_for '/useraccountsd' => (method => 'POST') => begin
|
||||
<p>
|
||||
<h2>
|
||||
%=l 'usr_MODIFY_ADMIN_TITLE'
|
||||
</h2><br>
|
||||
</p>
|
||||
|
||||
<p>
|
||||
<span class="">
|
||||
%=l 'usr_ACCOUNT_NAME'
|
||||
</span>
|
||||
<span class="">
|
||||
% $btn = l('SAVE');
|
||||
%= $usr_datas->{user}, class => ""
|
||||
</span>
|
||||
</p>
|
||||
|
||||
<p>
|
||||
<span class="">
|
||||
%=l 'usr_FIRSTNAME'
|
||||
</span>
|
||||
<span class="">
|
||||
% param 'FirstName' => $usr_datas->{firstname} unless param 'FirstName';
|
||||
%= text_field 'FirstName', class => ""
|
||||
</span>
|
||||
</p>
|
||||
<p>
|
||||
<span class="">
|
||||
%=l 'usr_LASTNAME'
|
||||
</span>
|
||||
<span class="">
|
||||
% param 'LastName' => $usr_datas->{lastname} unless param 'LastName';
|
||||
%= text_field 'LastName', class => ""
|
||||
</span>
|
||||
</p>
|
||||
|
||||
<p>
|
||||
<span class="">
|
||||
%=l 'usr_EMAIL_DELIVERY'
|
||||
</span>
|
||||
<span class="">
|
||||
% param 'EmailForward' => $usr_datas->{emailforward} unless param 'EmailForward';
|
||||
%= select_field 'EmailForward' => $c->emailForward_list(), class => ""
|
||||
</span>
|
||||
</p>
|
||||
<p>
|
||||
<span class="">
|
||||
%=l 'usr_FORWARDING_ADDRESS'
|
||||
</span>
|
||||
<span class="">
|
||||
% param 'ForwardAddress' => $usr_datas->{forwardaddress} unless param 'ForwardAddress';
|
||||
%= text_field 'ForwardAddress', class => ""
|
||||
</span>
|
||||
</p>
|
||||
|
||||
<p>
|
||||
<span class="">
|
||||
%=l 'usr_VPN_CLIENT_ACCESS'
|
||||
</span>
|
||||
<span class="">
|
||||
% param 'VPNClientAccess' => $usr_datas->{vpnclientaccess} unless param 'VPNClientAccess';
|
||||
%= select_field 'VPNClientAccess' => [[ (l 'NO') => 'no'], [ (l 'YES') => 'yes']], class => ""
|
||||
</span>
|
||||
</p>
|
||||
|
||||
% if ( $c->ipsec_for_acct eq 'OK' ) {
|
||||
% my $btn2 = $c->l('DOWNLOAD');
|
||||
%= form_for '/useraccountso' => (method => 'POST') => begin
|
||||
<p>
|
||||
<span class="">
|
||||
%=l 'usr_LABEL_IPSECRW_DOWNLOAD'
|
||||
</span>
|
||||
<span class="">
|
||||
%= submit_button $btn2, class => ""
|
||||
</span>
|
||||
</p>
|
||||
%= hidden_field 'trt' => 'CRT'
|
||||
%= hidden_field 'user' => $usr_datas->{user}
|
||||
%end
|
||||
% }
|
||||
|
||||
<p>
|
||||
<div class="container-sm">
|
||||
<br>
|
||||
%= submit_button $btn, class => ""
|
||||
</p>
|
||||
|
||||
%= hidden_field 'trt' => $usr_datas->{trt}
|
||||
%= hidden_field 'user' => $usr_datas->{user}
|
||||
<h2><%= l 'usr_MODIFY_ADMIN_TITLE' %></h2>
|
||||
|
||||
<br><br>
|
||||
|
||||
<form action="/smanager/useraccountsd" method="POST">
|
||||
%#= form_for '/useraccountsd' => (method => 'POST') => begin
|
||||
|
||||
% end
|
||||
|
||||
<div class="row g-3 align-items-center">
|
||||
<div class="col-md-2">
|
||||
<label for="inputLastNAme" class="col-form-label"><%= l 'usr_ACCOUNT_NAME' %></label>
|
||||
</div>
|
||||
<div class="col-auto">
|
||||
<input disabled type="text" id="disabledTextInput" class="form-control" placeholder="<%= $usr_datas->{user} %>">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<br>
|
||||
% param 'FirstName' => $usr_datas->{firstname} unless param 'FirstName';
|
||||
|
||||
<div class="row g-3 align-items-center">
|
||||
<div class="col-md-2">
|
||||
<label for="inputFirstName" class="col-form-label"><%= l 'usr_FIRSTNAME' %></label>
|
||||
</div>
|
||||
<div class="col-auto">
|
||||
<input type="text" name="FirstName" id="inputFirstName" class="form-control" aria-describedby="FirstName" value="<%= $usr_datas->{firstname} %>" >
|
||||
</div>
|
||||
<div class="col-auto">
|
||||
<span id="passwordHelpInline" class="form-text">
|
||||
First Name
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
<br>
|
||||
|
||||
% param 'LastName' => $usr_datas->{lastname} unless param 'LastName';
|
||||
|
||||
<div class="row g-3 align-items-center">
|
||||
<div class="col-md-2">
|
||||
<label for="inputLastNAme" class="col-form-label"><%= l 'usr_LASTNAME' %></label>
|
||||
</div>
|
||||
<div class="col-auto">
|
||||
<input type="text" name="LastName" id="inputLastName" class="form-control" aria-describedby="LastName" value="<%= $usr_datas->{lastname} %>" >
|
||||
</div>
|
||||
<div class="col-auto">
|
||||
<span id="passwordHelpInline" class="form-text">
|
||||
Last Name
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
<br>
|
||||
|
||||
% param 'EmailForward' => $usr_datas->{emailforward} unless param 'EmailForward';
|
||||
|
||||
<div class="row g-3 align-items-center">
|
||||
<div class="col-md-2">
|
||||
<label for="inputEmailDelivery" class="col-form-label"><%= l 'usr_EMAIL_DELIVERY' %></label>
|
||||
</div>
|
||||
<div class="col-auto">
|
||||
%= select_field 'EmailForward' => $c->emailForward_list(), class => "form-select"
|
||||
</div>
|
||||
</div>
|
||||
<br>
|
||||
|
||||
% param 'ForwardAddress' => $usr_datas->{forwardaddress} unless param 'ForwardAddress';
|
||||
|
||||
<div class="row g-3 align-items-center">
|
||||
<div class="col-md-2">
|
||||
<label for="inputEmail" class="col-form-label"><%= l 'usr_FORWARDING_ADDRESS' %></label>
|
||||
</div>
|
||||
<div class="col-auto">
|
||||
<input type="email" name="ForwardAddress" id="inputEmail" class="form-control" aria-describedby="Email" value="<%= $usr_datas->{forwardaddress} %>" >
|
||||
</div>
|
||||
<div class="col-auto">
|
||||
<span id="passwordHelpInline" class="form-text">
|
||||
Email forwarding address
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
<br>
|
||||
|
||||
% param 'VPNClientAccess' => $usr_datas->{vpnclientaccess} unless param 'VPNClientAccess';
|
||||
|
||||
<div class="row g-3 align-items-center">
|
||||
<div class="col-md-2">
|
||||
<label for="inputVPNClientAccess" class="col-form-label"><%= l 'usr_VPN_CLIENT_ACCESS' %></label>
|
||||
</div>
|
||||
<div class="col-auto">
|
||||
%= select_field 'VPNClientAccess' => [[ (l 'NO') => 'no'], [ (l 'YES') => 'yes']], class => "form-select"
|
||||
</div>
|
||||
<br>
|
||||
</div>
|
||||
|
||||
% my $btn = l('SAVE');
|
||||
|
||||
<div class="row g-3 align-items-center">
|
||||
<div class="col-md-2">
|
||||
<button type="submit" class="btn btn-primary"><%= l 'SAVE' %></button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
trt: <%= dumper $usr_datas->{trt} %>
|
||||
user: <%= dumper $usr_datas->{user} %>
|
||||
|
||||
%= hidden_field 'trt' => $usr_datas->{trt}
|
||||
%= hidden_field 'user' => $usr_datas->{user}
|
||||
|
||||
% end
|
||||
</form>
|
||||
</div>
|
||||
|
||||
|
@@ -1,7 +1,8 @@
|
||||
% layout 'AdminLTE', title => "Sme server 2 - Port Forwards";
|
||||
|
||||
% content_for 'module' => begin
|
||||
<div>
|
||||
|
||||
<div class="card-body">
|
||||
|
||||
% if (config->{debug} == 1) {
|
||||
<p>
|
||||
|
@@ -1,7 +1,8 @@
|
||||
% layout 'AdminLTE', title => "Sme server 2 - printers";
|
||||
|
||||
% content_for 'module' => begin
|
||||
<div id="" class="">
|
||||
|
||||
<div class="card-body">
|
||||
|
||||
%if (config->{debug} == 1) {
|
||||
<p>
|
||||
|
@@ -1,7 +1,9 @@
|
||||
% layout 'AdminLTE', title => "Sme server 2 - proxy";
|
||||
|
||||
% content_for 'module' => begin
|
||||
<div id="" class="">
|
||||
|
||||
<div class="card-body">
|
||||
|
||||
%if (config->{debug} == 1) {
|
||||
<p>(DBG)route: <%= $c->current_route %><br>
|
||||
(DBG)ht stat: <%= $prx_datas->{http_proxy_status}%> <br>
|
||||
@@ -19,7 +21,8 @@
|
||||
<br><br>
|
||||
<span class="">
|
||||
%=l 'prx_HTTP_PROXY_STATUS_LABEL'
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
% param 'http_proxy_status' => $prx_datas->{http_proxy_status} unless param 'http_proxy_status';
|
||||
%= select_field 'http_proxy_status' => [[ (l 'ENABLED') => 'enabled'], [ (l 'DISABLED') => 'disabled']], class => "", id => ""
|
||||
</span>
|
||||
|
@@ -1,7 +1,8 @@
|
||||
% layout 'AdminLTE', title => "Sme server 2 - pseudonyms";
|
||||
|
||||
% content_for 'module' => begin
|
||||
<div class="">
|
||||
|
||||
<div class="card-body">
|
||||
|
||||
% if (config->{debug} == 1) {
|
||||
<p>
|
||||
|
@@ -1,7 +1,12 @@
|
||||
% layout 'AdminLTE', title => "Sme server 2 - qmailanalog";
|
||||
% content_for 'module' => begin
|
||||
|
||||
<!-- should be moved -->
|
||||
|
||||
%= javascript '/js/qmailanalog.js'
|
||||
<div id="" class="">
|
||||
|
||||
<div class="card-body">
|
||||
|
||||
%if (config->{debug} == 1) {
|
||||
<p>
|
||||
(DBG)route: <%= $c->current_route %><br>
|
||||
@@ -15,7 +20,8 @@
|
||||
<p>
|
||||
<span class="">
|
||||
%=l 'qma_REPORT_TYPE'
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
<!-- (to be sorted) -->
|
||||
%= select_field 'report_type' => $c->reportType_list(), id => ""
|
||||
</span>
|
||||
@@ -25,7 +31,8 @@
|
||||
<div id="">
|
||||
<span class="">
|
||||
%= label_for message_id => 'Message ID:'
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
%= text_field 'message_id', placeholder => 'Enter Postfix Message ID', id => ""
|
||||
</span>
|
||||
</div>
|
||||
@@ -33,7 +40,8 @@
|
||||
<div id="">
|
||||
<span class="">
|
||||
%= label_for email_address => 'Email Address:'
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
%= email_field 'email_address', placeholder => 'Enter email address', id => ""
|
||||
</span>
|
||||
</div>
|
||||
|
@@ -1,7 +1,8 @@
|
||||
% layout 'AdminLTE', title => "Sme server 2 - quota";
|
||||
|
||||
% content_for 'module' => begin
|
||||
<div>
|
||||
|
||||
<div class="card-body">
|
||||
|
||||
% if (config->{debug} == 1) {
|
||||
<p>
|
||||
|
@@ -2,7 +2,7 @@
|
||||
|
||||
% content_for 'module' => begin
|
||||
|
||||
<div id="" class="">
|
||||
<div class="card-body">
|
||||
|
||||
%if (config->{debug} == 1) {
|
||||
<p>
|
||||
|
@@ -1,7 +1,8 @@
|
||||
% layout 'AdminLTE', title => "Sme server 2 - remoteaccess";
|
||||
|
||||
% content_for 'module' => begin
|
||||
<div>
|
||||
|
||||
<div class="card-body">
|
||||
|
||||
% if (config->{debug} == 1) {
|
||||
<p>
|
||||
@@ -91,7 +92,9 @@
|
||||
%= t td => (class => "") => $net
|
||||
%= t td => (class => "") => $mask
|
||||
%= t td => (class => "") => $numhosts
|
||||
<td class=""><input type='checkbox' name='Remote_nets' value='<%= $net.'/'.$mask %>'> </td>
|
||||
<td class="">
|
||||
<input type='checkbox' name='Remove_nets' value='<%= $net.'/'.$mask %>'>
|
||||
</td>
|
||||
</tr>
|
||||
% }
|
||||
|
||||
@@ -111,7 +114,8 @@
|
||||
<br><br>
|
||||
<span class="">
|
||||
%=l 'NETWORK'
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
%= text_field 'ValidFromNetwork', class => ""
|
||||
</span>
|
||||
<br>
|
||||
@@ -225,4 +229,4 @@
|
||||
|
||||
</div>
|
||||
|
||||
% end
|
||||
% end
|
||||
|
@@ -1,137 +1,26 @@
|
||||
% layout 'AdminLTE', title => 'Sme server 2 - Review';
|
||||
|
||||
% content_for 'module' => begin
|
||||
<div id="" class="">
|
||||
<h1> <%= $title %> </h1>
|
||||
<%= $modul %><br><br>
|
||||
|
||||
%= form_for 'review' => begin
|
||||
<b>
|
||||
%=l 'rvw_NETWORKING_PARAMS'
|
||||
</b><br>
|
||||
|
||||
<div class="card-body">
|
||||
|
||||
<h1> <%= $title %> </h1>
|
||||
<!-- Header text -->
|
||||
%= $modul
|
||||
|
||||
<p><span class="">
|
||||
%=l 'rvw_SERVER_MODE'
|
||||
</span>
|
||||
%= $rvw_datas->{servermode}
|
||||
% if (config->{debug} == 1) {
|
||||
<p>
|
||||
%= dumper $c->current_route
|
||||
%= dumper $rvw_datas
|
||||
</p>
|
||||
|
||||
<p><span class="">
|
||||
%=l 'rvw_LOCAL_IP_ADDRESS_SUBNET_MASK'
|
||||
</span>
|
||||
%= $rvw_datas->{localip}
|
||||
</p>
|
||||
|
||||
% if ( $rvw_datas->{publicip} ) {
|
||||
<p><span class="">
|
||||
%=l 'rvw_INTERNET_VISIBLE_ADDRESS'
|
||||
</span>
|
||||
%= $rvw_datas->{publicip}
|
||||
</p>
|
||||
% }
|
||||
|
||||
<p><span class="">
|
||||
%=l 'rvw_GATEWAY'
|
||||
</span>
|
||||
%= $rvw_datas->{gateway}
|
||||
%= $rvw_datas->{serveronly}
|
||||
</p>
|
||||
|
||||
<p><table width='100%'><tr><td class=""><!--span class="">
|
||||
%=l 'rvw_ADDITIONAL_LOCAL_NETWORKS'
|
||||
<!--/span--></td><td>
|
||||
%= $c->render_to_string( inline => $rvw_datas->{addlocalnetworks} );
|
||||
</td></tr></table>
|
||||
</p>
|
||||
|
||||
<p><table width='100%'><tr><td class="">
|
||||
<!--<p><span class="">-->
|
||||
%=l 'rvw_DHCP_SERVER'
|
||||
<!--</span>-->
|
||||
</td><td>
|
||||
%= $rvw_datas->{dhcpserver}
|
||||
<!--</p>-->
|
||||
</td></tr></table></p>
|
||||
<br><br>
|
||||
|
||||
<br><br><b>
|
||||
%=l 'rvw_SERVER_NAMES'
|
||||
</b><br>
|
||||
|
||||
<p><span class="">
|
||||
%=l 'rvw_DNS_SERVER'
|
||||
</span>
|
||||
%= $rvw_datas->{dnsserver}
|
||||
</p>
|
||||
|
||||
<p><span class="">
|
||||
%=l 'rvw_WEB_SERVER'
|
||||
</span>
|
||||
%= $rvw_datas->{webserver}
|
||||
</p>
|
||||
|
||||
<p><span class="">
|
||||
%=l 'rvw_PROXY_SERVER'
|
||||
</span>
|
||||
%= $rvw_datas->{proxyserver}
|
||||
</p>
|
||||
|
||||
<p><span class="">
|
||||
%=l 'rvw_FTP_SERVER'
|
||||
</span>
|
||||
%= $rvw_datas->{ftpserver}
|
||||
</p>
|
||||
|
||||
<p><span class="">
|
||||
%=l 'rvw_SMTP_POP_AND_IMAP_MAIL_SERVERS'
|
||||
</span>
|
||||
%= $rvw_datas->{smtpserver}
|
||||
</p>
|
||||
|
||||
<br><br><b>
|
||||
%=l 'rvw_DOMAIN_INFORMATION'
|
||||
</b><br>
|
||||
|
||||
<p><span class="">
|
||||
%=l 'rvw_PRIMARY_DOMAIN'
|
||||
</span>
|
||||
%= $rvw_datas->{domainname}
|
||||
</p>
|
||||
|
||||
<!---<p><span class="">-->
|
||||
<p><table width='100%'><tr><td class="">
|
||||
%=l 'rvw_VIRTUAL_DOMAINS'
|
||||
</td><td>
|
||||
<!--</span>-->
|
||||
%= $rvw_datas->{virtualdomains}
|
||||
</td></tr></table></p>
|
||||
<!--</p>-->
|
||||
|
||||
<p><span class="">
|
||||
%=l 'rvw_PRIMARY_WEB_SITE'
|
||||
</span>
|
||||
%= $rvw_datas->{primarywebsite}
|
||||
</p>
|
||||
|
||||
<p><span class="">
|
||||
%=l 'rvw_SERVER_MANAGER'
|
||||
</span>
|
||||
%= $rvw_datas->{servermanager}
|
||||
</p>
|
||||
|
||||
<p><span class="">
|
||||
%=l 'rvw_USER_PASSWORD_PANEL'
|
||||
</span>
|
||||
%= $rvw_datas->{usermanager}
|
||||
</p>
|
||||
|
||||
<p><table width='100%'><tr><td class="">
|
||||
%=l 'rvw_EMAIL_ADDRESSES'
|
||||
</td><td>
|
||||
%= $rvw_datas->{emailaddresses}
|
||||
</td></tr></table></p>
|
||||
|
||||
% end
|
||||
%= include 'partials/_rvw_content'
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
% end
|
@@ -3,7 +3,8 @@
|
||||
% content_for 'module' => begin
|
||||
|
||||
|
||||
<div id="" class="">
|
||||
<div class="card-body">
|
||||
|
||||
% if (config->{debug} == 1) {
|
||||
<p>
|
||||
%= dumper $c->current_route
|
||||
|
@@ -1,10 +1,12 @@
|
||||
% layout 'AdminLTE', title => 'Sme server 2 - Support';
|
||||
|
||||
% content_for 'module' => begin
|
||||
<div id="" class="">
|
||||
|
||||
<div class="card-body">
|
||||
<p> < %= $title % ></p>
|
||||
<br>
|
||||
<%= $modul %>
|
||||
<br>
|
||||
</div>
|
||||
|
||||
%end
|
@@ -2,8 +2,8 @@
|
||||
|
||||
% content_for 'module' => begin
|
||||
|
||||
%= include 'partials/_panel_card_top'
|
||||
%= include 'partials/_panel_card_header'
|
||||
%#= include 'partials/_panel_card_top'
|
||||
%#= include 'partials/_panel_card_header'
|
||||
|
||||
<div class="card-body">
|
||||
<!-- /.card-body -->
|
||||
@@ -17,7 +17,8 @@
|
||||
% }
|
||||
|
||||
|
||||
|
||||
<h1><%= $title%></h1>
|
||||
|
||||
% if ( $notif ) {
|
||||
<br>
|
||||
<span class="">
|
||||
@@ -43,8 +44,8 @@
|
||||
|
||||
</div>
|
||||
|
||||
%= include 'partials/_panel_card_footer'
|
||||
%= include 'partials/_panel_card_bottom'
|
||||
%#= include 'partials/_panel_card_footer'
|
||||
%#= include 'partials/_panel_card_bottom'
|
||||
|
||||
%end
|
||||
|
||||
|
@@ -2,7 +2,7 @@
|
||||
|
||||
% content_for 'module' => begin
|
||||
|
||||
<div id="" class="">
|
||||
<div class="card-body">
|
||||
|
||||
% if (config->{debug} == 1) {
|
||||
<p>
|
||||
@@ -11,67 +11,111 @@
|
||||
</p>
|
||||
% }
|
||||
|
||||
<h1>
|
||||
%= l 'pwd_ACCOUNT_PASSWORD_CHANGE'
|
||||
</h1>
|
||||
<h2><%= l 'pwd_ACCOUNT_PASSWORD_CHANGE' %></h2>
|
||||
|
||||
% if ( stash 'error' ) {
|
||||
<br><div class="">
|
||||
%= $c->render_to_string(inline => stash 'error')
|
||||
</div>
|
||||
<br>
|
||||
<div>
|
||||
%= $c->render_to_string(inline => stash 'error')
|
||||
</div>
|
||||
%}
|
||||
|
||||
<p>
|
||||
|
||||
% my $btn = l('pwd_PASSWORD_CHANGE');
|
||||
% my $url = '/userpassword';
|
||||
%= $c->render_to_string( inline => l('pwd_DESCRIPTION'));
|
||||
|
||||
<div>
|
||||
%= $c->render_to_string( inline => l('pwd_DESCRIPTION'));
|
||||
</div>
|
||||
|
||||
% if ( $pwd_datas->{trt} eq 'RESET' ) {
|
||||
% $btn = l('pwd_PASSWORD_RESET');
|
||||
% $url = '/userpasswordr';
|
||||
% my $btn = l('pwd_PASSWORD_RESET');
|
||||
% my $url = '/userpasswordr';
|
||||
%= $c->render_to_string( inline => l('pwd_DESCRIPTION_RESET'));
|
||||
% }
|
||||
</p>
|
||||
|
||||
<br>
|
||||
|
||||
<!-- Start of Form -->
|
||||
%= form_for $url => (method => 'POST') => begin
|
||||
<p><span class="">
|
||||
%= l 'pwd_YOUR_ACCOUNT'
|
||||
</span><span class="">
|
||||
%= $pwd_datas->{Account}
|
||||
</span>
|
||||
|
||||
<table class="table table-bordered user-table-max-wdith">
|
||||
<thead>
|
||||
<tr>
|
||||
<th class="col-sm">
|
||||
%= l 'pwd_YOUR_ACCOUNT'
|
||||
</th>
|
||||
<th class="col-sm">
|
||||
%=l 'USER_NAME'
|
||||
</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td><%= $pwd_datas->{Account} %></td>
|
||||
<td><%= $pwd_datas->{name} %>Not in pwd_datas-> name ? :-( </td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<br>
|
||||
|
||||
% if ( $pwd_datas->{trt} ne 'RESET' ) {
|
||||
<div>
|
||||
<%= l 'pwd_PASSWORD_OLD' %>
|
||||
</div>
|
||||
|
||||
<br>
|
||||
|
||||
<div class="row g-3 align-items-center">
|
||||
<div class="col-md-2">
|
||||
<input name="OldPass" id="OldPass" type="password" class="form-control sme-password" placeholder="Password">
|
||||
</div>
|
||||
</div>
|
||||
% }
|
||||
|
||||
<br>
|
||||
|
||||
<div>
|
||||
<%= l 'pwd_PASSWORD_NEW' %>
|
||||
</div>
|
||||
|
||||
<br>
|
||||
|
||||
<div class="row g-3 align-items-center">
|
||||
<div class="col-md-2">
|
||||
<input name="Pass" id="Pass" type="password" class="form-control sme-password" placeholder="Password">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<br>
|
||||
|
||||
<div>
|
||||
%=l 'pwd_PASSWORD_VERIFY_NEW'
|
||||
</div>
|
||||
|
||||
<br>
|
||||
|
||||
<div class="row g-3 align-items-center">
|
||||
<div class="col-md-2">
|
||||
<input name="Passverify" id="PassVerify" type="password" class="form-control sme-password" placeholder="Password">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<br>
|
||||
|
||||
<div class="row g-3 align-items-center">
|
||||
<div class="col-md-2">
|
||||
<button type="submit" class="btn btn-primary"><%= $btn %></button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
%= hidden_field 'User' => $pwd_datas->{Account}
|
||||
%= hidden_field 'Trt' => $pwd_datas->{trt}
|
||||
%= hidden_field 'jwt' => $pwd_datas->{jwt}
|
||||
<br><br></p>
|
||||
|
||||
% if ( $pwd_datas->{trt} ne 'RESET' ) {
|
||||
<p><span class="">
|
||||
%= l 'pwd_PASSWORD_OLD'
|
||||
</span><span class="">
|
||||
%= password_field 'Oldpass', class => "", class="">'sme-password'
|
||||
</span>
|
||||
<br><br></p>
|
||||
% }
|
||||
|
||||
<p><span class="">
|
||||
%=l 'pwd_PASSWORD_NEW'
|
||||
</span><span class="">
|
||||
%= password_field 'Pass', class => "", class="">'sme-password'
|
||||
</span>
|
||||
<br><br></p>
|
||||
|
||||
<p><span class="">
|
||||
%=l 'pwd_PASSWORD_VERIFY_NEW'
|
||||
</span><span class="">
|
||||
%= password_field 'Passverify', class => "", class="">'sme-password'
|
||||
</span>
|
||||
<br><br></p>
|
||||
|
||||
<p>
|
||||
<br>
|
||||
%= submit_button "$btn", class => ""
|
||||
</p>
|
||||
|
||||
% end
|
||||
<!-- End of Form -->
|
||||
|
||||
</div>
|
||||
|
||||
|
@@ -1,7 +1,9 @@
|
||||
% layout 'AdminLTE', title => "Sme server 2 - viewlogfiles";
|
||||
|
||||
% content_for 'module' => begin
|
||||
<div id="" class="">
|
||||
|
||||
<div class="card-body">
|
||||
|
||||
%if (config->{debug} == 1) {
|
||||
<p>
|
||||
(DBG)route: <%= $c->current_route %><br>
|
||||
@@ -18,7 +20,8 @@
|
||||
<br>
|
||||
<span class="">
|
||||
%=l 'log_LOG_FILE_SELECT_DESC'
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
% param 'Filename' => 'messages';
|
||||
<!-- select_field 'Filename' => [['toto'], ['tata']], class => "" -->
|
||||
%= select_field 'Filename' => $c->findlogFiles(), class => ""
|
||||
@@ -30,7 +33,8 @@
|
||||
<br>
|
||||
<span class="">
|
||||
%=l 'log_FILTER_PATTERN_LABEL'
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
%= text_field 'Matchpattern', class => ""
|
||||
</span>
|
||||
</p>
|
||||
@@ -40,7 +44,8 @@
|
||||
<br>
|
||||
<span class="">
|
||||
%=l 'log_MATCH_PATTERN_LABEL'
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
%= text_field 'Highlightpattern', class => ""
|
||||
</span>
|
||||
</p>
|
||||
@@ -50,7 +55,8 @@
|
||||
<br>
|
||||
<span class="">
|
||||
%=l 'log_OP_LABEL'
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
%if ($log_datas->{'default_op'} eq 'download') {
|
||||
% param 'Operation' => 'download';
|
||||
%}
|
||||
|
@@ -2,7 +2,7 @@
|
||||
|
||||
% content_for 'module' => begin
|
||||
|
||||
<div id="" class="">
|
||||
<div class="card-body">
|
||||
|
||||
% if (config->{debug} == 1) {
|
||||
<p>
|
||||
@@ -26,7 +26,7 @@
|
||||
%= hidden_field 'Highlightpattern' => $log_datas->{highlightpattern}
|
||||
%= hidden_field 'Operation' => $log_datas->{operation}
|
||||
% end
|
||||
|
||||
</p>
|
||||
</div>
|
||||
|
||||
%end
|
||||
|
@@ -1,8 +1,11 @@
|
||||
% layout 'AdminLTE', title => 'Sme server 2 - IndexT';
|
||||
|
||||
% content_for 'module' => begin
|
||||
<div id="" class="">
|
||||
<p>Index on line - Welcome page<br>
|
||||
|
||||
<div class="card-body">
|
||||
|
||||
<p>Index on line - Welcome page
|
||||
<br>
|
||||
</p>
|
||||
<p>
|
||||
Cogo diam enim ibidem paulatim pertineo velit. Comis patria pertineo secundum. Aliquip laoreet quibus zelus. Gravis incassum interdico iustum lucidus neo os paratus. Autem causa haero pneum similis sudo vindico. Iusto molior neque oppeto. Ideo minim nibh refoveo veniam vereor virtus. Appellatio pala scisco.
|
||||
@@ -31,31 +34,33 @@ Abdo abigo aptent commoveo inhibeo molior nibh plaga pneum zelus. Conventio geni
|
||||
% my %nav = %{SrvMngr::navigation2->getNavigation( $c->languages() )};
|
||||
<!-- % = dumper %nav -->
|
||||
|
||||
<div id="">
|
||||
<div>
|
||||
% foreach my $h (sort { ($nav{$a}{'WEIGHT'}/$nav{$a}{'COUNT'})
|
||||
% <=> ($nav{$b}{'WEIGHT'}/$nav{$b}{'COUNT'}) } keys %nav) {
|
||||
<div class="">
|
||||
%= $h
|
||||
</div>
|
||||
|
||||
% foreach (sort { $a->{'WEIGHT'} <=> $b->{'WEIGHT'} } @{$nav{$h}{'DESCRIPTIONS'}}) {
|
||||
% my ($target, $classNew) = ( $_->{'FILENAME'} =~ m/^2\// ) ?
|
||||
% ('_self',' accent') :
|
||||
% ('main','') ;
|
||||
<div>
|
||||
%= $h
|
||||
|
||||
% my $href = '/server-manager' . $_->{'FILENAME'};
|
||||
<div class=""><a class="" target='
|
||||
%= $target
|
||||
' onclick=\"swapClasses('sme
|
||||
%= $c
|
||||
')\" id="" href='
|
||||
%= $href
|
||||
'>
|
||||
%= $_->{'DESCRIPTION'}
|
||||
</a></div>
|
||||
|
||||
% $c++;
|
||||
% }
|
||||
% foreach (sort { $a->{'WEIGHT'} <=> $b->{'WEIGHT'} } @{$nav{$h}{'DESCRIPTIONS'}}) {
|
||||
% my ($target, $classNew) = ( $_->{'FILENAME'} =~ m/^2\// ) ?
|
||||
% ('_self',' accent') :
|
||||
% ('main','') ;
|
||||
|
||||
% my $href = '/server-manager' . $_->{'FILENAME'};
|
||||
<div class=""><a class="" target='
|
||||
%= $target
|
||||
' onclick=\"swapClasses('sme
|
||||
%= $c
|
||||
')\" id="" href='
|
||||
%= $href
|
||||
'>
|
||||
%= $_->{'DESCRIPTION'}
|
||||
</a>
|
||||
</div>
|
||||
|
||||
% $c++;
|
||||
% }
|
||||
|
||||
% }
|
||||
|
||||
|
@@ -2,7 +2,7 @@
|
||||
|
||||
% content_for 'module' => begin
|
||||
|
||||
<div id="" class="">
|
||||
<div class="card-body">
|
||||
<p><br>dev<br> What else !!!
|
||||
The page you were requesting
|
||||
"<%= $self->req->url->path || '/' %>"
|
||||
|
@@ -1,7 +1,8 @@
|
||||
% layout 'AdminLTE', title => "Sme server 2 - workgroup";
|
||||
|
||||
% content_for 'module' => begin
|
||||
<div id="" class="">
|
||||
|
||||
<div class="card-body">
|
||||
|
||||
%if (config->{debug} == 1) {
|
||||
<p>
|
||||
@@ -23,7 +24,8 @@
|
||||
<br><br>
|
||||
<span class="">
|
||||
%=l 'wkg_LABEL_WORKGROUP', class => ""
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
%= text_field 'Workgroup' => $wkg_datas->{Workgroup}, class => "" , pattern=>".{1,15}", title=>"Limited to 15 characters by the NETBIOS"
|
||||
</span>
|
||||
</p>
|
||||
@@ -32,7 +34,8 @@
|
||||
<br><br>
|
||||
<span class="">
|
||||
%=l 'wkg_LABEL_SERVERNAME', class => ""
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
%= text_field 'ServerName' => $wkg_datas->{ServerName}, class => ""
|
||||
</span>
|
||||
</p>
|
||||
@@ -41,7 +44,8 @@
|
||||
<br>
|
||||
<span class="">
|
||||
%=l 'wkg_LABEL_PDC', class => ""
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
% param 'ServerRole' => $wkg_datas->{ServerRole} unless param 'ServerRole';
|
||||
%= select_field 'ServerRole' => [[ (l 'YES') => 'PDC'], [ (l 'NO') => 'WS']], class => ""
|
||||
</span>
|
||||
@@ -51,7 +55,8 @@
|
||||
<br>
|
||||
<span class="">
|
||||
%=l 'wkg_LABEL_ROAM', class => ""
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
% param 'RoamingProfiles' => $wkg_datas->{RoamingProfiles} unless param 'RoamingProfiles';
|
||||
%= select_field 'RoamingProfiles' => [[ (l 'YES') => 'yes'], [ (l 'NO') => 'no']], class => ""
|
||||
</span>
|
||||
|
@@ -2,7 +2,8 @@
|
||||
|
||||
% content_for 'module' => begin
|
||||
|
||||
<div id="" class="">
|
||||
<div class="card-body">
|
||||
|
||||
% if (config->{debug} == 1) {
|
||||
<p>
|
||||
%= dumper $c->current_route
|
||||
@@ -13,25 +14,31 @@
|
||||
<h1><%= $title%></h1>
|
||||
|
||||
% if ( $notif ) {
|
||||
<br><span class="">
|
||||
<br>
|
||||
<span class="">
|
||||
%= $notif
|
||||
</span>
|
||||
%}
|
||||
|
||||
% if ( $c->is_empty('updates') ) {
|
||||
<br><div class=""><h2>
|
||||
<br>
|
||||
<div class=""><h2>
|
||||
%=l 'yum_TITLE_UPTODATE'
|
||||
</h2>
|
||||
%=l 'yum_DESC_UPTODATE'
|
||||
</div><br>
|
||||
</div>
|
||||
<br>
|
||||
%}
|
||||
|
||||
% if ( $c->non_empty('updates') ) {
|
||||
<br><div class=""><h2>
|
||||
<br>
|
||||
<div class="">
|
||||
<h2>
|
||||
%=l 'yum_TITLE_UPDATES_AVAILABLE'
|
||||
</h2>
|
||||
%=l 'yum_DESC_UPDATES_AVAILABLE'
|
||||
</div><br>
|
||||
</div>
|
||||
<br>
|
||||
|
||||
%= form_for 'yum' => (method => 'POST') => begin
|
||||
%= hidden_field 'trt' => 'UPDT'
|
||||
@@ -59,37 +66,52 @@
|
||||
|
||||
%= form_for 'yum' => (method => 'POST') => begin
|
||||
|
||||
<p><span class="">
|
||||
<p>
|
||||
<span class="">
|
||||
%=l 'yum_LABEL_YUM_STATUS'
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
%= $c->get_status('status', 'localise')
|
||||
</span></p>
|
||||
</span>
|
||||
</p>
|
||||
|
||||
<p><span class="">
|
||||
<p>
|
||||
<span class="">
|
||||
%=l 'yum_LABEL_YUM_PACKAGEFUNCTIONS'
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
%= $c->get_status('PackageFunctions', 'localise')
|
||||
</span></p>
|
||||
</span>
|
||||
</p>
|
||||
|
||||
<p><span class="">
|
||||
<p>
|
||||
<span class="">
|
||||
%=l 'yum_LABEL_YUM_DELTARPMPROCESS'
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
%= $c->get_status('DeltaRpmProcess', 'localise')
|
||||
</span></p>
|
||||
</span>
|
||||
</p>
|
||||
|
||||
<p><span class="">
|
||||
<p>
|
||||
<span class="">
|
||||
%=l 'yum_LABEL_YUM_DOWNLOADONLY'
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
%= $c->get_status('DownloadOnly', 'localise')
|
||||
</span></p>
|
||||
</span>
|
||||
</p>
|
||||
|
||||
<p><span class="">
|
||||
<p>
|
||||
<span class="">
|
||||
%=l 'yum_LABEL_YUM_AUTOINSTALLUPDATES'
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
%= $c->get_status('AutoInstallUpdates', 'localise')
|
||||
</span></p>
|
||||
</span>
|
||||
</p>
|
||||
|
||||
%= hidden_field 'trt' => 'CONF'
|
||||
%= hidden_field 'trt' => 'CONF'
|
||||
<br>
|
||||
%= submit_button $c->l('yum_BUTTON_CONFIGURATION'), class => ""
|
||||
|
||||
|
@@ -2,7 +2,8 @@
|
||||
|
||||
% content_for 'module' => begin
|
||||
|
||||
<div id="" class="">
|
||||
<div class="card-body">
|
||||
|
||||
% if (config->{debug} == 1) {
|
||||
<p>
|
||||
%= dumper $c->current_route
|
||||
@@ -13,71 +14,90 @@
|
||||
<h1><%= $title%></h1>
|
||||
|
||||
% if ( $notif ) {
|
||||
<br><div class="">
|
||||
<br>
|
||||
<div class="">
|
||||
%= $notif
|
||||
</div>
|
||||
%}
|
||||
|
||||
%= form_for 'yumd' => (method => 'POST') => begin
|
||||
|
||||
<p><span class="">
|
||||
<p>
|
||||
<span class="">
|
||||
%=l 'yum_LABEL_YUM_STATUS'
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
% param 'yum_check4updates' => $c->get_status('check4updates') unless param 'yum_check4updates';
|
||||
%= select_field 'yum_check4updates' => $c->get_check_freq_opt()
|
||||
</span></p>
|
||||
</span>
|
||||
</p>
|
||||
|
||||
<br>
|
||||
%=l 'yum_DESC_YUM_PACKAGEFUNCTIONS'
|
||||
|
||||
<p><span class="">
|
||||
<p>
|
||||
<span class="">
|
||||
%=l 'yum_LABEL_YUM_PACKAGEFUNCTIONS'
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
% param 'yum_PackageFunctions' => $c->get_status('PackageFunctions') unless param 'yum_PackageFunctions';
|
||||
%= select_field 'yum_PackageFunctions' => [[ $c->l('DISABLED') => 'disabled'], [ $c->l('ENABLED') => 'enabled']]
|
||||
</span></p>
|
||||
</span>
|
||||
</p>
|
||||
|
||||
<br>
|
||||
%=l 'yum_DESC_ENABLED_REPOSITORIES'
|
||||
|
||||
<p><span class="">
|
||||
<p>
|
||||
<span class="">
|
||||
%=l 'yum_LABEL_ENABLED_REPOSITORIES'
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
% param 'SelectedRepositories' => $c->get_repository_current_options() unless param 'SelectedRepositories';
|
||||
%= select_field 'SelectedRepositories' => $c->get_repository_options2(), class => "", multiple => '1'
|
||||
</span></p>
|
||||
</span>
|
||||
</p>
|
||||
|
||||
<br>
|
||||
%=l 'yum_DESC_YUM_DELTARPMPROCESS'
|
||||
|
||||
<p><span class="">
|
||||
<p>
|
||||
<span class="">
|
||||
%=l 'yum_LABEL_YUM_DELTARPMPROCESS'
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
% param 'yum_DeltaRpmProcess' => $c->get_status('DeltaRpmProcess') unless param 'yum_DeltaRpmProcess';
|
||||
%= select_field 'yum_DeltaRpmProcess' => [[ $c->l('DISABLED') => 'disabled'], [ $c->l('ENABLED') => 'enabled']]
|
||||
</span></p>
|
||||
</span>
|
||||
</p>
|
||||
|
||||
<br>
|
||||
%=l 'yum_DESC_YUM_DOWNLOADONLY'
|
||||
|
||||
<p><span class="">
|
||||
<p>
|
||||
<span class="">
|
||||
%=l 'yum_LABEL_YUM_DOWNLOADONLY'
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
% param 'yum_DownloadOnly' => $c->get_status('DownloadOnly') unless param 'yum_DownloadOnly';
|
||||
%= select_field 'yum_DownloadOnly' => [[ $c->l('DISABLED') => 'disabled'], [ $c->l('ENABLED') => 'enabled']]
|
||||
</span></p>
|
||||
</span>
|
||||
</p>
|
||||
|
||||
<br>
|
||||
%=l 'yum_DESC_YUM_AUTOINSTALLUPDATES'
|
||||
|
||||
<p><span class="">
|
||||
<p>
|
||||
<span class="">
|
||||
%=l 'yum_LABEL_YUM_AUTOINSTALLUPDATES'
|
||||
</span><span class="">
|
||||
</span>
|
||||
<span class="">
|
||||
% param 'yum_AutoInstallUpdates' => $c->get_status('AutoInstallUpdates') unless param 'yum_AutoInstallUpdates';
|
||||
%= select_field 'yum_AutoInstallUpdates' => [[ $c->l('DISABLED') => 'disabled'], [ $c->l('ENABLED') => 'enabled']]
|
||||
</span></p>
|
||||
</span>
|
||||
</p>
|
||||
|
||||
%= hidden_field 'trt' => 'CONF'
|
||||
%= hidden_field 'trt' => 'CONF'
|
||||
<br>
|
||||
<!--<div class="">-->
|
||||
%= submit_button $c->l('SAVE'), class => ""
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user