# This file is apart of SlapbirdAPM, a Free and Open-Source
# web application APM for Perl 5 web applications.
#
# Copyright (C) 2024  Mollusc Labs.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program 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 Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program.  If not, see <http://www.gnu.org/licenses/>.


package Slapbird::Controller::Static;

use Mojo::Base 'Mojolicious::Controller';

sub index {
  my ($c) = @_;
  return $c->redirect_to('/dashboard') if $c->logged_in;
  return $c->render(template => 'index');
}

sub pricing {
  my ($c) = @_;
  return $c->render(template => 'pricing');
}

sub privacy {
  my ($c) = @_;
  return $c->render(template => 'privacy');
}

sub tos {
  my ($c) = @_;
  return $c->render(template => 'tos');
}

sub getting_started {
  my ($c) = @_;
  return $c->render(template => 'getting_started');
}

sub upgrade {
  my ($c) = @_;

  my @pricing_plans
    = $c->resultset('PricingPlan')->search({stripe_id => {-not => undef}})->all;
  my @addons
    = $c->resultset('Addon')->search({stripe_id => {-not => undef}})->all;

  return $c->render(
    template           => 'upgrade',
    user_is_associated => $c->user->is_associated,
    user_pricing_plan  => $c->user->user_pricing_plan,
    pricing_plans      => [reverse @pricing_plans],
    addons             => \@addons
  );
}

sub docs {
  my ($c) = @_;
  return $c->redirect_to('https://docs.slapbirdapm.com');
}

1;
