#!/usr/bin/python
# coding: UTF-8
# Rec10 TS Recording Tools
# Copyright (C) 2009 Yukikaze
import sqlite3

import os
#CS放送では複数のチャンネルを指定する必要があるためチャンネル名をテキストデータで持っておき(chtxt)、必要に応じて変換する
#ontvはepgデータなどで指定されている名前
#ここの設定は愛知県の設定(+CS放送スカパーe2 +BS)
dbpath = str(os.path.dirname(os.path.abspath(__file__))) + "/" + "ch.db"
#db=sqlite3.connect(dbpath)
db = sqlite3.connect(dbpath)
try:

    db.execute('drop table chdata')
    db.commit()
except:
    test = ""

try:
    db.execute('create table chdata (bctype TEXT,ontv TEXT,chtxt TEXT,ch TEXT,csch TEXT,station TEXT,station_name TEXT,updatetime TEXT)')
except:
    ""
db.commit()

#except:
#   print "テーブル作成に失敗しました"
#   db.commit()
#db.commit()
db.close()
def chadd(bctype, ontv, chtxt, ch, csch, station, station_name):#すべて文字列
    """
    ChannelDBに指定したデータを追加する
    bctype:放送種別,bs/cs/te10などが入る。
    番組表データがbs,csは一括でとれるためbs,cs内で区別はなし
    te(地上波)は各チャンネルごとに設定する必要があるためteに
    チャンネルの数字を足したものにする
    """
    db = sqlite3.connect(dbpath)
    value = "(\'" + bctype + "\',\'" + ontv + "\',\'" + chtxt + "\',\'" + ch + "\',\'" + csch + "\',\'" + station + "\',\'" + station_name + "\',datetime(\'2009-04-01 00:00:00\'))"
    print value
    value = unicode(value)
    db.execute('insert into chdata values ' + value)
    db.commit()
    db.close()
#db.commit

#チャンネルの設定
#chadd('放送種別','ontvコード(ontvのサイトなどで調べられる)','略称(何でもよい)','チャンネル(物理チャンネル)','CS放送の場合の内訳','iEPGデジタルのstation','iEPGのstation')
#iEPGDigitalはテレビ王国のサイトでiEPGはサイトによってまちまちのようなので自分の使うサイトに即したものにしてください
#指定しない場合はnoneなどにしておけば動作はします(自動でチャンネルを設定する部分が動かないためチャンネルをRec10WEBから指定する必要があります。)


#地上波の設定　東京都(筆者は東京で受信していないため正しいかどうか分かりません)
#chadd('te26', '0442.ontvjapan.com', 'nhk-k', '26', '0', 'DFS00408', 'ＮＨＫ教育')
#chadd('te27', '0432.ontvjapan.com', 'nhk-s', '27', '0', 'DFS00400', 'ＮＨＫ総合')
#chadd('te25', '0404.ontvjapan.com', 'nittere', '25', '0', 'DFS00410', '日本テレビ')
#chadd('te22', '0405.ontvjapan.com', 'tbs', '22', '0', 'DFS00418', 'TBS')
#chadd('te23', '0406.ontvjapan.com', 'tokyo', '23', '0', 'DFS00430', 'テレビ東京')
#chadd('te21', '0407.ontvjapan.com', 'fuji', '21', '0', 'DFS00420', 'フジテレビ')
#chadd('te24', '0420.ontvjapan.com', 'asahi', '24', '0', 'DFS0428', 'テレビ朝日')
#chadd('te20', '0420.ontvjapan.com', 'tokyomx', '20', '0', 'DFS00112', '東京MX')#よくわかりません
#
#地上波の設定　愛知県向け
chadd('te13', '0442.ontvjapan.com', 'nhk-k', '13', '0', 'DFS00C08', 'ＮＨＫ教育')
chadd('te20', '0432.ontvjapan.com', 'nhk-s', '20', '0', 'DFS08400', 'ＮＨＫ総合')
chadd('te22', '0404.ontvjapan.com', 'me-tere', '22', '0', 'DFS00C20', '名古屋テレビ')
chadd('te18', '0405.ontvjapan.com', 'cbc', '18', '0', 'DFS00C18', '中京テレビ')
chadd('te21', '0406.ontvjapan.com', 'toukai', '21', '0', 'DFS00C10', '東海テレビ')
chadd('te19', '0407.ontvjapan.com', 'chukyo', '19', '0', 'DFS00C28', '中京テレビ')
chadd('te23', '0420.ontvjapan.com', 'aichi', '23', '0', 'DFS08430', 'テレビ愛知')



