mirror of
https://github.com/MikroWizard/mikrofront.git
synced 2025-12-29 21:39:31 +00:00
MikroWizard Initial commit | MikroFront Welcome to the world :)
This commit is contained in:
commit
b97aec6b97
203 changed files with 41097 additions and 0 deletions
28
src/app/providers/login_checker.ts
Normal file
28
src/app/providers/login_checker.ts
Normal file
|
|
@ -0,0 +1,28 @@
|
|||
import { Injectable } from '@angular/core';
|
||||
import { dataProvider } from './mikrowizard/data';
|
||||
|
||||
@Injectable()
|
||||
export class loginChecker {
|
||||
private logged_in: boolean = false;
|
||||
private pinging: boolean = false;
|
||||
|
||||
constructor(private data_provider: dataProvider) {
|
||||
}
|
||||
public isLoggedIn(): boolean {
|
||||
return this.logged_in;
|
||||
}
|
||||
load() {
|
||||
var _self = this;
|
||||
return this.data_provider.isLoggedIn().then(result => {
|
||||
_self.logged_in = result;
|
||||
}).catch(err => {
|
||||
_self.logged_in = false;
|
||||
})
|
||||
}
|
||||
setStatus(status: boolean): void {
|
||||
this.logged_in = status;
|
||||
}
|
||||
setPinging(ping: boolean): void {
|
||||
this.pinging = ping;
|
||||
}
|
||||
}
|
||||
86
src/app/providers/messaging.service.ts
Normal file
86
src/app/providers/messaging.service.ts
Normal file
|
|
@ -0,0 +1,86 @@
|
|||
import { Injectable } from '@angular/core';
|
||||
import { AngularFireDatabase } from '@angular/fire/database';
|
||||
import { AngularFireAuth } from '@angular/fire/auth';
|
||||
import { AngularFireMessaging } from '@angular/fire/messaging';
|
||||
import { mergeMapTo } from 'rxjs/operators';
|
||||
import { take } from 'rxjs/operators';
|
||||
import { BehaviorSubject } from 'rxjs'
|
||||
import { dataProvider } from './odoorpchttp/data';
|
||||
import { ToastrService } from 'ngx-toastr';
|
||||
|
||||
@Injectable()
|
||||
export class MessagingService {
|
||||
|
||||
currentMessage = new BehaviorSubject(null);
|
||||
|
||||
constructor(
|
||||
private angularFireDB: AngularFireDatabase,
|
||||
private angularFireAuth: AngularFireAuth,
|
||||
private data_provider: dataProvider,
|
||||
private toastr: ToastrService,
|
||||
private angularFireMessaging: AngularFireMessaging,
|
||||
) {
|
||||
this.angularFireMessaging.messaging.subscribe(
|
||||
(_messaging) => {
|
||||
_messaging.onMessage = _messaging.onMessage.bind(_messaging);
|
||||
_messaging.onTokenRefresh = _messaging.onTokenRefresh.bind(_messaging);
|
||||
}
|
||||
)
|
||||
}
|
||||
|
||||
/**
|
||||
* update token in firebase database
|
||||
*
|
||||
* @param userId userId as a key
|
||||
* @param token token as a value
|
||||
*/
|
||||
updateToken(userId, token) {
|
||||
// we can change this function to request our backend service
|
||||
this.angularFireAuth.authState.pipe(take(1)).subscribe(
|
||||
() => {
|
||||
const data = {};
|
||||
data[userId] = token
|
||||
this.angularFireDB.object('fcmTokens/').update(data)
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* request permission for notification from firebase cloud messaging
|
||||
*
|
||||
* @param userId userId
|
||||
*/
|
||||
requestPermission(userId) {
|
||||
this.angularFireMessaging.requestToken.subscribe(
|
||||
(token) => {
|
||||
this.data_provider.update_FBC_token(token).then(result => {
|
||||
if(result.result!='success'){
|
||||
console.error('Unable to write token.');
|
||||
}
|
||||
});
|
||||
this.updateToken(userId, token);
|
||||
},
|
||||
(err) => {
|
||||
console.error('Unable to get permission to notify.', err);
|
||||
}
|
||||
);
|
||||
}
|
||||
shownotification(payload){
|
||||
if(typeof(payload) !== 'undefined'){
|
||||
if(document.visibilityState){
|
||||
this.toastr.warning(payload.notification.title, payload.notification.body,{
|
||||
disableTimeOut:true,
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
/**
|
||||
* hook method when new notification received in foreground
|
||||
*/
|
||||
receiveMessage() {
|
||||
this.angularFireMessaging.messages.subscribe(
|
||||
(payload) => {
|
||||
this.shownotification(payload);
|
||||
this.currentMessage.next(payload);
|
||||
})
|
||||
}
|
||||
}
|
||||
455
src/app/providers/mikrowizard/data.ts
Normal file
455
src/app/providers/mikrowizard/data.ts
Normal file
|
|
@ -0,0 +1,455 @@
|
|||
|
||||
import { Injectable } from '@angular/core';
|
||||
// import { MikroWizardrpcProvider } from '../MikroWizardrpc/MikroWizardrpc';
|
||||
import { MikroWizardProvider } from './provider';
|
||||
|
||||
|
||||
import { User } from './user';
|
||||
|
||||
@Injectable()
|
||||
export class dataProvider {
|
||||
|
||||
// public serverUrl: string = "/api";
|
||||
public serverUrl: string = "";
|
||||
private db: string = "NothingImportant";
|
||||
|
||||
constructor(
|
||||
// private http: HTTP,
|
||||
// public MikroWizardRPC: MikroWizardrpcProvider,
|
||||
public MikroWizardRPC: MikroWizardProvider,
|
||||
) {
|
||||
this.MikroWizardRPC.init({
|
||||
MikroWizard_server: this.serverUrl
|
||||
});
|
||||
}
|
||||
|
||||
isLoggedIn() {
|
||||
return this.MikroWizardRPC.isLoggedIn();
|
||||
}
|
||||
|
||||
login(username: string = "", password: string = "", ga: string = "") {
|
||||
var _self = this;
|
||||
this.MikroWizardRPC.clearCookeis();
|
||||
return this.MikroWizardRPC.login(this.db, username, password, ga).then(res => {
|
||||
if ('uid' in res && res['uid']) {
|
||||
let usr: User = new User(
|
||||
res.name,
|
||||
res.username,
|
||||
res.partner_id,
|
||||
res.uid,
|
||||
res.first_name,
|
||||
res.last_name,
|
||||
res.role,
|
||||
res.perms,
|
||||
res.tz,
|
||||
);
|
||||
// console.dir(JSON.stringify(usr))
|
||||
localStorage.setItem('current_user', JSON.stringify(usr));
|
||||
}
|
||||
return res;
|
||||
});
|
||||
}
|
||||
|
||||
logout() {
|
||||
var _self = this;
|
||||
_self.MikroWizardRPC.clearCookeis();
|
||||
this.MikroWizardRPC.setNewSession('', '');
|
||||
localStorage.removeItem('current_user');
|
||||
return this.MikroWizardRPC.sendJsonRequest("/api/logout", {});
|
||||
}
|
||||
|
||||
////
|
||||
//// MikroWizard API
|
||||
////
|
||||
get_front_version(){
|
||||
return this.MikroWizardRPC.sendHttpGetRequest("/api/frontver/");
|
||||
}
|
||||
change_password(oldpass:string,newpass:string){
|
||||
var data={
|
||||
'oldpass':oldpass,
|
||||
'newpass':newpass
|
||||
}
|
||||
return this.MikroWizardRPC.sendJsonRequest("/api/user/change_password", data);
|
||||
}
|
||||
dashboard_stats(versioncheck:boolean){
|
||||
var data={
|
||||
'versioncheck':versioncheck
|
||||
}
|
||||
return this.MikroWizardRPC.sendJsonRequest("/api/dashboard/stats", data);
|
||||
}
|
||||
|
||||
dashboard_traffic(delta:string){
|
||||
var data={
|
||||
'delta':delta
|
||||
}
|
||||
return this.MikroWizardRPC.sendJsonRequest("/api/dashboard/traffic", data);
|
||||
}
|
||||
|
||||
get_dev_list(data:any) {
|
||||
return this.MikroWizardRPC.sendJsonRequest("/api/dev/list", data);
|
||||
}
|
||||
|
||||
get_devgroup_list() {
|
||||
return this.MikroWizardRPC.sendJsonRequest("/api/devgroup/list", {});
|
||||
}
|
||||
|
||||
get_devgroup_members(gid:number) {
|
||||
var data={
|
||||
'gid':gid
|
||||
}
|
||||
return this.MikroWizardRPC.sendJsonRequest("/api/devgroup/members", data);
|
||||
}
|
||||
delete_group(id:number){
|
||||
var data={
|
||||
'gid':id
|
||||
}
|
||||
return this.MikroWizardRPC.sendJsonRequest("/api/devgroup/delete", data);
|
||||
}
|
||||
|
||||
delete_devices(devids:any){
|
||||
var data = {
|
||||
'devids':devids
|
||||
}
|
||||
return this.MikroWizardRPC.sendJsonRequest("/api/dev/delete", data);
|
||||
}
|
||||
|
||||
get_dev_info(id: number) {
|
||||
var data={
|
||||
'devid':id
|
||||
}
|
||||
return this.MikroWizardRPC.sendJsonRequest("/api/dev/info", data);
|
||||
}
|
||||
|
||||
get_editform(id: number) {
|
||||
var data={
|
||||
'devid':id
|
||||
}
|
||||
return this.MikroWizardRPC.sendJsonRequest("/api/dev/get_editform", data);
|
||||
}
|
||||
save_editform(data:any){
|
||||
return this.MikroWizardRPC.sendJsonRequest("/api/dev/save_editform", data);
|
||||
}
|
||||
get_dev_sensors(id: number,delta:string="5m",total_type:string="bps") {
|
||||
var data={
|
||||
'devid':id,
|
||||
'delta':delta,
|
||||
'total':total_type
|
||||
}
|
||||
return this.MikroWizardRPC.sendJsonRequest("/api/dev/sensors", data);
|
||||
}
|
||||
|
||||
get_dev_ifstat(id: number,delta:string="5m",iface:string="ether1",type:string="bps") {
|
||||
var data={
|
||||
'devid':id,
|
||||
'delta':delta,
|
||||
'type':type,
|
||||
'interface':iface
|
||||
}
|
||||
return this.MikroWizardRPC.sendJsonRequest("/api/dev/ifstat", data);
|
||||
}
|
||||
|
||||
get_auth_logs(filters:any) {
|
||||
var data=filters;
|
||||
return this.MikroWizardRPC.sendJsonRequest("/api/auth/list", data);
|
||||
}
|
||||
|
||||
get_account_logs(filters:any) {
|
||||
var data=filters;
|
||||
return this.MikroWizardRPC.sendJsonRequest("/api/account/list", data);
|
||||
}
|
||||
|
||||
get_dev_logs(filters:any) {
|
||||
var data=filters;
|
||||
return this.MikroWizardRPC.sendJsonRequest("/api/devlogs/list", data);
|
||||
}
|
||||
|
||||
get_syslog(filters:any) {
|
||||
var data=filters;
|
||||
return this.MikroWizardRPC.sendJsonRequest("/api/syslog/list", data);
|
||||
}
|
||||
get_details_grouped(devid:number=0){
|
||||
var data={
|
||||
'devid':devid
|
||||
}
|
||||
return this.MikroWizardRPC.sendJsonRequest("/api/devlogs/details/list", data);
|
||||
}
|
||||
|
||||
scan_devs(type:string,info:any){
|
||||
var data: any={
|
||||
'type':type
|
||||
}
|
||||
if(type=="ip"){
|
||||
data = Object.assign(data, info);
|
||||
}
|
||||
return this.MikroWizardRPC.sendJsonRequest("/api/scanner/scan", data);
|
||||
}
|
||||
|
||||
get_groups(searchstr:string=""){
|
||||
var data={
|
||||
'searchstr':searchstr
|
||||
}
|
||||
return this.MikroWizardRPC.sendJsonRequest("/api/search/groups", data);
|
||||
}
|
||||
|
||||
get_devices(searchstr:string=""){
|
||||
var data={
|
||||
'searchstr':searchstr
|
||||
}
|
||||
return this.MikroWizardRPC.sendJsonRequest("/api/search/devices", data);
|
||||
}
|
||||
|
||||
update_save_group(group:any){
|
||||
var data={
|
||||
...group
|
||||
}
|
||||
return this.MikroWizardRPC.sendJsonRequest("/api/devgroup/update_save_group", data);
|
||||
}
|
||||
|
||||
get_snippets(name:string,desc:string,content:string,page:number=0,size:number=1000){
|
||||
var data={
|
||||
'name':name,
|
||||
'description':desc,
|
||||
'content':content,
|
||||
'page':page,
|
||||
'size':size
|
||||
}
|
||||
return this.MikroWizardRPC.sendJsonRequest("/api/snippet/list", data);
|
||||
}
|
||||
|
||||
save_snippet(data:any){
|
||||
return this.MikroWizardRPC.sendJsonRequest("/api/snippet/save", {...data});
|
||||
}
|
||||
|
||||
delete_snippet(id:number){
|
||||
var data={
|
||||
'id':id
|
||||
}
|
||||
return this.MikroWizardRPC.sendJsonRequest("/api/snippet/delete", data);
|
||||
}
|
||||
|
||||
get_user_task_list() {
|
||||
return this.MikroWizardRPC.sendJsonRequest("/api/user_tasks/list", {});
|
||||
}
|
||||
|
||||
|
||||
Add_task(data:any,members:any) {
|
||||
data['members']=members;
|
||||
return this.MikroWizardRPC.sendJsonRequest("/api/user_tasks/create", data);
|
||||
}
|
||||
|
||||
Delete_task(taskid:Number) {
|
||||
var data={
|
||||
'taskid':taskid,
|
||||
}
|
||||
return this.MikroWizardRPC.sendJsonRequest("/api/user_tasks/delete", data);
|
||||
}
|
||||
|
||||
Edit_task(data:any,members:any) {
|
||||
data['members']=members;
|
||||
return this.MikroWizardRPC.sendJsonRequest("/api/user_tasks/edit", data);
|
||||
}
|
||||
|
||||
get_task_members(taskid:Number) {
|
||||
var data={
|
||||
'taskid':taskid,
|
||||
}
|
||||
return this.MikroWizardRPC.sendJsonRequest("/api/taskmember/details", data);
|
||||
}
|
||||
|
||||
|
||||
get_users(page:Number,size:Number,search:string) {
|
||||
var data={
|
||||
'page':page,
|
||||
'size':size,
|
||||
'search':search
|
||||
}
|
||||
return this.MikroWizardRPC.sendJsonRequest("/api/users/list", data);
|
||||
}
|
||||
|
||||
get_perms(page:Number,size:Number,search:string) {
|
||||
var data={
|
||||
'page':page,
|
||||
'size':size,
|
||||
'search':search
|
||||
}
|
||||
return this.MikroWizardRPC.sendJsonRequest("/api/perms/list", data);
|
||||
}
|
||||
|
||||
create_perm(name:string,perms:any) {
|
||||
var data={
|
||||
'name':name,
|
||||
'perms':perms
|
||||
}
|
||||
return this.MikroWizardRPC.sendJsonRequest("/api/perms/create", data);
|
||||
}
|
||||
|
||||
edit_perm(id:Number,name:string,perms:any) {
|
||||
|
||||
var data = {
|
||||
'id':id,
|
||||
'name':name,
|
||||
'perms':perms
|
||||
}
|
||||
|
||||
return this.MikroWizardRPC.sendJsonRequest("/api/perms/edit", data);
|
||||
}
|
||||
|
||||
delete_perm(id:number){
|
||||
var data={
|
||||
'id':id
|
||||
}
|
||||
return this.MikroWizardRPC.sendJsonRequest("/api/perms/delete", data);
|
||||
}
|
||||
|
||||
user_perms(uid:string) {
|
||||
|
||||
var data = {
|
||||
'uid':uid,
|
||||
}
|
||||
|
||||
return this.MikroWizardRPC.sendJsonRequest("/api/userperms/list", data);
|
||||
}
|
||||
|
||||
Add_user_perm(uid:Number,permid:Number,devgroupid:Number){
|
||||
|
||||
var data = {
|
||||
'uid':uid,
|
||||
'pid':permid,
|
||||
'gid':devgroupid
|
||||
}
|
||||
|
||||
return this.MikroWizardRPC.sendJsonRequest("/api/userperms/create", data);
|
||||
}
|
||||
Delete_user_perm(id:number){
|
||||
var data={
|
||||
'id':id
|
||||
}
|
||||
return this.MikroWizardRPC.sendJsonRequest("/api/userperms/delete", data);
|
||||
}
|
||||
edit_user(data:any) {
|
||||
|
||||
return this.MikroWizardRPC.sendJsonRequest("/api/user/edit", data);
|
||||
}
|
||||
|
||||
create_user(data:any) {
|
||||
return this.MikroWizardRPC.sendJsonRequest("/api/user/create", data);
|
||||
}
|
||||
delete_user(id:number){
|
||||
var data={
|
||||
'uid':id
|
||||
}
|
||||
return this.MikroWizardRPC.sendJsonRequest("/api/user/delete", data);
|
||||
}
|
||||
check_firmware(devids:any) {
|
||||
var data = {
|
||||
'devids':devids
|
||||
}
|
||||
return this.MikroWizardRPC.sendJsonRequest("/api/firmware/check_firmware_update", data);
|
||||
}
|
||||
|
||||
get_firms(page:Number,size:Number,search:any) {
|
||||
var data = {
|
||||
'page':page,
|
||||
'size':size,
|
||||
'search':search
|
||||
}
|
||||
return this.MikroWizardRPC.sendJsonRequest("/api/firmware/get_firms", data);
|
||||
}
|
||||
|
||||
get_backups(devid:Number=0,page:Number,size:Number,search:any) {
|
||||
var data = {
|
||||
'devid':devid,
|
||||
'page':page,
|
||||
'size':size,
|
||||
'search':search
|
||||
}
|
||||
return this.MikroWizardRPC.sendJsonRequest("/api/backup/list", data);
|
||||
}
|
||||
|
||||
|
||||
get_backup(id:number){
|
||||
var data = {
|
||||
'id':id
|
||||
}
|
||||
return this.MikroWizardRPC.sendJsonRequest("/api/backup/get", data);
|
||||
}
|
||||
|
||||
get_downloadable_firms() {
|
||||
|
||||
return this.MikroWizardRPC.sendJsonRequest("/api/firmware/get_downloadable_firms", {});
|
||||
}
|
||||
|
||||
download_firmware_to_repository(version:string){
|
||||
var data = {
|
||||
'version':version
|
||||
}
|
||||
return this.MikroWizardRPC.sendJsonRequest("/api/firmware/download_firmware_to_repository", data);
|
||||
}
|
||||
|
||||
save_firmware_setting(updatebehavior:string,firmwaretoinstall:string,firmwaretoinstallv6:string){
|
||||
var data = {
|
||||
'updatebehavior':updatebehavior,
|
||||
'firmwaretoinstall':firmwaretoinstall,
|
||||
'firmwaretoinstallv6':firmwaretoinstallv6
|
||||
}
|
||||
return this.MikroWizardRPC.sendJsonRequest("/api/firmware/update_firmware_settings", data);
|
||||
}
|
||||
|
||||
update_firmware(devids:string){
|
||||
var data = {
|
||||
'devids':devids
|
||||
}
|
||||
return this.MikroWizardRPC.sendJsonRequest("/api/firmware/update_firmware", data);
|
||||
}
|
||||
|
||||
upgrade_firmware(devids:string){
|
||||
var data = {
|
||||
'devids':devids
|
||||
}
|
||||
return this.MikroWizardRPC.sendJsonRequest("/api/firmware/upgrade_firmware", data);
|
||||
}
|
||||
|
||||
reboot_devices(devids:string){
|
||||
var data = {
|
||||
'devids':devids
|
||||
}
|
||||
return this.MikroWizardRPC.sendJsonRequest("/api/firmware/reboot_devices", data);
|
||||
}
|
||||
|
||||
get_settings(){
|
||||
return this.MikroWizardRPC.sendJsonRequest("/api/sysconfig/get_all", {});
|
||||
}
|
||||
|
||||
save_sys_setting(data:any){
|
||||
return this.MikroWizardRPC.sendJsonRequest("/api/sysconfig/save_all", data);
|
||||
}
|
||||
|
||||
|
||||
////
|
||||
//// End api funcs
|
||||
////
|
||||
setupSession(context: any, session: any) {
|
||||
this.MikroWizardRPC.clearCookeis();
|
||||
this.MikroWizardRPC.setNewSession(context, session);
|
||||
}
|
||||
|
||||
checkSessionExpired(error: any) {
|
||||
console.log(error);
|
||||
if ('title' in error && error.title == "session_expired")
|
||||
this.logout();
|
||||
return Promise.reject(error.message || error);
|
||||
}
|
||||
|
||||
|
||||
setSession(context: any, session_id: any) {
|
||||
this.MikroWizardRPC.setNewSession(context, session_id);
|
||||
}
|
||||
|
||||
getSessionInfo() {
|
||||
return this.MikroWizardRPC.getSessionInfo();
|
||||
}
|
||||
|
||||
getFullUrl(url: any) {
|
||||
return this.serverUrl + url;
|
||||
}
|
||||
}
|
||||
209
src/app/providers/mikrowizard/provider.ts
Normal file
209
src/app/providers/mikrowizard/provider.ts
Normal file
|
|
@ -0,0 +1,209 @@
|
|||
import { Injectable, Inject } from '@angular/core';
|
||||
|
||||
import { HttpClient,HttpResponse } from '@angular/common/http';
|
||||
|
||||
class Cookies { // cookies doesn't work with Android default browser / Ionic
|
||||
private session_id: string = "";
|
||||
|
||||
delete_sessionId() {
|
||||
this.session_id = "";
|
||||
document.cookie = "";
|
||||
}
|
||||
|
||||
get_sessionId() {
|
||||
return document
|
||||
.cookie.split("; ")
|
||||
.filter(x => { return x.indexOf("session_id") === 0; })
|
||||
.map(x => { return x.split("=")[1]; })
|
||||
.pop() || this.session_id || "";
|
||||
}
|
||||
|
||||
set_sessionId(val: string) {
|
||||
// document.cookie = `session_id=${val}`;
|
||||
// this.session_id = val;
|
||||
}
|
||||
}
|
||||
|
||||
@Injectable()
|
||||
export class MikroWizardProvider {
|
||||
|
||||
private MikroWizard_server: string;
|
||||
private http_auth: string;
|
||||
private cookies: Cookies;
|
||||
private uniq_id_counter: number = 0;
|
||||
private shouldManageSessionId: boolean = false; // try without first
|
||||
private context: Object = {"lang": "en_US"};
|
||||
private headers: any;
|
||||
|
||||
constructor(private http: HttpClient) {
|
||||
this.cookies = new Cookies();
|
||||
}
|
||||
|
||||
private buildRequest(url: string, params: any) {
|
||||
this.uniq_id_counter += 1;
|
||||
if (this.shouldManageSessionId) {
|
||||
params.session_id = this.cookies.get_sessionId();
|
||||
}
|
||||
|
||||
this.headers = {
|
||||
"Content-Type": "application/json",
|
||||
"Session-Id": this.cookies.get_sessionId(),
|
||||
"Authorization": "Basic " + btoa(`${this.http_auth}`)
|
||||
};
|
||||
return params;
|
||||
}
|
||||
|
||||
private handleMikroWizardErrors(response: any) {
|
||||
//response = JSON.parse(response.data);
|
||||
if (!response.error) {
|
||||
if (typeof response.result === 'string' || response.result instanceof String)
|
||||
return JSON.parse(response.result);
|
||||
return response.result;
|
||||
}
|
||||
|
||||
let error = response.error;
|
||||
let errorObj = {
|
||||
title: " ",
|
||||
message: "",
|
||||
fullTrace: error
|
||||
};
|
||||
return Promise.reject(error);
|
||||
}
|
||||
|
||||
private handleRequestErrors(response: any) {
|
||||
if (!response.error) {
|
||||
if (typeof response.result === 'string' || response.result instanceof String)
|
||||
return JSON.parse(response.result);
|
||||
return response.result;
|
||||
}
|
||||
|
||||
let error = response.error;
|
||||
let errorObj = {
|
||||
title: " ",
|
||||
message: "",
|
||||
fullTrace: error
|
||||
};
|
||||
return Promise.reject(error);
|
||||
}
|
||||
|
||||
private handleHttpErrors(error: any) {
|
||||
try{
|
||||
console.log(error, Object.getOwnPropertyNames(error));
|
||||
}
|
||||
catch(e){
|
||||
console.log(error);
|
||||
}
|
||||
return Promise.reject(error.message || error);
|
||||
}
|
||||
|
||||
public init(configs: any) {
|
||||
this.MikroWizard_server = configs.MikroWizard_server;
|
||||
this.http_auth = configs.http_auth || null;
|
||||
}
|
||||
|
||||
public setMikroWizardServer(MikroWizard_server: string) {
|
||||
this.MikroWizard_server = MikroWizard_server;
|
||||
}
|
||||
|
||||
public setHttpAuth(http_auth: string) {
|
||||
this.http_auth = http_auth;
|
||||
}
|
||||
public sendRequestauth(url: string, params: Object){
|
||||
let body = this.buildRequest(url, params);
|
||||
console.dir(body);
|
||||
return this.http.post(this.MikroWizard_server + url, body, {observe: "response",headers: this.headers,withCredentials:true});
|
||||
}
|
||||
public sendRequest(url: string, params: Object): Promise<any> {
|
||||
let body = this.buildRequest(url, params);
|
||||
return this.http.post(this.MikroWizard_server + url, body, {headers: this.headers,withCredentials:true})
|
||||
.toPromise()
|
||||
.then((response: any) => this.handleMikroWizardErrors(response))
|
||||
.catch((response: any) => this.handleHttpErrors(response));
|
||||
}
|
||||
|
||||
public sendJsonRequest(url: string, params: Object) {
|
||||
let headers = {
|
||||
"Content-Type": "application/json",
|
||||
};
|
||||
return this.http.post(url, params,
|
||||
{headers:this.headers,withCredentials:true}
|
||||
).toPromise()
|
||||
.then(this.handleRequestErrors)
|
||||
.catch(this.handleHttpErrors);
|
||||
}
|
||||
|
||||
public sendHttpRequest(url: string, params: any) {
|
||||
let headers = {
|
||||
"Content-Type": "application/x-www-form-urlencoded",
|
||||
};
|
||||
return this.http.post(this.MikroWizard_server + url, params,
|
||||
{headers:headers,withCredentials:true}
|
||||
).toPromise()
|
||||
.then(this.handleRequestErrors)
|
||||
.catch(this.handleHttpErrors);
|
||||
}
|
||||
public sendHttpGetRequest(url: string) {
|
||||
let headers = {
|
||||
"Content-Type": "application/x-www-form-urlencoded",
|
||||
};
|
||||
return this.http.get( url,
|
||||
{ responseType: 'json' }
|
||||
).toPromise()
|
||||
}
|
||||
|
||||
public getServerInfo() {
|
||||
return this.sendRequest("/api/version_info", {});
|
||||
}
|
||||
|
||||
public getSessionInfo() {
|
||||
return this.sendRequest("/api/me", {});
|
||||
}
|
||||
//Set-Cookie
|
||||
public login(db: string, login: string, password: string, ga: string) {
|
||||
let params = {
|
||||
username : login,
|
||||
password : password,
|
||||
// token: token,
|
||||
ga: ga
|
||||
};
|
||||
let $this = this;
|
||||
return this.sendRequest("/api/login", params);
|
||||
}
|
||||
|
||||
public isLoggedIn() {
|
||||
return this.getSessionInfo().then(function(result: any) {
|
||||
// console.dir("result");
|
||||
console.dir(result);
|
||||
// return true;
|
||||
if ( "uid" in result === false ) return false;
|
||||
else return true;
|
||||
});
|
||||
}
|
||||
|
||||
public clearCookeis() {
|
||||
this.cookies = new Cookies();
|
||||
}
|
||||
|
||||
public logout() {
|
||||
this.clearCookeis();
|
||||
return Promise.resolve();
|
||||
}
|
||||
|
||||
|
||||
|
||||
public getUserContext(context: any) {
|
||||
localStorage.setItem("user_context", JSON.stringify(context));
|
||||
|
||||
}
|
||||
|
||||
public getContext() {
|
||||
return this.context;
|
||||
}
|
||||
|
||||
|
||||
|
||||
public setNewSession(user_context: any, session_id: any) {
|
||||
this.context = user_context;
|
||||
localStorage.setItem("user_context", JSON.stringify(this.context));
|
||||
}
|
||||
}
|
||||
21
src/app/providers/mikrowizard/user.ts
Normal file
21
src/app/providers/mikrowizard/user.ts
Normal file
|
|
@ -0,0 +1,21 @@
|
|||
export class User {
|
||||
name: string;
|
||||
username: string;
|
||||
firstname: string;
|
||||
lastname: string;
|
||||
partner_id: number;
|
||||
id: number;
|
||||
role: string;
|
||||
perms:any;
|
||||
tz:string;
|
||||
constructor(name: any, username: any, partner_id: any, user_id: any,firstname: any,lastname: any,role: any,perms:any,tz:string) { this.name = name;
|
||||
this.username = username;
|
||||
this.partner_id = partner_id;
|
||||
this.id = user_id;
|
||||
this.firstname = firstname;
|
||||
this.lastname = lastname;
|
||||
this.role = role;
|
||||
this.perms = perms;
|
||||
this.tz=tz;
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue