backup urls added

This commit is contained in:
Mosiur Rahman
2024-11-18 19:04:45 +06:00
parent 183c19705c
commit 47c5b27339
11 changed files with 292 additions and 4 deletions

View File

@@ -1 +1 @@
<app-tool-list></app-tool-list>
<router-outlet></router-outlet>

View File

@@ -1,3 +1,8 @@
import { Routes } from '@angular/router';
import { ToolComponent } from './components/partials/tool/tool.component';
import { BackupListComponent } from './components/pages/backup-list/backup-list.component';
export const routes: Routes = [];
export const routes: Routes = [
{path: "", component: ToolComponent},
{path: "backup", component: BackupListComponent}
];

134
src/app/backup.ts Normal file
View File

@@ -0,0 +1,134 @@
export const vols = [
{
projectName: "Novotel",
projectURL: "http://118.67.215.11/dashboard/auth/switch/b4600c142d024e068972a9bf574ab662/?next=/dashboard/project/",
volumeName: "NovoTel-Primary-Database-Volume",
volumeURL: "http://118.67.215.11/dashboard/project/volumes/585ccae9-d7f3-4370-b2f3-5b43c2881b64/"
},
{
projectName: "Novotel",
projectURL: "http://118.67.215.11/dashboard/auth/switch/b4600c142d024e068972a9bf574ab662/?next=/dashboard/project/",
volumeName: "Brilliant-Shop-VM",
volumeURL: "http://118.67.215.11/dashboard/project/volumes/ad491ab9-0777-4270-847f-21a7f00c5f45/"
},
{
projectName: "Novotel",
projectURL: "http://118.67.215.11/dashboard/auth/switch/b4600c142d024e068972a9bf574ab662/?next=/dashboard/project/",
volumeName: "Live Web Server Vol 1 1200GB",
volumeURL: "http://118.67.215.11/dashboard/project/volumes/c8a8a689-b431-4529-97b2-97dd2fc8928b/"
},
{
projectName: "Novotel",
projectURL: "http://118.67.215.11/dashboard/auth/switch/b4600c142d024e068972a9bf574ab662/?next=/dashboard/project/",
volumeName: "Live-Web-Server-Vol-02",
volumeURL: "http://118.67.215.11/dashboard/project/volumes/730a9a15-b5d9-4af8-944b-39ac1045279d/"
},
{
projectName: "Zimbra mail (MAAS)",
projectURL: "http://118.67.215.11/dashboard/auth/switch/77659323516246abbd198ec924cadfe2/?next=/dashboard/project/",
volumeName: "Mailbox5-Vol-1",
volumeURL: "http://118.67.215.11/dashboard/project/volumes/42251910-80e5-485d-864f-3c7c0ba09cc0/"
},
{
projectName: "Zimbra mail (MAAS)",
projectURL: "http://118.67.215.11/dashboard/auth/switch/77659323516246abbd198ec924cadfe2/?next=/dashboard/project/",
volumeName: "mailbox-5-backup-data",
volumeURL: "http://118.67.215.11/dashboard/project/volumes/943b0329-7785-494b-806a-38b45d4eef9d/"
},
{
projectName: "Zimbra mail (MAAS)",
projectURL: "http://118.67.215.11/dashboard/auth/switch/77659323516246abbd198ec924cadfe2/?next=/dashboard/project/",
volumeName: "Zimbra mailbox",
volumeURL: "http://118.67.215.11/dashboard/project/volumes/174eef51-bb78-4cea-8790-00760c1d2b04/"
},
{
projectName: "Zimbra mail (MAAS)",
projectURL: "http://118.67.215.11/dashboard/auth/switch/77659323516246abbd198ec924cadfe2/?next=/dashboard/project/",
volumeName: "Zimbra-MailBox-Backup",
volumeURL: "http://118.67.215.11/dashboard/project/volumes/b85b8ee2-873b-4034-9efb-4ba39fe3e81a/"
},
{
projectName: "Zimbra mail (MAAS)",
projectURL: "http://118.67.215.11/dashboard/auth/switch/77659323516246abbd198ec924cadfe2/?next=/dashboard/project/",
volumeName: "Zimbra-mail",
volumeURL: "http://118.67.215.11/dashboard/project/volumes/3672d9e4-396e-49c0-b9e0-8ea45268633d/"
},
{
projectName: "Zimbra mail (MAAS)",
projectURL: "http://118.67.215.11/dashboard/auth/switch/77659323516246abbd198ec924cadfe2/?next=/dashboard/project/",
volumeName: "Zimbra-mta",
volumeURL: "http://118.67.215.11/dashboard/project/volumes/4c1cdefe-3e32-42da-8a7d-00e42623df70/"
},
{
projectName: "Zimbra mail (MAAS)",
projectURL: "http://118.67.215.11/dashboard/auth/switch/77659323516246abbd198ec924cadfe2/?next=/dashboard/project/",
volumeName: "Zimbra mzmta",
volumeURL: "http://118.67.215.11/dashboard/project/volumes/879779bd-1344-41f5-8265-f92c4d6726d1/"
},
{
projectName: "Zimbra mail (MAAS)",
projectURL: "http://118.67.215.11/dashboard/auth/switch/77659323516246abbd198ec924cadfe2/?next=/dashboard/project/",
volumeName: "Zimbra slave ldap",
volumeURL: "http://118.67.215.11/dashboard/project/volumes/a92a4722-ec40-4ca1-8392-8b31c4fb4901/"
},
{
projectName: "Zimbra mail (MAAS)",
projectURL: "http://118.67.215.11/dashboard/auth/switch/77659323516246abbd198ec924cadfe2/?next=/dashboard/project/",
volumeName: "Zimbra Master ldap",
volumeURL: "http://118.67.215.11/dashboard/project/volumes/c198c929-fdff-45a1-9f77-f6866b645a60/"
},
{
projectName: "Zimbra mail (MAAS)",
projectURL: "http://118.67.215.11/dashboard/auth/switch/77659323516246abbd198ec924cadfe2/?next=/dashboard/project/",
volumeName: "Mailborder v5 Mail filter",
volumeURL: "http://118.67.215.11/dashboard/project/volumes/c2ccaee8-f9e7-402f-8a81-0dbbf9ce9cff/"
},
{
projectName: "Zimbra mail (MAAS)",
projectURL: "http://118.67.215.11/dashboard/auth/switch/77659323516246abbd198ec924cadfe2/?next=/dashboard/project/",
volumeName: "Zimbra DNS",
volumeURL: "http://118.67.215.11/dashboard/project/volumes/12c5a3d2-85a9-4a03-b80b-4f356e586d4c/"
},
{
projectName: "CommVault (BAAS)",
projectURL: "http://118.67.215.11/dashboard/auth/switch/cad590b54ab9483badee1a347f313c06/?next=/dashboard/project/",
volumeName: "Commvault Proxy-vol-1",
volumeURL: "http://118.67.215.11/dashboard/project/volumes/ab563c0e-ef20-4c24-80ab-b54d04282b86/"
},
{
projectName: "CommVault (BAAS)",
projectURL: "http://118.67.215.11/dashboard/auth/switch/cad590b54ab9483badee1a347f313c06/?next=/dashboard/project/",
volumeName: "Commvault Backup new",
volumeURL: "http://118.67.215.11/dashboard/project/volumes/7f757d5e-a7d8-47fb-9ea5-116328b1ca19/"
},
{
projectName: "CommVault (BAAS)",
projectURL: "http://118.67.215.11/dashboard/auth/switch/cad590b54ab9483badee1a347f313c06/?next=/dashboard/project/",
volumeName: "commserve-additional-300gb-new",
volumeURL: "http://118.67.215.11/dashboard/project/volumes/2916a834-d6d9-491e-ab94-a46736b7ce54/"
},
{
projectName: "CommVault (BAAS)",
projectURL: "http://118.67.215.11/dashboard/auth/switch/cad590b54ab9483badee1a347f313c06/?next=/dashboard/project/",
volumeName: "Commserve-DR-Backup-200GB-from-old-server-new",
volumeURL: "http://118.67.215.11/dashboard/project/volumes/732ce2d7-88fd-4e3d-aa48-2eb20dd68152/"
},
{
projectName: "CommVault (BAAS)",
projectURL: "http://118.67.215.11/dashboard/auth/switch/cad590b54ab9483badee1a347f313c06/?next=/dashboard/project/",
volumeName: "Commserve-DR-Backup-200GB-from-old-server-new",
volumeURL: "http://118.67.215.11/dashboard/project/volumes/732ce2d7-88fd-4e3d-aa48-2eb20dd68152/"
},
{
projectName: "Cloud-Monioring",
projectURL: "http://118.67.215.11/dashboard/auth/switch/e21290ae6e9845ddacb7158ba1d35867/?next=/dashboard/project/",
volumeName: "Owncloud-Intercloud-VM-01-Vol-01-SAS",
volumeURL: "http://118.67.215.11/dashboard/project/volumes/b23b318f-2ad3-43d7-850b-83340b68ac0f/"
},
{
projectName: "Cloud-Monioring",
projectURL: "http://118.67.215.11/dashboard/auth/switch/e21290ae6e9845ddacb7158ba1d35867/?next=/dashboard/project/",
volumeName: "Owncloud-Intercloud-VM-01-Vol-02-SAS",
volumeURL: "http://118.67.215.11/dashboard/project/volumes/7dde4fc3-7a0e-4a5d-bca8-12fe6832d8d5/"
}
]

