Hơn 20 lần xem phim Sex and the City nhưng sau 30 tôi mới hiểu điều làm mình hạnh phúc. Ra mắt hơn 20 năm nhưng bộ phim Sex and the City vẫn có sức hấp dẫn vô cùng với người xem. Bộ phim kể về mối quan hệ bạn bè thân thiết giữa 4 cô gái: Miranda, Samantha, Charlotte, Carrie với những nét tính cách và hoàn cảnh, quan điểm sống khác nhau.
Hơn hết, bộ phim Sex and the City lôi cuốn người xem bởi rất nhiều cảnh nóng bỏng mắt và quan điểm sâu sắc về tình dục – một điều khá tế nhị, nhạy cảm. Tôi là một fan cuồng của bộ phim Sex and the City. Nói không ngoa, tôi đã xem đi xem lại hơn 20 lần, từ thời thiếu nữ 17 tuổi cho suốt những năm tháng đại học, và cả sau này, khi đã đi làm, tôi vẫn xem lại và lần nào, tôi cũng rút ra những bài học mới. Tuổi càng lớn, trải nghiệm càng nhiều, bài học càng đắt giá và đúng đắn hơn.
Trong 4 nhân vật, tôi rất thích cô gái Miranda. Cô ấy giỏi. Quá giỏi. Một cô gái có bản lĩnh, năng động, quyết đoán và cực kì thông minh. Lần đầu xem phim, tôi không hiểu tại sao Miranda lại yêu một anh chàng không hề xứng với mình – một nhân viên quán bar. Tôi còn nhủ thầm: Cô ấy tốt nghiệp đại học Harvard mà chẳng thông minh tí nào!
Lần thứ 2 xem lại phim Sex and the City, tôi dần nhận thấy quyết định táo bạo của Miranda lại đúng đắn. Phụ nữ chỉ cần tìm được một người đàn ông luôn đặt mình ở vị trí đầu tiên trong hàng vạn điều ở cuộc sống, người phụ nữ đó đã Thắng. Giỏi giang, giàu có, thành đạt. Tất cả những điều đó chỉ là phù phiếm. Còn chất lượng cuộc sống mới là điều quan trọng. Và để có một cuộc đời hạnh phúc, người phụ nữ phải biết nhìn và chọn đàn ông.
Như Samantha, cô ấy quá giàu, quyến rũ và lạnh lùng trong tình yêu. Nhưng cái giá là cô ấy đã đánh mất người đàn ông yêu mình bằng cả trái tim. Hay Charlotte ngây thơ cũng phải trả giá cho sự bảo thủ của mình bằng cuộc hôn nhân đổ vỡ. Có thể cuộc hôn nhân của Miranda cũng có sóng gió. Điều đó rất rõ ràng. Cuộc hôn nhân nào cũng sẽ có những phút chòng chành. Nhưng sau cùng, cô và Steve vẫn hạnh phúc bên nhau.
Anh chàng Steve tuy không có lợi thế về ngoại hình, độ giàu có hay địa vị xã hội nhưng anh ấy luôn cẩn thận lắng nghe và ghi nhớ những gì bạn gái nói. Phụ nữ dù có mạnh mẽ đến đâu thì cũng chỉ là phái yếu. Sẽ có những lúc yếu đuối, mềm lòng. Những lúc đó, chỉ cần một bờ vai đủ vững chãi để dựa vào cũng là điều hạnh phúc. Tôi tin rằng Miranda đã lựa chọn đúng. Tôi tin rằng, nụ hôn và cái nắm tay của cặp đôi Miranda và Steve trên cầu Brooklyn sẽ luôn “khiến trái tim người xem tan chảy”. Đối với tôi, cô nàng là người thành công nhất. #SexAndTheCity #HạnhPhúc #BìnhYên
Ra mắt hơn 20 năm nhưng bộ phim Sex and the City vẫn có sức hấp dẫn vô cùng với người xem. Bộ phim kể về mối quan hệ bạn bè thân thiết giữa 4 cô gái: Miranda, Samantha, Charlotte, Carrie với những nét tính cách và hoàn cảnh, quan điểm sống khác nhau.
Hơn hết, bộ phim Sex and the City lôi cuốn người xem bởi rất nhiều cảnh nóng bỏng mắt và quan điểm sâu sắc về tình dục – một điều khá tế nhị, nhạy cảm.
Tôi là một fan cuồng của bộ phim Sex and the City.
Nói không ngoa, tôi đã xem đi xem lại hơn 20 lần, từ thời thiếu nữ 17 tuổi cho suốt những năm tháng đại học, và cả sau này, khi đã đi làm, tôi vẫn xem lại và lần nào, tôi cũng rút ra những bài học mới. Tuổi càng lớn, trải nghiệm càng nhiều, bài học càng đắt giá và đúng đắn hơn.
Trong 4 nhân vật, tôi rất thích cô gái Miranda. Cô ấy giỏi. Quá giỏi. Một cô gái có bản lĩnh, năng động, quyết đoán và cực kì thông minh. Lần đầu xem phim, tôi không hiểu tại sao Miranda lại yêu một anh chàng không hề xứng với mình – một nhân viên quán bar. Tôi còn nhủ thầm: Cô ấy tốt nghiệp đại học Harvard mà chẳng thông minh tí nào!
Lần thứ 2 xem lại phim Sex and the City, tôi dần nhận thấy quyết định táo bạo của Miranda lại đúng đắn. Phụ nữ chỉ cần tìm được một người đàn ông luôn đặt mình ở vị trí đầu tiên trong hàng vạn điều ở cuộc sống, người phụ nữ đó đã Thắng.
Giỏi giang, giàu có, thành đạt. Tất cả những điều đó chỉ là phù phiếm. Còn chất lượng cuộc sống mới là điều quan trọng. Và để có một cuộc đời hạnh phúc, người phụ nữ phải biết nhìn và chọn đàn ông. Như Samantha, cô ấy quá giàu, quyến rũ và lạnh lùng trong tình yêu. Nhưng cái giá là cô ấy đã đánh mất người đàn ông yêu mình bằng cả trái tim. Hay Charlotte ngây thơ cũng phải trả giá cho sự bảo thủ của mình bằng cuộc hôn nhân đổ vỡ.
Có thể cuộc hôn nhân của Miranda cũng có sóng gió. Điều đó rất rõ ràng. Cuộc hôn nhân nào cũng sẽ có những phút chòng chành. Nhưng sau cùng, cô và Steve vẫn hạnh phúc bên nhau.
Anh chàng Steve tuy không có lợi thế về ngoại hình, độ giàu có hay địa vị xã hội nhưng anh ấy luôn cẩn thận lắng nghe và ghi nhớ những gì bạn gái nói. Anh ấy luôn là người nhún nhường khi cả 2 cãi vã.
Phụ nữ dù có mạnh mẽ đến đâu thì cũng chỉ là phái yếu. Sẽ có những lúc yếu đuối, mềm lòng. Những lúc đó, chỉ cần một bờ vai đủ vững chãi để dựa vào cũng là điều hạnh phúc. Tôi tin rằng Miranda đã lựa chọn đúng. Tôi tin rằng, nụ hôn và cái nắm tay của cặp đôi Miranda và Steve trên cầu Brooklyn sẽ luôn “khiến trái tim người xem tan chảy”. Đối với tôi, cô nàng là người thành công nhất.
Từ phim Sex and the City, tôi cũng nghiệm ra rằng, phụ nữ muốn bình yên và hạnh phúc thì ngoài giỏi giang, quyết đoán còn cần phải có một điểm tựa vững chắc bên cạnh.
Có điểm tựa ấy, chúng ta sẽ không bao giờ ngã. Gió bão ngoài kia sẽ không thể chạm vào cánh cửa gia đình khi vợ chồng cùng yêu thương và bảo vệ nhau.
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 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)
// --------------------- 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) 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 ; 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 ;
// 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();
});
[ad_2]