#CS放送(スカパーe2)主に基本パックには言ってるものを中心に
chadd('cs', '1204.ontvjapan.com', 'natiogeo', 'CS6', '343', 'CSDT343', 'none')
chadd('cs', '1070.ontvjapan.com', 'bbc', 'CS12', '353', 'CSDT353', 'ＢＢＣワールド')
chadd('cs', '1069.ontvjapan.com', 'cnn', 'CS12', '354', 'CSDT354', 'ＣＮＮインターナショナル')
chadd('cs', '1045.ontvjapan.com', 'kids', 'CS22', '330', 'CSDT330', 'キッズステーション')
chadd('cs', '1007.ontvjapan.com', 'movieplus', 'CS18', '240', 'CSDT240', 'ムービープラス')
chadd('cs', '1016.ontvjapan.com', 'fox', 'CS4', '312', 'CSDT312', 'ＦＯＸ')
chadd('cs', '1014.ontvjapan.com', 'axn', 'CS6', '311', 'CSDT311', 'ＡＸＮ')
chadd('cs', '1201.ontvjapan.com', 'atx', 'CS16', '333', 'CSDT333', 'アニメシアターX')
chadd('cs', '1050.ontvjapan.com', 'hisch', 'CS16', '342', 'CSDT342', 'ＬＥＴ’ｓＴＲＹ')
chadd('cs', '1047.ontvjapan.com', 'animax', 'CS20', '332', 'CSDT332', 'AXNアニマックス')
chadd('cs', '1062.ontvjapan.com', 'disch', 'CS20', '340', 'CSDT340', 'ディスカバリーチャンネル')
chadd('cs', '1193.ontvjapan.com', 'anipla', 'CS20', '341', 'CSDT341', 'アニマルプラネット')
chadd('cs', '1008.ontvjapan.com', 'neco', 'CS6', '223', 'CSDT223', 'SPTV261')
chadd('cs', '1015.ontvjapan.com', 'family', 'CS22', '293', 'CSDT293', 'ファミリー劇場')
chadd('cs', '1213.ontvjapan.com', 'disney', 'CS4', '334', 'CSDT334', 'ディズニーチャンネル')
chadd('cs', '1092.ontvjapan.com', 'teroasa', 'CS12', '303', 'CSDT303', '糞朝チャンネル')
chadd('cs', '1073.ontvjapan.com', 'fuji-one', 'CS20', '307', 'CSDT307', 'フジテレビONE')
chadd('cs', '1072.ontvjapan.com', 'fuji-two', 'CS20', '308', 'CSDT308', 'フジテレビTWO')
chadd('cs', '1009.ontvjapan.com', 'yo-ga', 'CS6', '224', 'CSDT224', 'シネフィル・イマジカ')
chadd('cs2', '1217.ontvjapan.com', 'thecinema', 'CS10', '228', 'CSDT228', 'none')
chadd('cs2', '1086.ontvjapan.com', 'nihoneiga', 'CS2', '239', 'CSDT239', '日本映画専門チャンネル')

#bs放送の設定　全国共通のはず
chadd('bs', '3001.ontvjapan.com', 'bs-nhk-1', '101', '0', 'BSDT101', 'ＮＨＫ衛星第一')
chadd('bs', '3002.ontvjapan.com', 'bs-nhk-2', '102', '0', 'BSDT102', 'ＮＨＫ衛星第二')
chadd('bs', '3003.ontvjapan.com', 'bs-nhk-hi', '103', '0', 'BSDT103', 'ＮＨＫハイビジョン')
chadd('bs', '3004.ontvjapan.com', 'bs-nittere', '141', '0', 'BSDT141', 'ＢＳ日テレ')
chadd('bs', '3005.ontvjapan.com', 'bs-asahi', '151', '0', 'BSDT151', 'ＢＳ朝日')
chadd('bs', '3006.ontvjapan.com', 'bs-tbs', '161', '0', 'BSDT161', 'ＢＳ−ｉ')
chadd('bs', '3007.ontvjapan.com', 'bs-japan', '171', '0', 'BSDT171', 'ＢＳジャパン')
chadd('bs', '3008.ontvjapan.com', 'bs-fuji', '181', '0', 'BSDT181', 'ＢＳフジ')
chadd('bs', '3013.ontvjapan.com', 'bs-11', '211', '0', 'BSDT211', '')


