//
//  AdTypes.swift
//  sdk-demo-ios
//
//  Created by Smaato Inc on 10.07.18.
//  Copyright © 2018 Smaato Inc. All rights reserved.
//

import UIKit

enum AdType: Int, CaseIterable {
    case Banner, Interstitial, Rewarded, Native

    var identifier: String {
        switch self {
        case .Banner:
            return "Banner"
        case .Interstitial:
            return "Interstitial"
        case .Rewarded:
            return "Rewarded"
        case .Native:
            return "Native"
        }
    }
}

enum NetworkType: Int, CaseIterable {
    case MoPub, AdMob

    var identifier: String {
        switch self {
        case .MoPub:
            return "MoPub"
        case .AdMob:
            return "Google Mobile Ads"
        }
    }
}

enum OtherContent: Int, CaseIterable {
    case Splash, Settings, GDPR

    var identifier: String {
        switch self {
        case .Splash:
            return "Splash Ad"
        case .Settings:
            return "Settings"
        case .GDPR:
            return "GDPR Information"
        }
    }
}

enum Sections: Int, CaseIterable {
    case UnifiedBidding, Mediation, Primary, CSM, Other

    func headerTitle() -> String {
        switch self {
        case .UnifiedBidding:
            return "Unified Bidding"
        case .Mediation:
            return "Mediation"
        case .Primary:
            return "Primary"
        case .CSM:
               return "CSM"
        case .Other:
            return "Other"
        }
    }

    var identifier: String {
        switch self {
        case .UnifiedBidding:
            return "UnifiedBidding"
        case .Mediation:
            return "Mediation"
        case .Primary:
            return "AdTypes"
        case .CSM:
            return "CSM"
        case .Other:
            return "Other"
        }
    }
}

struct Segues {
    static let showNewPrimaryAdSegue = "showNewPrimaryAdSegue"
    static let showNewMediationAdSegue = "showNewMediationAdSegue"
}
