Quang Hải sẽ toả sáng tại ASEAN Cup 2024
Mùa giải này, tiền vệ Nguyễn Quang Hải thi đấu khá ấn tượng với 4 pha kiến tạo thành bàn sau 11 lần ra sân trên mọi đấu trường. Trong 3 trận giao hữu trên đất Hàn Quốc, ngôi sao 27 tuổi cũng toả sáng khi đóng góp 1 bàn thắng. Cùng với đó là nhiều đường chuyền tạo ra cơ hội cho đồng đội dứt điểm.
Quang Hải (số 19) được kỳ vọng sẽ toả sáng ở ASEAN Cup 2024. Ảnh: VFF.
Đặc biệt, trong trận đấu cuối cùng với Jeonbuk Hyundai Motors FC, Quang Hải ghi bàn và chơi khá ấn tượng khi được HLV Kim Sang-sik bố trí đá cặp tiền vệ trung tâm với Lê Phạm Thành Long.
Chứng kiến sự toả sáng của Quang Hải, các fan hâm mộ hy vọng rằng, tiền vệ sinh nam 1997 sẽ toả sáng ở ASEAN Cup 2024 nhằm giúp ĐT Việt Nam giành chức vô địch.
HLV Kim Sang-sik lần đầu lên tiếng về Nguyễn Xuân Son
Chiều 3/12, Liên đoàn Bóng đá Việt Nam công bố 3 cầu thủ CLB Thép xanh Nam Định được triệu tập bổ sung lên ĐT Việt Nam để chuẩn bị thi đấu tại ASEAN Cup 2024. Đó là Nguyễn Văn Vĩ, Nguyễn Văn Toàn và Nguyễn Xuân Son, tiền đạo gốc Brazil. Bộ ba cầu thủ này sẽ hội quân cùng đội tuyển vào ngày 5/12 tới, sau khi hoàn thành thi đấu cho CLB Thép xanh Nam Định tại vòng bảng AFC Champions League Two 2024/2025.
HLV Kim Sang-sik. Ảnh: VFF.
HLV Kim Sang-sik hy vọng với sự góp mặt của Nguyễn Xuân Son, ĐT Việt Nam sẽ có thêm nhiều phương án tấn công hiệu quả hơn. Nhà cầm quân người Hàn Quốc cũng tin tưởng vào sự hòa nhập của Nguyễn Xuân Son với ĐT Việt Nam, bởi cầu thủ này đã trải qua 5 năm sinh sống tại Việt Nam và thi đấu trong môi trường V.League. Bên cạnh đó, Nguyễn Xuân Son vẫn có quỹ thời gian để bắt nhịp với ĐT Việt Nam trước khi chính thức được ra sân thi đấu sau ngày 20/12/2024 theo quy định của FIFA về thời gian cư trú đối với cầu thủ nhập tịch.
Indonesia đón hung tin từ Ferdinan
Ít ngày trước khi ASEAN Cup 2024 khởi tranh, ĐT Indonesia đã đón thông tin chẳng lành khi tiền vệ tấn công Marselino Ferdinan dính chấn thương gân khoeo. Hiện tại, vẫn chưa biết mức độ chấn thương mà cầu thủ 20 tuổi gặp phải.
Liverpool sẵn sàng chi 80 triệu euro mua Oihan Sancet
Oihan Sancet. Ảnh: Instagram nhân vật.
Liverpool sẵn sàng chồng lên bàn đàm phán số tiền 80 triệu euro (66,4 triệu bảng) nhằm thuyết phục Athletic Bilbao bán tiền vệ tấn công Oihan Sancet trong kỳ chuyển nhượn mùa Đông tới. Ngôi sao 24 tuổi thi đấu khá ấn tượng ở mùa giải này với 8 bàn sau 15 trận trên mọi đấu trường.
Mẹ sao trẻ Fiorentina ngất xỉu trên khán đài
Trong màn đọ sức giữa Fiorentina với Inter Milan rạng sáng 2/12 (giờ Việt Nam), tiền vệ trẻ Edoardo Bove nằm bất tỉnh. Kết quả là trọng tài Daniele Doveri quyết định cho hoãn trận đấu. Trên khán đài sân Artemio Franchi, mẹ cầu thủ 22 tuổi cũng ngất xỉu. Sau khi được đưa tới bệnh viện và cấp cứu, Bove đã hồi phục.
Greenwood được Barca và Real quan tâm
Cả Barca và Real đều muốn có Greenwood. Ảnh: Getty.
Theo tờ TBR Football, cả Barcelona và Real Madrid đang cân nhắc khả năng chiêu mộ tiền đạo Mason Greenwood của Marseille. Mùa giải này, chân sút 23 tuổi người Anh có 9 pha lập công và 2 đường kiến tạo thành bàn sau 13 lần ra sân ở Ligue 1.
if (!isNotAllow3rd) { loadJsDefer('https://apis.google.com/js/platform.js?onload=onLoadGapi'); loadJsDefer('https://connect.facebook.net/vi_VN/sdk.js#xfbml=1&version=v5.0'); }
function onLoadGapi() { gapi.load('auth2', function() { gapi.load('auth2', function() { gapi.auth2.init({ client_id: '678720187862-08lendtdt5h3nr4j2he534p15b13aieg.apps.googleusercontent.com', scope: 'email profile', fetch_basic_profile: true }); }); }); }
function deleteCookie(name) { document.cookie = name + "=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/;"; } function lgGetCookie(name) { var value = document.cookie; var start = value.indexOf(" " + name + "="); if (start == -1) { start = value.indexOf(name + "="); } if (start == -1) { value = null; } else { start = value.indexOf("=", start) + 1; var end = value.indexOf(";", start); if (end == -1) { end = value.length; } value = unescape(value.substring(start, end)); } return value; }
function lgSetCookie(name, value, date) { var cookieValue = escape(value) + ((date == null) ? "" : "; expires=" + date.toUTCString()); document.cookie = name + "=" + cookieValue; }
function authLogin(name,isLogin=false){ if (isLogin){ $('#top-link-account .first').hide(); $('#top-link-account .second').html(`${name} | Đăng xuất`); $('#top-link-account .second').attr('data-out',1);
$("#cmt-account-header .tabs .close, #cmt-account .tabs .close") .click(); $('.comment-account').html(`
`);
}else {
if (window.confirm("Bạn muốn đăng xuất?")) {
var el = $("#top-link-account");
// //el.find("a.first").html("")
// // .removeAttr("style");
el.find(".first").show();
el.find("a.second").html("");
el.find("a.second").removeAttr("data-out");
$('.comment-account').html(`
`);
deleteCookie('my_dv'); $("#_btn_logout").click(); } } }
function logout(){
if (window.confirm("Bạn muốn đăng xuất?")) {
var el = $("#top-link-account");
// //el.find("a.first").html("")
// // .removeAttr("style");
el.find(".first").show();
el.find("a.second").html("");
el.find("a.second").attr("data-out", "0");
$('.comment-account').html(`
`); deleteCookie('my_dv'); $("#_btn_logout").click(); } } function login(){ $("#_btn_logout").click(); $("#cmt_alert").html("Vui lòng đăng nhập hoặc đăng ký để gửi bình luận"); } function register(){ $("#_btn_logout").click(); $('[data-target="signup"]').click(); fnCaptcha(); }
var aspCookie = null;
(runinit = window.runinit || []).push(function() {
if(lgGetCookie('my_dv')){ var user = JSON.parse(lgGetCookie('my_dv')); if(user.name){ authLogin(user.name, true); } }
$('.btn-refresh').click(function() { fnCaptcha(); }); $('.iconew-eye').click(function() { $(this).toggleClass('closed'); var x = $(this).siblings('input')[0]; if (x.type === "password") { x.type = "text"; } else { x.type = "password"; } });
function stripHtml(html) { var temporalDivElement = document.createElement("div"); temporalDivElement.innerHTML = html; return temporalDivElement.textContent || temporalDivElement.innerText || ""; }
// --------------------- User account // 1. Hide login/logout button -> in case API doesn't available, login/logout will not show + Init OAuth_v2 //$("#top-link-account").hide(); if (typeof gapi != "undefined") { //window._cnnd.oauth.init(); console.log("login not available"); } // 2. Remove excessive login/register form -> only 1 form available // no need // 3. Callback functions var fnPopupAction = function(id, alert, loginData) { id = id.toLowerCase(); if (id == "close") { $("#cmt-account-header .close").click(); return; } if (id == "info" && !window._isShowingInfo) { $("#cmt-account-header .close").click(); return; } window._isShowingInfo = false; if (loginData) { $("#cmt-account-header [data-target]").hide(); $("#cmt-account-header [data-target].logged-in").show().first().click(); $("#cmt-account-header [data-info-name]").html(loginData.name || "Quý vị"); $("#cmt-account-header [data-info-email]").html(loginData.email || "<không xác định>"); } else { $("#cmt-account-header [data-target]").hide(); $("#cmt-account-header [data-target].not-login").show().first().click(); $("#cmt-account-social").show(); } setTimeout(function() { $("#cmt-account-header > .wrapper").css("animation", "none"); }, 200); $("#cmt-account-header").show(); $("#cmt-account-header input[type="password"]").val(""); $("#cmt-account-header [data-target="" + id + ""]").click(); $("body").css("overflow", "hidden"); $("#nav").removeClass("active"); $("#cmt_alert").html(alert || "Vui lòng đăng nhập hoặc đăng ký để gửi bình luận"); }; var accountMessageProcess = function(data) { if (data.isLogged) { fnPopupAction("info", "Vui lòng đăng nhập hoặc đăng ký để gửi bình luận", { name: data.name, email: data.email }); } else { fnPopupAction(data.act, data.alert || "Vui lòng đăng nhập hoặc đăng ký"); if (data.act == "close" && data.raw.Data && data.raw.Data.Approved) { //window.alert("Đăng nhập thành công"); fnPopupAction("info", "Đăng nhập thành công", { name: data.raw.Data.Name, email: $("#_login_email").val() || $("#_sign_email").val() }); } } };
// 5. Action functions -> bind event to form elements
var fnPopupBindAction = function() { // Tab $("#cmt-account-header [data-target]").on('click', function() { $("#cmt-account-header [data-target], #cmt-account-header [data-tab]").removeClass( "active"); $(this).addClass("active"); var tab = $("#cmt-account-header [data-tab='" + $(this).attr("data-target") + "']"); tab.addClass("active") .find("input[type="text"], input[type="email"]").first().focus(); tab.find("input").keyup(function(event) { if (event.keyCode === 13) { tab.find(".btn.clickable").click(); } }); fnCaptcha(); $("#cmt_alert").html("Vui lòng đăng nhập hoặc đăng ký để gửi bình luận"); }); $("#cmt-account-header .close").on('click', function() { $("#cmt-account-header").hide(); $("#cmt-account-header > .wrap").removeAttr("style"); $("body").css("overflow", "unset"); fnCaptcha(); $("#cmt_alert").html("Vui lòng đăng nhập hoặc đăng ký để gửi bình luận"); }); // Reload Captcha // $("#_reload_captcha").on('click', function () { // fnCaptcha(); // }); // Btn Login
$("#comment-frame").on('click','#btn_login', function () { $("#top-link-account .first").click(); }); $("#comment-frame").on('click','#btn_signup', function () { $("#top-link-account .first").click(); $('[data-target="signup"]').click(); });
$("#_btn_login").on('click', function() {
$("#cmt_alert").html("Vui lòng đăng nhập hoặc đăng ký để gửi bình luận");
var email, password;
email = $("#_login_email").val();
password = $("#_login_password").val();
if (!/^[a-z0-9-_.]+[@][0-9a-z-]+(.[0-9a-z-]+)+$/ig.test(email) || password
.length < 8) {
$("#cmt_alert").html("Email hoặc mật khẩu không đúng!");
return;
}
$.ajax({
url: pageSettings.DomainApiComment + "/api/get-usercomment.htm",
data: {
email: encodeURI(email),
password: password,
sitename: pageSettings.commentSiteName,
},
type: "get",
success: function (res){
if (res && res.data == true){
var user = {
email: email,
name: email.substring(0, email.indexOf('@')),
}
let now = new Date();
lgSetCookie('my_dv',JSON.stringify(user), new Date(now.getTime() + (30 * 12 * 60000)));
authLogin(user.name, true);
}else {
$("#cmt_alert").html("Có lỗi phát sinh, vui lòng thử lại sau");
}
}
});
});
// Btn Signup
$("#_btn_sign").on('click', function() {
$("#cmt_alert").html("Vui lòng đăng nhập hoặc đăng ký để gửi bình luận");
var email, name, password, repassword, captcha;
email = $("#_sign_email").val();
name = $("#_sign_name").val();
if (name == ''){
name = email.split('@')[0];
}
password = $("#_sign_password").val();
//repassword = $("#_sign_repassword").val();
captcha = $("#_sign_captcha").val();
var format = /[!@#$%^&*()_+-=[]{};':"\|,.<>/?]/g;
if (!/^[a-z0-9-_.]+[@][0-9a-z-]+(.[0-9a-z-]+)+$/ig.test(email)) {
$("#cmt_alert").html("Email không hợp lệ");
return;
}
//if (name.length <= 0) {
// $("#cmt_alert").html("Vui lòng nhập họ tên của bạn!");
// return;
//}
//if (name.length > 20) {
// $("#cmt_alert").html("Họ tên không được quá 20 ký tự (Có thể để nickname thay thế)!");
// return;
//}
//if (format.test(name)) {
// $("#cmt_alert").html("Tên không được chứa ký tự đặc biệt!");
// return;
//}
if (password.length < 8) {
$("#cmt_alert").html(
"Mật khẩu phải có ít nhất 8 ký tự, chứa ít nhất 1 chữ số và 1 chữ cái");
return;
}
//if (password != repassword) {
// $("#cmt_alert").html("Mật khẩu xác nhận lại không khớp!");
// return;
//}
if (!(/[a-z]/ig.test(password) && /[0-9]/ig.test(password))) {
$("#cmt_alert").html("Mật khẩu phải chứa ít nhất 1 chữ số và 1 chữ cái");
return;
}
if (captcha.length <= 0) {
$("#cmt_alert").html("Vui lòng điền mã xác nhận trong ảnh!");
return;
}
$.ajax({
type: 'POST',
url: pageSettings.DomainApiComment + "/api/insert-usercomment.htm",
data: {
name: name,
email: email,
password: password,
captcha: captcha,
sitename: pageSettings.commentSiteName
},
success: function (res){
if (res && res.message == "Success"){
var user = {
email: email,
name: email.split('@')[0],
}
let now = new Date();
lgSetCookie('my_dv',JSON.stringify(user), new Date(now.getTime() + (30 * 12 * 60000)));
authLogin(user.name, true);
$("#cmt-account-header .close").click();
}else {
$("#cmt_alert").html("Có lỗi phát sinh, vui lòng thử lại sau");
}
}
});
});
// Btn logout
$("#_btn_logout").on('click', function() {
$("#cmt_alert").html("Vui lòng đăng nhập hoặc đăng ký để gửi bình luận");
$("#cmt-account-header .close").click();
fnPopupAction("login", "Bạn đã đăng xuất thành công");
var el = $("#top-link-account");
//el.find("a.first").html("")
// .removeAttr("style");
el.find("a.first").show();
el.find("a.second").html("");
$("#cmt-account-social").show();
});
// Header login/account_info
// Header login/account_info $("#top-link-account .first").on('click', function() { if ($("#top-link-account .second").attr("data-out")) { $("#top-link-account .second").toggleClass("show"); } else { fnPopupAction("login"); } }); // Btn register/log_out $("#top-link-account .second").on('click', function() { if ($("#top-link-account .second").attr("data-out")) { //$("#_btn_logout").click();
authLogin('my_dv',false);
} else { fnPopupAction('signup'); }
//var el = $("#top-link-account");
//el.find("a.first").html("")
// .removeAttr("style");
//el.find("a.second").html("");
});
};
fnPopupBindAction();
//login Facebook var otherLogin = { init: function() { var me = this; //gapi.load('auth2', function () { // gapi.auth2.init({ // client_id: '678720187862-08lendtdt5h3nr4j2he534p15b13aieg.apps.googleusercontent.com', // scope: 'email profile', // fetch_basic_profile: true // }); //}); $("#cmt-account-social button[data-type]").on('click', function() { me[$(this).attr("data-type")](function(response) { $("#cmt-account-header .tabs .close, #cmt-account .tabs .close") .click(); }); }); try { fbClient.appId = '1304555827613749'; //'211029740744825'; fbClient.version = "v14.0"; fbClient.init(); setTimeout(FB.AppEvents.logPageView, 5000); } catch (e) { // ignore } }, loginFacebook: function(cb) { var me = this;
function reloginFacebook(callback) { FB.api('/me', { fields: 'id, name, email' }, function(profile) { //console.debug(profile); if (typeof callback === "function") callback(profile); }); }; FB.login(function(response) { if (response.authResponse) { reloginFacebook(function(info) { console.log(info); info.social = "facebook"; info.accessToken = response.authResponse.accessToken;
var user = { email: info.email, name: info.name, } let now = new Date(); lgSetCookie('my_dv',JSON.stringify(user), new Date(now.getTime() + (30 * 12 * 60000))); authLogin(user.name, true); }); } else { $("#cmt_alert").html( "Bạn đã từ chối cấp quyền truy cập tài khoản Facebook"); } }, { scope: 'public_profile,email' }); }, loginGoogle: function(callback) { var me = this;
function callSocialApi(data, cb) { data.social = "google"; var user = { email: data.email, name: data.name, } let now = new Date(); lgSetCookie('my_dv',JSON.stringify(user), new Date(now.getTime() + (30 * 12 * 60000))); authLogin(user.name, true); }
// API call for Google login if (gapi.auth2.getAuthInstance().isSignedIn.get()) { //console.debug('[VCC] GAPI Process'); var profile = gapi.auth2.getAuthInstance().currentUser.get().getBasicProfile();
//var id_token = gapi.auth2.getAuthInstance().currentUser.get().getAuthResponse().id_token; var access_token = gapi.auth2.getAuthInstance().currentUser.get().getAuthResponse() .access_token;
var params = { id: profile.getId(), name: profile.getName(), email: profile.getEmail(), accessToken: access_token } //console.log('params: ', params); callSocialApi(params, callback); } else { //console.debug('[VCC] GAPI Login'); gapi.auth2.getAuthInstance().signIn().then( function(success) { var profile = gapi.auth2.getAuthInstance().currentUser.get() .getBasicProfile(); //var id_token = gapi.auth2.getAuthInstance().currentUser.get().getAuthResponse().id_token; var access_token = gapi.auth2.getAuthInstance().currentUser.get() .getAuthResponse().access_token;
var params = { id: profile.getId(), name: profile.getName(), email: profile.getEmail(), accessToken: access_token } //console.log('params: ', params); callSocialApi(params, callback); }, function(error) { $("#cmt_alert").html( "Bạn đã từ chối cấp quyền cho Báo Dân Việt truy cập tài khoản Google" ); } ); } } } otherLogin.init(); });
Xin chào ${name}! Đăng xuất