View File

@@ -0,0 +1,24 @@
<div class="container">
<div class="table">
<table>
<thead>
<tr>
<th>
Project name
</th>
<th>
backup volume
</th>
<th>Copy Name</th>
</tr>
</thead>
<tbody>
<tr *ngFor="let backup of backupVolumes">
<td><a target="_blank" [href]=backup.projectURL>{{backup.projectName}}</a></td>
<td><a target="_blank" [href]=backup.volumeURL>{{backup.volumeName}}</a></td>
<td class="copyName" #copy (click)="copyName(copy)">{{backup.volumeName}}-{{currentDate | date: 'dd-MM-YYYY'}}-Cloud</td>
</tr>
</tbody>
</table>
</div>
</div>

View File

@@ -0,0 +1,47 @@
@import './../../../shared/scss/colors.scss';
table {
margin-left: 1rem;
}
table, tr, td {
border-collapse: collapse;
border: none;
}
th{
color: $txt-heading-color;
font-size: 1.5rem;
}
tbody tr {
transition: all 0.3s
}
tbody tr:hover {
transform: scale(1.03);
background-color: $hover-color;
border-collapse: collapse;
border: none;
}
td:first-child{
border-radius: 1rem 0rem 0rem 1rem;
}
td:last-child{
border-radius: 0rem 1rem 1rem 0rem;
}
td {
padding: 1rem;
}
a{
text-decoration: none;
}
.copyName:hover {
cursor: pointer;
}

