// NNM-Club torrent filess mass downloader
// Created for Uploaders group
// Copyright (c) 2012-2019 Vladimir "fat0troll" Hodakov

package loginerv1

import (
	"github.com/rs/zerolog"
	"gitlab.com/fat0troll/uploader_tools/internal/context"
	"gitlab.com/pztrn/flagger"
)

var (
	c    *context.Context
	dlog zerolog.Logger
)

// New initializes package
func New(cc *context.Context) {
	c = cc
	dlog = c.Logger.With().Str("domain", "loginer").Int("version", 1).Logger()

	_ = c.Flagger.AddFlag(&flagger.Flag{
		Name:         "auth",
		Description:  "Start authentication to NNM-Club website and create application config.",
		Type:         "bool",
		DefaultValue: false,
	})

	dlog.Info().Msg("Domain initialized")
}

// Process handles authorization
func Process() {
	auth, _ := c.Flagger.GetBoolValue("auth")

	if auth {
		login()
	}

	checkConfig()
	obtainCookies()
}