diff --git a/THIRDPARTY b/THIRDPARTY index 18b4f629..cb71c5bb 100644 --- a/THIRDPARTY +++ b/THIRDPARTY @@ -38,8 +38,15 @@ https://github.com/PHPMailer/PHPMailer GNU Lesser General Public License (LGPL), Version 2.1 http://www.gnu.org/licenses/lgpl-2.1.html +* HybridAuth +http://hybridauth.sourceforge.net/ +GNU GENERAL PUBLIC LICENSE Version 3 +https://www.gnu.org/licenses/gpl.html +Released under the MIT license +http://opensource.org/licenses/MIT + -Used but included with CDN servers: + Used but included with CDN servers: * Bootstrap v2.3.2 http://getbootstrap.com/2.3.2/ diff --git a/web/css/default/social_buttons.css b/web/css/default/social_buttons.css new file mode 100644 index 00000000..75e49cd3 --- /dev/null +++ b/web/css/default/social_buttons.css @@ -0,0 +1,50 @@ +.btn-social{position:relative;padding-left:44px;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.btn-social :first-child{position:absolute;left:0;top:0;bottom:0;width:32px;line-height:34px;font-size:1.6em;text-align:center;border-right:1px solid rgba(0,0,0,0.2)} + +.btn-facebook.active {color: rgba(255,255,255,0.75);} +.btn-facebook {color: #ffffff;text-shadow: 0 -1px 0 rgba(0,0,0,0.25);background-color: #4262a5;background-image: -moz-linear-gradient(top,#3b5998,#4c70ba);background-image: -webkit-gradient(linear,0 0,0 100%,from(#3b5998),to(#4c70ba));background-image: -webkit-linear-gradient(top,#3b5998,#4c70ba);background-image: -o-linear-gradient(top,#3b5998,#4c70ba);background-image: linear-gradient(to bottom,#3b5998,#4c70ba);background-repeat: repeat-x;filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff3b5998',endColorstr='#ff4c70ba',GradientType=0);border-color: #4c70ba #4c70ba #344e86;border-color: rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);*background-color: #4c70ba;filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);} +.btn-facebook:hover,.btn-facebook:focus,.btn-facebook:active,.btn-facebook.active,.btn-facebook.disabled,.btn-facebook[disabled] {color: #ffffff;background-color: #4c70ba;*background-color: #4264aa;} +.btn-facebook:active,.btn-facebook.active {background-color: #3b5998 ;} +.btn-github.active {color: rgba(255,255,255,0.75);} +.btn-github {color: #ffffff;text-shadow: 0 -1px 0 rgba(0,0,0,0.25);background-color: #78cb54;background-image: -moz-linear-gradient(top,#6cc644,#8bd26b);background-image: -webkit-gradient(linear,0 0,0 100%,from(#6cc644),to(#8bd26b));background-image: -webkit-linear-gradient(top,#6cc644,#8bd26b);background-image: -o-linear-gradient(top,#6cc644,#8bd26b);background-image: linear-gradient(to bottom,#6cc644,#8bd26b);background-repeat: repeat-x;filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff6cc644',endColorstr='#ff8bd26b',GradientType=0);border-color: #8bd26b #8bd26b #60b838;border-color: rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);*background-color: #8bd26b;filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);} +.btn-github:hover,.btn-github:focus,.btn-github:active,.btn-github.active,.btn-github.disabled,.btn-github[disabled] {color: #ffffff;background-color: #8bd26b;*background-color: #7bcc58;} +.btn-github:active,.btn-github.active {background-color: #6cc644;} +.btn-google.active {color: rgba(255,255,255,0.75);} +.btn-google {color: #ffffff;text-shadow: 0 -1px 0 rgba(0,0,0,0.25);background-color: #e05b4a;background-image: -moz-linear-gradient(top,#dd4b39,#e47365);background-image: -webkit-gradient(linear,0 0,0 100%,from(#dd4b39),to(#e47365));background-image: -webkit-linear-gradient(top,#dd4b39,#e47365);background-image: -o-linear-gradient(top,#dd4b39,#e47365);background-image: linear-gradient(to bottom,#dd4b39,#e47365);background-repeat: repeat-x;filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdd4b39',endColorstr='#ffe47365',GradientType=0);border-color: #e47365 #e47365 #d73925;border-color: rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);*background-color: #e47365;filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);} +.btn-google:hover,.btn-google:focus,.btn-google:active,.btn-google.active,.btn-google.disabled,.btn-google[disabled] {color: #ffffff;background-color: #e47365;*background-color: #e15f4f;} +.btn-google:active,.btn-google.active {background-color: #dd4b39;} +.btn-linkedin.active {color: rgba(255,255,255,0.75);} +.btn-linkedin {color: #ffffff;text-shadow: 0 -1px 0 rgba(0,0,0,0.25);background-color: #0089ca;background-image: -moz-linear-gradient(top,#007bb6,#009de9);background-image: -webkit-gradient(linear,0 0,0 100%,from(#007bb6),to(#009de9));background-image: -webkit-linear-gradient(top,#007bb6,#009de9);background-image: -o-linear-gradient(top,#007bb6,#009de9);background-image: linear-gradient(to bottom,#007bb6,#009de9);background-repeat: repeat-x;filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff007bb6',endColorstr='#ff009de9',GradientType=0);border-color: #009de9 #009de9 #006a9d;border-color: rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);*background-color: #009de9;filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);} +.btn-linkedin:hover,.btn-linkedin:focus,.btn-linkedin:active,.btn-linkedin.active,.btn-linkedin.disabled,.btn-linkedin[disabled] {color: #ffffff;background-color: #009de9;*background-color: #008cd0;} +.btn-linkedin:active,.btn-linkedin.active {background-color: #007bb6;} +.btn-live.active {color: rgba(255,255,255,0.75);} +.btn-live {color: #ffffff;text-shadow: 0 -1px 0 rgba(0,0,0,0.25);background-color: #397eee;background-image: -moz-linear-gradient(top,#2672ec,#5590f0);background-image: -webkit-gradient(linear,0 0,0 100%,from(#2672ec),to(#5590f0));background-image: -webkit-linear-gradient(top,#2672ec,#5590f0);background-image: -o-linear-gradient(top,#2672ec,#5590f0);background-image: linear-gradient(to bottom,#2672ec,#5590f0);background-repeat: repeat-x;filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff2672ec',endColorstr='#ff5590f0',GradientType=0);border-color: #5590f0 #5590f0 #1464e4;border-color: rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);*background-color: #5590f0;filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);} +.btn-live:hover,.btn-live:focus,.btn-live:active,.btn-live.active,.btn-live.disabled,.btn-live[disabled] {color: #ffffff;background-color: #5590f0;*background-color: #3d81ee;} +.btn-live:active,.btn-live.active {background-color: #2672ec;} +.btn-mailru.active {color: rgba(255,255,255,0.75);} +.btn-mailru {color: #ffffff;text-shadow: 0 -1px 0 rgba(0,0,0,0.25);background-color: #0961b9;background-image: -moz-linear-gradient(top,#0857a6,#0a70d7);background-image: -webkit-gradient(linear,0 0,0 100%,from(#0857a6),to(#0a70d7));background-image: -webkit-linear-gradient(top,#0857a6,#0a70d7);background-image: -o-linear-gradient(top,#0857a6,#0a70d7);background-image: linear-gradient(to bottom,#0857a6,#0a70d7);background-repeat: repeat-x;filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff0857a6',endColorstr='#ff0a70d7',GradientType=0);border-color: #0a70d7 #0a70d7 #074a8e;border-color: rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);*background-color: #0a70d7;filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);} +.btn-mailru:hover,.btn-mailru:focus,.btn-mailru:active,.btn-mailru.active,.btn-mailru.disabled,.btn-mailru[disabled] {color: #ffffff;background-color: #0a70d7;*background-color: #0964be;} +.btn-mailru:active,.btn-mailru.active {background-color: #0857a6 ;} +.btn-openid.active {color: rgba(255,255,255,0.75);} +.btn-openid {color: #ffffff;text-shadow: 0 -1px 0 rgba(0,0,0,0.25);background-color: #f89854;background-image: -moz-linear-gradient(top,#f78c40,#f9a971);background-image: -webkit-gradient(linear,0 0,0 100%,from(#f78c40),to(#f9a971));background-image: -webkit-linear-gradient(top,#f78c40,#f9a971);background-image: -o-linear-gradient(top,#f78c40,#f9a971);background-image: linear-gradient(to bottom,#f78c40,#f9a971);background-repeat: repeat-x;filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff78c40',endColorstr='#fff9a971',GradientType=0);border-color: #f9a971 #f9a971 #f67d28;border-color: rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);*background-color: #f9a971;filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);} +.btn-openid:hover,.btn-openid:focus,.btn-openid:active,.btn-openid.active,.btn-openid.disabled,.btn-openid[disabled] {color: #ffffff;background-color: #f9a971;*background-color: #f89b58;} +.btn-openid:active,.btn-openid.active {background-color: #f78c40 ;} +.btn-steam.active {color: rgba(255,255,255,0.75);} +.btn-steam {color: #ffffff;text-shadow: 0 -1px 0 rgba(0,0,0,0.25);background-color: #0a0a0a;background-image: -moz-linear-gradient(top,#000000,#1a1a1a);background-image: -webkit-gradient(linear,0 0,0 100%,from(#000000),to(#1a1a1a));background-image: -webkit-linear-gradient(top,#000000,#1a1a1a);background-image: -o-linear-gradient(top,#000000,#1a1a1a);background-image: linear-gradient(to bottom,#000000,#1a1a1a);background-repeat: repeat-x;filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff000000',endColorstr='#ff1a1a1a',GradientType=0);border-color: #1a1a1a #1a1a1a #000000;border-color: rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);*background-color: #1a1a1a;filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);} +.btn-steam:hover,.btn-steam:focus,.btn-steam:active,.btn-steam.active,.btn-steam.disabled,.btn-steam[disabled] {color: #ffffff;background-color: #1a1a1a;*background-color: #0d0d0d;} +.btn-steam:active,.btn-steam.active {background-color: #000000 ;} +.btn-twitchtv.active {color: rgba(255, 255, 255, 0.75);} +.btn-twitchtv {color: #ffffff;text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);background-color: #6e4baf;background-image: -moz-linear-gradient(top, #6441a5, #7e5bbe);background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#6441a5), to(#7e5bbe));background-image: -webkit-linear-gradient(top, #6441a5, #7e5bbe);background-image: -o-linear-gradient(top, #6441a5, #7e5bbe);background-image: linear-gradient(to bottom, #6441a5, #7e5bbe);background-repeat: repeat-x;filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff6441a5', endColorstr='#ff7e5bbe', GradientType=0);border-color: #7e5bbe #7e5bbe #593a93;border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);*background-color: #7e5bbe;filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);} +.btn-twitchtv:hover,.btn-twitchtv:focus,.btn-twitchtv:active,.btn-twitchtv.active,.btn-twitchtv.disabled,.btn-twitchtv[disabled] {color: #ffffff;background-color: #7e5bbe;*background-color: #6f48b7;} +.btn-twitchtv:active,.btn-twitchtv.active {background-color: #6441a5 ;} +.btn-twitter.active {color: rgba(255,255,255,0.75);} +.btn-twitter {color: #ffffff;text-shadow: 0 -1px 0 rgba(0,0,0,0.25);background-color: #3db0e4;background-image: -moz-linear-gradient(top,#2ba9e1,#58bbe7);background-image: -webkit-gradient(linear,0 0,0 100%,from(#2ba9e1),to(#58bbe7));background-image: -webkit-linear-gradient(top,#2ba9e1,#58bbe7);background-image: -o-linear-gradient(top,#2ba9e1,#58bbe7);background-image: linear-gradient(to bottom,#2ba9e1,#58bbe7);background-repeat: repeat-x;filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff2ba9e1',endColorstr='#ff58bbe7',GradientType=0);border-color: #58bbe7 #58bbe7 #1e9cd4;border-color: rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);*background-color: #58bbe7;filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);} +.btn-twitter:hover,.btn-twitter:focus,.btn-twitter:active,.btn-twitter.active,.btn-twitter.disabled,.btn-twitter[disabled] {color: #ffffff;background-color: #58bbe7;*background-color: #41b2e4;} +.btn-twitter:active,.btn-twitter.active {background-color: #2ba9e1 ;} +.btn-xing.active {color: rgba(255,255,255,0.75);} +.btn-xing {color: #ffffff;text-shadow: 0 -1px 0 rgba(0,0,0,0.25);background-color: #00797b;background-image: -moz-linear-gradient(top,#006567,#00979a);background-image: -webkit-gradient(linear,0 0,0 100%,from(#006567),to(#00979a));background-image: -webkit-linear-gradient(top,#006567,#00979a);background-image: -o-linear-gradient(top,#006567,#00979a);background-image: linear-gradient(to bottom,#006567,#00979a);background-repeat: repeat-x;filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff006567',endColorstr='#ff00979a',GradientType=0);border-color: #00979a #00979a #004c4e;border-color: rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);*background-color: #00979a;filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);} +.btn-xing:hover,.btn-xing:focus,.btn-xing:active,.btn-xing.active,.btn-xing.disabled,.btn-xing[disabled] {color: #ffffff;background-color: #00979a;*background-color: #007e81;} +.btn-xing:active,.btn-xing.active {background-color: #006567 ;} +.btn-yandex.active {color: rgba(255,255,255,0.75);} +.btn-yandex {color: #ffffff;text-shadow: 0 -1px 0 rgba(0,0,0,0.25);background-color: #ffd014;background-image: -moz-linear-gradient(top,#ffcc00,#ffd633);background-image: -webkit-gradient(linear,0 0,0 100%,from(#ffcc00),to(#ffd633));background-image: -webkit-linear-gradient(top,#ffcc00,#ffd633);background-image: -o-linear-gradient(top,#ffcc00,#ffd633);background-image: linear-gradient(to bottom,#ffcc00,#ffd633);background-repeat: repeat-x;filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffcc00',endColorstr='#ffffd633',GradientType=0);border-color: #ffd633 #ffd633 #e5b800;border-color: rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);*background-color: #ffd633;filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);} +.btn-yandex:hover,.btn-yandex:focus,.btn-yandex:active,.btn-yandex.active,.btn-yandex.disabled,.btn-yandex[disabled] {color: #ffffff;background-color: #ffd633;*background-color: #ffd119;} +.btn-yandex:active,.btn-yandex.active {background-color: #ffcc00 ;} \ No newline at end of file diff --git a/web/languages/default/de/login.xml b/web/languages/default/de/login.xml index 5a8940f7..a7924c47 100644 --- a/web/languages/default/de/login.xml +++ b/web/languages/default/de/login.xml @@ -11,6 +11,9 @@ Inkorrekte IP: Erlaubte IP(s) ist/sind Link ist abgelaufen. + Mehrere Benutzer gefunden + Es wurden mehrere Benutzer zu dem Login von %sp% gefunden. Bitte wählen einen aus + Im Regelfall muss eine App bei dem jeweiligen Service Provider angelegt werden. Beim Erstellen der App erhält man einen Key und Zugangstoken, die beide in Easy-WI hinterlegt werden müssen. In der App muss meistens der Endpunkt des SocialAuth definiert werden. Dieser ist bei Easy-Wi %url% Ein Benutzer mit diesem Namen, oder Email existiert nicht. Passwort Passwort vergessen? diff --git a/web/languages/default/de/user.xml b/web/languages/default/de/user.xml index 1c5540fb..69ffb820 100644 --- a/web/languages/default/de/user.xml +++ b/web/languages/default/de/user.xml @@ -73,6 +73,9 @@ Installierte Server Panel Einstellungen Ergebnisse je Seite + Verknüpfung herstellen mit + Verknüpfung entfernen mit + Einloggen mit Stadt Straße Zum Benutzer wechseln diff --git a/web/languages/default/dk/login.xml b/web/languages/default/dk/login.xml index 8869a03c..2d10a438 100644 --- a/web/languages/default/dk/login.xml +++ b/web/languages/default/dk/login.xml @@ -11,6 +11,9 @@ Forkert IP: Tilladt IP'er Link er udløbet. + Multiple users found + Multiple users could be found connected to the login for %sp%. Please pick one. + Usually you will have to register an app at the service provider. During creating you will be provided with a key and access token. Both need to be entered at Easy-Wi. At the app you need to configure an endpoint. The endpoint for Easy-Wi is %url% En bruger med det indtastede navn eller email eksisterer ikke. Adgangskode Adgangskode genopretning diff --git a/web/languages/default/dk/user.xml b/web/languages/default/dk/user.xml index cd715155..6f2cd1bb 100644 --- a/web/languages/default/dk/user.xml +++ b/web/languages/default/dk/user.xml @@ -73,6 +73,9 @@ Installerede servere Panelindstillinger Resultater pr side + Connect with + Remove connection with + Sign in with By Gade Skift til bruger diff --git a/web/languages/default/uk/login.xml b/web/languages/default/uk/login.xml index 210ba388..a467bb2b 100644 --- a/web/languages/default/uk/login.xml +++ b/web/languages/default/uk/login.xml @@ -11,6 +11,9 @@ Incorrect IP: Permitted IP(s) is/are Link is expired. + Multiple users found + Multiple users could be found connected to the login for %sp%. Please pick one. + Usually you will have to register an app at the service provider. During creating you will be provided with a key and access token. Both need to be entered at Easy-Wi. At the app you need to configure an endpoint. The endpoint for Easy-Wi is %url% A user with the entered name or email does not exist. Password Passwort Recovery diff --git a/web/languages/default/uk/user.xml b/web/languages/default/uk/user.xml index a5ea1e79..47b4fa1e 100644 --- a/web/languages/default/uk/user.xml +++ b/web/languages/default/uk/user.xml @@ -73,6 +73,9 @@ Installed Servers Panel Settings Results per page + Connect with + Remove connection with + Sign in with Town Street Switch to user diff --git a/web/login.php b/web/login.php index 55aeaad1..5e3e85c1 100644 --- a/web/login.php +++ b/web/login.php @@ -193,11 +193,182 @@ } else { - if (!$ui->username('username', 255, 'post') and !$ui->ismail('username', 255, 'post') and !$ui->password('password', 255, 'post') and !isset($_SESSION['sessionid'])) { + $serviceProvider = (string) $ui->w('serviceProvider', 255, 'get'); - $include = 'login.tpl'; + if ($serviceProvider and file_exists(EASYWIDIR . '/third_party/hybridauth/Hybrid/Providers/' . $serviceProvider . '.php')) { + $_SERVER = $ui->server; + + $pageUrl = ''; + + $query = $sql->prepare("SELECT `pageurl`,`seo`,`registration` FROM `page_settings` WHERE `resellerid`=0 LIMIT 1"); + $query->execute(); + foreach ($query->fetchAll(PDO::FETCH_ASSOC) as $row) { + $pageUrl = $row['pageurl']; + $seo = $row['seo']; + $registration = $row['registration']; + } + + $serviceProviderConfig = array( + 'base_url' => $pageUrl . '/login.php?endpoint=1', + 'debug_mode' => (isset($dbConnect['debug']) and $dbConnect['debug'] == 1) ? true : false, + 'debug_file' => EASYWIDIR . '/third_party/hybridauth/log/hybridauth.log', + 'providers' => array() + ); + + $query = $sql->prepare("SELECT `serviceProviderID`,`filename`,`identifier`,`token` FROM `userdata_social_providers` WHERE `resellerID`=0 AND `active`='Y'"); + $query->execute(); + foreach ($query->fetchAll(PDO::FETCH_ASSOC) as $row) { + $serviceProviderConfig['providers'][$row['filename']] = array( + 'internalID' => $row['serviceProviderID'], + 'enabled' => true, + 'keys' => array( + 'id' => $row['identifier'], + 'secret' => $row['token'] + ) + ); + } + } + + if (isset($serviceProviderConfig['providers'][$serviceProvider]) and $ui->id('loginUserId', 10, 'get')) { + + if (isset($_SESSION['loginUserAllowed'][$ui->id('loginUserId', 10, 'get')])) { + + $query = $sql->prepare("SELECT `id`,`accounttype`,`cname`,`active`,`security`,`resellerid`,`mail`,`salt`,`externalID` FROM `userdata` WHERE `id`=? LIMIT 1"); + $query->execute(array($ui->id('loginUserId', 10, 'get'))); + foreach ($query->fetchAll(PDO::FETCH_ASSOC) as $row) { + + $username = $row['cname']; + $id = $row['id']; + $active = $row['active']; + $mail = $row['mail']; + $externalID = $row['externalID']; + $resellerid = $row['resellerid']; + $accounttype = $row['accounttype']; + + $passwordCorrect = true; + } + } + + unset($_SESSION['loginUserAllowed']); + + } else if (isset($serviceProviderConfig['providers'][$serviceProvider])) { + + include(EASYWIDIR . '/third_party/hybridauth/Hybrid/Auth.php'); + + try{ + + $connectedUsers = array(); + + // initialize Hybrid_Auth with a given file + $hybridauth = new Hybrid_Auth($serviceProviderConfig); + + // try to authenticate with the selected provider + $serviceProviderAdapter = $hybridauth->authenticate($serviceProvider); + $userProfile = $serviceProviderAdapter->getUserProfile(); + $serviceProviderAdapter->logout(); + + // get all user for this identifier and service provider. User should be able to select the user he is going to logon to + $serviceProviderID = $serviceProviderConfig['providers'][$serviceProvider]['internalID']; + + if ((isset($user_id) or isset($admin_id)) and strlen($userProfile->identifier) > 0) { + + $query = $sql->prepare("INSERT INTO `userdata_social_identities` (`userID`,`serviceProviderID`,`serviceUserID`,`resellerID`) VALUES (?,?,?,?)"); + $query->execute(array((isset($admin_id)) ? $admin_id : $user_id, $serviceProviderID, $userProfile->identifier, $reseller_id)); + + $redirectURL = (isset($admin_id)) ? $pageUrl . '/admin.php?w=su&added=' . $serviceProvider . '&r=su' : $pageUrl . '/userpanel.php?w=se&added=' . $serviceProvider . '&r=se'; + + redirect($redirectURL); + + } else { + + $query = $sql->prepare("SELECT u.`id`,u.`cname`,`mail`,CONCAT(u.`vname`,' ',u.`name`) AS `username` FROM `userdata_social_identities` AS s INNER JOIN `userdata` AS u ON u.`id`=s.`userID` WHERE s.`serviceProviderID`=? AND s.`serviceUserID`=? AND u.`active`='Y'"); + $query->execute(array($serviceProviderID, $userProfile->identifier)); + foreach ($query->fetchAll(PDO::FETCH_ASSOC) as $row) { + + $username = trim($row['username']); + $username = (strlen($username) > 0) ? $username : $row['cname']; + + $connectedUsers[$row['id']] = $username . ' (' . $row['mail'] . ')'; + + } + + $connectedUserCount = count($connectedUsers); + + // no user has been found. Check if registration is allowed. If yes display registration form + if ($connectedUserCount == 0) { + + if (isset($registration) and in_array($registration, array('A', 'M', 'D'))) { + + $page_sprache = getlanguagefile('page', $user_language, 0); + + $_SESSION['serviceProviderData']['userProfile'] = (array) $userProfile; + $_SESSION['serviceProviderData']['serviceProviderID'] = (string) $serviceProviderID; + + $redirectURL = ($seo == 'Y') ? $pageUrl . '/' . $user_language . '/' . szrp($page_sprache->register) .'/' : $pageUrl . '/index.php?site=register'; + + redirect($redirectURL); + } + + // multiple active users are connected, let the user pick one + } else if ($connectedUserCount > 1) { + + $sprache->multipleHelper = str_replace('%sp%', $serviceProvider, $sprache->multipleHelper); + + $_SESSION['loginUserAllowed'] = $connectedUsers; + + $include = 'login_mutiple.tpl'; + + // exactly one user connected, login + } else { + + $query = $sql->prepare("SELECT `id`,`accounttype`,`cname`,`active`,`security`,`resellerid`,`mail`,`salt`,`externalID` FROM `userdata` WHERE `id`=? LIMIT 1"); + $query->execute(array(key($connectedUsers))); + foreach ($query->fetchAll(PDO::FETCH_ASSOC) as $row) { + + $username = $row['cname']; + $id = $row['id']; + $active = $row['active']; + $mail = $row['mail']; + $externalID = $row['externalID']; + $resellerid = $row['resellerid']; + $accounttype = $row['accounttype']; + + $passwordCorrect = true; + } + + } + } + } + catch( Exception $e ){ + $include = 'login.tpl'; + } + + } else if ($ui->escaped('endpoint', 'get')) { + + $_SERVER = $ui->server; + include(EASYWIDIR . '/third_party/hybridauth/Hybrid/Auth.php'); + include(EASYWIDIR . '/third_party/hybridauth/Hybrid/Endpoint.php'); + + Hybrid_Endpoint::process(); + } + + if (!isset($include) and !isset($passwordCorrect) and !$ui->username('username', 255, 'post') and !$ui->ismail('username', 255, 'post') and !$ui->password('password', 255, 'post') and !isset($_SESSION['sessionid'])) { + + $serviceProviders = array(); + $query = $sql->prepare("SELECT `filename` FROM `userdata_social_providers` WHERE `resellerID`=0 AND `active`='Y'"); + $query->execute(); + foreach ($query->fetchAll(PDO::FETCH_ASSOC) as $row) { + $serviceProviders[$row['filename']] = strtolower($row['filename']); + } + + if (count($serviceProviders) > 0) { + $htmlExtraInformation['css'][] = ''; + } + + $include = 'login.tpl'; + + } else if (!isset($include) and (isset($passwordCorrect) or (($ui->username('username', 255, 'post') or $ui->ismail('username', 'post')) and $ui->password('password', 255, 'post') and !isset($_SESSION['sessionid'])))) { - } else if (($ui->username('username', 255, 'post') or $ui->ismail('username', 'post')) and $ui->password('password', 255, 'post') and !isset($_SESSION['sessionid'])) { $password = $ui->password('password', 255, 'post'); if (isset($ewCfg) and $ewCfg['captcha'] == 1) { @@ -207,7 +378,7 @@ $query = $sql->prepare("SELECT `id` FROM `badips` WHERE `badip`=? LIMIT 1"); $query->execute(array($loguserip)); - $rowcount = $query->rowcount(); + $rowcount = $query->rowCount(); $query=($rowcount==0) ? $sql->prepare("INSERT INTO `badips` (`bantime`,`failcount`,`reason`,`badip`) VALUES (?,'1','password',?)") : $sql->prepare("UPDATE `badips` SET `bantime`=?, `failcount`=`failcount`+1, `reason`='password' WHERE `badip`=? LIMIT 1"); $query->execute(array($halfhour, $loguserip)); @@ -220,7 +391,7 @@ $salt = ''; $query = $sql->prepare("SELECT `id`,`accounttype`,`cname`,`active`,`security`,`resellerid`,`mail`,`salt`,`externalID` FROM `userdata` WHERE `cname`=? OR `mail`=? ORDER BY `lastlogin` DESC LIMIT 1"); - $query->execute(array($ui->username('username', 255, 'post'),$ui->ismail('username', 'post'))); + $query->execute(array($ui->username('username', 255, 'post'), $ui->ismail('username', 'post'))); foreach ($query->fetchAll(PDO::FETCH_ASSOC) as $row) { $username = $row['cname']; @@ -272,6 +443,7 @@ } } } + if (!isset($sID) and isset($active) and $active == 'Y' and isset($passwordCorrect) and $passwordCorrect === false) { $authLookupID = ($resellerid == $id) ? 0 : $resellerid; @@ -335,7 +507,8 @@ } } - if (isset($active) and $active == 'Y' and isset($passwordCorrect) and $passwordCorrect) { + if (isset($active, $id, $resellerid) and $active == 'Y' and isset($passwordCorrect) and $passwordCorrect) { + session_unset(); session_destroy(); session_start(); @@ -416,6 +589,7 @@ redirect('userpanel.php'); } else if (isset($admin_id)) { + $folders = explode('/', $ui->server['SCRIPT_NAME']); $amount = count($folders) - 1; $i = 0; @@ -463,10 +637,10 @@ redirect('login.php?w=up&r=lo'); } - } else if ($ui->escaped('username', 'post') and $ui->escaped('password', 'post')) { + } else if (!isset($include) and $ui->escaped('username', 'post') and $ui->escaped('password', 'post')) { redirect('login.php?w=up&r=lo'); - } else { + } else if(!isset($include)) { redirect('login.php?w=lo'); } } diff --git a/web/stuff/admin_social_provider.php b/web/stuff/admin_social_provider.php new file mode 100644 index 00000000..28ef2562 --- /dev/null +++ b/web/stuff/admin_social_provider.php @@ -0,0 +1,240 @@ + + * + * This file is part of Easy-WI. + * + * Easy-WI is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * Easy-WI is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Easy-WI. If not, see . + * + * Diese Datei ist Teil von Easy-WI. + * + * Easy-WI ist Freie Software: Sie koennen es unter den Bedingungen + * der GNU General Public License, wie von der Free Software Foundation, + * Version 3 der Lizenz oder (nach Ihrer Wahl) jeder spaeteren + * veroeffentlichten Version, weiterverbreiten und/oder modifizieren. + * + * Easy-WI wird in der Hoffnung, dass es nuetzlich sein wird, aber + * OHNE JEDE GEWAEHELEISTUNG, bereitgestellt; sogar ohne die implizite + * Gewaehrleistung der MARKTFAEHIGKEIT oder EIGNUNG FUER EINEN BESTIMMTEN ZWECK. + * Siehe die GNU General Public License fuer weitere Details. + * + * Sie sollten eine Kopie der GNU General Public License zusammen mit diesem + * Programm erhalten haben. Wenn nicht, siehe . + */ + +if ((!isset($admin_id) or $main != 1) or (isset($admin_id) and !$pa['root'])) { + header('Location: admin.php'); + die('No acces'); +} + +$loguserid = $admin_id; +$logusername = getusername($admin_id); +$logusertype = 'admin'; + +if ($reseller_id == 0) { + + $logreseller = 0; + $logsubuser = 0; + +} else { + + $logsubuser = (isset($_SESSION['oldid'])) ? $_SESSION['oldid'] : 0; + $logreseller = 0; +} + +$sprache = getlanguagefile('login', $user_language, $reseller_id); + +// Define the ID variable which will be used at the form and SQLs +$id = $ui->id('id', 10, 'get'); +$active = $ui->active('active', 'post'); +$name = $ui->w('name', 255, 'post'); +$keyID = $ui->escaped('keyID', 'post'); +$providerToken = $ui->escaped('providerToken', 'post'); + + +// At this point all variables are defined that can come from the user + +// CSFR protection with hidden tokens. If token(true) returns false, we likely have an attack +if ($ui->w('action',4, 'post') and !token(true)) { + $template_file = $spracheResponse->token; + +// Add and modify entries. Same validation can be used. +} else if ($ui->st('d', 'get') == 'ad' or $ui->st('d', 'get') == 'md') { + + // Error handling. Check if required attributes are set and can be validated + $errors = array(); + + $serviceProviders = array(); + + foreach (scandir(EASYWIDIR . '/third_party/hybridauth/Hybrid/Providers/') as $sp) { + if ($sp != '.' and $sp != '..') { + $serviceProviders[] = substr($sp, 0 , (strlen($sp) - 4)); + } + } + + // Add or mod is opened + if (!$ui->smallletters('action', 2, 'post')) { + + $query = $sql->prepare("SELECT `pageurl` FROM `page_settings` WHERE `resellerid`=? LIMIT 1"); + $query->execute(array($resellerLockupID)); + + $sprache->multipleHelperEndpoint = str_replace('//login.php', '/login.php', str_replace('%url%', '' . $query->fetchColumn() . '/login.php' . '', $sprache->multipleHelperEndpoint)); + + // Gather data for adding if needed and define add template + if ($ui->st('d', 'get') == 'ad') { + + $template_file = 'admin_social_provider_add.tpl'; + + // Gather data for modding in case we have an ID and define mod template + } else if ($ui->st('d', 'get') == 'md' and $id) { + + $query = $sql->prepare("SELECT * FROM `userdata_social_providers` WHERE `serviceProviderID`=? AND `resellerID`=? LIMIT 1"); + $query->execute(array($id, $resellerLockupID)); + foreach ($query->fetchAll(PDO::FETCH_ASSOC) as $row) { + $active = (string) $row['active']; + $name = (string) $row['filename']; + $keyID = (string) $row['identifier']; + $providerToken = (string) $row['token']; + } + + // Check if database entry exists and if not display 404 page + $template_file = ($query->rowCount() > 0) ? 'admin_social_provider_md.tpl' : 'admin_404.tpl'; + + // Show 404 if GET parameters did not add up or no ID was given with mod + } else { + $template_file = 'admin_404.tpl'; + } + + // Form is submitted + } else if ($ui->st('action', 'post') == 'md' or $ui->st('action', 'post') == 'ad') { + + if (!$active) { + $errors['active'] = $sprache->active; + } + + if (!$name or !in_array($name, $serviceProviders)) { + + $errors['name'] = 'Social Auth Provider'; + + } else { + + if ($ui->st('d', 'get') == 'ad') { + + $query = $sql->prepare("SELECT 1 FROM `userdata_social_providers` WHERE `filename`=? AND `resellerID`=? LIMIT 1"); + $query->execute(array($name, $resellerLockupID)); + + } else { + + $query = $sql->prepare("SELECT 1 FROM `userdata_social_providers` WHERE `filename`=? AND `serviceProviderID`!=? AND `resellerID`=? LIMIT 1"); + $query->execute(array($name, $id, $resellerLockupID)); + + } + + if ($query->rowCount() > 0) { + $errors['name'] = 'Social Auth Provider'; + } + } + + // Submitted values are OK + if (count($errors) == 0) { + + // Make the inserts or updates define the log entry and get the affected rows from insert + if ($ui->st('action', 'post') == 'ad') { + + $query = $sql->prepare("INSERT INTO `userdata_social_providers` (`filename`,`active`,`identifier`,`token`,`resellerID`) VALUES (?,?,?,?,?)"); + $query->execute(array($name, $active, $keyID, $providerToken, $resellerLockupID)); + $rowCount = $query->rowCount(); + $loguseraction = '%add% Social Provider ' . $name; + + } else if ($ui->st('action', 'post') == 'md' and $id) { + + $query = $sql->prepare("UPDATE `userdata_social_providers` SET `filename`=?,`active`=?,`identifier`=?,`token`=?WHERE `serviceProviderID`=? AND `resellerID`=? LIMIT 1"); + $query->execute(array($name, $active, $keyID, $providerToken, $id, $resellerLockupID)); + $rowCount = $query->rowCount(); + $loguseraction = '%mod% Social Provider ' . $name; + } + + // Check if a row was affected during insert or update + if (isset($rowCount) and $rowCount > 0) { + $insertlog->execute(); + $template_file = $spracheResponse->table_add; + + // No update or insert failed + } else { + $template_file = $spracheResponse->error_table; + } + + // An error occurred during validation unset the redirect information and display the form again + } else { + unset($header, $text); + $template_file = ($ui->st('d', 'get') == 'ad') ? 'admin_social_provider_add.tpl' : 'admin_social_provider_md.tpl'; + } + } + +// Remove entries in case we have an ID given with the GET request +} else if ($ui->st('d', 'get') == 'dl' and $id) { + + // Nothing submitted yet, display the delete form + if (!$ui->st('action', 'post')) { + + $query = $sql->prepare("SELECT `filename` FROM `userdata_social_providers` WHERE `serviceProviderID`=? AND `resellerID`=? LIMIT 1"); + $query->execute(array($id, $resellerLockupID)); + $name = $query->fetchColumn(); + + // Check if we could find an entry and if not display 404 page + $template_file = ($query->rowCount() > 0) ? 'admin_social_provider_dl.tpl' : 'admin_404.tpl'; + + // User submitted remove the entry + } else if ($ui->st('action', 'post') == 'dl') { + + $query = $sql->prepare("DELETE FROM `userdata_social_providers` WHERE `serviceProviderID`=? AND `resellerID`=? LIMIT 1"); + $query->execute(array($id, $resellerLockupID)); + + // Check if a row was affected meaning an entry could be deleted. If yes add log entry and display success message + if ($query->rowCount() > 0) { + + $query = $sql->prepare("DELETE FROM `userdata_social_identities` WHERE `serviceProviderID`=? AND `resellerID`=? LIMIT 1"); + $query->execute(array($id, $resellerLockupID)); + + $template_file = $spracheResponse->table_del; + $loguseraction = '%del% Social Provider ' . $name; + $insertlog->execute(); + + // Nothing was deleted, display an error + } else { + $template_file = $spracheResponse->error_table; + } + + // GET Request did not add up. Display 404 error. + } else { + $template_file = 'admin_404.tpl'; + } + +// List the available entries +} else { + + $table = array(); + + $query = $sql->prepare("SELECT `serviceProviderID`,`active`,`filename` FROM `userdata_social_providers` WHERE `resellerID`=?"); + $query->execute(array($resellerLockupID)); + foreach ($query->fetchAll(PDO::FETCH_ASSOC) as $row) { + $table[] = array('id' => $row['serviceProviderID'], 'active' => $row['active'], 'name' => $row['filename']); + } + + $template_file = 'admin_social_provider_list.tpl'; +} \ No newline at end of file diff --git a/web/stuff/global_userdata.php b/web/stuff/global_userdata.php index 91e0da2b..2918a00a 100644 --- a/web/stuff/global_userdata.php +++ b/web/stuff/global_userdata.php @@ -40,14 +40,17 @@ include(EASYWIDIR . '/third_party/password_compat/password.php'); if ($ui->st('w', 'get') == 'se') { + if ((!isset($user_id) or $main != 1) or (isset($user_id) and !$pa['usersettings'])) { header('Location: userpanel.php'); die(); } + $loguserid = $user_id; $logusername = getusername($user_id); $logusertype = 'user'; $logreseller = 0; + if (isset($admin_id)) { $logsubuser = $admin_id; } else if (isset($subuser_id)) { @@ -57,13 +60,16 @@ } } else { + if ((!isset($admin_id) or $main != 1)) { header('Location: admin.php'); die(); } + $loguserid = $admin_id; $logusername = getusername($admin_id); $logusertype = 'admin'; + if ($reseller_id == 0) { $logreseller = 0; $logsubuser = 0; @@ -72,9 +78,10 @@ $logreseller = 0; } } -$sprache = getlanguagefile('user',$user_language,$reseller_id); -$lookUpID=($ui->st('w', 'get') == 'se') ? $user_id : $admin_id; +$sprache = getlanguagefile('user', $user_language, $reseller_id); + +$lookUpID = ($ui->st('w', 'get') == 'se') ? $user_id : $admin_id; if ($ui->st('d', 'get') == 'pw') { @@ -101,7 +108,7 @@ } if (count($errors)>0) { - $template_file = implode('
',$errors); + $template_file = implode('
', $errors); } else { $query = $sql->prepare("SELECT `cname` FROM `userdata` WHERE `id`=? AND `resellerid`=? LIMIT 1"); @@ -129,6 +136,16 @@ } else { $template_file = 'userpanel_404.tpl'; } +} else if ($ui->w('spUser', 255, 'get') and $ui->id('spId', 10, 'get')) { + + $query = $sql->prepare("DELETE FROM `userdata_social_identities` WHERE `userID`=? AND `serviceProviderID`=? AND `serviceUserID`=? AND `resellerID`=? LIMIT 1"); + $query->execute(array($lookUpID, $ui->id('spId', 10, 'get'), $ui->w('spUser', 255, 'get'), $reseller_id)); + + if ($query->rowCount() > 0) { + $template_file = $spracheResponse->table_del; + } else { + $template_file = $spracheResponse->error_table; + } } else { @@ -158,11 +175,40 @@ $oldValues[$k] = $v; } } - if ($ui->smallletters('action',2, 'post') == 'md' and isset($oldValues)){ + + if ($ui->smallletters('action', 2, 'post') != 'md' and $ui->w('added', 255, 'get')) { + + $template_file = $spracheResponse->table_add; + + } else if ($ui->smallletters('action', 2, 'post') != 'md') { + + $serviceProviders = array(); + + $htmlExtraInformation['css'][] = ''; + + $query = $sql->prepare("SELECT `serviceProviderID`,`filename` FROM `userdata_social_providers` WHERE `resellerID`=0 AND `active`='Y'"); + $query2 = $sql->prepare("SELECT `serviceUserID` FROM `userdata_social_identities` WHERE `serviceProviderID`=? AND `userID`=? LIMIT 1"); + + + $query->execute(); + foreach ($query->fetchAll(PDO::FETCH_ASSOC) as $row) { + + $query2->execute(array($row['serviceProviderID'], $lookUpID)); + + $serviceProviders[] = array( + 'spId' => $row['serviceProviderID'], + 'sp' => $row['filename'], + 'spUserId' => $query2->fetchColumn() + ); + } + } + + if ($ui->smallletters('action', 2, 'post') == 'md' and isset($oldValues)) { + if ($ui->ismail('mail', 'post') and token(true)) { - $mail_backup=($ui->active('mail_backup', 'post')) ? $ui->active('mail_backup', 'post') : 'N'; - $mail_serverdown=($ui->active('mail_serverdown', 'post')) ? $ui->active('mail_serverdown', 'post') : 'N'; - $mail_ticket=($ui->active('mail_ticket', 'post')) ? $ui->active('mail_ticket', 'post') : 'N'; + $mail_backup = ($ui->active('mail_backup', 'post')) ? $ui->active('mail_backup', 'post') : 'N'; + $mail_serverdown = ($ui->active('mail_serverdown', 'post')) ? $ui->active('mail_serverdown', 'post') : 'N'; + $mail_ticket = ($ui->active('mail_ticket', 'post')) ? $ui->active('mail_ticket', 'post') : 'N'; $name = $ui->names('name', 30, 'post'); $vname = $ui->names('vname', 30, 'post'); $mail = $ui->ismail('mail', 'post'); @@ -172,15 +218,21 @@ $cityn = $ui->isinteger('cityn', 'post'); $street = $ui->names('street', 40, 'post'); $streetn = $ui->streetNumber('streetn', 'post'); + if (($ui->st('w', 'get') == 'se')) { + $query = $sql->prepare("UPDATE `userdata` SET `updateTime`=NOW(),`name`=?,`vname`=?,`mail`=?,`phone`=?,`handy`=?,`city`=?,`cityn`=?,`street`=?,`streetn`=?,`mail_backup`=?,`mail_serverdown`=?,`mail_ticket`=? WHERE `id`=? AND `resellerid`=? LIMIT 1"); - $query->execute(array($name,$vname,$mail,$phone,$handy,$city,$cityn,$street,$streetn,$mail_backup,$mail_serverdown,$mail_ticket,$lookUpID,$reseller_id)); + $query->execute(array($name, $vname, $mail, $phone, $handy, $city, $cityn, $street, $streetn, $mail_backup, $mail_serverdown, $mail_ticket, $lookUpID, $reseller_id)); + } else { - $mail_gsupdate=($ui->active('mail_gsupdate', 'post')) ? $ui->active('mail_gsupdate', 'post') : 'N'; - $mail_securitybreach=($ui->active('mail_securitybreach', 'post')) ? $ui->active('mail_securitybreach', 'post') : 'N'; - $mail_vserver=($ui->active('mail_vserver', 'post')) ? $ui->active('mail_vserver', 'post') : 'N'; + + $mail_gsupdate = ($ui->active('mail_gsupdate', 'post')) ? $ui->active('mail_gsupdate', 'post') : 'N'; + $mail_securitybreach = ($ui->active('mail_securitybreach', 'post')) ? $ui->active('mail_securitybreach', 'post') : 'N'; + $mail_vserver = ($ui->active('mail_vserver', 'post')) ? $ui->active('mail_vserver', 'post') : 'N'; + $query = $sql->prepare("UPDATE `userdata` SET `updateTime`=NOW(),`name`=?,`vname`=?,`mail`=?,`phone`=?,`handy`=?,`city`=?,`cityn`=?,`street`=?,`streetn`=?,`mail_backup`=?,`mail_serverdown`=?,`mail_ticket`=?,`mail_gsupdate`=?,`mail_securitybreach`=?,`mail_vserver`=? WHERE `id`=? AND `resellerid`=? LIMIT 1"); - $query->execute(array($name,$vname,$mail,$phone,$handy,$city,$cityn,$street,$streetn,$mail_backup,$mail_serverdown,$mail_ticket,$mail_gsupdate,$mail_securitybreach,$mail_vserver,$lookUpID,$reseller_id)); + $query->execute(array($name, $vname, $mail, $phone, $handy, $city, $cityn, $street, $streetn, $mail_backup, $mail_serverdown, $mail_ticket, $mail_gsupdate, $mail_securitybreach, $mail_vserver, $lookUpID, $reseller_id)); + } if ($query->rowCount() > 0) { @@ -193,18 +245,21 @@ } $query = $sql->prepare("INSERT INTO `userdata_value_log` (`userID`,`date`,`json`,`resellerID`) VALUES (?,NOW(),?,?)"); - $query->execute(array($lookUpID,json_encode($changed),$reseller_id)); + $query->execute(array($lookUpID, json_encode($changed), $reseller_id)); $template_file = $spracheResponse->table_add; - $loguseraction="%mod% %user% $cname"; + $loguseraction = '%mod% %user% ' . $cname; $insertlog->execute(); + } else { $template_file = $spracheResponse->error_table; } + } else { $template_file = (!token(true)) ? $spracheResponse->token : $sprache->error_mail; } - } else { + + } else if (!isset($template_file)) { $template_file = ($logusertype == 'user') ? 'userpanel_user_md.tpl' : 'admin_user_own_md.tpl'; } } \ No newline at end of file diff --git a/web/stuff/init_admin.php b/web/stuff/init_admin.php index 6c48e7d9..04d7c42d 100644 --- a/web/stuff/init_admin.php +++ b/web/stuff/init_admin.php @@ -129,6 +129,7 @@ if ($reseller_id == 0) { $what_to_be_included_array['mo'] = 'admin_modules.php'; + $what_to_be_included_array['up'] = 'admin_social_provider.php'; if ($easywiModules['pn'] === true) { $what_to_be_included_array['ps'] = 'page_settings.php'; diff --git a/web/stuff/init_page.php b/web/stuff/init_page.php index f1b999c5..0fefa6dc 100644 --- a/web/stuff/init_page.php +++ b/web/stuff/init_page.php @@ -55,11 +55,19 @@ $easywiModules = array('gs' => true, 'ip' => true, 'ea' => true, 'my' => true, 'ro' => true, 'ti' => true, 'le' => true, 'vo' => true); $customModules = array('gs' => array(), 'mo' => array(), 'my' => array(), 'ro' => array(), 'ti' => array(), 'us' => array(), 'vo' => array(), 'pa' => array()); + $what_to_be_included_array = array('news' => 'page_news.php','contact' => 'page_contact.php', + 'page' => 'page_page.php','home' => 'page_page.php','about' => 'page_page.php','gallery' => 'page_page.php','sitemap' => 'page_page.php','search' => 'page_page.php', + 'tag' => 'page_tag.php','categories' => 'page_tag.php','downloads' => 'page_download.php', + 'protectioncheck' => 'protectioncheck.php', + 'register' => 'page_register.php' + ); + $query = $sql->prepare("SELECT * FROM `modules` WHERE `type` IN ('P','C')"); $query2 = $sql->prepare("SELECT `text` FROM `translations` WHERE `type`='mo' AND `transID`=? AND `lang`=? LIMIT 1"); $query->execute(); foreach ($query->fetchAll(PDO::FETCH_ASSOC) as $row) { - if ($row['active'] == 'Y' and $row['type'] == 'A' and is_file(EASYWIDIR . '/stuff/' . $row['file'])) { + + if ($row['active'] == 'Y' and $row['type'] == 'P' and is_file(EASYWIDIR . '/stuff/' . $row['file'])) { $query2->execute(array($row['id'], $user_language)); $name = $query2->fetchColumn(); @@ -79,16 +87,10 @@ } } - $what_to_be_included_array = array('news' => 'page_news.php','contact' => 'page_contact.php', - 'page' => 'page_page.php','home' => 'page_page.php','about' => 'page_page.php','gallery' => 'page_page.php','sitemap' => 'page_page.php','search' => 'page_page.php', - 'tag' => 'page_tag.php','categories' => 'page_tag.php','downloads' => 'page_download.php', - 'protectioncheck' => 'protectioncheck.php', - 'register' => 'page_register.php' - ); - if ($easywiModules['ip'] === true) { $what_to_be_included_array['imprint'] = 'imprint.php'; } + if ($easywiModules['le'] === true) { $what_to_be_included_array['lendserver'] = 'lend.php'; } @@ -99,6 +101,7 @@ $page_data->SetData('lendactiveGS', $row['activeGS']); $page_data->SetData('lendactiveVS', $row['activeVS']); } + $query = $sql->prepare("SELECT `active` FROM `modules` WHERE `id`=5 LIMIT 1"); $query->execute(); $lendActive = $query->fetchColumn(); @@ -192,7 +195,6 @@ foreach ($query->fetchAll(PDO::FETCH_ASSOC) as $row) { if ($row['naviDisplay'] == 'Y') { $page_data->SetMenu($row['title'], $row['id'], $row['subpage'], $row['id']); - } else { $page_data->SetMenu($row['title'], $row['id'], $row['subpage'], $row['id'], false); } @@ -215,37 +217,39 @@ if (isset($page_category)) { if ($page_category == szrp($gsprache->imprint)) { - $s='imprint'; + $s = 'imprint'; } else if ($page_category == szrp($page_sprache->contact)) { - $s='contact'; + $s = 'contact'; } else if ($page_category == szrp($gsprache->downloads)) { - $s='downloads'; + $s = 'downloads'; } else if ($page_category == szrp($page_sprache->protectioncheck)) { - $s='protectioncheck'; + $s = 'protectioncheck'; } else if ($page_category == szrp($page_sprache->tag)) { - $s='tag'; + $s = 'tag'; } else if ($page_category == szrp($page_sprache->categories)) { - $s='categories'; + $s = 'categories'; } else if ($page_category == szrp($page_sprache->about)) { - $s='about'; + $s = 'about'; } else if ($page_category == szrp($gsprache->lendserver)) { - $s='lendserver'; + $s = 'lendserver'; } else if ($page_category == szrp($gsprache->news)) { - $s='news'; + $s = 'news'; } else if ($page_category == szrp($page_sprache->sitemap)) { - $s='sitemap'; + $s = 'sitemap'; } else if ($page_category == szrp($page_sprache->search)) { - $s='search'; + $s = 'search'; } else if ($page_category == szrp($page_sprache->gallery)) { - $s='gallery'; + $s = 'gallery'; } else if ($page_category == szrp($page_sprache->sitemap)) { - $s='sitemap'; + $s = 'sitemap'; } else if ($page_category == szrp($page_sprache->search)) { - $s='search'; + $s = 'search'; } else if ($page_category == szrp($page_sprache->register)) { - $s='register'; + $s = 'register'; } else if (isset($page_data->pages_array['pages']) and in_array($page_category, $page_data->pages_array['pages'])) { - $s='page'; + $s = 'page'; + } else if (isset($what_to_be_included_array[$page_category])) { + $s = $page_category; } } @@ -254,11 +258,26 @@ } else if (isset($user_id)) { $page_lookupid = $user_id; + } else { + + $serviceProviders = array(); + + $query = $sql->prepare("SELECT `filename` FROM `userdata_social_providers` WHERE `resellerID`=0 AND `active`='Y'"); + $query->execute(); + foreach ($query->fetchAll(PDO::FETCH_ASSOC) as $row) { + $serviceProviders[$row['filename']] = strtolower($row['filename']); + } + + if (count($serviceProviders) > 0) { + $htmlExtraInformation['css'][] = ''; + } } if (isset($page_lookupid)) { + $query = $sql->prepare("SELECT `cname`,`name`,`vname`,`lastlogin` FROM `userdata` WHERE `id`=? LIMIT 1"); $query->execute(array($page_lookupid)); + foreach ($query->fetchAll(PDO::FETCH_ASSOC) as $row) { $great_name = $row['name']; $great_vname = $row['vname']; @@ -272,13 +291,20 @@ } } } - if (!isset($s) and !isset($page_category) and isset($page_default) and isid($page_default,19)) { + + if (!isset($s) and !isset($page_category) and isset($page_default) and isid($page_default, 19)) { + $s = 'page'; $default_page_id = $page_default; + } else if (!isset($s) and !isset($page_category) and isset($page_default)) { + $s = $page_default; + } else if (!isset($s) and isset($page_category) and $page_category != '' and $page_category != null) { + $s = 404; $throw404 = true; + } } \ No newline at end of file diff --git a/web/stuff/page_register.php b/web/stuff/page_register.php index d807dc03..971540ff 100644 --- a/web/stuff/page_register.php +++ b/web/stuff/page_register.php @@ -103,16 +103,55 @@ $selectlanguages = getlanguages($template_to_use); // default values in case an input error appears so that the user only needs to enter false data - $mail = $ui->ismail('mail', 'post'); - $password = $ui->password('password', 100, 'post'); - $passwordsecond = $ui->password('passwordsecond', 100, 'post'); - $name = $ui->names('name',255, 'post'); - $vname = $ui->names('vname',255, 'post'); - $vname = $ui->names('vname',255, 'post'); - $bday = date('Y-m-d', strtotime($ui->isDate('birthday', 'post'))); - $cname = $ui->username('cname', 255, 'post'); + if (!$ui->escaped('mail', 'post') and !$ui->escaped('password', 'post') and isset($_SESSION['serviceProviderData'])) { - $bdayShow = (isset($user_language) and $user_language == 'de') ? date('d.m.Y', strtotime($ui->isDate('birthday', 'post'))) : date('Y-m-d', strtotime($ui->isDate('birthday', 'post'))); + $streetn = ''; + $fax = ''; + $handy = ''; + $password = ''; + $passwordsecond = ''; + + $userProfile = $_SESSION['serviceProviderData']['userProfile']; + + $displayNameSplit = preg_split("/\s/", $userProfile['displayName'], -1, PREG_SPLIT_NO_EMPTY); + $vname = (strlen($userProfile['firstName']) == 0 and isset($displayNameSplit[0]) and strlen($displayNameSplit[0]) > 0) ? $displayNameSplit[0] : $userProfile['firstName']; + $name = (strlen($userProfile['lastName']) == 0 and isset($displayNameSplit[1]) and strlen($displayNameSplit[1]) > 0) ? $displayNameSplit[1] : $userProfile['lastName']; + $cname = str_replace(' ', '', $userProfile['displayName']); + + $salutation = ($userProfile['gender'] == 'female') ? 2 : 1; + + $bday = $userProfile['birthYear'] . '-' . $userProfile['birthMonth'] . '-' . $userProfile['birthDay']; + $bdayShow = (isset($user_language) and $user_language == 'de') ? date('d.m.Y', strtotime($bday)) : date('Y-m-d', strtotime($bday)); + + $mail = $userProfile['email']; + $flagmenu = $userProfile['language']; + $phone = $userProfile['phone']; + $city = $userProfile['city']; + $cityn = $userProfile['zip']; + $street = $userProfile['address']; + + } else { + + $mail = $ui->ismail('mail', 'post'); + $password = $ui->password('password', 100, 'post'); + $passwordsecond = $ui->password('passwordsecond', 100, 'post'); + $name = $ui->names('name',255, 'post'); + $vname = $ui->names('vname',255, 'post'); + $bday = date('Y-m-d', strtotime($ui->isDate('birthday', 'post'))); + $cname = $ui->username('cname', 255, 'post'); + $salutation = $ui->id('salutation', 1, 'post'); + $flagmenu = $ui->st('flagmenu', 'post'); + $phone = $ui->phone('phone', 50, 'post'); + $fax = $ui->phone('fax', 50, 'post'); + $handy = $ui->phone('handy', 50, 'post'); + $city = $ui->names('city', 50, 'post'); + $cityn = $ui->id('cityn', 6, 'post'); + $street = $ui->names('street', 50, 'post'); + $streetn = $ui->w('streetn', 6, 'post'); + + $bdayShow = (isset($user_language) and $user_language == 'de') ? date('d.m.Y', strtotime($ui->isDate('birthday', 'post'))) : date('Y-m-d', strtotime($ui->isDate('birthday', 'post'))); + + } $query = $sql->prepare("SELECT `lang`,`text` FROM `translations` WHERE `type`='to'"); $query->execute(); @@ -218,7 +257,7 @@ // insert data $query = $sql->prepare("INSERT INTO `userdata` (`accounttype`,`active`,`mail`,`token`,`creationTime`,`updateTime`,`salutation`,`country`,`name`,`vname`,`birthday`,`phone`,`fax`,`handy`,`city`,`cityn`,`street`,`streetn`) VALUES ('u','R',?,?,NOW(),NOW(),?,?,?,?,?,?,?,?,?,?,?,?)"); - $query->execute(array($mail, $activeHash, $ui->id('salutation', 1, 'post'), $ui->st('country', 'post'), $name, $vname, $bday, $ui->phone('phone', 50, 'post'), $ui->phone('fax', 50, 'post'), $ui->phone('handy', 50, 'post'), $ui->names('city', 50, 'post'), $ui->id('cityn', 6, 'post'), $ui->names('street', 50, 'post'), $ui->w('streetn', 6, 'post'))); + $query->execute(array($mail, $activeHash, $salutation, $flagmenu, $name, $vname, $bday, $phone, $fax, $handy, $city, $cityn, $street, $streetn)); $userID = $sql->lastInsertId(); @@ -241,38 +280,72 @@ $groupID = $query->fetchColumn(); $query = $sql->prepare("INSERT INTO `userdata_groups` (`userID`,`groupID`,`resellerID`) VALUES (?,?,0)"); - $query->execute(array($userID,$groupID)); + $query->execute(array($userID, $groupID)); - // If is is in DB and mail could be send + // If usergroup is in DB and mail could be send if ($query->rowCount() > 0) { - if ($registration == 'A') { + + if (isset($_SESSION['serviceProviderData'])) { + + $query = $sql->prepare("INSERT INTO `userdata_social_identities` (`userID`,`serviceProviderID`,`serviceUserID`,`resellerID`) VALUES (?,?,?,0)"); + $query->execute(array($userID, $_SESSION['serviceProviderData']['serviceProviderID'], $_SESSION['serviceProviderData']['userProfile']['identifier'])); + + $directLogin = true; + + } else if ($registration == 'A') { + $template_file = $page_sprache->registerAdmin; + } else if ($registration == 'M') { + $template_file = $page_sprache->registerMailSend; $activationLink = $page_data->pages['register']['link']; - $activationLink .= ($page_data->seo == 'Y') ? 'activate/' . $activeHash.'/' : '&activate=' . $activeHash; + $activationLink .= ($page_data->seo == 'Y') ? 'activate/' . $activeHash . '/' : '&activate=' . $activeHash; // send Mail sendmail('emailregister',$userID,'', $activationLink); + } else { + $directLogin = true; + } + + if (isset($directLogin)) { + + $query = $sql->prepare("UPDATE `userdata` SET `active`='Y',`token`=null,`updateTime`=NOW() WHERE `id`=? LIMIT 1"); + $query->execute(array($userID)); + $_SESSION['userid'] = $userID; $_SESSION['resellerid'] = 0; $template_file = $page_sprache->registerAccountOK; + + $header = ''; + $text = $rsprache->refresh; + } + } else { + $error[] = $page_sprache->registerErrorUnknown; $token = md5(date('Y-d-m H:i:s u') . md5(mt_rand())); + $_SESSION['registerToken'] = $token; + $template_file = 'page_register.tpl'; + } } + } else if ($ui->escaped('email', 'post')) { + $template_file = $page_sprache->registerErrorBot; + } else { + $token = md5(date('Y-d-m H:i:s u').md5(mt_rand())); $_SESSION['registerToken'] = $token; $template_file = 'page_register.tpl'; + } } } \ No newline at end of file diff --git a/web/stuff/tables_add.php b/web/stuff/tables_add.php index f7ed9acd..13b4e9dd 100644 --- a/web/stuff/tables_add.php +++ b/web/stuff/tables_add.php @@ -1114,18 +1114,30 @@ `externalID` varchar(255) DEFAULT NULL, `sourceSystemID` varchar(255) NULL, `resellerid` int(10) unsigned DEFAULT 0, - PRIMARY KEY (`id`),KEY(`resellerid`) + PRIMARY KEY (`id`),KEY(`active`),KEY(`resellerid`) ) ENGINE=InnoDB"; $add = $sql->prepare($query); $add->execute(); -#https://github.com/easy-wi/developer/issues/5 -$query = "CREATE TABLE IF NOT EXISTS `userdata_value_log` ( +#https://github.com/easy-wi/developer/issues/1 +$query = "CREATE TABLE IF NOT EXISTS `userdata_social_identities` ( `userID` int(10) unsigned NOT NULL, - `date` datetime NOT NULL, - `json` text NOT NULL, + `serviceProviderID` int(10) unsigned NOT NULL, + `serviceUserID` varchar(255) DEFAULT NULL, `resellerID` int(10) unsigned DEFAULT 0, - KEY (`userID`),KEY(`resellerID`) + PRIMARY KEY (`userID`,`serviceProviderID`,`serviceUserID`),KEY(`resellerID`) +) ENGINE=InnoDB"; +$add = $sql->prepare($query); +$add->execute(); + +$query = "CREATE TABLE IF NOT EXISTS `userdata_social_providers` ( + `serviceProviderID` int(10) unsigned NOT NULL AUTO_INCREMENT, + `active` enum('Y','N') NOT NULL DEFAULT 'Y', + `identifier` varchar(255) DEFAULT NULL, + `token` varchar(255) DEFAULT NULL, + `filename` varchar(255) DEFAULT NULL, + `resellerID` int(10) unsigned DEFAULT 0, + PRIMARY KEY (`serviceProviderID`),KEY(`resellerID`) ) ENGINE=InnoDB"; $add = $sql->prepare($query); $add->execute(); @@ -1170,6 +1182,17 @@ $add = $sql->prepare($query); $add->execute(); +#https://github.com/easy-wi/developer/issues/5 +$query = "CREATE TABLE IF NOT EXISTS `userdata_value_log` ( + `userID` int(10) unsigned NOT NULL, + `date` datetime NOT NULL, + `json` text NOT NULL, + `resellerID` int(10) unsigned DEFAULT 0, + KEY (`userID`),KEY(`resellerID`) +) ENGINE=InnoDB"; +$add = $sql->prepare($query); +$add->execute(); + $query = "CREATE TABLE IF NOT EXISTS `usergroups` ( `id` int(10) unsigned NOT NULL AUTO_INCREMENT, `defaultgroup` enum('Y','N') DEFAULT 'N', diff --git a/web/stuff/tables_repair.php b/web/stuff/tables_repair.php index 44cc5d5d..97772622 100644 --- a/web/stuff/tables_repair.php +++ b/web/stuff/tables_repair.php @@ -43,7 +43,8 @@ die('No acces'); } -$defined['addons'] = array('id' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), +$defined['addons'] = array( + 'id' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), 'active' => array("Type"=>"enum('Y','N')","Null"=>"NO","Key"=>"","Default"=>"N","Extra"=>""), 'paddon' => array("Type"=>"enum('Y','N')","Null"=>"YES","Key"=>"","Default"=>"N","Extra"=>""), 'addon' => array("Type"=>"varchar(15)","Null"=>"NO","Key"=>"","Default"=>"","Extra"=>""), @@ -57,12 +58,14 @@ 'resellerid' => array("Type"=>"int(10) unsigned","Null"=>"YES","Key"=>"MUL","Default"=>"0","Extra"=>"") ); -$defined['addons_allowed'] = array('addon_id' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>""), +$defined['addons_allowed'] = array( + 'addon_id' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>""), 'servertype_id' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>""), 'reseller_id' => array("Type"=>"int(10) unsigned","Null"=>"YES","Key"=>"MUL","Default"=>"0","Extra"=>"") ); -$defined['addons_installed'] = array('id' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), +$defined['addons_installed'] = array( + 'id' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), 'userid' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"MUL","Default"=>"","Extra"=>""), 'addonid' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"MUL","Default"=>"","Extra"=>""), 'serverid' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"MUL","Default"=>"","Extra"=>""), @@ -71,11 +74,13 @@ 'resellerid' => array("Type"=>"int(10) unsigned","Null"=>"YES","Key"=>"MUL","Default"=>"0","Extra"=>"") ); -$defined['api_ips'] = array('ip' => array("Type"=>"varchar(15)","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>""), +$defined['api_ips'] = array( + 'ip' => array("Type"=>"varchar(15)","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>""), 'resellerID' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"0","Extra"=>"") ); -$defined['api_settings'] = array('resellerID' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>""), +$defined['api_settings'] = array( + 'resellerID' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>""), 'userID' => array("Type"=>"int(10) unsigned","Null"=>"YES","Key"=>"MUL","Default"=>"","Extra"=>""), 'active' => array("Type"=>"enum('Y','N')","Null"=>"NO","Key"=>"","Default"=>"N","Extra"=>""), 'user' => array("Type"=>"varchar(255)","Null"=>"NO","Key"=>"","Default"=>"","Extra"=>""), @@ -93,7 +98,8 @@ 'resellerID' => array("Type"=>"int(10) unsigned","Null"=>"YES","Key"=>"MUL","Default"=>"0","Extra"=>"") ); -$defined['api_import'] = array('importID' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), +$defined['api_import'] = array( + 'importID' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), 'active' => array("Type"=>"enum('Y','N')","Null"=>"NO","Key"=>"","Default"=>"Y","Extra"=>""), 'fetchUpdates' => array("Type"=>"enum('Y','N')","Null"=>"NO","Key"=>"","Default"=>"Y","Extra"=>""), 'token' => array("Type"=>"varchar(255)","Null"=>"NO","Key"=>"","Default"=>"","Extra"=>""), @@ -107,19 +113,22 @@ 'resellerID' => array("Type"=>"int(10) unsigned","Null"=>"YES","Key"=>"MUL","Default"=>"0","Extra"=>"") ); -$defined['badips'] = array('id' => array("Type"=>"bigint(19) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), +$defined['badips'] = array( + 'id' => array("Type"=>"bigint(19) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), 'badip' => array("Type"=>"varchar(15)","Null"=>"NO","Key"=>"","Default"=>"","Extra"=>""), 'bantime' => array("Type"=>"datetime","Null"=>"NO","Key"=>"","Default"=>"","Extra"=>""), 'failcount' => array("Type"=>"smallint(2) unsigned","Null"=>"YES","Key"=>"","Default"=>"0","Extra"=>""), 'reason' => array("Type"=>"varchar(15)","Null"=>"NO","Key"=>"","Default"=>"","Extra"=>"") ); -$defined['custom_columns'] = array('customID' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>""), +$defined['custom_columns'] = array( + 'customID' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>""), 'itemID' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>""), 'var' => array("Type"=>"varchar(255)","Null"=>"NO","Key"=>"","Default"=>"","Extra"=>"") ); -$defined['custom_columns_settings'] = array('customID' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), +$defined['custom_columns_settings'] = array( + 'customID' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), 'active' => array("Type"=>"enum('Y','N')","Null"=>"NO","Key"=>"","Default"=>"Y","Extra"=>""), 'item' => array("Type"=>"enum('D','G','S','T','U','V')","Null"=>"NO","Key"=>"MUL","Default"=>"","Extra"=>""), 'type' => array("Type"=>"enum('I','V')","Null"=>"NO","Key"=>"","Default"=>"","Extra"=>""), @@ -127,7 +136,8 @@ 'name' => array("Type"=>"varchar(255)","Null"=>"NO","Key"=>"","Default"=>"","Extra"=>"") ); -$defined['rootsDedicated'] = array('dedicatedID' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), +$defined['rootsDedicated'] = array( + 'dedicatedID' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), 'active' => array("Type"=>"enum('Y','N')","Null"=>"YES","Key"=>"","Default"=>"Y","Extra"=>""), 'status' => array("Type"=>"smallint(1) unsigned","Null"=>"YES","Key"=>"","Default"=>"","Extra"=>""), 'userID' => array("Type"=>"int(10) unsigned","Null"=>"YES","Key"=>"MUL","Default"=>"","Extra"=>""), @@ -153,7 +163,8 @@ 'resellerID' => array("Type"=>"int(10) unsigned","Null"=>"YES","Key"=>"MUL","Default"=>"0","Extra"=>"") ); -$defined['rootsDHCP'] = array('id' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), +$defined['rootsDHCP'] = array( + 'id' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), 'active' => array("Type"=>"enum('Y','N')","Null"=>"YES","Key"=>"","Default"=>"Y","Extra"=>""), 'ip' => array("Type"=>"varchar(15)","Null"=>"YES","Key"=>"","Default"=>"","Extra"=>""), 'port' => array("Type"=>"blob","Null"=>"YES","Key"=>"","Default"=>"","Extra"=>""), @@ -178,7 +189,8 @@ 'resellerID' => array("Type"=>"int(10) unsigned","Null"=>"YES","Key"=>"MUL","Default"=>"0","Extra"=>"") ); -$defined['rootsPXE'] = array('id' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), +$defined['rootsPXE'] = array( + 'id' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), 'active' => array("Type"=>"enum('Y','N')","Null"=>"YES","Key"=>"","Default"=>"Y","Extra"=>""), 'ip' => array("Type"=>"varchar(15)","Null"=>"YES","Key"=>"","Default"=>"","Extra"=>""), 'port' => array("Type"=>"blob","Null"=>"YES","Key"=>"","Default"=>"","Extra"=>""), @@ -204,7 +216,8 @@ 'vlanName' => array("Type"=>"varchar(255)","Null"=>"YES","Key"=>"","Default"=>"","Extra"=>"") ); -$defined['eac'] = array('id' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), +$defined['eac'] = array( + 'id' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), 'active' => array("Type"=>"enum('Y','N')","Null"=>"YES","Key"=>"","Default"=>"N","Extra"=>""), 'ip' => array("Type"=>"varchar(15)","Null"=>"YES","Key"=>"","Default"=>"","Extra"=>""), 'port' => array("Type"=>"blob","Null"=>"YES","Key"=>"","Default"=>"","Extra"=>""), @@ -230,13 +243,15 @@ 'resellerid' => array("Type"=>"int(10) unsigned","Null"=>"YES","Key"=>"MUL","Default"=>"0","Extra"=>"") ); -$defined['easywi_version'] = array('id' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), +$defined['easywi_version'] = array( + 'id' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), 'version' => array("Type"=>"decimal(4,2)","Null"=>"NO","Key"=>"","Default"=>"3.30","Extra"=>""), 'de' => array("Type"=>"text","Null"=>"YES","Key"=>"","Default"=>"","Extra"=>""), 'en' => array("Type"=>"text","Null"=>"YES","Key"=>"","Default"=>"","Extra"=>"") ); -$defined['feeds_news'] = array('newsID' => array("Type"=>"bigint(19) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), +$defined['feeds_news'] = array( + 'newsID' => array("Type"=>"bigint(19) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), 'feedID' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"MUL","Default"=>"0","Extra"=>""), 'active' => array("Type"=>"enum('Y','N')","Null"=>"YES","Key"=>"","Default"=>"Y","Extra"=>""), 'title' => array("Type"=>"varchar(255)","Null"=>"NO","Key"=>"","Default"=>"","Extra"=>""), @@ -248,7 +263,8 @@ 'resellerID' => array("Type"=>"int(10) unsigned","Null"=>"YES","Key"=>"MUL","Default"=>"0","Extra"=>"") ); -$defined['feeds_settings'] = array('settingsID' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), +$defined['feeds_settings'] = array( + 'settingsID' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), 'active' => array("Type"=>"enum('Y','N')","Null"=>"YES","Key"=>"","Default"=>"Y","Extra"=>""), 'merge' => array("Type"=>"enum('Y','N')","Null"=>"YES","Key"=>"","Default"=>"Y","Extra"=>""), 'displayContent' => array("Type"=>"enum('Y','N')","Null"=>"YES","Key"=>"","Default"=>"N","Extra"=>""), @@ -264,7 +280,8 @@ 'resellerID' => array("Type"=>"int(10) unsigned","Null"=>"YES","Key"=>"MUL","Default"=>"0","Extra"=>"") ); -$defined['feeds_url'] = array('feedID' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), +$defined['feeds_url'] = array( + 'feedID' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), 'active' => array("Type"=>"enum('Y','N')","Null"=>"YES","Key"=>"","Default"=>"Y","Extra"=>""), 'twitter' => array("Type"=>"enum('Y','N')","Null"=>"YES","Key"=>"","Default"=>"N","Extra"=>""), 'feedUrl' => array("Type"=>"varchar(255)","Null"=>"YES","Key"=>"","Default"=>"","Extra"=>""), @@ -273,7 +290,8 @@ 'resellerID' => array("Type"=>"int(10) unsigned","Null"=>"YES","Key"=>"MUL","Default"=>"0","Extra"=>"") ); -$defined['gserver_file_templates'] = array('templateID' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), +$defined['gserver_file_templates'] = array( + 'templateID' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), 'userID' => array("Type"=>"int(10) unsigned","Null"=>"YES","Key"=>"MUL","Default"=>"","Extra"=>""), 'servertype' => array("Type"=>"varchar(255)","Null"=>"YES","Key"=>"","Default"=>"","Extra"=>""), 'name' => array("Type"=>"varchar(255)","Null"=>"NO","Key"=>"","Default"=>"","Extra"=>""), @@ -281,7 +299,8 @@ 'resellerID' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"MUL","Default"=>"0","Extra"=>"") ); -$defined['gserver_restarts'] = array('id' => array("Type"=>"bigint(19) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), +$defined['gserver_restarts'] = array( + 'id' => array("Type"=>"bigint(19) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), 'template' => array("Type"=>"smallint(1) unsigned","Null"=>"NO","Key"=>"","Default"=>"","Extra"=>""), 'anticheat' => array("Type"=>"smallint(1) unsigned","Null"=>"YES","Key"=>"","Default"=>"1","Extra"=>""), 'protected' => array("Type"=>"enum('Y','N')","Null"=>"YES","Key"=>"","Default"=>"N","Extra"=>""), @@ -298,7 +317,8 @@ 'resellerid' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"MUL","Default"=>"0","Extra"=>"") ); -$defined['gsswitch'] = array('id' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), +$defined['gsswitch'] = array( + 'id' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), 'active' => array("Type"=>"enum('Y','N')","Null"=>"NO","Key"=>"","Default"=>"Y","Extra"=>""), 'autoRestart' => array("Type"=>"enum('Y','N')","Null"=>"YES","Key"=>"","Default"=>"Y","Extra"=>""), 'userid' => array("Type"=>"int(10) unsigned","Null"=>"YES","Key"=>"MUL","Default"=>"0","Extra"=>""), @@ -345,13 +365,15 @@ 'resellerid' => array("Type"=>"int(10) unsigned","Null"=>"YES","Key"=>"MUL","Default"=>"0","Extra"=>"") ); -$defined['imprints'] = array('id' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), +$defined['imprints'] = array( + 'id' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), 'language' => array("Type"=>"varchar(2)","Null"=>"NO","Key"=>"","Default"=>"","Extra"=>""), 'imprint' => array("Type"=>"text","Null"=>"YES","Key"=>"","Default"=>"","Extra"=>""), 'resellerid' => array("Type"=>"int(10) unsigned","Null"=>"YES","Key"=>"MUL","Default"=>"0","Extra"=>"") ); -$defined['jobs'] = array('jobID' => array("Type"=>"bigint(19) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), +$defined['jobs'] = array( + 'jobID' => array("Type"=>"bigint(19) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), 'hostID' => array("Type"=>"int(10) unsigned","Null"=>"YES","Key"=>"MUL","Default"=>"0","Extra"=>""), 'affectedID' => array("Type"=>"int(10) unsigned","Null"=>"YES","Key"=>"MUL","Default"=>"0","Extra"=>""), 'userID' => array("Type"=>"int(10) unsigned","Null"=>"YES","Key"=>"MUL","Default"=>"0","Extra"=>""), @@ -366,7 +388,8 @@ 'resellerID' => array("Type"=>"int(10) unsigned","Null"=>"YES","Key"=>"MUL","Default"=>"0","Extra"=>"") ); -$defined['lendedserver'] = array('id' => array("Type"=>"bigint(19) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), +$defined['lendedserver'] = array( + 'id' => array("Type"=>"bigint(19) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), 'serverid' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"MUL","Default"=>"","Extra"=>""), 'servertype' => array("Type"=>"varchar(1)","Null"=>"NO","Key"=>"","Default"=>"g","Extra"=>""), 'rcon' => array("Type"=>"varchar(60)","Null"=>"YES","Key"=>"","Default"=>"","Extra"=>""), @@ -379,7 +402,8 @@ 'resellerid' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"MUL","Default"=>"0","Extra"=>"") ); -$defined['lendsettings'] = array('id' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), +$defined['lendsettings'] = array( + 'id' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), 'activeGS' => array("Type"=>"enum('A','R','B','N')","Null"=>"NO","Key"=>"","Default"=>"N","Extra"=>""), 'activeVS' => array("Type"=>"enum('A','R','B','N')","Null"=>"NO","Key"=>"","Default"=>"N","Extra"=>""), 'userGame' => array("Type"=>"enum('A','B','R')","Null"=>"NO","Key"=>"","Default"=>"B","Extra"=>""), @@ -418,7 +442,8 @@ 'oldcheck' => array("Type"=>"datetime","Null"=>"NO","Key"=>"","Default"=>"","Extra"=>"") ); -$defined['lendstats'] = array('lendDate' => array("Type"=>"datetime","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>""), +$defined['lendstats'] = array( + 'lendDate' => array("Type"=>"datetime","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>""), 'serverID' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>""), 'serverType' => array("Type"=>"enum('v','g')","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>""), 'lendtime' => array("Type"=>"smallint(3) unsigned","Null"=>"NO","Key"=>"","Default"=>"","Extra"=>""), @@ -426,7 +451,8 @@ 'resellerID' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"MUL","Default"=>"","Extra"=>"") ); -$defined['mail_log'] = array('id' => array("Type"=>"bigint(19) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), +$defined['mail_log'] = array( + 'id' => array("Type"=>"bigint(19) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), 'uid' => array("Type"=>"int(10) unsigned","Null"=>"YES","Key"=>"MUL","Default"=>"","Extra"=>""), 'topic' => array("Type"=>"varchar(255)","Null"=>"NO","Key"=>"","Default"=>"","Extra"=>""), 'date' => array("Type"=>"datetime","Null"=>"NO","Key"=>"","Default"=>"","Extra"=>""), @@ -434,7 +460,8 @@ ); #https://github.com/easy-wi/developer/issues/61 add module management -$defined['modules'] = array('id' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), +$defined['modules'] = array( + 'id' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), 'get' => array("Type"=>"varchar(255)","Null"=>"NO","Key"=>"","Default"=>"","Extra"=>""), 'file' => array("Type"=>"varchar(255)","Null"=>"NO","Key"=>"","Default"=>"","Extra"=>""), 'sub' => array("Type"=>"varchar(2)","Null"=>"NO","Key"=>"","Default"=>"","Extra"=>""), @@ -443,7 +470,8 @@ ); #https://github.com/easy-wi/developer/issues/42 column description added -$defined['mysql_external_dbs'] = array('id' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), +$defined['mysql_external_dbs'] = array( + 'id' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), 'active' => array("Type"=>"enum('Y','N')","Null"=>"YES","Key"=>"","Default"=>"Y","Extra"=>""), 'sid' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"MUL","Default"=>"","Extra"=>""), 'uid' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"MUL","Default"=>"","Extra"=>""), @@ -462,7 +490,8 @@ 'resellerid' => array("Type"=>"int(10) unsigned","Null"=>"YES","Key"=>"MUL","Default"=>"0","Extra"=>"") ); -$defined['mysql_external_servers'] = array('id' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), +$defined['mysql_external_servers'] = array( + 'id' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), 'active' => array("Type"=>"enum('Y','N')","Null"=>"YES","Key"=>"","Default"=>"Y","Extra"=>""), 'ip' => array("Type"=>"varchar(15)","Null"=>"NO","Key"=>"","Default"=>"","Extra"=>""), 'port' => array("Type"=>"smallint(5) unsigned","Null"=>"YES","Key"=>"","Default"=>"3306","Extra"=>""), @@ -477,7 +506,8 @@ 'resellerid' => array("Type"=>"int(10) unsigned","Null"=>"YES","Key"=>"MUL","Default"=>"0","Extra"=>"") ); -$defined['page_comments'] = array('commentID' => array("Type"=>"bigint(19) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), +$defined['page_comments'] = array( + 'commentID' => array("Type"=>"bigint(19) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), 'pageTextID' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"MUL","Default"=>"","Extra"=>""), 'replyTo' => array("Type"=>"bigint(19) unsigned","Null"=>"YES","Key"=>"MUL","Default"=>"","Extra"=>""), 'date' => array("Type"=>"datetime","Null"=>"NO","Key"=>"","Default"=>"","Extra"=>""), @@ -493,7 +523,8 @@ 'resellerID' => array("Type"=>"int(10) unsigned","Null"=>"YES","Key"=>"MUL","Default"=>"0","Extra"=>"") ); -$defined['page_downloads'] = array('fileID' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), +$defined['page_downloads'] = array( + 'fileID' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), 'show' => array("Type"=>"enum('A','R','N','E')","Null"=>"YES","Key"=>"","Default"=>"E","Extra"=>""), 'order' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"MUL","Default"=>"","Extra"=>""), 'count' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"","Default"=>"","Extra"=>""), @@ -504,14 +535,16 @@ 'resellerID' => array("Type"=>"int(10) unsigned","Null"=>"YES","Key"=>"MUL","Default"=>"0","Extra"=>"") ); -$defined['page_downloads_log'] = array('fileID' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"MUL","Default"=>"","Extra"=>""), +$defined['page_downloads_log'] = array( + 'fileID' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"MUL","Default"=>"","Extra"=>""), 'date' => array("Type"=>"datetime","Null"=>"YES","Key"=>"","Default"=>"","Extra"=>""), 'ip' => array("Type"=>"varchar(15)","Null"=>"YES","Key"=>"","Default"=>"","Extra"=>""), 'hostname' => array("Type"=>"varchar(255)","Null"=>"YES","Key"=>"","Default"=>"","Extra"=>""), 'resellerID' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"MUL","Default"=>"","Extra"=>"") ); -$defined['page_pages'] = array('id' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), +$defined['page_pages'] = array( + 'id' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), 'subpage' => array("Type"=>"int(10) unsigned","Null"=>"YES","Key"=>"MUL","Default"=>"","Extra"=>""), 'released' => array("Type"=>"smallint(1) unsigned","Null"=>"YES","Key"=>"","Default"=>"1","Extra"=>""), 'sort' => array("Type"=>"int(10) unsigned","Null"=>"YES","Key"=>"","Default"=>"","Extra"=>""), @@ -525,7 +558,8 @@ 'resellerid' => array("Type"=>"int(10) unsigned","Null"=>"YES","Key"=>"MUL","Default"=>"0","Extra"=>"") ); -$defined['page_pages_text'] = array('id' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), +$defined['page_pages_text'] = array( + 'id' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), 'pageid' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"MUL","Default"=>"","Extra"=>""), 'language' => array("Type"=>"varchar(2)","Null"=>"NO","Key"=>"","Default"=>"","Extra"=>""), 'title' => array("Type"=>"varchar(255)","Null"=>"YES","Key"=>"","Default"=>"","Extra"=>""), @@ -534,12 +568,14 @@ 'resellerid' => array("Type"=>"int(10) unsigned","Null"=>"YES","Key"=>"MUL","Default"=>"0","Extra"=>"") ); -$defined['page_register_questions'] = array('id' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), +$defined['page_register_questions'] = array( + 'id' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), 'question' => array("Type"=>"varchar(255)","Null"=>"YES","Key"=>"","Default"=>"","Extra"=>""), 'answer' => array("Type"=>"varchar(255)","Null"=>"YES","Key"=>"","Default"=>"","Extra"=>"") ); -$defined['page_settings'] = array('id' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), +$defined['page_settings'] = array( + 'id' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), 'seo' => array("Type"=>"enum('Y','N')","Null"=>"YES","Key"=>"","Default"=>"N","Extra"=>""), 'rssfeed' => array("Type"=>"enum('Y','N')","Null"=>"YES","Key"=>"","Default"=>"Y","Extra"=>""), 'rssfeed_fulltext' => array("Type"=>"enum('Y','N')","Null"=>"YES","Key"=>"","Default"=>"Y","Extra"=>""), @@ -566,7 +602,8 @@ 'resellerid' => array("Type"=>"int(10) unsigned","Null"=>"YES","Key"=>"MUL","Default"=>"0","Extra"=>"") ); -$defined['page_terms'] = array('id' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), +$defined['page_terms'] = array( + 'id' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), 'language' => array("Type"=>"varchar(2)","Null"=>"NO","Key"=>"","Default"=>"","Extra"=>""), 'name' => array("Type"=>"varchar(255)","Null"=>"YES","Key"=>"","Default"=>"","Extra"=>""), 'search_name' => array("Type"=>"varchar(255)","Null"=>"YES","Key"=>"","Default"=>"","Extra"=>""), @@ -576,13 +613,15 @@ 'resellerid' => array("Type"=>"int(10) unsigned","Null"=>"YES","Key"=>"MUL","Default"=>"0","Extra"=>"") ); -$defined['page_terms_used'] = array('page_id' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"0","Extra"=>""), +$defined['page_terms_used'] = array( + 'page_id' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"0","Extra"=>""), 'term_id' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"0","Extra"=>""), 'language_id' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"0","Extra"=>""), 'resellerid' => array("Type"=>"int(10) unsigned","Null"=>"YES","Key"=>"MUL","Default"=>"0","Extra"=>"") ); -$defined['resellerdata'] = array('id' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), +$defined['resellerdata'] = array( + 'id' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), 'useractive' => array("Type"=>"enum('Y','N')","Null"=>"NO","Key"=>"","Default"=>"Y","Extra"=>""), 'ips' => array("Type"=>"text","Null"=>"YES","Key"=>"","Default"=>"","Extra"=>""), 'maxuser' => array("Type"=>"int(10) unsigned","Null"=>"YES","Key"=>"","Default"=>"","Extra"=>""), @@ -596,7 +635,8 @@ 'resellersid' => array("Type"=>"int(10) unsigned","Null"=>"YES","Key"=>"MUL","Default"=>"","Extra"=>"") ); -$defined['resellerimages'] = array('id' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), +$defined['resellerimages'] = array( + 'id' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), 'active' => array("Type"=>"enum('Y','N')","Null"=>"NO","Key"=>"","Default"=>"Y","Extra"=>""), 'distro' => array("Type"=>"varchar(50)","Null"=>"NO","Key"=>"","Default"=>"","Extra"=>""), 'description' => array("Type"=>"varchar(255)","Null"=>"NO","Key"=>"","Default"=>"","Extra"=>""), @@ -604,7 +644,8 @@ 'pxelinux' => array("Type"=>"text","Null"=>"YES","Key"=>"","Default"=>"","Extra"=>"") ); -$defined['rserverdata'] = array('id' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), +$defined['rserverdata'] = array( + 'id' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), 'active' => array("Type"=>"enum('Y','N')","Null"=>"NO","Key"=>"","Default"=>"Y","Extra"=>""), 'hyperthreading' => array("Type"=>"enum('Y','N')","Null"=>"YES","Key"=>"","Default"=>"N","Extra"=>""), 'cores' => array("Type"=>"smallint(3) unsigned","Null"=>"YES","Key"=>"","Default"=>"4","Extra"=>""), @@ -635,7 +676,8 @@ 'resellerid' => array("Type"=>"int(10) unsigned","Null"=>"YES","Key"=>"MUL","Default"=>"0","Extra"=>"") ); -$defined['rservermasterg'] = array('id' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), +$defined['rservermasterg'] = array( + 'id' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), 'serverid' => array("Type"=>"varchar(11)","Null"=>"NO","Key"=>"","Default"=>"","Extra"=>""), 'servertypeid' => array("Type"=>"int(10) unsigned","Null"=>"YES","Key"=>"MUL","Default"=>"","Extra"=>""), 'localVersion' => array("Type"=>"varchar(255)","Null"=>"YES","Key"=>"","Default"=>"","Extra"=>""), @@ -645,7 +687,8 @@ 'resellerid' => array("Type"=>"int(10) unsigned","Null"=>"YES","Key"=>"MUL","Default"=>"0","Extra"=>"") ); -$defined['serverlist'] = array('id' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), +$defined['serverlist'] = array( + 'id' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), 'switchID' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"MUL","Default"=>"","Extra"=>""), 'servertype' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"MUL","Default"=>"","Extra"=>""), 'anticheat' => array("Type"=>"smallint(1) unsigned","Null"=>"YES","Key"=>"","Default"=>"1","Extra"=>""), @@ -671,7 +714,8 @@ 'uploaddir' => array("Type"=>"blob","Null"=>"YES","Key"=>"","Default"=>"","Extra"=>""), 'resellerid' => array("Type"=>"int(10) unsigned","Null"=>"YES","Key"=>"MUL","Default"=>"0","Extra"=>"") ); -$defined['servertypes'] = array('id' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), +$defined['servertypes'] = array( + 'id' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), 'steamgame' => array("Type"=>"enum('Y','N','S')","Null"=>"NO","Key"=>"","Default"=>"Y","Extra"=>""), 'appID' => array("Type"=>"int(10) unsigned","Null"=>"YES","Key"=>"MUL","Default"=>"","Extra"=>""), 'steamVersion' => array("Type"=>"varchar(255)","Null"=>"YES","Key"=>"","Default"=>"","Extra"=>""), @@ -712,7 +756,8 @@ 'resellerid' => array("Type"=>"int(10) unsigned","Null"=>"YES","Key"=>"MUL","Default"=>"0","Extra"=>"") ); -$defined['settings'] = array('id' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), +$defined['settings'] = array( + 'id' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), 'version' => array("Type"=>"decimal(4,2)","Null"=>"YES","Key"=>"","Default"=>"4.30","Extra"=>""), 'releasenotesDE' => array("Type"=>"int(11) unsigned","Null"=>"YES","Key"=>"","Default"=>"","Extra"=>""), 'releasenotesEN' => array("Type"=>"int(11) unsigned","Null"=>"YES","Key"=>"","Default"=>"","Extra"=>""), @@ -771,7 +816,8 @@ 'resellerid' => array("Type"=>"int(10) unsigned","Null"=>"YES","Key"=>"MUL","Default"=>"0","Extra"=>"") ); -$defined['tickets'] = array('id' => array("Type"=>"bigint(19) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), +$defined['tickets'] = array( + 'id' => array("Type"=>"bigint(19) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), 'writedate' => array("Type"=>"datetime","Null"=>"YES","Key"=>"","Default"=>"","Extra"=>""), 'topic' => array("Type"=>"varchar(30)","Null"=>"YES","Key"=>"","Default"=>"","Extra"=>""), 'userid' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"MUL","Default"=>"","Extra"=>""), @@ -784,21 +830,24 @@ 'resellerid' => array("Type"=>"int(11) unsigned","Null"=>"YES","Key"=>"","Default"=>"0","Extra"=>"") ); -$defined['tickets_text'] = array('ticketID' => array("Type"=>"bigint(19) unsigned","Null"=>"YES","Key"=>"MUL","Default"=>"","Extra"=>""), +$defined['tickets_text'] = array( + 'ticketID' => array("Type"=>"bigint(19) unsigned","Null"=>"YES","Key"=>"MUL","Default"=>"","Extra"=>""), 'writeDate' => array("Type"=>"datetime","Null"=>"YES","Key"=>"","Default"=>"","Extra"=>""), 'userID' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"MUL","Default"=>"","Extra"=>""), 'message' => array("Type"=>"text","Null"=>"YES","Key"=>"","Default"=>"","Extra"=>""), 'resellerID' => array("Type"=>"int(11) unsigned","Null"=>"YES","Key"=>"","Default"=>"0","Extra"=>"") ); -$defined['ticket_topics'] = array('id' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), +$defined['ticket_topics'] = array( + 'id' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), 'topic' => array("Type"=>"varchar(30)","Null"=>"NO","Key"=>"","Default"=>"","Extra"=>""), 'maintopic' => array("Type"=>"int(10) unsigned","Null"=>"YES","Key"=>"","Default"=>"","Extra"=>""), 'priority' => array("Type"=>"smallint(1) unsigned","Null"=>"YES","Key"=>"","Default"=>"","Extra"=>""), 'resellerid' => array("Type"=>"int(10) unsigned","Null"=>"YES","Key"=>"MUL","Default"=>"0","Extra"=>"") ); -$defined['traffic_data'] = array('id' => array("Type"=>"bigint(19) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), +$defined['traffic_data'] = array( + 'id' => array("Type"=>"bigint(19) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), 'serverid' => array("Type"=>"bigint(19) unsigned","Null"=>"YES","Key"=>"MUL","Default"=>"","Extra"=>""), 'ip' => array("Type"=>"varchar(15)","Null"=>"YES","Key"=>"","Default"=>"","Extra"=>""), 'in' => array("Type"=>"bigint(19) unsigned","Null"=>"YES","Key"=>"","Default"=>"0","Extra"=>""), @@ -808,7 +857,8 @@ 'resellerid' => array("Type"=>"bigint(19) unsigned","Null"=>"YES","Key"=>"MUL","Default"=>"0","Extra"=>"") ); -$defined['traffic_data_day'] = array('id' => array("Type"=>"bigint(19) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), +$defined['traffic_data_day'] = array( + 'id' => array("Type"=>"bigint(19) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), 'serverid' => array("Type"=>"bigint(19) unsigned","Null"=>"YES","Key"=>"MUL","Default"=>"","Extra"=>""), 'ip' => array("Type"=>"varchar(15)","Null"=>"YES","Key"=>"","Default"=>"","Extra"=>""), 'in' => array("Type"=>"bigint(19) unsigned","Null"=>"YES","Key"=>"","Default"=>"0","Extra"=>""), @@ -818,7 +868,8 @@ 'resellerid' => array("Type"=>"bigint(19) unsigned","Null"=>"YES","Key"=>"MUL","Default"=>"0","Extra"=>"") ); -$defined['traffic_settings'] = array('id' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), +$defined['traffic_settings'] = array( + 'id' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), 'type' => array("Type"=>"varchar(30)","Null"=>"NO","Key"=>"","Default"=>"mysql","Extra"=>""), 'statip' => array("Type"=>"varchar(50)","Null"=>"YES","Key"=>"","Default"=>"","Extra"=>""), 'dbname' => array("Type"=>"blob","Null"=>"YES","Key"=>"","Default"=>"","Extra"=>""), @@ -853,17 +904,19 @@ 'line_colour_3' => array("Type"=>"smallint(3) unsigned","Null"=>"YES","Key"=>"","Default"=>"220","Extra"=>"") ); -$defined['translations'] = array('type' => array("Type"=>"varchar(2)","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>""), +$defined['translations'] = array( + 'type' => array("Type"=>"varchar(2)","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>""), 'lang' => array("Type"=>"varchar(2)","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>""), 'transID' => array("Type"=>"varchar(255)","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>""), 'resellerID' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"0","Extra"=>""), 'text' => array("Type"=>"text","Null"=>"YES","Key"=>"","Default"=>"","Extra"=>"") ); -$defined['userdata'] = array('id' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), +$defined['userdata'] = array( + 'id' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), 'creationTime' => array("Type"=>"datetime","Null"=>"YES","Key"=>"","Default"=>"","Extra"=>""), 'updateTime' => array("Type"=>"datetime","Null"=>"YES","Key"=>"","Default"=>"","Extra"=>""), - 'active' => array("Type"=>"enum('Y','N','R')","Null"=>"NO","Key"=>"","Default"=>"Y","Extra"=>""), + 'active' => array("Type"=>"enum('Y','N','R')","Null"=>"NO","Key"=>"MUL","Default"=>"Y","Extra"=>""), 'salutation' => array("Type"=>"int(1)","Null"=>"YES","Key"=>"","Default"=>"","Extra"=>""), 'cname' => array("Type"=>"varchar(255)","Null"=>"NO","Key"=>"","Default"=>"","Extra"=>""), 'security' => array("Type"=>"varchar(255)","Null"=>"YES","Key"=>"","Default"=>"","Extra"=>""), @@ -899,15 +952,26 @@ 'resellerid' => array("Type"=>"int(10) unsigned","Null"=>"YES","Key"=>"MUL","Default"=>"0","Extra"=>"") ); -#https://github.com/easy-wi/developer/issues/5 -$defined['userdata_value_log'] = array('userID' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"MUL","Default"=>"","Extra"=>""), - 'date' => array("Type"=>"datetime","Null"=>"NO","Key"=>"","Default"=>"","Extra"=>""), - 'json' => array("Type"=>"text","Null"=>"NO","Key"=>"","Default"=>"","Extra"=>""), - 'resellerID' => array("Type"=>"int(10) unsigned","Null"=>"YES","Key"=>"MUL","Default"=>"0","Extra"=>"") +#https://github.com/easy-wi/developer/issues/1 +$defined['userdata_social_identities'] = array( + 'userID' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>""), + 'serviceProviderID' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>""), + 'serviceUserID' => array("Type"=>"varchar(255)","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>""), + 'resellerID' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"MUL","Default"=>"0","Extra"=>"") +); + +$defined['userdata_social_providers'] = array( + 'serviceProviderID' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), + 'active' => array("Type"=>"enum('Y','N')","Null"=>"NO","Key"=>"","Default"=>"Y","Extra"=>""), + 'identifier' => array("Type"=>"varchar(255)","Null"=>"NO","Key"=>"","Default"=>"","Extra"=>""), + 'token' => array("Type"=>"varchar(255)","Null"=>"NO","Key"=>"","Default"=>"","Extra"=>""), + 'filename' => array("Type"=>"varchar(255)","Null"=>"NO","Key"=>"","Default"=>"","Extra"=>""), + 'resellerID' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"MUL","Default"=>"0","Extra"=>"") ); #https://github.com/easy-wi/developer/issues/2 -$defined['userdata_substitutes'] = array('sID' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), +$defined['userdata_substitutes'] = array( + 'sID' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), 'userID' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>""), 'active' => array("Type"=>"enum('Y','N')","Null"=>"NO","Key"=>"","Default"=>"Y","Extra"=>""), 'loginName' => array("Type"=>"varchar(255)","Null"=>"NO","Key"=>"MUL","Default"=>"","Extra"=>""), @@ -922,18 +986,30 @@ 'sourceSystemID' => array("Type"=>"varchar(255)","Null"=>"YES","Key"=>"","Default"=>"","Extra"=>""), 'resellerID' => array("Type"=>"int(10) unsigned","Null"=>"YES","Key"=>"MUL","Default"=>"0","Extra"=>"") ); -$defined['userdata_substitutes_servers'] = array('sID' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>""), + +$defined['userdata_substitutes_servers'] = array( + 'sID' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>""), 'oType' => array("Type"=>"varchar(2)","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>""), 'oID' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>""), 'resellerID' => array("Type"=>"int(10) unsigned","Null"=>"YES","Key"=>"MUL","Default"=>"0","Extra"=>"") ); -$defined['userdata_groups'] = array('userID' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>""), +$defined['userdata_groups'] = array( + 'userID' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>""), 'groupID' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>""), 'resellerID' => array("Type"=>"int(10) unsigned","Null"=>"YES","Key"=>"MUL","Default"=>"0","Extra"=>"") ); -$defined['usergroups'] = array('id' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), +#https://github.com/easy-wi/developer/issues/5 +$defined['userdata_value_log'] = array( + 'userID' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"MUL","Default"=>"","Extra"=>""), + 'date' => array("Type"=>"datetime","Null"=>"NO","Key"=>"","Default"=>"","Extra"=>""), + 'json' => array("Type"=>"text","Null"=>"NO","Key"=>"","Default"=>"","Extra"=>""), + 'resellerID' => array("Type"=>"int(10) unsigned","Null"=>"YES","Key"=>"MUL","Default"=>"0","Extra"=>"") +); + +$defined['usergroups'] = array( + 'id' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), 'defaultgroup' => array("Type"=>"enum('Y','N')","Null"=>"NO","Key"=>"","Default"=>"N","Extra"=>""), 'active' => array("Type"=>"enum('Y','N')","Null"=>"YES","Key"=>"","Default"=>"Y","Extra"=>""), 'name' => array("Type"=>"varchar(255)","Null"=>"YES","Key"=>"","Default"=>"","Extra"=>""), @@ -994,7 +1070,8 @@ 'resellerid' => array("Type"=>"int(10) unsigned","Null"=>"YES","Key"=>"MUL","Default"=>"0","Extra"=>"") ); -$defined['userlog'] = array('id' => array("Type"=>"bigint(19) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), +$defined['userlog'] = array( + 'id' => array("Type"=>"bigint(19) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), 'userid' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"MUL","Default"=>"","Extra"=>""), 'subuser' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"MUL","Default"=>"","Extra"=>""), 'reseller' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"MUL","Default"=>"","Extra"=>""), @@ -1007,7 +1084,8 @@ 'resellerid' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"MUL","Default"=>"","Extra"=>"") ); -$defined['userpermissions'] = array('id' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), +$defined['userpermissions'] = array( + 'id' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), 'userid' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"MUL","Default"=>"","Extra"=>""), 'root' => array("Type"=>"enum('Y','N')","Null"=>"YES","Key"=>"","Default"=>"N","Extra"=>""), 'miniroot' => array("Type"=>"enum('Y','N')","Null"=>"YES","Key"=>"","Default"=>"N","Extra"=>""), @@ -1063,7 +1141,8 @@ 'resellerid' => array("Type"=>"int(10) unsigned","Null"=>"YES","Key"=>"MUL","Default"=>"0","Extra"=>"") ); -$defined['virtualcontainer'] = array('id' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), +$defined['virtualcontainer'] = array( + 'id' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), 'imageid' => array("Type"=>"int(10) unsigned","Null"=>"YES","Key"=>"MUL","Default"=>"","Extra"=>""), 'userid' => array("Type"=>"int(10) unsigned","Null"=>"YES","Key"=>"MUL","Default"=>"","Extra"=>""), 'hostid' => array("Type"=>"int(10) unsigned","Null"=>"YES","Key"=>"MUL","Default"=>"","Extra"=>""), @@ -1090,7 +1169,8 @@ 'resellerid' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"MUL","Default"=>"0","Extra"=>"") ); -$defined['virtualhosts'] = array('id' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), +$defined['virtualhosts'] = array( + 'id' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), 'active' => array("Type"=>"enum('Y','N')","Null"=>"NO","Key"=>"","Default"=>"Y","Extra"=>""), 'esxi' => array("Type"=>"enum('Y','N')","Null"=>"YES","Key"=>"","Default"=>"N","Extra"=>""), 'ip' => array("Type"=>"varchar(15)","Null"=>"NO","Key"=>"","Default"=>"","Extra"=>""), @@ -1113,7 +1193,8 @@ 'resellerid' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"MUL","Default"=>"0","Extra"=>"") ); -$defined['voice_dns'] = array('dnsID' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), +$defined['voice_dns'] = array( + 'dnsID' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), 'active' => array("Type"=>"enum('Y','N')","Null"=>"YES","Key"=>"","Default"=>"Y","Extra"=>""), 'dns' => array("Type"=>"varchar(255)","Null"=>"YES","Key"=>"","Default"=>"","Extra"=>""), 'ip' => array("Type"=>"varchar(15)","Null"=>"YES","Key"=>"","Default"=>"","Extra"=>""), @@ -1126,7 +1207,8 @@ ); // https://github.com/easy-wi/developer/issues/36 managedServer,managedForID added -$defined['voice_masterserver'] = array('id' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), +$defined['voice_masterserver'] = array( + 'id' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), 'active' => array("Type"=>"enum('Y','N')","Null"=>"YES","Key"=>"","Default"=>"Y","Extra"=>""), 'type' => array("Type"=>"varchar(30)","Null"=>"NO","Key"=>"","Default"=>"ts3","Extra"=>""), 'usedns' => array("Type"=>"enum('Y','N')","Null"=>"YES","Key"=>"","Default"=>"Y","Extra"=>""), @@ -1167,7 +1249,8 @@ 'resellerid' => array("Type"=>"int(10) unsigned","Null"=>"YES","Key"=>"MUL","Default"=>"0","Extra"=>"") ); -$defined['voice_server'] = array('id' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), +$defined['voice_server'] = array( + 'id' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), 'active' => array("Type"=>"enum('Y','N')","Null"=>"YES","Key"=>"","Default"=>"Y","Extra"=>""), 'autoRestart' => array("Type"=>"enum('Y','N')","Null"=>"YES","Key"=>"","Default"=>"Y","Extra"=>""), 'backup' => array("Type"=>"enum('Y','N')","Null"=>"YES","Key"=>"","Default"=>"Y","Extra"=>""), @@ -1209,7 +1292,8 @@ 'resellerid' => array("Type"=>"int(10) unsigned","Null"=>"YES","Key"=>"MUL","Default"=>"0","Extra"=>"") ); -$defined['voice_server_backup'] = array('id' => array("Type"=>"bigint(19) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), +$defined['voice_server_backup'] = array( + 'id' => array("Type"=>"bigint(19) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), 'sid' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"MUL","Default"=>"","Extra"=>""), 'uid' => array("Type"=>"int(10) unsigned","Null"=>"YES","Key"=>"MUL","Default"=>"","Extra"=>""), 'name' => array("Type"=>"varchar(50)","Null"=>"YES","Key"=>"","Default"=>"","Extra"=>""), @@ -1219,7 +1303,8 @@ 'resellerid' => array("Type"=>"int(10) unsigned","Null"=>"YES","Key"=>"MUL","Default"=>"0","Extra"=>"") ); -$defined['voice_server_stats'] = array('sid' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>""), +$defined['voice_server_stats'] = array( + 'sid' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>""), 'date' => array("Type"=>"datetime","Null"=>"NO","Key"=>"PRI","Default"=>"0000-00-00 00:00:00","Extra"=>""), 'mid' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"MUL","Default"=>"","Extra"=>""), 'installed' => array("Type"=>"decimal(6,2) unsigned","Null"=>"NO","Key"=>"","Default"=>"","Extra"=>""), @@ -1230,7 +1315,8 @@ 'resellerid' => array("Type"=>"int(10) unsigned","Null"=>"YES","Key"=>"MUL","Default"=>"0","Extra"=>"") ); -$defined['voice_server_stats_hours'] = array('sid' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>""), +$defined['voice_server_stats_hours'] = array( + 'sid' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>""), 'date' => array("Type"=>"datetime","Null"=>"NO","Key"=>"PRI","Default"=>"0000-00-00 00:00:00","Extra"=>""), 'mid' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"MUL","Default"=>"","Extra"=>""), 'installed' => array("Type"=>"decimal(6,2) unsigned","Null"=>"NO","Key"=>"","Default"=>"","Extra"=>""), @@ -1241,7 +1327,8 @@ 'resellerid' => array("Type"=>"int(10) unsigned","Null"=>"YES","Key"=>"MUL","Default"=>"0","Extra"=>"") ); -$defined['voice_stats_settings'] = array('id' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), +$defined['voice_stats_settings'] = array( + 'id' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), 'text_colour_1' => array("Type"=>"smallint(3) unsigned","Null"=>"YES","Key"=>"","Default"=>"0","Extra"=>""), 'text_colour_2' => array("Type"=>"smallint(3) unsigned","Null"=>"YES","Key"=>"","Default"=>"0","Extra"=>""), 'text_colour_3' => array("Type"=>"smallint(3) unsigned","Null"=>"YES","Key"=>"","Default"=>"0","Extra"=>""), @@ -1263,7 +1350,8 @@ 'resellerid' => array("Type"=>"int(10) unsigned","Null"=>"YES","Key"=>"MUL","Default"=>"0","Extra"=>"") ); -$defined['voice_tsdns'] = array('id' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), +$defined['voice_tsdns'] = array( + 'id' => array("Type"=>"int(10) unsigned","Null"=>"NO","Key"=>"PRI","Default"=>"","Extra"=>"auto_increment"), 'active' => array("Type"=>"enum('Y','N')","Null"=>"YES","Key"=>"","Default"=>"Y","Extra"=>""), 'defaultdns' => array("Type"=>"varchar(255)","Null"=>"YES","Key"=>"","Default"=>"","Extra"=>""), 'rootid' => array("Type"=>"int(10) unsigned","Null"=>"YES","Key"=>"MUL","Default"=>"","Extra"=>""), diff --git a/web/template/default/admin_header.tpl b/web/template/default/admin_header.tpl index 9b6c3fbd..236f0164 100644 --- a/web/template/default/admin_header.tpl +++ b/web/template/default/admin_header.tpl @@ -239,7 +239,7 @@ -
+
diff --git a/web/template/default/admin_social_provider_add.tpl b/web/template/default/admin_social_provider_add.tpl new file mode 100644 index 00000000..4174501f --- /dev/null +++ b/web/template/default/admin_social_provider_add.tpl @@ -0,0 +1,62 @@ +
+
+ +
+
+0){ ?> +
+ +

Error(s)

+ +
+ +
+
multipleHelperEndpoint; ?>
+
+
+ + +
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+
+
diff --git a/web/template/default/admin_social_provider_dl.tpl b/web/template/default/admin_social_provider_dl.tpl new file mode 100644 index 00000000..86199522 --- /dev/null +++ b/web/template/default/admin_social_provider_dl.tpl @@ -0,0 +1,32 @@ +
+
+ +
+
+
+
+
+
Service Provider
+
+
+
+
+
+
+
+ + +
+ +
+ +
+
+
+
+
diff --git a/web/template/default/admin_social_provider_list.tpl b/web/template/default/admin_social_provider_list.tpl new file mode 100644 index 00000000..a7e65a0e --- /dev/null +++ b/web/template/default/admin_social_provider_list.tpl @@ -0,0 +1,38 @@ +
+
+ +
+
+
+
+ Social Auth Provider +
+
+
+
+
+ + + + + + + + + + + + + + + + + + + +
Service Providerstatus;?>del;?>mod;?>
+
+
\ No newline at end of file diff --git a/web/template/default/admin_social_provider_md.tpl b/web/template/default/admin_social_provider_md.tpl new file mode 100644 index 00000000..1ba4e915 --- /dev/null +++ b/web/template/default/admin_social_provider_md.tpl @@ -0,0 +1,63 @@ +
+
+ +
+
+0){ ?> +
+ +

Error(s)

+ +
+ +
+
multipleHelperEndpoint; ?>
+
+
+ + +
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+
+
diff --git a/web/template/default/admin_user_own_md.tpl b/web/template/default/admin_user_own_md.tpl index 4934e2a9..d936bcde 100644 --- a/web/template/default/admin_user_own_md.tpl +++ b/web/template/default/admin_user_own_md.tpl @@ -12,93 +12,111 @@
- +
- + >
- +
- + >
- +
- + >
- +
- + >
- +
- + >
- +
- + >
+
+ + + 0 ) echo '
';?>
- +
- +
- +
- +
- +
- > +
- +
- > +
- +
- > +
- +
- > +
- +
- > +
- +
- > + +
+
+
+ +
+
diff --git a/web/template/default/login.tpl b/web/template/default/login.tpl index 92329943..fd5657e2 100644 --- a/web/template/default/login.tpl +++ b/web/template/default/login.tpl @@ -11,11 +11,12 @@ + + + + + +> +
+ +
+ + \ No newline at end of file diff --git a/web/template/default/page_header.tpl b/web/template/default/page_header.tpl index 4df14561..428611b1 100644 --- a/web/template/default/page_header.tpl +++ b/web/template/default/page_header.tpl @@ -20,6 +20,7 @@ + @@ -28,6 +29,7 @@ + > @@ -58,7 +60,7 @@