View File

@@ -0,0 +1,23 @@
import { ComponentFixture, TestBed } from '@angular/core/testing';
import { BackupListComponent } from './backup-list.component';
describe('BackupListComponent', () => {
let component: BackupListComponent;
let fixture: ComponentFixture<BackupListComponent>;
beforeEach(async () => {
await TestBed.configureTestingModule({
imports: [BackupListComponent]
})
.compileComponents();
fixture = TestBed.createComponent(BackupListComponent);
component = fixture.componentInstance;
fixture.detectChanges();
});
it('should create', () => {
expect(component).toBeTruthy();
});
});

View File

@@ -0,0 +1,30 @@
import { Component, ElementRef, OnInit, QueryList, ViewChild, ViewChildren, viewChildren } from '@angular/core';
import { BackupService } from './backup-list.service';
import { Backup } from '../../../shared/model/backup.model';
import { CommonModule } from '@angular/common';
@Component({
selector: 'app-backup-list',
standalone: true,
imports: [CommonModule],
templateUrl: './backup-list.component.html',
styleUrl: './backup-list.component.scss',
providers: [BackupService]
})
export class BackupListComponent implements OnInit{
backupVolumes: Backup[] = []
currentDate = new Date();
innerHTML!: string;
constructor(private backupService: BackupService) {}
ngOnInit(): void {
this.backupVolumes = this.backupService.allBackups;
}
copyName(copyName: HTMLTableCellElement){
this.innerHTML = copyName.innerHTML;
navigator.clipboard.writeText(this.innerHTML).then(()=>{
console.log("Copied")
}).catch(err=>console.log(err))
}
}

View File

@@ -0,0 +1,12 @@
import { Injectable } from "@angular/core";
import { vols } from "../../../backup";
Injectable({
providedIn: 'root'
})
export class BackupService {
get allBackups() {
return vols
}
}

View File

@@ -0,0 +1,6 @@
export class Backup{
projectName!: string;
projectURL!: string;
volumeName!: string;
volumeURL!: string;
}

View File

@@ -1 +1,4 @@
$bg-color: #FEEFAD;
$bg-color: #FEF9F2;
$txt-heading-color: #72BF78;
$txt-color: #1E201E;
$hover-color: #B6FFA1;