dev #7
@@ -10,7 +10,7 @@ export const routes: Routes = [
|
|||||||
loadComponent: () => import('./features/home/home.component').then(m => m.HomeComponent)
|
loadComponent: () => import('./features/home/home.component').then(m => m.HomeComponent)
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: 'cal',
|
path: 'calculator',
|
||||||
loadChildren: () => import('./features/calculator/calculator.routes').then(m => m.CALCULATOR_ROUTES)
|
loadChildren: () => import('./features/calculator/calculator.routes').then(m => m.CALCULATOR_ROUTES)
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -10,7 +10,7 @@
|
|||||||
|
|
||||||
<nav class="nav-links" [class.open]="isMenuOpen">
|
<nav class="nav-links" [class.open]="isMenuOpen">
|
||||||
<a routerLink="/" routerLinkActive="active" [routerLinkActiveOptions]="{exact: true}" (click)="closeMenu()">{{ 'NAV.HOME' | translate }}</a>
|
<a routerLink="/" routerLinkActive="active" [routerLinkActiveOptions]="{exact: true}" (click)="closeMenu()">{{ 'NAV.HOME' | translate }}</a>
|
||||||
<a routerLink="/cal" routerLinkActive="active" [routerLinkActiveOptions]="{exact: false}" (click)="closeMenu()">{{ 'NAV.CALCULATOR' | translate }}</a>
|
<a routerLink="/calculator/basic" routerLinkActive="active" [routerLinkActiveOptions]="{exact: false}" (click)="closeMenu()">{{ 'NAV.CALCULATOR' | translate }}</a>
|
||||||
<a routerLink="/shop" routerLinkActive="active" (click)="closeMenu()">{{ 'NAV.SHOP' | translate }}</a>
|
<a routerLink="/shop" routerLinkActive="active" (click)="closeMenu()">{{ 'NAV.SHOP' | translate }}</a>
|
||||||
<a routerLink="/about" routerLinkActive="active" (click)="closeMenu()">{{ 'NAV.ABOUT' | translate }}</a>
|
<a routerLink="/about" routerLinkActive="active" (click)="closeMenu()">{{ 'NAV.ABOUT' | translate }}</a>
|
||||||
<a routerLink="/contact" routerLinkActive="active" (click)="closeMenu()">{{ 'NAV.CONTACT' | translate }}</a>
|
<a routerLink="/contact" routerLinkActive="active" (click)="closeMenu()">{{ 'NAV.CONTACT' | translate }}</a>
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
import { Component, signal, ViewChild, ElementRef } from '@angular/core';
|
import { Component, signal, ViewChild, ElementRef, OnInit } from '@angular/core';
|
||||||
import { CommonModule } from '@angular/common';
|
import { CommonModule } from '@angular/common';
|
||||||
import { TranslateModule } from '@ngx-translate/core';
|
import { TranslateModule } from '@ngx-translate/core';
|
||||||
|
|
||||||
@@ -9,7 +9,7 @@ import { QuoteResultComponent } from './components/quote-result/quote-result.com
|
|||||||
import { QuoteRequest, QuoteResult, QuoteEstimatorService } from './services/quote-estimator.service';
|
import { QuoteRequest, QuoteResult, QuoteEstimatorService } from './services/quote-estimator.service';
|
||||||
import { UserDetailsComponent } from './components/user-details/user-details.component';
|
import { UserDetailsComponent } from './components/user-details/user-details.component';
|
||||||
import { SuccessStateComponent } from '../../shared/components/success-state/success-state.component';
|
import { SuccessStateComponent } from '../../shared/components/success-state/success-state.component';
|
||||||
import { Router } from '@angular/router';
|
import { Router, ActivatedRoute } from '@angular/router';
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
selector: 'app-calculator-page',
|
selector: 'app-calculator-page',
|
||||||
@@ -18,7 +18,7 @@ import { Router } from '@angular/router';
|
|||||||
templateUrl: './calculator-page.component.html',
|
templateUrl: './calculator-page.component.html',
|
||||||
styleUrl: './calculator-page.component.scss'
|
styleUrl: './calculator-page.component.scss'
|
||||||
})
|
})
|
||||||
export class CalculatorPageComponent {
|
export class CalculatorPageComponent implements OnInit {
|
||||||
mode = signal<any>('easy');
|
mode = signal<any>('easy');
|
||||||
step = signal<'upload' | 'quote' | 'details' | 'success'>('upload');
|
step = signal<'upload' | 'quote' | 'details' | 'success'>('upload');
|
||||||
|
|
||||||
@@ -32,7 +32,19 @@ export class CalculatorPageComponent {
|
|||||||
@ViewChild('uploadForm') uploadForm!: UploadFormComponent;
|
@ViewChild('uploadForm') uploadForm!: UploadFormComponent;
|
||||||
@ViewChild('resultCol') resultCol!: ElementRef;
|
@ViewChild('resultCol') resultCol!: ElementRef;
|
||||||
|
|
||||||
constructor(private estimator: QuoteEstimatorService, private router: Router) {}
|
constructor(
|
||||||
|
private estimator: QuoteEstimatorService,
|
||||||
|
private router: Router,
|
||||||
|
private route: ActivatedRoute
|
||||||
|
) {}
|
||||||
|
|
||||||
|
ngOnInit() {
|
||||||
|
this.route.data.subscribe(data => {
|
||||||
|
if (data['mode']) {
|
||||||
|
this.mode.set(data['mode']);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
onCalculate(req: QuoteRequest) {
|
onCalculate(req: QuoteRequest) {
|
||||||
// ... (logic remains the same, simplified for diff)
|
// ... (logic remains the same, simplified for diff)
|
||||||
|
|||||||
@@ -2,5 +2,7 @@ import { Routes } from '@angular/router';
|
|||||||
import { CalculatorPageComponent } from './calculator-page.component';
|
import { CalculatorPageComponent } from './calculator-page.component';
|
||||||
|
|
||||||
export const CALCULATOR_ROUTES: Routes = [
|
export const CALCULATOR_ROUTES: Routes = [
|
||||||
{ path: '', component: CalculatorPageComponent }
|
{ path: '', redirectTo: 'basic', pathMatch: 'full' },
|
||||||
|
{ path: 'basic', component: CalculatorPageComponent, data: { mode: 'easy' } },
|
||||||
|
{ path: 'advanced', component: CalculatorPageComponent, data: { mode: 'advanced' } }
|
||||||
];
|
];
|
||||||
|
|||||||
@@ -15,7 +15,7 @@
|
|||||||
Se devi ancora crearlo, il nostro team di design lo progetterà per te.
|
Se devi ancora crearlo, il nostro team di design lo progetterà per te.
|
||||||
</p>
|
</p>
|
||||||
<div class="hero-actions">
|
<div class="hero-actions">
|
||||||
<app-button variant="primary" routerLink="/cal">Calcola Preventivo</app-button>
|
<app-button variant="primary" routerLink="/calculator/basic">Calcola Preventivo</app-button>
|
||||||
<app-button variant="outline" routerLink="/shop">Vai allo shop</app-button>
|
<app-button variant="outline" routerLink="/shop">Vai allo shop</app-button>
|
||||||
<app-button variant="text" routerLink="/contact">Parla con noi</app-button>
|
<app-button variant="text" routerLink="/contact">Parla con noi</app-button>
|
||||||
</div>
|
</div>
|
||||||
@@ -49,7 +49,7 @@
|
|||||||
<li>Ricevi subito costo e tempo</li>
|
<li>Ricevi subito costo e tempo</li>
|
||||||
</ul>
|
</ul>
|
||||||
<div class="quote-actions">
|
<div class="quote-actions">
|
||||||
<app-button variant="primary" [fullWidth]="true" routerLink="/cal">Apri calcolatore</app-button>
|
<app-button variant="primary" [fullWidth]="true" routerLink="/calculator/basic">Apri calcolatore</app-button>
|
||||||
<app-button variant="outline" [fullWidth]="true" routerLink="/contact">Parla con noi</app-button>
|
<app-button variant="outline" [fullWidth]="true" routerLink="/contact">Parla con noi</app-button>
|
||||||
</div>
|
</div>
|
||||||
</app-card>
|
</app-card>
|
||||||
|
|||||||
Reference in New Issue
Block a user