Công Vinh bất ngờ “quay xe” với SLNA
Ngày 11/11, trang chủ của CLB SLNA thông báo: “Kể từ Vòng 8 V.League 2024/2025, câu lạc bộ SLNA có sự thay đổi về vị trí HLV trưởng. Theo đó, ông Phan Như Thuật sẽ đảm nhiệm vị trí HLV trưởng thay cho ông Phạm Anh Tuấn. Các trợ lý của HLV Phan Như Thuật bao gồm: HLV Phạm Văn Quyến, Phạm Bùi Minh, Lê Công Vinh, Phạm Đức Anh và Nguyễn Ngọc Anh”.
Mặc dù vậy, trên tài khoản cá nhân của mình, cựu danh thủ Lê Công Vinh đã đưa ra đính chính về thông tin này. Theo đó, Công Vinh cho biết ban lãnh đạo SLNA có liên lạc và muốn anh về làm chủ tịch hội đồng HLV quản lý chuyên môn cũng như công tác đào tạo trẻ cho đội bóng. Công Vinh khẳng định: “Sau khi bàn bạc với gia đình, do thời gian này cũng quá gấp gáp nên Vinh không thể sắp xếp được công việc hiện tại ở TP.HCM và có lẽ Vinh không thể nhận lời quay về SLNA để hỗ trợ đội bóng được, mong BLĐ cũng như quý CĐV SLNA thông cảm cho Vinh”.
Xác định thời gian Yamal phải nghỉ do chấn thương
Trên trang chủ, Barcelona vừa ra thông báo cho biết Lamine Yamal bị chấn thương mắt cá chân phải cấp độ 1. Tuyển thủ Tây Ban Nha sẽ nghỉ từ 2 đến 3 tuần, qua đó lỡ loạt trận Nations League sắp tới.
HLV Lampard được CLB của Saudi Arabia liên hệ
Theo truyền thông Anh, CLB Al-Fateh (Saudi Arabia) đang liên hệ bổ nhiệm HLV Frank Lampard thay thế Jens Gustafsson. Đội bóng này không thể không thay HLV do đang đứng cuối giải VĐQG Saudi Arabia với vỏn vẹn 5 điểm sau 10 vòng đấu.
Militao thể hiện sự mạnh mẽ sau khi đứt dây chằng
Sau khi bị đứt dây chằng chéo ở trận Real thắng Osasuna 4-0 tại vòng 13 La Liga, tuyển thủ Brazil lập tức đăng tải dòng trạng thái trên Instagram với nội dung: “Từ bỏ không phải là một phần cuộc sống của tôi”. Sau khi chấn thương nặng, Militao nhận được nhiều thông điệp động viên của NHM, các cầu thủ và huyền thoại Real, trong đó có Ramos.
Alexander-Arnold không đến Real Madrid vào tháng 1/2025
Theo Relevo, Real Madrid coi tuyển thủ Anh là mục tiêu chiêu mộ số 1 trong năm 2025. Tuy nhiên, Alexander-Arnold sẽ không gia nhập đội chủ sân Bernabeu ở kỳ chuyển nhượng mùa đông tới, bởi lẽ Liverpool sẽ không nhả hậu vệ phải 26 tuổi giữa mùa.
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