Documentation
¶
Overview ¶
Copyright © 2024 chouette.21.00@gmail.com Released under the MIT license https://opensource.org/licenses/mit-license.php
Copyright © 2024 chouette.21.00@gmail.com Released under the MIT license https://opensource.org/licenses/mit-license.php
参考 100行未満かつGo標準ライブラリだけで作る掲示板 https://news.mynavi.jp/techplus/article/gogogo-9/
Copyright © 2024 chouette.21.00@gmail.com Released under the MIT license https://opensource.org/licenses/mit-license.php
Copyright © 2024 chouette.21.00@gmail.com Released under the MIT license https://opensource.org/licenses/mit-license.php
Copyright © 2024 chouette.21.00@gmail.com Released under the MIT license https://opensource.org/licenses/mit-license.php
Copyright © 2024 chouette.21.00@gmail.com Released under the MIT license https://opensource.org/licenses/mit-license.php
Copyright © 2024 chouette.21.00@gmail.com Released under the MIT license https://opensource.org/licenses/mit-license.php
Copyright © 2024 chouette.21.00@gmail.com Released under the MIT license https://opensource.org/licenses/mit-license.php
Index ¶
- Constants
- Variables
- func DetXaxScale(xupper float64) (xscaled int, xscalet int, status int)
- func DetYaxScale(maxpoint int) (yupper int, yscales int, yscalel int, status int)
- func DrawLineGraph(filename string, title0 string, title1 string, title2 string, maxpoint int, ...) (err error)
- func FindHistoricalData(eventinflist *[]exsrapi.Event_Inf) (err error)
- func FindPtPerSlot(eventid string, roomlist *[]srapi.Room) (err error)
- func GetAciveFanByAPI(room_id string, yyyymm string) (nofan int)
- func GetEventInf(eventid string, eventinfo *exsrapi.Event_Inf) (status int)
- func GetEventInfAndRoomList(eventid string, breg int, ereg int, eventinfo *exsrapi.Event_Inf, ...) (status int)
- func GetEventInfAndRoomListBR(client *http.Client, eventid string, breg int, ereg int, ...) (status int)
- func GetEventListByAPI(eventinflist *[]exsrapi.Event_Inf) (status int)
- func GetGiftRanking(gsheader *GsHeader, grid int, grtype string) (err error)
- func GetNextliveByAPI(room_id string) (nextlive string, status int)
- func GetPointsByAPI(id string) (Point, Rank, Gap int, EventID string)
- func GetRoomInfoByAPI(room_id string) (genre string, rank string, nrank string, prank string, level int, ...)
- func GetSerialFromYymmddHhmmss(yymmdd, hhmmss string) (tserial float64)
- func GetUserInf(r *http.Request) (ra string, ua string, isallow bool)
- func GetUserInfForHistory(client *http.Client) (status int)
- func GetWeightedCnt(pcl Pclist, nfr int)
- func GraphGiftScore(campaign *srdblib.Campaign, giftranking *srdblib.GiftRanking, nroom int, ...) (filename string, err error)
- func GraphPerDay(eventid string, pointperday *PointPerDay) (filename string, status int)
- func GraphPerSlot(eventid string, perslotinflist *[]PerSlotInf) (filename string, status int)
- func GraphScore01(filename string, eventname string, idandranklist []IdAndRank, period string, ...)
- func GraphTotalPoints(eventid string, maxpoint int, gscale int) (filename string, status int)
- func HandlerAddEvent(w http.ResponseWriter, r *http.Request)
- func HandlerClosedEventRoomList(w http.ResponseWriter, r *http.Request)
- func HandlerClosedEvents(w http.ResponseWriter, r *http.Request)
- func HandlerCsvTotal(w http.ResponseWriter, r *http.Request)
- func HandlerCurrentDistributors(w http.ResponseWriter, r *http.Request)
- func HandlerCurrentEvents(w http.ResponseWriter, r *http.Request)
- func HandlerDispBbs(w http.ResponseWriter, r *http.Request)
- func HandlerDlAllPoints(w http.ResponseWriter, r *http.Request)
- func HandlerEditUser(w http.ResponseWriter, r *http.Request)
- func HandlerEventRoomList(w http.ResponseWriter, r *http.Request)
- func HandlerFanLevel(w http.ResponseWriter, req *http.Request)
- func HandlerFlRanking(w http.ResponseWriter, req *http.Request)
- func HandlerGraphDfr(w http.ResponseWriter, r *http.Request)
- func HandlerGraphGiftScore(w http.ResponseWriter, req *http.Request)
- func HandlerGraphPerday(w http.ResponseWriter, r *http.Request)
- func HandlerGraphPerslot(w http.ResponseWriter, r *http.Request)
- func HandlerGraphTotal(w http.ResponseWriter, req *http.Request)
- func HandlerListCntrb(w http.ResponseWriter, req *http.Request)
- func HandlerListCntrbH(w http.ResponseWriter, req *http.Request)
- func HandlerListCntrbS(w http.ResponseWriter, req *http.Request)
- func HandlerListFanGiftScore(w http.ResponseWriter, req *http.Request)
- func HandlerListGiftScore(w http.ResponseWriter, req *http.Request)
- func HandlerListGiftScoreCntrb(w http.ResponseWriter, req *http.Request)
- func HandlerListLast(w http.ResponseWriter, req *http.Request)
- func HandlerListLevel(w http.ResponseWriter, req *http.Request)
- func HandlerListPerday(w http.ResponseWriter, r *http.Request)
- func HandlerListPerslot(w http.ResponseWriter, r *http.Request)
- func HandlerNewEvent(w http.ResponseWriter, r *http.Request)
- func HandlerNewUser(w http.ResponseWriter, r *http.Request)
- func HandlerParamEvent(w http.ResponseWriter, r *http.Request)
- func HandlerParamEventC(w http.ResponseWriter, r *http.Request)
- func HandlerParamGlobal(w http.ResponseWriter, r *http.Request)
- func HandlerParamLocal(w http.ResponseWriter, r *http.Request)
- func HandlerScheduledEvents(w http.ResponseWriter, r *http.Request)
- func HandlerScheduledEventsSvr(w http.ResponseWriter, r *http.Request)
- func HandlerShowRank(w http.ResponseWriter, r *http.Request)
- func HandlerTopForm(w http.ResponseWriter, r *http.Request)
- func HandlerTopRoom(w http.ResponseWriter, r *http.Request)
- func InsertEventInf(localhot bool, eventinf *exsrapi.Event_Inf) (status int)
- func InsertIntoEventUser(i int, eventid string, roominf RoomInfo) (status int)
- func InsertIntoOrUpdateUser(client *http.Client, tnow time.Time, eventid string, roominf RoomInfo) (status int)
- func InsertRoomInf(client *http.Client, eventid string, roominfolist *RoomInfoList)
- func InsertTargetIntoTimtable(eventid string, userno int, ts time.Time, nfr int) (target int, status int)
- func IsAllowIp(sip string) bool
- func Jtruncate(t time.Time) time.Time
- func LoadDenyIp(filename string) (err error)
- func Mark(j int, canvas *svg.SVG, x0, y0, d float64, color string)
- func Resetcolor(eventid string, cmap int) error
- func SelectAcqTimeList(eventid string, userno int) (acqtimelist []time.Time, status int)
- func SelectCntrb(eventid string, userno int, ts time.Time, cntrbinflist *[]CntrbInf, ...) (status int)
- func SelectCntrbHeader(eventid string, userno int, ts time.Time, cntrbheader *CntrbHeader) (status int)
- func SelectEventNoAndName(eventid string) (eventname string, period string, status int)
- func SelectEventRoomInfList(eventid string, roominfolist *RoomInfoList) (eventname string, status int)
- func SelectEventinflistFromEvent(cond int, mode int, keyword string, kwevid string, limit int, offset int) (eventinflist []exsrapi.Event_Inf, err error)
- func SelectEventinflistFromEventByRoom(cond int, mode int, userno int, limit int, offset int) (eventinflist []exsrapi.Event_Inf, err error)
- func SelectGs(grid int, ts time.Time, gslist *[]GsInf, userno2order map[int]int) (err error)
- func SelectGsAcqTimeList(grid int) (acqtimelist []time.Time, err error)
- func SelectGsHeader(grid int, ts time.Time, gsheader *GsHeader) (status int)
- func SelectGsc(grid int, userno int, ts time.Time, gsclist *[]GscInf, ...) (err error)
- func SelectGscAcqTimeList(grid int, userno int) (acqtimelist []time.Time, err error)
- func SelectGscHeader(grid int, ts time.Time, gscheader *GscHeader) (status int)
- func SelectLastdataFromWeventuser(client *http.Client, eventurlkey string, ib int, ie int) (roomlistinf *srapi.RoomListInf, err error)
- func SelectPointList(userno int, eventid string) (norow int, tp *[]time.Time, pp *[]int)
- func SelectScoreList(user_id int) (x *[]float64, y *[]float64)
- func SelectShowRank(client *http.Client, limit int) (userlist *[]srdblib.User, err error)
- func SelectTargetfromTimetable(eventid string, userno int, ts time.Time) (target int, err error)
- func SelectTopRoom(client *http.Client, olim int, fromtime time.Time, totime time.Time, top *Top) (err error)
- func SelectUserColor(userno int, eventid string) (color string, colorvalue string, status int)
- func SelectUserName(userno int) (longname string, shortname string, genre string, rank string, nrank string, ...)
- func SelectUsernoAndName(Keywordrm string, limit int, offset int) (roomlist *[]Room, err error)
- func SelectVgs(giftid int, ts time.Time, vgslist *[]VgsInf, viewerid2order map[int]int) (err error)
- func SelectVgsAcqTimeList(giftid int) (acqtimelist []time.Time, err error)
- func SelectVgsHeader(giftid int, ts time.Time, gsheader *GsHeader) (status int)
- func UpdateEventInf(eventinf *exsrapi.Event_Inf) (status int)
- func UpdateEventuserSetPoint(eventid, userid string, point int) (status int)
- func UpdatePointsSetQstatus(eventid string, userno int, tstart string, tend string, point string) (status int)
- func UpdateRoomInf(...) (status int)
- func UpdateTimetableSetTarget(eventid string, userno int, ts time.Time, target int) (err error)
- type BBS
- type CntrbH_Header
- type CntrbHeader
- type CntrbHistory
- type CntrbHistoryInf
- type CntrbInf
- type CntrbInfS
- type CntrbS_Header
- type Color
- type ColorInf
- type ColorInfList
- type Colormap
- type CurrentScore
- type DenyIp
- type Erl
- type Event
- type EventAndRankingInf
- type FapHeader
- type Genre
- type GsHeader
- type GsInf
- type GscHeader
- type GscInf
- type IdAndRank
- type KV
- type LevelForRoom
- type LevelForRoomW
- type LevelForUser
- type LevelForUserW
- type Logm
- type LongName
- type P_c
- type Pclist
- type PerSlot
- type PerSlotInf
- type Point
- type PointPerDay
- type PointRecord
- type RankingInf
- type Room
- type RoomInf
- type RoomInfo
- type RoomInfoList
- type RoomLevel
- type RoomLevelInf
- type SSHConfig
- type ServerConfig
- type ShowRank
- type T008top
- type T009Config
- type T009top
- type T999Dtop
- type Tlsnidinf
- type Top
- type TopRoom
- type User
- type UserInf
- type VgsInf
- type Xydata
Constants ¶
const MaxAcq = 5
const VerFileIOlib = "11AA00"
const Version = "11BZ05"
0100L1 安定版(~2021.12.26) 0100M0 vscodeでの指摘箇所の修正 0101A0 LinuxとMySQL8.0に対応する。 0101B0 OSとWebサーバに応じた処理を行うようにする。アクセスログを作成する。 0101B1 実行時パラメータをファイルから与えるように変更する。 0101C0 GetRoomInfoByAPI()に配信開始時刻の取得を追加する。 0101D0 詳細なランク情報の導入(Nrank) 0101D1 "Next Live"の表示を追加する。 0101D2 GetScoreEvery5Minutes RU20E4 に適合するバージョン 0101D3 ランクをshow_rank_subdividedからleague_labe + lshow_rank_subdivided にする。 0101E1 環境設定ファイルをyaml形式に変更する。 0101G0 配信枠別貢献ポイントを導入する。 0101G1 list-last.gtplでは維新枠別貢献ポイントの記録があるルームのみリンクを作成する。 0101G2 list-last.gtplにジャンルを追加した。 0101G3 リスナー貢献ポイントの履歴の表示(list-cntrbH)を作成する。 0101G4 一つの貢献ポイントランキングの表示(list-cntrbS)を作成する(リスナー名の突き合わせのチェックが主目的) 0101G5 list-lasth.gtplのリロード予告の表示でデータ取得間隔が5分と固定されていたものを設定値に合わせるように変更する。 0101G6 ModminがIntervalminに対して不適切な値のときは修正して保存する。 0101G7 ランクに関しnext_scoreに加えprev_scoreの表示を追加する。ファンの数の表示を追加する。 0101H0 ファンレベル(/fanlevel)に関する画面を追加する。 0101J0 ファンダム王イベント参加者のファン数ランキングを作成する。 0101J2 終了したイベントについては無条件にルーム詳細情報(ランキング、フォロワ、レベル、ファン数)を出力しない。 0101J2a "ルーム詳細情報”の説明を追加した。 0101J3 イベントリストのRoom_IDに変えてルーム名を表示する。表示数を6から10にする。 0101J4 NewDocument()をNewDocumentFromReader()に変更する。list-last_h.gtplにルーム情報詳細表示/非表示のボタンを追加する。 0101J5 イベント選択(最近のイベント)にnobasisが0のイベントも表示する(テーブルuserにusernoが0のデータを追加することが必要) 10AA00 枠別貢献ポイントの「目標値(推定)」を追加する。 10AB00 枠別貢献ポイントのポイント、増分の表示でhumanaizeを使用する。リスナー別貢献ポイント履歴に達成状況欄を追加する。 10AB01 WebserverをDbconfig.Webserverに置き換える。枠別貢献ポイントのGTPLを変更する。GTPLのCRLFをLFに変更する。 10AC00 イベント一覧にModminとModsecを追加する。 10AD00 longnameの初期値をusernameに変更する。Apache2LinuxをApache2Ubuntuに訂正する。 10AD01 HandlerGraphPerDay()とHandlerGraphPerSlot()のApache2LinuxをApache2Ubuntuに訂正する。 10AD02 SelectScoreList()で前配信期間、獲得ポイントのデータがないとき上位のデータがコピーして使われないようにする。 10AE00 1. 貢献ポイントランキングの表示を詳細化する。 2. イベント情報ページの内容を表示できるようにする(次回更新準備) 10AE00a ルーム情報に下位ランクとの差を追加する(GTPLのみの変更) 10AF00 ブロックランキングに対応する(Event_id=30030のみの暫定対応) 10AF01 基準となる配信者のリストのサイズが0のときは対応する処理を行わない(異常終了対策、通常の運用では起きない) 10AG00 イベントリストの取得件数を10から20に変更する。 10AH00 stmt,err := Db.Prepare("...") と対になる defer stmt.Close() を追加する。 10AJ00 ブロックランキングに仮対応(Event_id=30030以外に拡張)する。イベントリストの表示イベント数を設定可能とする。 10AK00 ブロックランキングのイベント名にblockidを追加する。獲得ポイントの取得時刻の初期値を分散させる。 ------------------------------------- 以下公開版 ---------------------------------------------- 10AL00 イベント情報にieventid(本来のイベントID、5桁程度の整数)を追加する。 10AL01 イベントの配信者リストを取得するとき、順位にかかわらず獲得ポイントデータを取得する設定とする。 10AL02 イベントの配信者リストを取得するとき、順位にかかわらず獲得ポイントを表示する設定とする。 10AM00 Room_url_keyから取り除く文字列を"/"から"/r/"に変更する。 10AN00 ブロックランキングで貢献ポイントランキングへのリンクを作るときはイベントIDのからブロックIDを取り除く。 10AP00 DBサーバーに接続するときSSHの使用を可能にする。 10AQ00 GetWeightedCnt()で周回数の多い獲得ポイントの採用率が上がるように調整する。 10AQ01 MakePointPerSlot()のperslotの変数宣言をループの中に入れる(毎回初期化されるように) 11AA0l データベースへのアクセスをsrdblibに移行しつつある。グラフ表示で縮尺の設定を可能とする。 11AA02 intervalmin の値を5固定とする(異常終了に対する緊急対応) 11AA03 intervalminとintervalmin の適正でない入力を排除する。 11AB00 Event_Infの参照先をsrdblibからexsrapiに変更する。 11AB01 データベース保存時、Intervalminが0のときは強制的に5にする。 11AB02 データベース保存時、Intervalminが5でないときは強制的に5にする。 11AC00 開催中イベント一覧の機能を作成し関連箇所を修正する。 11AC01 FindPtPerSlot()でPrepare()に対するdefer Close()の抜けを補う。 11AC02 HandleListCntrb()でボーナスポイントに対する対応を行う。 11AC03 currentevent.gtpl 1行おきに背景色を変える。list-last_h.gtpl 結果が反映される時刻を正す。 11AD00 「SHOWROOMイベント情報ページからDBへのイベント参加ルーム情報の追加と更新」でイベントパラーメータがクリアされる問題を解決する。 11AE00 HandlerEventRoomList()でブロックイベントの参加ルーム一覧も表示できるようにする。 11AF00 開催予定イベント一覧の機能を追加する(HandlerScheduledEvent()) 11AF01 新規イベントの登録ができなくなった問題(=11AD00の修正で発生したデグレード)に対応する 11AG00 srdblib.SelectFromEvent()の実行前にはsrdblib.Tevent = "event"を行う。 これはSelectFromEvent()の引数とすべき。 11AH00 HandlerCurrentEvent()で全イベント表示、データ取得中イベントのみ表示の切り替えを可能にする。 11AJ00 終了イベント一覧の作成でルームによる絞り込みを可能にする。 11AJ01 終了イベント一覧の作成でルームによる絞り込みを可能にする(不具合の修正) 11AJ02 開催中イベント、終了イベントに関する機能へのリンク切れを解消する。 11AJ03 終了イベントリスト、終了イベントルームリストの表示を改善する。 11AJ04 ページ遷移のレイアウトの共通化を行い、トップ画面を簡素化する。 11AK00 終了イベントでイベントIDとルームIDによる検索を可能にする。 11AL00 画面遷移のためのリンクを新しい機能に合わせる。list-cntrbSで目標値を変更できるようにする。 11AM00 開始前のイベントの登録は開催予定イベントのリストから行い、ルームの登録はイベント開始まで行わない件についてGetAndInsertEventRoomInfo()のフローを変更する。 11AN00 順位に関わりなくデータ取得の対象とするルームの追加でルーム検索を可能とするための準備を行う。 11AN01 api/room/profileでエラーを起きたときエラーの内容をログ出力する。 11AN02 HandlerNewUser() DBにユーザデータが存在しないときlongname、shortnameにAPIで取得した値をセットする。 11AP00 「最近のイベントの獲得ポイント上位のルーム」(HandlerTopRoom())の機能を追加する。 11AP01 HandlerTopRoom()で日時範囲と表示数の設定を可能にする。 11AP02 GetUserInf()の抜けを補う。 11AQ00 掲示板機能を追加する。 11AQ01 掲示板機能について、HandlerWriteBbs()をHandlerDispBbs()に統合し、リモートアドレス、ユーザーエージェントを保存する。 11AQ02 HandlerDispBbs()に関して掲示板ページに直接来てもログが表示されるようにする。 11AQ03 終了イベント一覧の表示:51件表示し、50件ずつスクロールする。 11AQ04 ログメッセージを変更する(HandleListCntrb(),HandleListCntrbD(),HandleListCntrbH()) 〃 「(DB登録済み)イベント参加ルーム一覧(確認・編集)」で一覧にないルームを追加した直後の更新の不具合を修正する。 〃 掲示板の「前ページ」、「次ページ」の操作を終了イベント一覧と同様にする。 11AQ05 Prepare()のあとのdefer stmt.Close()とdefer rows.Close()の抜けを補う。 11AR00 「枠別貢献ポイント一覧表」でリスナーさんの配信枠別貢献ポイントの履歴が表示されないことがある問題の修正。 〃 ボット等からの接続を拒否(できるように)する。 11AS00 配信枠別貢献ポイントランキングでボット等から適正でないパラメータの要求を検出する。 11AT00 「イベント獲得ポイントランキング」でジャンルの指定を可能にする。 11AT01 MakePointPerDay()のログ出力を間引きする。 11AU00 終了したイベントの検索で、ルーム名、ルームIDで検索したとき、イベントの獲得ポイント上位のリストからイベント情報を見たとき該当ルームがどれかわかりやすくする。 11AV00 HandlerListLast()で確定値が発表されていないルームも表示するようにする。 11AV01 説明書きや表の項目名の修正 11AV02 scheduled-event.gtpl データ取得開始設定の説明を追加する。 11AW00 SelectCurrentScore() stmtを使いまわしているとことを別の変数にする。不具合ではないと思うが誤解を招きそうなので... 11AW01 SelectCurrentScore()の中のdeferでエラーが起きているか否かの検証を行う。 11AW02 説明書きや表の項目名の修正(追加) 11AX00 操作対象のテーブルをsrdblib.Teventで指定する方法から関数の引数とする方法に変える。 11AY00 HandlerShowRank()(SHOWランク上位配信者を表示する)を導入する。gorpを導入する。 11AZ00 userテーブルへのINSERTはsrdblib.InsertIntoUser()を用い、userテーブルのPDATEは原則として行わない。 11BA00 Genre, GenreIDの変更にともなう暫定対応(HandlerTopRoom())+ showrank.gtpl の説明を追加する。 11BB00 未使用の関数GetIsOnliveByAPI()の定義を削除する。グラフ画像ファイル名を生成順の連番とする。 11BB01 過去イベントの検索でルーム名、IDから絞り込む場合は開催中のイベントも検索対象に含める。 11BB02 画像ファイル名はCGIの場合は連番、独立したWebサーバーの場合はPIDの下3桁とする。 11BC00 JSONのデコードが失敗したときのもとデータ(bufstr)のログ出力をやめる(APIが期待する結果を戻さない場合があることがわかっているから) 11BC01 終了済イベントのソート順はendtime descを優先する。 11BD00 UpdateRoomInf()でistargetとiscntrbpointを"N"に設定することを禁止する。 11BD01 獲得ポイント取得対象ルームの範囲を指定しての登録は1〜20に限定する。 11BD02 獲得ポイントの推移のグラフの画面に「表示するルームを選ぶ」というボタンを追加する。 11BD03 獲得ポイントの推移のグラフの画面の「表示するルームを選ぶ」に「グラフの色を変える」を追加する。 〃 グラフ表示の最大ルーム数のデフォルト値を10から20に変更する。 11BE00 長期間に渡るイベントのグラフの表示方法を調整する。 11BE01 グラフ表示の最大ルーム数のデフォルト値を10から20に変更する(修正) 11BE02 list-last_h.gtplで「このページはブックマーク可能です」の文言を追加する。 11BF00 GraphScore01()でデータが連続していないとき(点になるとき)はcanvas.Circle()で描画する。 11BG00 GetAndInsertEventRoomInfo()でルーム情報の取得をGetEventsRankingByApi()を使う。block_id=0に対応する。 11BH00 HandlerGraphTotal()でグラフ線配色の初期化の機能を追加する。 11BH01 HandlerAddEvent()で起きているエラーの原因を特定するための情報を出力する。 11BH02 GetAndInsertEventRoomInfo()でeregがルーム数より大きいときはeregをルーム数に変更する。 11BH02a GetAndInsertEventRoomInfo()でeregがルーム数より大きいときはeregをルーム数に変更する。 11BJ00 GetUserInf()でハンドラーが呼ばれたときのパラメータを表示する 11BJ01 top21.gtplで登録できる順位を20から50に拡張する(new-event0.gtplは20のままとする) 11BK00 HandlerEventList()がApiRoomStatus()とApiRoomNext()でエラーを起こしても処理を継続する。 11BM00 HandlerListGiftScore()を作成する 11BN00 HandlerListFanGiftScore()を作成する、HandlerGraphGiftScore()を準備する。 11BN01 HandlerListGiftScore()でGiftid(Grid)の選択を可能にする準備をする。 11BN02 HandlerListGiftScore()でmaxacqとlimitを可変にする。 11BN03 HandlerListFanGiftScore()でmaxacqとlimitを可変にする。 11BN04 DrawLineGraph()を作成する準備をする。 11BN05 list-gs-h1.gtpl, list-vgs-h1.gtpl のレイアウトを調整する。 11BQ00 ギフトランキングのグラフ(HandlerGraphGiftScore())を作成する。 11BQ01 top.gtpl ギフトランキングのタイトルをより具体的にする 11BQ02 X軸の最小値を10,000から1,000に変更する 11BQ03 Viewerから(本来なかった)Ordernoを削除したことに対しSelectViewerid2Order()を修正する。 11BR00 ギフトランキング貢献ランキング(HandlerGiftScoreCntrb())を作成する 11BS00 「修羅の道ランキング」(Giftid=13)のために表示の変更(獲得ポイントが取得できないため) 11BS01 ギフトランキング貢献ランキング(HandlerGiftScoreCntrb())をギフトランキングから呼び出す 11BS02 グラフの凡例(ルーム名)の前に順位を表示する(すべてのルームのデータを表示するわけではないので) 11BS03 グラフ表示にあたらしいカラーマップを追加し、カラーマップの扱い方を変更する 11BT00 localhostからログインしたときは開催予定のイベントのルームを登録できる 11BU00 HandlerAddEvent()を分離し、バグを修正する。 11BT00 参加ルームの登録を行うときpoint==0のルームは除外する 11BW00 〃、獲得ポイント一覧(HandlerListLast())でレベルイベントは順位のかわりにレベルを表示する 11BW01 HandlerAddEvent())でレベルイベントの獲得ポイント0で除外したルームがルーム一覧に表示されないようにする。 11BV00 獲得ポイント全データのダウンロード機能(HandlerDlAllPoints())を追加する。 11BX00 HandlerAddEvent()でweventを使ったあとeventに戻すようにする(獲得ポイントグラフの配色の初期化ができない問題の解決)
ルームがなくてもイベント登録ができるようにする。
11BY00 HandlerListLast()でのデフォルトの表示を上位15ルームにする。 11BY01 HandlerListLast()で15ルームのときは「もっと見る」ボタンを表示しない。 11BY02 HandlerListLast()で15ルームのときは「もっと見る」ボタンを表示しない。HadlerNewUser()を分離する。 11BX00 データ取得対象範囲の修正にともなってHandlerAddEvent()の一部機能をメンテナンス中とする。 11BX01 イベント単位で"足切り"を行う 11BZ00 アクセスログをDBに保存する。開催中イベント一覧でアクセス数の多いイベントをマークアップする。 11BZ01 SetThdata()をexsrapiへ移動する。HandlerListLast()でレベルイベントの表示順を検討する。 11BZ02 HandlerCurrentEvents()での強調表示の対象選択を変更する。 11BZ03 SetThdata()をReadThdata()とSetThdata()に分離する(SRGCIと共通)、HadlerNewEvent.gow別ファイルとする。 11BZ04 コメント化されたソースを削除する。 11BZ05 獲得ポイントダウンロードでのファイル名の誤り(yyyydddd)を正す(yyyymmdd)
Variables ¶
var Colormaplist []Colormap = []Colormap{
{
{"#00FFFF", "#00FFFF"},
{"#FF00FF", "#FF00FF"},
{"#FFFF00", "#FFFF00"},
{"#7F7FFF", "#7F7FFF"},
{"#FF7F7F", "#FF7F7F"},
{"#7FFF7F", "#7FFF7F"},
{"#7FBFFF", "#7FBFFF"},
{"#FF7FBF", "#FF7FBF"},
{"#BFFF7F", "#BFFF7F"},
{"#7FFFFF", "#7FFFFF"},
{"#FF7FFF", "#FF7FFF"},
{"#FFFF7F", "#FFFF7F"},
{"#7FFFBF", "#7FFFBF"},
{"#BF7FFF", "#BF7FFF"},
{"#FFBF7F", "#FFBF7F"},
{"#ADADFF", "#ADADFF"},
{"#FFADAD", "#FFADAD"},
{"#ADFFAD", "#7FFFAD"},
{"#ADD6FF", "#ADD6FF"},
{"#FFADD6", "#FFADD6"},
{"#D6FFAD", "#D6FFAD"},
{"#ADFFFF", "#ADFFFF"},
{"#FFADFF", "#FFADFF"},
{"#FFFFAD", "#FFFFAD"},
{"#ADFFD6", "#ADFFD6"},
{"#D6ADFF", "#D6ADFF"},
{"#FFD6AD", "#FFD6AD"},
},
{
{"cyan", "cyan"},
{"magenta", "magenta"},
{"yellow", "yellow"},
{"royalblue", "royalblue"},
{"coral", "coral"},
{"khaki", "khaki"},
{"deepskyblue", "deepskyblue"},
{"crimson", "crimson"},
{"orange", "orange"},
{"lightsteelblue", "lightsteelblue"},
{"pink", "pink"},
{"sienna", "sienna"},
{"springgreen", "springgreen"},
{"blueviolet", "blueviolet"},
{"salmon", "salmon"},
{"lime", "lime"},
{"red", "red"},
{"darkorange", "darkorange"},
{"skyblue", "skyblue"},
{"lightpink", "lightpink"},
},
{
{"red", "#FF2800"},
{"yellow", "#FAF500"},
{"green", "#35A16B"},
{"blue", "#0041FF"},
{"skyblue", "#66CCFF"},
{"lightpink", "#FFD1D1"},
{"orange", "#FF9900"},
{"purple", "#9A0079"},
{"brown", "#663300"},
{"lightgreen", "#87D7B0"},
{"white", "#FFFFFF"},
{"gray", "#77878F"},
},
}
https://www.fukushihoken.metro.tokyo.lg.jp/kiban/machizukuri/kanren/color.files/colorudguideline.pdf
var DenyIpList []DenyIp
var Event_inf exsrapi.Event_Inf
var Nfseq int
var OS string
var SortByFollowers bool
Functions ¶
func DetYaxScale ¶
func DrawLineGraph ¶ added in v1.6.0
func FindHistoricalData ¶ added in v1.1.0
イベントがeventとwebentに共通して存在するかチェックする。
func FindPtPerSlot ¶ added in v1.1.0
func GetAciveFanByAPI ¶
func GetEventInf ¶
func GetEventInfAndRoomList ¶
func GetEventListByAPI ¶
func GetGiftRanking ¶ added in v1.6.0
func GetNextliveByAPI ¶
func GetPointsByAPI ¶
idで指定した配信者さんの獲得ポイントを取得する。 戻り値は 獲得ポイント、順位、上位とのポイント差(1位の場合は2位とのポイント差)、イベント名 レベルイベントのときは順位、上位とのポイント差は0がセットされる。
func GetRoomInfoByAPI ¶
func GetUserInfForHistory ¶
func GetWeightedCnt ¶
func GraphGiftScore ¶ added in v1.6.0
func GraphPerDay ¶
func GraphPerDay( eventid string, pointperday *PointPerDay, ) ( filename string, status int, )
func GraphPerSlot ¶
func GraphPerSlot( eventid string, perslotinflist *[]PerSlotInf, ) ( filename string, status int, )
func GraphScore01 ¶
func GraphScore01( filename string, eventname string, idandranklist []IdAndRank, period string, maxpoint int, )
グラフを描画する=SVGを作成する
func GraphTotalPoints ¶
func HandlerAddEvent ¶
func HandlerAddEvent(w http.ResponseWriter, r *http.Request)
イベントを獲得ポイントデータ取得の対象としてeventテーブルに登録する。 イベントが開催中であれば指定した順位内のルームを取得対象として登録する。 イベントが開催予定のものであればルームの登録は行わない。 イベント開催中、開催予定にかかわらず、取得対象ルームの追加は srAddNewOnes で行われる。
func HandlerClosedEventRoomList ¶ added in v1.2.0
func HandlerClosedEventRoomList( w http.ResponseWriter, r *http.Request, )
ApiEventRoomList() の戻り値を表示する。 Ver. 0.1.0
"/ApiEventRoomList()"に対するハンドラー http://localhost:8080/apieventroomlist で呼び出される
func HandlerClosedEvents ¶ added in v1.2.0
func HandlerClosedEvents( w http.ResponseWriter, r *http.Request, )
終了イベント一覧を作るためのハンドラー
Ver. 0.1.0
func HandlerCsvTotal ¶
func HandlerCsvTotal(w http.ResponseWriter, r *http.Request)
func HandlerCurrentDistributors ¶ added in v1.2.0
func HandlerCurrentDistributors( w http.ResponseWriter, r *http.Request, )
"/t009top"に対するハンドラー http://localhost:8080/t009top で呼び出される
func HandlerCurrentEvents ¶ added in v1.2.0
func HandlerCurrentEvents( w http.ResponseWriter, r *http.Request, )
"/T999Dtop"に対するハンドラー http://localhost:8080/T999Dtop で呼び出される
func HandlerDispBbs ¶ added in v1.4.0
func HandlerDispBbs(w http.ResponseWriter, r *http.Request)
リクエストの内容によって投稿を書き込み、あるいは投稿一覧を表示する
func HandlerDlAllPoints ¶
func HandlerDlAllPoints(w http.ResponseWriter, r *http.Request)
イベントを獲得ポイントデータ取得の対象としてeventテーブルに登録する。 イベントが開催中であれば指定した順位内のルームを取得対象として登録する。 イベントが開催予定のものであればルームの登録は行わない。 イベント開催中、開催予定にかかわらず、取得対象ルームの追加は srAddNewOnes で行われる。
func HandlerEditUser ¶
func HandlerEditUser(w http.ResponseWriter, r *http.Request)
func HandlerEventRoomList ¶ added in v1.1.0
func HandlerEventRoomList( w http.ResponseWriter, r *http.Request, )
"/ApiEventRoomList()"に対するハンドラー http://localhost:8080/apieventroomlist で呼び出される
func HandlerFanLevel ¶
func HandlerFanLevel(w http.ResponseWriter, req *http.Request)
func HandlerFlRanking ¶
func HandlerFlRanking(w http.ResponseWriter, req *http.Request)
func HandlerGraphDfr ¶
func HandlerGraphDfr(w http.ResponseWriter, r *http.Request)
func HandlerGraphGiftScore ¶ added in v1.6.0
func HandlerGraphGiftScore(w http.ResponseWriter, req *http.Request)
func HandlerGraphPerday ¶
func HandlerGraphPerday(w http.ResponseWriter, r *http.Request)
func HandlerGraphPerslot ¶
func HandlerGraphPerslot(w http.ResponseWriter, r *http.Request)
func HandlerGraphTotal ¶
func HandlerGraphTotal(w http.ResponseWriter, req *http.Request)
func HandlerListCntrb ¶
func HandlerListCntrb(w http.ResponseWriter, req *http.Request)
func HandlerListCntrbH ¶
func HandlerListCntrbH(w http.ResponseWriter, req *http.Request)
func HandlerListCntrbS ¶
func HandlerListCntrbS(w http.ResponseWriter, req *http.Request)
func HandlerListFanGiftScore ¶ added in v1.6.0
func HandlerListFanGiftScore(w http.ResponseWriter, req *http.Request)
func HandlerListGiftScore ¶ added in v1.6.0
func HandlerListGiftScore(w http.ResponseWriter, req *http.Request)
func HandlerListGiftScoreCntrb ¶ added in v1.7.0
func HandlerListGiftScoreCntrb(w http.ResponseWriter, req *http.Request)
func HandlerListLast ¶
func HandlerListLast(w http.ResponseWriter, req *http.Request)
func HandlerListLevel ¶
func HandlerListLevel(w http.ResponseWriter, req *http.Request)
func HandlerListPerday ¶
func HandlerListPerday(w http.ResponseWriter, r *http.Request)
func HandlerListPerslot ¶
func HandlerListPerslot(w http.ResponseWriter, r *http.Request)
func HandlerNewEvent ¶
func HandlerNewEvent(w http.ResponseWriter, r *http.Request)
func HandlerNewUser ¶
func HandlerNewUser(w http.ResponseWriter, r *http.Request)
func HandlerParamEvent ¶
func HandlerParamEvent(w http.ResponseWriter, r *http.Request)
func HandlerParamEventC ¶
func HandlerParamEventC(w http.ResponseWriter, r *http.Request)
func HandlerParamGlobal ¶
func HandlerParamGlobal(w http.ResponseWriter, r *http.Request)
func HandlerParamLocal ¶
func HandlerParamLocal(w http.ResponseWriter, r *http.Request)
func HandlerScheduledEvents ¶ added in v1.2.0
func HandlerScheduledEvents( w http.ResponseWriter, r *http.Request, )
"/T999Dtop"に対するハンドラー http://localhost:8080/T999Dtop で呼び出される
func HandlerScheduledEventsSvr ¶ added in v1.2.0
func HandlerScheduledEventsSvr( w http.ResponseWriter, r *http.Request, )
"/t008top"に対するハンドラー http://localhost:8080/t008top で呼び出される
func HandlerShowRank ¶ added in v1.4.0
func HandlerShowRank( w http.ResponseWriter, r *http.Request, )
HandlerShowRank() SHOWランク上位配信者を表示する Ver. 0.1.0
http://localhost:8080/showrank で呼び出される
func HandlerTopRoom ¶ added in v1.3.0
func HandlerTopRoom( w http.ResponseWriter, r *http.Request, )
SelectTopRoom() の戻り値を表示する。 Ver. 0.1.0
http://localhost:8080/toproom で呼び出される
func InsertEventInf ¶
イベントを新規に登録する。 TODO: gorpを使うべき
func InsertIntoEventUser ¶
func InsertIntoOrUpdateUser ¶
func InsertRoomInf ¶
func InsertRoomInf(client *http.Client, eventid string, roominfolist *RoomInfoList)
func LoadDenyIp ¶ added in v1.4.0
func Resetcolor ¶ added in v1.5.0
グラフの色設定を初期化する。 指定されたカラーマップを1位から順番にわりあてる。
func SelectAcqTimeList ¶
SelectAcqTimeList() 指定したイベント、ユーザーの貢献ランキングを取得した時刻の一覧を取得する。 引数 eventid string イベントID userno int ユーザーID 戻り値 acqtimelist [] time.Time 取得時刻一覧
func SelectCntrb ¶
func SelectCntrb( eventid string, userno int, ts time.Time, cntrbinflist *[]CntrbInf, tlsnid2order map[int]int, ) ( status int, )
指定したイベント、ユーザー、時刻の貢献ポイントランキングを取得する。 ここでは順位と累計貢献ポイントは取得しない。 引数 eventid string イベントID userno int ユーザーID ts int ユーザーID loc int 取得データの格納位置 loc int データの格納場所( 0 だったら先頭) 戻り値 cntrbinflist [] CntrbInf 貢献ポイントランキング(最終貢献ポイント順) stats int == 0 正常終了 != 0 データベースアクセス時のエラー
func SelectCntrbHeader ¶
func SelectCntrbHeader( eventid string, userno int, ts time.Time, cntrbheader *CntrbHeader, ) ( status int, )
SelectCntrbHeader() 貢献ランキング表のヘッダ部分に必要な配信開始・終了時刻を取得する。 引数 eventid string イベントID userno int 配信者ID ts time.Time 枠を特定する時刻(=貢献ランキングを取得した時刻) cntrbheader *CntrbHeader 配信開始・終了時刻を格納する構造体 戻り値 status int 終了ステータス( 0: 正常、 1: DBアクセスでの異常)
func SelectEventNoAndName ¶
func SelectEventRoomInfList ¶
func SelectEventRoomInfList( eventid string, roominfolist *RoomInfoList, ) ( eventname string, status int, )
func SelectEventinflistFromEvent ¶ added in v1.1.0
func SelectEventinflistFromEvent( cond int, mode int, keyword string, kwevid string, limit int, offset int, ) ( eventinflist []exsrapi.Event_Inf, err error, )
指定した条件に該当するイベントのリストを作る。
func SelectEventinflistFromEventByRoom ¶ added in v1.2.0
func SelectEventinflistFromEventByRoom( cond int, mode int, userno int, limit int, offset int, ) ( eventinflist []exsrapi.Event_Inf, err error, )
指定した条件に該当するイベントのリストを作る。
func SelectGs ¶ added in v1.6.0
指定したイベント、ユーザー、時刻の貢献ポイントランキングを取得する。 ここでは順位と累計貢献ポイントは取得しない。 引数 eventid string イベントID userno int ユーザーID ts int ユーザーID loc int 取得データの格納位置 loc int データの格納場所( 0 だったら先頭) 戻り値 cntrbinflist [] CntrbInf 貢献ポイントランキング(最終貢献ポイント順) stats int == 0 正常終了 != 0 データベースアクセス時のエラー
func SelectGsAcqTimeList ¶ added in v1.6.0
SelectGsAcqTimeList() 指定したgiftidのギフトランキングを取得した時刻の一覧を取得する。 引数 gift int ギフトid 戻り値 acqtimelist [] time.Time 取得時刻一覧
func SelectGsHeader ¶ added in v1.6.0
SelectCntrbHeader() 貢献ランキング表のヘッダ部分に必要な配信開始・終了時刻を取得する。 引数 eventid string イベントID userno int 配信者ID ts time.Time 枠を特定する時刻(=貢献ランキングを取得した時刻) cntrbheader *CntrbHeader 配信開始・終了時刻を格納する構造体 戻り値 status int 終了ステータス( 0: 正常、 1: DBアクセスでの異常)
func SelectGsc ¶ added in v1.7.0
func SelectGsc( grid int, userno int, ts time.Time, gsclist *[]GscInf, viewerid2order map[int]int, ) ( err error, )
指定したイベント、ユーザー、時刻の貢献ポイントランキングを取得する。 ここでは順位と累計貢献ポイントは取得しない。 引数 eventid string イベントID userno int ユーザーID ts int ユーザーID loc int 取得データの格納位置 loc int データの格納場所( 0 だったら先頭) 戻り値 cntrbinflist [] CntrbInf 貢献ポイントランキング(最終貢献ポイント順) stats int == 0 正常終了 != 0 データベースアクセス時のエラー
func SelectGscAcqTimeList ¶ added in v1.7.0
SelectGsAcqTimeList() 指定したgiftidのギフトランキングを取得した時刻の一覧を取得する。 引数 gift int ギフトid 戻り値 acqtimelist [] time.Time 取得時刻一覧
func SelectGscHeader ¶ added in v1.7.0
SelectCntrbHeader() 貢献ランキング表のヘッダ部分に必要な配信開始・終了時刻を取得する。 引数 eventid string イベントID userno int 配信者ID ts time.Time 枠を特定する時刻(=貢献ランキングを取得した時刻) cntrbheader *CntrbHeader 配信開始・終了時刻を格納する構造体 戻り値 status int 終了ステータス( 0: 正常、 1: DBアクセスでの異常)
func SelectLastdataFromWeventuser ¶ added in v1.2.0
func SelectPointList ¶
func SelectScoreList ¶
func SelectShowRank ¶ added in v1.4.0
SHOWランク上位ルームを抽出する
func SelectTargetfromTimetable ¶ added in v1.2.0
func SelectTopRoom ¶ added in v1.3.0
func SelectUserColor ¶
func SelectUserName ¶
func SelectUsernoAndName ¶ added in v1.2.0
func SelectVgs ¶ added in v1.6.0
func SelectVgs( giftid int, ts time.Time, vgslist *[]VgsInf, viewerid2order map[int]int, ) ( err error, )
指定したイベント、ユーザー、時刻の貢献ポイントランキングを取得する。 ここでは順位と累計貢献ポイントは取得しない。 引数 eventid string イベントID userno int ユーザーID ts int ユーザーID loc int 取得データの格納位置 loc int データの格納場所( 0 だったら先頭) 戻り値 cntrbinflist [] CntrbInf 貢献ポイントランキング(最終貢献ポイント順) stats int == 0 正常終了 != 0 データベースアクセス時のエラー
func SelectVgsAcqTimeList ¶ added in v1.6.0
SelectGsAcqTimeList() 指定したgiftidのギフトランキングを取得した時刻の一覧を取得する。 引数 gift int ギフトid 戻り値 acqtimelist [] time.Time 取得時刻一覧
func SelectVgsHeader ¶ added in v1.6.0
SelectCntrbHeader() 貢献ランキング表のヘッダ部分に必要な配信開始・終了時刻を取得する。 引数 eventid string イベントID userno int 配信者ID ts time.Time 枠を特定する時刻(=貢献ランキングを取得した時刻) cntrbheader *CntrbHeader 配信開始・終了時刻を格納する構造体 戻り値 status int 終了ステータス( 0: 正常、 1: DBアクセスでの異常)
func UpdateEventInf ¶
func UpdateEventuserSetPoint ¶
func UpdatePointsSetQstatus ¶
func UpdateRoomInf ¶
Types ¶
type CntrbH_Header ¶
type CntrbHeader ¶
type CntrbHeader struct { Eventid string Eventname string Period string Maxpoint int Gscale int Userno int Username string ShortURL string Ier int Iel int S_stime []string S_etime []string Earned []int Total []int Target []int Ifrm []int Nof []int Nft int // 先頭に戻ったときの最後に表示される枠 Npb int // 1ページ戻る N1b int // 一枠戻る Ncr int N1f int Npf int Nlt int Cntrbinflist *[]CntrbInf }
type CntrbHistory ¶
type CntrbHistory []CntrbHistoryInf
func SelectCntrbHistory ¶
func SelectCntrbHistory( eventid string, userno int, tlsnid int, acqtimelist []time.Time, ) ( cntrbhistory CntrbHistory, status int, )
指定したリスナーの貢献ポイントの履歴を取得する。
type CntrbHistoryInf ¶
type CntrbInf ¶
type CntrbInf struct { Ranking int Point int Incremental []int ListenerName string LastName string Tlsnid int Eventid string Userno int }
func SelectTlsnid2Order ¶
func SelectTlsnid2Order( eventid string, userno int, ts time.Time, ) ( cntrbinflist []CntrbInf, tlsnid2order map[int]int, status int, )
SelectTlsnid2Order() 指定したイベント、配信者、枠の仮リスナーIDと貢献ポイントランキングの対応表を作成する。 引数 eventid string イベントID userno int 配信者ID ts time.Time 枠を特定する時刻(=貢献ランキングを取得した時刻) 戻り値 cntrbinflist []CntrbInf 貢献ポイントランキングを格納するための構造体の配列 ここで累計貢献ポイント、リスナー名が格納される。 tlsnid2order map[int]int 仮リスナーIDと貢献ポイントランキングの対応表 status int 終了ステータス( 0: 正常、 1: DBアクセスでの異常)
type CntrbInfS ¶
type CntrbInfS struct { Ranking int Point int Incremental int ListenerName string LastName string Tlsnid int Eventid string Userno int }
func SelectCntrbSingle ¶
func SelectCntrbSingle( eventid string, userno int, ts time.Time, sort string, ) ( cntrbinflists []CntrbInfS, status int, )
SelectCntrbSingle() 指定したイベント、ユーザー、時刻の貢献ポイントランキングを一枠分だけ取得する。 リスナー名の突き合わせのチェックを目的とするページを作るために使用する。 引数 eventid string イベントID userno int ユーザーID ts int ユーザーID loc int データの格納場所( 0 だったら先頭) 戻り値 cntrbinflists [] CntrbInf 貢献ポイントランキング(最終貢献ポイント順) stats int == 0 正常終了 != 0 データベースアクセス時のエラー
type CntrbS_Header ¶
type ColorInfList ¶
type ColorInfList []ColorInf
type CurrentScore ¶
type CurrentScore struct { Rank int Srank string Userno int Shorturl string Eventid string Username string Roomgenre string Roomrank string Roomnrank string Roomprank string Roomlevel string Followers string Fans int Fans_lst int NextLive string Point int Spoint string Sdfr string Pstatus string Ptime string Qstatus string Qtime string Bcntrb bool }
func SelectCurrentScore ¶
type Event ¶
type Event struct { EventID string EventName string Period string Starttime time.Time S_start string Endtime time.Time S_end string Status string Pntbasis int Modmin int Modsec int Pbname string Selected string Maxpoint int Gscale int }
func SelectEventList ¶
func SelectLastEventList ¶
type EventAndRankingInf ¶
type EventAndRankingInf struct { Eventid string Eventname string Period string Ts_lst string Ts_nxt string RankingInfList []RankingInf }
func SelectFromNoOfFan ¶
func SelectFromNoOfFan(eventid string) (eventandrankinginf EventAndRankingInf, status int)
type GsHeader ¶ added in v1.6.0
type GsHeader struct { Campaignid string Campaignname string Url string Grid int Grname string Grtype string Cntrblst int Eventname string Period string Maxpoint int Maxacq int Limit int Gscale int Userno int Username string ShortURL string Ier int Iel int Stime []time.Time Earned []int Total []int Target []int Ifrm []int Nof []int Nft int // 先頭に戻ったときの最後に表示される枠 Npb int // 1ページ戻る N1b int // 一枠戻る Ncr int N1f int // 一枠進む Npf int // 1ページ進む Nlt int // 最後に進んだとき Gslist *[]GsInf GiftRanking []srdblib.GiftRanking Vgslist []VgsInf }
type GsInf ¶ added in v1.6.0
type GsInf struct { Userno int User_name string Rank string Url string Orderno int Score []int Order []int Point int LastName string Grid int }
func SelectUserno2Order ¶ added in v1.6.0
func SelectUserno2Order( grid int, ts time.Time, limit int, ) ( gslist []GsInf, userno2order map[int]int, err error, )
SelectTlsnid2Order() 指定したイベント、配信者、枠の仮リスナーIDと貢献ポイントランキングの対応表を作成する。 引数 eventid string イベントID userno int 配信者ID ts time.Time 枠を特定する時刻(=貢献ランキングを取得した時刻) 戻り値 cntrbinflist []CntrbInf 貢献ポイントランキングを格納するための構造体の配列 ここで累計貢献ポイント、リスナー名が格納される。 tlsnid2order map[int]int 仮リスナーIDと貢献ポイントランキングの対応表 status int 終了ステータス( 0: 正常、 1: DBアクセスでの異常)
type GscHeader ¶ added in v1.7.0
type GscHeader struct { Campaignid string Campaignname string Url string Grid int Grname string Grtype string Eventname string Period string Maxpoint int Maxacq int Limit int Gscale int Userno int Username string ShortURL string Ier int Iel int Stime []time.Time Earned []int Total []int Target []int Ifrm []int Nof []int Nft int // 先頭に戻ったときの最後に表示される枠 Npb int // 1ページ戻る N1b int // 一枠戻る Ncr int N1f int // 一枠進む Npf int // 1ページ進む Nlt int // 最後に進んだとき Gsclist *[]GscInf GiftRanking []srdblib.GiftRanking Vgslist []VgsInf }
type GscInf ¶ added in v1.7.0
func SelectViewer2Order ¶ added in v1.7.0
func SelectViewer2Order( grid int, userno int, ts time.Time, limit int, ) ( gsclist []GscInf, viewerid2order map[int]int, err error, )
SelectTlsnid2Order() 指定したイベント、配信者、枠の仮リスナーIDと貢献ポイントランキングの対応表を作成する。 引数 eventid string イベントID userno int 配信者ID ts time.Time 枠を特定する時刻(=貢献ランキングを取得した時刻) 戻り値 cntrbinflist []CntrbInf 貢献ポイントランキングを格納するための構造体の配列 ここで累計貢献ポイント、リスナー名が格納される。 tlsnid2order map[int]int 仮リスナーIDと貢献ポイントランキングの対応表 status int 終了ステータス( 0: 正常、 1: DBアクセスでの異常)
type IdAndRank ¶
type LevelForRoom ¶
type LevelForRoomW ¶
type LevelForRoomW struct { Roomid int Roomname string Lfr []LevelForRoom }
func SelectLevelForRoom ¶
func SelectLevelForRoom(roomid int, yyyy int, mm int) (lfrw LevelForRoomW, status int)
type LevelForUser ¶
type LevelForUserW ¶
type LevelForUserW struct { Userid int Username string Levellist []LevelForUser }
func SelectLevelForUser ¶
func SelectLevelForUser(userid int, yyyy int, mm int) (lfuw LevelForUserW, status int)
type Logm ¶ added in v1.4.0
type Logm struct { ID int // 連番 Cntw int // 1: 不具合、 2: 要望、3: 質問、4: その他、5: お知らせ Title string // タイトル Name string // 投稿者名 Body string // 投稿本文 CTime time.Time // 投稿日時 Color string // 表示色 Ra string // リモートアドレス Ua string // ユーザーエージェント }
投稿の内容
type PerSlotInf ¶
type PerSlotInf struct { Eventname string Eventid string Period string Roomname string Roomid int Perslotlist []PerSlot }
func MakePointPerSlot ¶
func MakePointPerSlot(eventid string) (perslotinflist []PerSlotInf, status int)
type PointPerDay ¶
type PointPerDay struct { Eventid string Eventname string Period string Maxpoint int Gscale int Usernolist []int Longnamelist []LongName Pointrecordlist []PointRecord }
func MakePointPerDay ¶
func MakePointPerDay(Event_inf exsrapi.Event_Inf) (p_pointperday *PointPerDay, status int)
func MakePointPerDay(eventid string) (p_pointperday *PointPerDay, status int) {
type RankingInf ¶
type Room ¶ added in v1.2.0
type T008top struct { TimeNow int64 Totalcount int ErrMsg string Eventlist []srapi.Event }
type RoomInf ¶
func SelectFromFlroom ¶
type RoomInfo ¶
type RoomInfo struct { Name string // ルーム名のリスト Longname string Shortname string Account string // アカウントのリスト、アカウントは配信のURLの最後の部分の英数字です。 ID string // IDのリスト、IDはプロフィールのURLの最後の部分で5~6桁の数字です。 Userno int // APIで取得できるデータ(1) Genre string Rank string Irank int Nrank string Prank string Followers int Sfollowers string Fans int Fans_lst int Level int Slevel string // APIで取得できるデータ(2) Order int Point int // イベント終了後12時間〜36時間はイベントページから取得できることもある Spoint string Istarget string Graph string Iscntrbpoint string Color string Colorvalue string Colorinflist ColorInfList Formid string Eventid string Status string Statuscolor string }
func GetRoomInfoAndPoint ¶
func SelectRoomInf ¶
type RoomInfoList ¶
type RoomInfoList []RoomInfo
func GetAndInsertEventRoomInfo ¶
func GetAndInsertEventRoomInfo( client *http.Client, localhost bool, inprogress bool, bnew bool, eventid string, breg int, ereg int, eventinfo *exsrapi.Event_Inf, roominfolist *RoomInfoList, ) ( ril *RoomInfoList, status int, )
イベントの参加ルーム情報を取得しeventuserテーブルに格納する。
func (RoomInfoList) Choose ¶
func (r RoomInfoList) Choose(from, to int) (s RoomInfoList)
func (RoomInfoList) Swap ¶
func (r RoomInfoList) Swap(i, j int)
type RoomLevelInf ¶
func SelectRoomLevel ¶
func SelectRoomLevel(userno int, levelonly int) (roomlevelinf RoomLevelInf, status int)
type ServerConfig ¶ added in v1.1.0
type ServerConfig struct { WebServer string `yaml:"WebServer"` HTTPport string `yaml:"HTTPport"` SSLcrt string `yaml:"SSLcrt"` SSLkey string `yaml:"SSLkey"` // Dbhost string `yaml:"Dbhost"` // Dbport string `yaml:"Dbport"` // Dbname string `yaml:"Dbname"` // Dbuser string `yaml:"Dbuser"` // Dbpw string `yaml:"Dbpw"` // UseSSH bool `yaml:"UseSSH"` NoEvent int `yaml:"NoEvent"` // イベント一覧に表示するイベントの数 Maintenance bool `yaml:"Maintenance"` }
var Serverconfig *ServerConfig
type T009Config ¶ added in v1.2.0
type T009top ¶ added in v1.2.0
type T009top struct { TimeNow int64 SR_acct string // SHOWROOMのアカウント名(必須ではない) Category string // カテゴリー名 Aplmin int // 訪問ルームリストの有効時間(分) Maxnoroom int // 訪問候補ルームリストの最大長 Rvlfilename string // 訪問済みルームリストファイル名 Exclfilename string // 除外ルームリストファイル名 ErrMsg string Lives []srapi.Live // 配信中ルーム情報 (V2ではポインターとはしない) }
type T999Dtop ¶ added in v1.1.0
type T999Dtop struct { TimeNow int64 Totalcount int ErrMsg string Mode int // 0: すべて、 1: データ取得中のものに限定 Path int // どの検索方法が使われているか?(詳細は HandlerCloesedEvnets()および関連関数を参照) Keywordev string // 検索文字列:イベント名 Keywordrm string // 検索文字列:ルーム名 Kwevid string // 検索文字列:イベントID Userno int // 絞り込み対象のルームID Limit int // データ取得数 Offset int // データ取得開始位置 Eventinflist []exsrapi.Event_Inf Roomlist *[]Room }
type UserInf ¶
func SelectFromFluser ¶
type VgsInf ¶ added in v1.6.0
type VgsInf struct { Viewerid int Viewername string Orderno int Score []int Point int LastName string Giftid int }
func SelectViewerid2Order ¶ added in v1.6.0
func SelectViewerid2Order( giftid int, ts time.Time, limit int, ) ( vgslist []VgsInf, viewerid2order map[int]int, err error, )
SelectTlsnid2Order() 指定したイベント、配信者、枠の仮リスナーIDと貢献ポイントランキングの対応表を作成する。 引数 eventid string イベントID userno int 配信者ID ts time.Time 枠を特定する時刻(=貢献ランキングを取得した時刻) 戻り値 cntrbinflist []CntrbInf 貢献ポイントランキングを格納するための構造体の配列 ここで累計貢献ポイント、リスナー名が格納される。 tlsnid2order map[int]int 仮リスナーIDと貢献ポイントランキングの対応表 status int 終了ステータス( 0: 正常、 1: DBアクセスでの異常)
Source Files
¶
- CheckIp.go
- DrawLineGraph.go
- FileIOlib.go
- FindHistoricalData.go
- FindPtPerSlot.go
- HandlerAddEvent.go
- HandlerBbs.go
- HandlerClosedEventRoomList.go
- HandlerClosedEvents.go
- HandlerCurrentDistributors.go
- HandlerCurrentEvents.go
- HandlerDlAllPoints.go
- HandlerEventRoomList.go
- HandlerFanLevel.go
- HandlerFlRanking.go
- HandlerGraphGiftScore.go
- HandlerListCntrb.go
- HandlerListCntrbH.go
- HandlerListCntrbS.go
- HandlerListFanGiftScore.go
- HandlerListGiftScore.go
- HandlerListGiftScoreCntrb.go
- HandlerListLast.go
- HandlerNewEvent.go
- HandlerNewUser.go
- HandlerScheduledEvents.go
- HandlerScheduledEventsSvr.go
- HandlerShowRank.go
- HandlerTopRoom.go
- SelectEventinflistFromEvent.go
- SelectEventinflistFromEventByRoom.go
- SelectUsernoAndName.go
- ShowroomCGIlib.go