{
    "$schema": "http://json-schema.org/draft-04/schema#",
    "title": "Character Ad",
    "description": "A WoWFinder Character Ad",
    "type": "object",
    "properties": {
        "updated": {
            "type": "integer"
        },
        "lfg": {
            "type": "boolean",
            "default": false
        },
        "languages": {
            "type": "array",
            "items": {
                "type": "string",
                "enum": [
                    "en",
                    "de",
                    "fr",
                    "es",
                    "ru",
                    "bg",
                    "zh",
                    "hr",
                    "cs",
                    "da",
                    "nl",
                    "et",
                    "fi",
                    "el",
                    "he",
                    "hu",
                    "it",
                    "ja",
                    "ko",
                    "lv",
                    "lt",
                    "no",
                    "pl",
                    "pt",
                    "ro",
                    "sl",
                    "sv",
                    "tw",
                    "tr"
                ]
            }
        },
        "btag_display": {
            "type": "boolean",
            "default": false
        },
        "description": {
            "type": "string"
        },
        "transfert": {
            "type": "boolean",
            "default": false
        },
        "role": {
            "type": "object",
            "properties": {
                "tank": {
                    "type": "boolean",
                    "default": false
                },
                "melee_dps": {
                    "type": "boolean",
                    "default": false
                },
                "ranged_dps": {
                    "type": "boolean",
                    "default": false
                },
                "heal": {
                    "type": "boolean",
                    "default": false
                }
            }
        },
        "raids_per_week": {
            "type": "object",
            "properties": {
                "min": {
                    "type": "integer",
                    "default": 1,
                    "min": 1,
                    "max": 7
                },
                "max": {
                    "type": "integer",
                    "default": 7,
                    "min": 1,
                    "max": 7
                }
            }
        },
        "timezone": {
            "type": "string",
            "default": "Europe/London",
            "enum": [
                "America/Chicago",
                "America/Los_Angeles",
                "America/New_York",
                "America/Denver",
                "America/Sao_Paulo",
                "Australia/Melbourne",
                "Asia/Seoul",
                "Asia/Taipei",
                "Europe/London",
                "Europe/Paris",
                "Europe/Berlin",
                "Africa/Johannesburg",
                "Europe/Madrid",
                "Europe/Lisbon",
                "Europe/Moscow",
                "US/Hawaii"
            ]
        },
        "play_time": {
            "type": "object",
            "properties": {
                "monday": {
                    "type": "object",
                    "properties": {
                        "play": {
                            "type": "boolean",
                            "default": false
                        },
                        "start": {
                            "type": "object",
                            "properties": {
                                "hour": {
                                    "type": "integer",
                                    "default": 0
                                },
                                "hourUTC": {
                                    "type": "integer"
                                },
                                "min": {
                                    "type": "integer",
                                    "default": 0
                                }
                            }
                        },
                        "end": {
                            "type": "object",
                            "properties": {
                                "hour": {
                                    "type": "integer",
                                    "default": 0
                                },
                                "hourUTC": {
                                    "type": "integer"
                                },
                                "min": {
                                    "type": "integer",
                                    "default": 0
                                }
                            }
                        }
                    }
                },
                "tuesday": {
                    "type": "object",
                    "properties": {
                        "play": {
                            "type": "boolean",
                            "default": false
                        },
                        "start": {
                            "type": "object",
                            "properties": {
                                "hour": {
                                    "type": "integer",
                                    "default": 0
                                },
                                "hourUTC": {
                                    "type": "integer"
                                },
                                "min": {
                                    "type": "integer",
                                    "default": 0
                                }
                            }
                        },
                        "end": {
                            "type": "object",
                            "properties": {
                                "hour": {
                                    "type": "integer",
                                    "default": 0
                                },
                                "hourUTC": {
                                    "type": "integer"
                                },
                                "min": {
                                    "type": "integer",
                                    "default": 0
                                }
                            }
                        }
                    }
                },
                "wednesday": {
                    "type": "object",
                    "properties": {
                        "play": {
                            "type": "boolean",
                            "default": false
                        },
                        "start": {
                            "type": "object",
                            "properties": {
                                "hour": {
                                    "type": "integer",
                                    "default": 0
                                },
                                "hourUTC": {
                                    "type": "integer"
                                },
                                "min": {
                                    "type": "integer",
                                    "default": 0
                                }
                            }
                        },
                        "end": {
                            "type": "object",
                            "properties": {
                                "hour": {
                                    "type": "integer",
                                    "default": 0
                                },
                                "hourUTC": {
                                    "type": "integer"
                                },
                                "min": {
                                    "type": "integer",
                                    "default": 0
                                }
                            }
                        }
                    }
                },
                "thursday": {
                    "type": "object",
                    "properties": {
                        "play": {
                            "type": "boolean",
                            "default": false
                        },
                        "start": {
                            "type": "object",
                            "properties": {
                                "hour": {
                                    "type": "integer",
                                    "default": 0
                                },
                                "hourUTC": {
                                    "type": "integer"
                                },
                                "min": {
                                    "type": "integer",
                                    "default": 0
                                }
                            }
                        },
                        "end": {
                            "type": "object",
                            "properties": {
                                "hour": {
                                    "type": "integer",
                                    "default": 0
                                },
                                "hourUTC": {
                                    "type": "integer"
                                },
                                "min": {
                                    "type": "integer",
                                    "default": 0
                                }
                            }
                        }
                    }
                },
                "friday": {
                    "type": "object",
                    "properties": {
                        "play": {
                            "type": "boolean",
                            "default": false
                        },
                        "start": {
                            "type": "object",
                            "properties": {
                                "hour": {
                                    "type": "integer",
                                    "default": 0
                                },
                                "hourUTC": {
                                    "type": "integer"
                                },
                                "min": {
                                    "type": "integer",
                                    "default": 0
                                }
                            }
                        },
                        "end": {
                            "type": "object",
                            "properties": {
                                "hour": {
                                    "type": "integer",
                                    "default": 0
                                },
                                "hourUTC": {
                                    "type": "integer"
                                },
                                "min": {
                                    "type": "integer",
                                    "default": 0
                                }
                            }
                        }
                    }
                },
                "saturday": {
                    "type": "object",
                    "properties": {
                        "play": {
                            "type": "boolean",
                            "default": false
                        },
                        "start": {
                            "type": "object",
                            "properties": {
                                "hour": {
                                    "type": "integer",
                                    "default": 0
                                },
                                "hourUTC": {
                                    "type": "integer"
                                },
                                "min": {
                                    "type": "integer",
                                    "default": 0
                                }
                            }
                        },
                        "end": {
                            "type": "object",
                            "properties": {
                                "hour": {
                                    "type": "integer",
                                    "default": 0
                                },
                                "hourUTC": {
                                    "type": "integer"
                                },
                                "min": {
                                    "type": "integer",
                                    "default": 0
                                }
                            }
                        }
                    }
                },
                "sunday": {
                    "type": "object",
                    "properties": {
                        "play": {
                            "type": "boolean",
                            "default": false
                        },
                        "start": {
                            "type": "object",
                            "properties": {
                                "hour": {
                                    "type": "integer",
                                    "default": 0
                                },
                                "hourUTC": {
                                    "type": "integer"
                                },
                                "min": {
                                    "type": "integer",
                                    "default": 0
                                }
                            }
                        },
                        "end": {
                            "type": "object",
                            "properties": {
                                "hour": {
                                    "type": "integer",
                                    "default": 0
                                },
                                "hourUTC": {
                                    "type": "integer"
                                },
                                "min": {
                                    "type": "integer",
                                    "default": 0
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}