mirror of
https://github.com/tstellar/bygfoot.git
synced 2025-01-31 07:54:50 +01:00
Newspaper options.
This commit is contained in:
parent
e7285746aa
commit
729f2a7671
@ -59,6 +59,9 @@ callback_show_next_live_game(void)
|
||||
for(i=0;i<users->len;i++)
|
||||
usr(i).counters[COUNT_USER_TOOK_TURN] = 0;
|
||||
|
||||
counters[COUNT_NEWS_SHOWN] =
|
||||
counters[COUNT_NEW_NEWS] = 0;
|
||||
|
||||
for(i=0;i<ligs->len;i++)
|
||||
for(j=0;j<lig(i).fixtures->len;j++)
|
||||
if(g_array_index(lig(i).fixtures, Fixture, j).week_number == week &&
|
||||
|
@ -218,6 +218,13 @@ on_button_back_to_main_clicked (GtkButton *button,
|
||||
game_gui_show_main();
|
||||
|
||||
gui_set_arrows();
|
||||
|
||||
if((opt_int("int_opt_news_popup") == 2 ||
|
||||
(opt_int("int_opt_news_popup") == 1 &&
|
||||
counters[COUNT_NEW_NEWS] == 1)) &&
|
||||
counters[COUNT_NEWS_SHOWN] == 0 &&
|
||||
counters[COUNT_NEW_NEWS] != 0)
|
||||
on_menu_news_activate(NULL, NULL);
|
||||
}
|
||||
|
||||
|
||||
@ -1659,5 +1666,6 @@ on_menu_news_activate (GtkMenuItem *menuitem,
|
||||
{
|
||||
window_create(WINDOW_NEWS);
|
||||
treeview2_show_news();
|
||||
counters[COUNT_NEWS_SHOWN] = 1;
|
||||
}
|
||||
|
||||
|
@ -42,6 +42,8 @@ enum Counters
|
||||
COUNT_NEWS_ARTICLE_ID,
|
||||
COUNT_SHOW_DEBUG,
|
||||
COUNT_HINT_NUMBER,
|
||||
COUNT_NEWS_SHOWN,
|
||||
COUNT_NEW_NEWS,
|
||||
COUNT_END
|
||||
};
|
||||
|
||||
|
16
src/news.c
16
src/news.c
@ -83,6 +83,13 @@ news_generate_match(const LiveGame *live_game)
|
||||
new_article.title_id = title_id;
|
||||
new_article.subtitle_id = subtitle_id;
|
||||
new_article.user_idx = fixture_user_team_involved(live_game->fix);
|
||||
|
||||
if(counters[COUNT_NEW_NEWS] == 0)
|
||||
counters[COUNT_NEW_NEWS] = 2;
|
||||
|
||||
if(new_article.user_idx != -1)
|
||||
counters[COUNT_NEW_NEWS] = 1;
|
||||
|
||||
g_array_append_val(newspaper.articles, new_article);
|
||||
}
|
||||
|
||||
@ -748,20 +755,23 @@ news_check_match_relevant(const LiveGame *live_game)
|
||||
gint i;
|
||||
GArray *user_leagues;
|
||||
|
||||
if(fixture_user_team_involved(live_game->fix) != -1)
|
||||
if(fixture_user_team_involved(live_game->fix) != -1 &&
|
||||
opt_int("int_opt_news_create_user"))
|
||||
return TRUE;
|
||||
|
||||
user_leagues = g_array_new(FALSE, FALSE, sizeof(gint));
|
||||
|
||||
if(live_game->fix->clid >= ID_CUP_START &&
|
||||
live_game->fix->round >= cup_from_clid(live_game->fix->clid)->rounds->len - 4)
|
||||
live_game->fix->round >= cup_from_clid(live_game->fix->clid)->rounds->len - 4 &&
|
||||
opt_int("int_opt_news_create_cup"))
|
||||
return TRUE;
|
||||
|
||||
for(i = 0; i < users->len; i++)
|
||||
if(!query_misc_integer_is_in_g_array(usr(i).tm->clid, user_leagues))
|
||||
g_array_append_val(user_leagues, usr(i).tm->clid);
|
||||
|
||||
if(query_misc_integer_is_in_g_array(live_game->fix->clid, user_leagues))
|
||||
if(query_misc_integer_is_in_g_array(live_game->fix->clid, user_leagues) &&
|
||||
opt_int("int_opt_news_create_league"))
|
||||
{
|
||||
g_array_free(user_leagues, TRUE);
|
||||
return TRUE;
|
||||
|
@ -205,19 +205,19 @@ option_gui_write_bool_widgets(gint **bool_options, GtkToggleButton **bool_widget
|
||||
|
||||
bool_widgets[BOOL_OPT_NEWS_USER] =
|
||||
GTK_TOGGLE_BUTTON(lookup_widget(window.options, "checkbutton_news_user"));
|
||||
bool_options[BOOL_OPT_NEWS_USER] = opt_user_intp("int_opt_user_news_create_user");
|
||||
bool_options[BOOL_OPT_NEWS_USER] = opt_intp("int_opt_news_create_user");
|
||||
|
||||
bool_widgets[BOOL_OPT_NEWS_CUP] =
|
||||
GTK_TOGGLE_BUTTON(lookup_widget(window.options, "checkbutton_news_cup"));
|
||||
bool_options[BOOL_OPT_NEWS_CUP] = opt_user_intp("int_opt_user_news_create_cup");
|
||||
bool_options[BOOL_OPT_NEWS_CUP] = opt_intp("int_opt_news_create_cup");
|
||||
|
||||
bool_widgets[BOOL_OPT_NEWS_LEAGUE] =
|
||||
GTK_TOGGLE_BUTTON(lookup_widget(window.options, "checkbutton_news_league"));
|
||||
bool_options[BOOL_OPT_NEWS_LEAGUE] = opt_user_intp("int_opt_user_news_create_league");
|
||||
bool_options[BOOL_OPT_NEWS_LEAGUE] = opt_intp("int_opt_news_create_league");
|
||||
|
||||
bool_widgets[BOOL_OPT_NEWS_RECENT] =
|
||||
GTK_TOGGLE_BUTTON(lookup_widget(window.options, "checkbutton_news_recent"));
|
||||
bool_options[BOOL_OPT_NEWS_RECENT] = opt_user_intp("int_opt_user_news_show_recent");
|
||||
bool_options[BOOL_OPT_NEWS_RECENT] = opt_intp("int_opt_news_show_recent");
|
||||
|
||||
bool_widgets[BOOL_OPT_PL1_ATT_NAME] =
|
||||
GTK_TOGGLE_BUTTON(lookup_widget(window.options, "checkbutton1"));
|
||||
@ -513,7 +513,7 @@ option_gui_set_up_window(void)
|
||||
GTK_SPIN_BUTTON(lookup_widget(window.options, "spinbutton_recreation"))));
|
||||
gtk_label_set_text(GTK_LABEL(lookup_widget(window.options, "label_training")), buf);
|
||||
|
||||
gtk_toggle_button_set_active(news_popup_buttons[opt_user_int("int_opt_user_news_popup")], TRUE);
|
||||
gtk_toggle_button_set_active(news_popup_buttons[opt_int("int_opt_news_popup")], TRUE);
|
||||
}
|
||||
|
||||
/** Read the widget states in the options window and set the
|
||||
@ -569,7 +569,7 @@ option_gui_write_options(void)
|
||||
for(i = 0; i < 3; i++)
|
||||
if(gtk_toggle_button_get_active(news_popup_buttons[i]))
|
||||
{
|
||||
opt_user_set_int("int_opt_user_news_popup", i);
|
||||
opt_set_int("int_opt_news_popup", i);
|
||||
break;
|
||||
}
|
||||
|
||||
|
@ -526,7 +526,8 @@ end_week_round_generate_news(void)
|
||||
for(i = 0; i < users->len; i++)
|
||||
if(usr(i).live_game.fix != NULL &&
|
||||
usr(i).live_game.fix->week_number == week &&
|
||||
usr(i).live_game.fix->week_round_number == week_round)
|
||||
usr(i).live_game.fix->week_round_number == week_round &&
|
||||
news_check_match_relevant(&usr(i).live_game))
|
||||
news_generate_match(&usr(i).live_game);
|
||||
|
||||
/** News for other matches. */
|
||||
|
@ -603,29 +603,33 @@ treeview2_create_news(GtkListStore *ls)
|
||||
|
||||
for(i = newspaper.articles->len - 1; i >= 0; i--)
|
||||
{
|
||||
if(i == newspaper.articles->len - 1 ||
|
||||
(i < newspaper.articles->len - 1 &&
|
||||
(g_array_index(newspaper.articles, NewsPaperArticle, i).week_number !=
|
||||
g_array_index(newspaper.articles, NewsPaperArticle, i + 1).week_number ||
|
||||
g_array_index(newspaper.articles, NewsPaperArticle, i).week_round_number !=
|
||||
g_array_index(newspaper.articles, NewsPaperArticle, i + 1).week_round_number)))
|
||||
{
|
||||
gtk_list_store_append(ls, &iter);
|
||||
gtk_list_store_set(ls, &iter, 0, "", 1, NULL, -1);
|
||||
|
||||
gtk_list_store_append(ls, &iter);
|
||||
sprintf(buf2, _("Week %d Round %d"),
|
||||
g_array_index(newspaper.articles, NewsPaperArticle, i).week_number,
|
||||
g_array_index(newspaper.articles, NewsPaperArticle, i).week_round_number);
|
||||
sprintf(buf, "<span %s>%s</span>\n\n",
|
||||
const_app("string_news_window_week_number_attribute"),
|
||||
buf2);
|
||||
gtk_list_store_set(ls, &iter, 0, buf, 1, &g_array_index(newspaper.articles, NewsPaperArticle, i), -1);
|
||||
}
|
||||
else
|
||||
if(!opt_int("int_opt_news_show_recent") ||
|
||||
g_array_index(newspaper.articles, NewsPaperArticle, i).week_number == week - 1)
|
||||
{
|
||||
gtk_list_store_append(ls, &iter);
|
||||
gtk_list_store_set(ls, &iter, 0, "", 1, &g_array_index(newspaper.articles, NewsPaperArticle, i), -1);
|
||||
if(i == newspaper.articles->len - 1 ||
|
||||
(i < newspaper.articles->len - 1 &&
|
||||
(g_array_index(newspaper.articles, NewsPaperArticle, i).week_number !=
|
||||
g_array_index(newspaper.articles, NewsPaperArticle, i + 1).week_number ||
|
||||
g_array_index(newspaper.articles, NewsPaperArticle, i).week_round_number !=
|
||||
g_array_index(newspaper.articles, NewsPaperArticle, i + 1).week_round_number)))
|
||||
{
|
||||
gtk_list_store_append(ls, &iter);
|
||||
gtk_list_store_set(ls, &iter, 0, "", 1, NULL, -1);
|
||||
|
||||
gtk_list_store_append(ls, &iter);
|
||||
sprintf(buf2, _("Week %d Round %d"),
|
||||
g_array_index(newspaper.articles, NewsPaperArticle, i).week_number,
|
||||
g_array_index(newspaper.articles, NewsPaperArticle, i).week_round_number);
|
||||
sprintf(buf, "<span %s>%s</span>\n\n",
|
||||
const_app("string_news_window_week_number_attribute"),
|
||||
buf2);
|
||||
gtk_list_store_set(ls, &iter, 0, buf, 1, &g_array_index(newspaper.articles, NewsPaperArticle, i), -1);
|
||||
}
|
||||
else
|
||||
{
|
||||
gtk_list_store_append(ls, &iter);
|
||||
gtk_list_store_set(ls, &iter, 0, "", 1, &g_array_index(newspaper.articles, NewsPaperArticle, i), -1);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -19,9 +19,9 @@ string_opt_language_code
|
||||
int_opt_calodds 0
|
||||
int_opt_load_defs 1
|
||||
int_opt_randomise_teams 0
|
||||
int_opt_calodds 0
|
||||
int_opt_load_defs 1
|
||||
int_opt_randomise_teams 0
|
||||
int_opt_calodds 0
|
||||
int_opt_load_defs 1
|
||||
int_opt_randomise_teams 0
|
||||
|
||||
int_opt_news_create_user 1
|
||||
int_opt_news_create_cup 1
|
||||
int_opt_news_create_league 1
|
||||
int_opt_news_show_recent 0
|
||||
int_opt_news_popup 0
|
||||
|
@ -31,12 +31,6 @@ int_opt_user_bet_default_wager 5000
|
||||
int_opt_user_training_camp_hotel 1
|
||||
int_opt_user_training_camp_recreation 5
|
||||
|
||||
int_opt_user_news_create_user 1
|
||||
int_opt_user_news_create_cup 1
|
||||
int_opt_user_news_create_league 1
|
||||
int_opt_user_news_show_recent 0
|
||||
int_opt_user_news_popup 0
|
||||
|
||||
# the order of these attributes is important
|
||||
# don't change it, only the values
|
||||
int_opt_user_pl1_att_name 1
|
||||
|
Loading…
x
Reference in New Issue
Block a user