diff --git a/php/auto/connection.php b/php/auto/connection.php index 7102c1e..a18eb17 100644 --- a/php/auto/connection.php +++ b/php/auto/connection.php @@ -1,8 +1,8 @@ setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE, PDO::FETCH_ASSOC); $conn->setAttribute(PDO::ATTR_EMULATE_PREPARES, false); } catch(PDOException $e) { - echo json_encode(["error" => "error.connect.faild"]); + echo json_encode(["error" => "error.connect.faild", "exc" => $e->getMessage()]); exit; } diff --git a/php/auto/user.php b/php/auto/user.php index f79e40c..9d5c31f 100644 --- a/php/auto/user.php +++ b/php/auto/user.php @@ -1,11 +1,12 @@ fetch(); - return ((int) $result['permission_count']) > 0; + if(((int) $result['permission_count']) <= 0){ + http_response_code(403); + exit; + } } diff --git a/php/user/is_loged_in.php b/php/user/is_loged_in.php new file mode 100644 index 0000000..10029a1 --- /dev/null +++ b/php/user/is_loged_in.php @@ -0,0 +1,9 @@ +prepare("SELECT user_id, username, display_name FROM users WHERE email = :email"); + $find->execute([':email' => $email]); + $obstojeciUporabnik = $find->fetch(); + + $_SESSION['id'] = $obstojeciUporabnik['user_id']; + $_SESSION['username'] = $obstojeciUporabnik['username']; + $_SESSION['displayname'] = $obstojeciUporabnik['display_name']; + $_SESSION['email'] = $email; + + echo json_encode([ + "res" => "res.user.login.true", + "displayname" => $_SESSION['displayname'] + ]); + exit; +} + use LdapRecord\Connection; $nimrodLDAP = new Connection([ 'hosts' => [getenv('LDAP_HOST')], @@ -32,7 +50,7 @@ if (empty($LUser)) { exit; } -$emailUserja = $LUser['userprincipalname'][0]; +$emailUserja = $LUser['userprincipalname'][0]; $user = $LUser['distinguishedname'][0]; if (!$nimrodLDAP->auth()->attempt($user, $geslo, $stayAuthenticated = true)) { echo json_encode(["error" => "error.user.login.wrongPassword"]); @@ -40,8 +58,8 @@ if (!$nimrodLDAP->auth()->attempt($user, $geslo, $stayAuthenticated = true)) { } $vGrupah = $LUser['memberof']; -$dGrupe = [ - 'cn=Nimrod_Web,ou=Nimrod OU,dc=nimrod,dc=local', +$dGrupe = [ + 'cn=Nimrod_Web,ou=Nimrod OU,dc=nimrod,dc=local', ]; $razlikaGrup = array_intersect( @@ -61,8 +79,8 @@ $find->execute([':email' => $email]); $obstojeciUporabnik = $find->fetch(); if ($obstojeciUporabnik) { - $update = $conn->prepare("UPDATE users SET display_name = :display_name WHERE user_id = :user_id"); - $update->execute([':display_name' => $uporabnik, ':user_id' => $obstojeciUporabnik['user_id']]); + //$update = $conn->prepare("UPDATE users SET display_name = :display_name WHERE user_id = :user_id"); + //$update->execute([':display_name' => $uporabnik, ':user_id' => $obstojeciUporabnik['user_id']]); $_SESSION['id'] = $obstojeciUporabnik['user_id']; $_SESSION['username'] = $obstojeciUporabnik['username']; @@ -76,4 +94,7 @@ if ($obstojeciUporabnik) { $_SESSION['displayname'] = $uporabnik; $_SESSION['email'] = $email; -echo json_encode(["res" => "res.user.login.true"]); +echo json_encode([ + "res" => "res.user.login.true", + "displayname" => $_SESSION['displayname'] +]); diff --git a/php/user/list.php b/php/user/list.php new file mode 100644 index 0000000..602224f --- /dev/null +++ b/php/user/list.php @@ -0,0 +1,10 @@ +query($sql); + +echo json_encode($res); \ No newline at end of file diff --git a/typed-router.d.ts b/typed-router.d.ts index 24ee6cb..9c9c0c4 100644 --- a/typed-router.d.ts +++ b/typed-router.d.ts @@ -38,6 +38,13 @@ declare module 'vue-router/auto-routes' { Record, | never >, + '/login': RouteRecordInfo< + '/login', + '/login', + Record, + Record, + | never + >, '/settings': RouteRecordInfo< '/settings', '/settings', @@ -88,6 +95,14 @@ declare module 'vue-router/auto-routes' { pathParamNames: | never } + 'vue/routes/login.vue': { + routes: + | '/login' + views: + | never + pathParamNames: + | never + } 'vue/routes/settings.vue': { routes: | '/settings' diff --git a/vue/app.vue b/vue/app.vue index 8017af0..bb4afaa 100644 --- a/vue/app.vue +++ b/vue/app.vue @@ -1,6 +1,6 @@ diff --git a/vue/components/Sidebar.vue b/vue/components/Sidebar.vue index e38094c..b4457ea 100644 --- a/vue/components/Sidebar.vue +++ b/vue/components/Sidebar.vue @@ -23,6 +23,7 @@ + @@ -30,6 +31,7 @@ import { ref } from 'vue'; import { useI18n } from 'vue-i18n'; import { RouterLink } from 'vue-router'; +import { displayName } from '@/global.js'; const { t } = useI18n() diff --git a/vue/components/ThemeSwitcher.vue b/vue/components/ThemeSwitcher.vue index be496f4..5645b0d 100644 --- a/vue/components/ThemeSwitcher.vue +++ b/vue/components/ThemeSwitcher.vue @@ -2,16 +2,16 @@