'+pages+''); $('.stream > div:odd').addClass('bgr_color'); updateHeight('#history'); }); window.activateTabArea = ensure(function(tab, areas){ var parsed = false; var parts = (areas || '').split('/'); window.fsonload = $.inArray('fs', parts) >= 0; if(fsonload){ parts.splice(parts.indexOf('fs'), 1); } var replayMode = false; if($.inArray('replay', parts)>=0){ replayMode = 'replay'; } var noSoundMode = false; if($.inArray('nosound', parts)>=0){ noSoundMode = 'nosound'; } if($.inArray('ns', parts)>=0){ noSoundMode = 'ns'; } var previewMode = null; if($.inArray('p', parts)>=0){ previewMode = 'p'; } if($.inArray('preview', parts)>=0){ previewMode = 'preview'; } if($.inArray('repeat', parts)>=0){ replayMode = 'repeat'; } if($.inArray('r', parts)>=0 || $.inArray('ro', parts)>=0){ replayMode = 'r'; } if(replayMode){ parts.splice(parts.indexOf(replayMode), 1); } if(noSoundMode){ parts.splice(parts.indexOf(noSoundMode), 1); } if(previewMode){ parts.splice(parts.indexOf(previewMode), 1); } if(previewMode){ if(!parts.length){ parts = ['1-14', '999:59']; } } var area = parts[0]; if(tab == 'history' && false){ var page = parseInt(area || '1') || 1; $.ajax({ url: 'https://login.wn.com/recent/json/?pp='+history_pp+'&skip='+history_pp*(page-1), dataType: 'jsonp', success: function(response){ $ensure(function(){ renderHistory(response, page); }); } }); return true; } if(tab == 'global_history' && false){ var page = parseInt(area || '1') || 1; globalHistory.fetchStream(page, '', function(){ updateHeight('#global_history'); }); return true; } if(tab == 'my_playlists' && false){ var page = parseInt(area || '1') || 1; myPlaylists.fetchStream(page, '', function(){ updateHeight('#my_playlists'); }); return true; } if(tab == 'my_videos' && false){ var page = parseInt(area || '1') || 1; myVideos.fetchStream(page, '', function(){ updateHeight('#my_videos'); }); return true; } if(tab == 'related_sites' && areas && matchPosition(areas)){ var seconds = parsePosition(areas); scrollRelated(seconds); return false; } if(matchPosition(area) || matchAction(area)){ parts.unshift('1'); area = parts[0]; } if(tab == 'expand' && area && area.match(/\d+/)) { var num = parseInt(area); if(num < 100){ //FIX ME. Load news page with ajax here } else if(num > 1900){ //FIX ME. Load timeline page with ajax here } } else if(tab.match(/^playlist\d+$/)){ var playerId = parseInt(tab.substring(8)); var vp = videoplayers[playerId]; window.descriptionsholder = $('.descriptionsplace'); if(!vp) return; // why? no player? if(replayMode){ $('.replaycurrent'+playerId).attr('checked', true); vp.setReplayCurrent(true); } var playQueue = []; window.playQueue = playQueue; var playQueuePosition = 0; var playShouldStart = null; var playShouldStop = null; var parseList = function(x){ var items = x.split(/;|,/g); var results = []; for (i in items){ try{ var action = parseAction(vp, items[i]); if(!action.video){ if(window.console && console.log) console.log("Warning: No video for queued entry: " + items[i]); }else{ results.push(action); } }catch(e){ if(window.console && console.log) console.log("Warning: Can''t parse queue entry: " + items[i]); } } return results; }; var scrollToPlaylistPosition = function(vp){ var ppos = vp.getPlaylistPosition(); var el = vp.playlistContainer.find('>li').eq(ppos); var par = el.closest('.playlist_scrollarea'); par.scrollTop(el.offset().top-par.height()/2); } var updateVolumeState = function(){ if(noSoundMode){ if(noSoundMode == 'turn-on'){ clog("Sound is on, vsid="+vp.vsid); vp.setVolumeUnMute(); noSoundMode = false; }else{ clog("Sound is off, vsid="+vp.vsid); vp.setVolumeMute(); noSoundMode = 'turn-on'; } } } var playQueueUpdate = function(){ var playPosition = playQueue[playQueuePosition]; vp.playFromPlaylist(playPosition.video); scrollToPlaylistPosition(vp); playShouldStart = playPosition.start; playShouldStop = playPosition.stop; }; var playQueueAdvancePosition = function(){ clog("Advancing play position..."); playQueuePosition ++; while(playQueuePosition < playQueue.length && !playQueue[playQueuePosition].video){ playQueuePosition ++; } if(playQueuePosition < playQueue.length){ playQueueUpdate(); }else if(vp.getReplayCurrent()){ playQueuePosition = 0; playQueueUpdate(); vp.seekTo(playShouldStart); vp.playVideo(); }else{ vp.pauseVideo(); playShouldStop = null; playShouldStart = null; } }; function loadMoreVideos(playerId, vp, start, finish, callback){ var playlistInfo = playlists[playerId-1]; if(playlistInfo.loading >= finish) return; playlistInfo.loading = finish; $.ajax({ url: '/api/upge/cheetah-photo-search/query_videos2', dataType: 'json', data: { query: playlistInfo.query, orderby: playlistInfo.orderby, start: start, count: finish-start }, success: function(response){ var pl = vp.getPlaylist().slice(0); pl.push.apply(pl, response); vp.setPlaylist(pl); callback(); } }); } if(parts.length == 1 && matchDash(parts[0])){ var pl = vp.getActualPlaylist(); var vids = parseDash(parts[0]); parts = []; for(var i = 0; i < vids.length; i++){ playQueue.push({ 'video': pl[vids[i]-1], 'start': 0, 'stop': null }) } if(vids.length){ if(vids[vids.length-1]-1>=pl.length){ loadMoreVideos(playerId, vp, pl.length, vids[vids.length-1], function(){ if(fsonload){ activateTabArea(tab, parts[0]+'/fs'); }else{ activateTabArea(tab, parts[0]); } var pls = vp.getPlaylist(); vp.playFromPlaylist(pls[pls.length-1]); vp.playVideo(); scrollToPlaylistPosition(vp); }); return true; } } if(playQueue){ playQueueUpdate(); vp.playVideo(); parsed = true; playShouldStart = 0; } } if(previewMode){ var vids = []; var dur = 0; var pl = vp.getActualPlaylist(); area = parts[0]; if(parts.length == 1 && matchPosition(parts[0])){ vids = parseDash('1-'+pl.length); dur = parsePosition(parts[0]); parts = []; }else if(parts.length == 1 && matchDash(parts[0])){ vids = parseDash(parts[0]); dur = parsePosition("999:59"); parts = []; } if(parts.length == 2 && matchDash(parts[0]) && matchPosition(parts[1])){ vids = parseDash(parts[0]); dur = parsePosition(parts[1]); parts = []; } for(var i = 0; i < vids.length; i++){ playQueue.push({ 'video': pl[vids[i]-1], 'start': 0, 'stop': dur }) } if(playQueue){ playQueueUpdate(); vp.playVideo(); parsed = true; } } if(parts.length>1){ for(var i = 0; i < parts.length; i++){ var sel = findMatchingVideo(vp, parts[i]); if(sel){ playQueue.push({ 'video': sel, 'start': 0, 'stop': null }) } } if(playQueue){ playQueueUpdate(); vp.playVideo(); parsed = true; } }else if(area){ var sel = findMatchingVideo(vp, area); if(sel){ vp.playFromPlaylist(sel); playShouldStart = 0; parsed = true; } } if(fsonload || replayMode){ playShouldStart = 0; } if(document.location.search.match('at=|queue=')){ var opts = document.location.search.replace(/^\?/,'').split(/&/g); for(var o in opts){ if(opts[o].match(/^at=(\d+:)?(\d+:)?\d+$/)){ playShouldStart = parsePosition(opts[o].substr(3)) } if(opts[o].match(/^queue=/)){ playQueue = parseList(opts[o].substr(6)); if(playQueue){ playQueuePosition = 0; playQueueUpdate(); } } } } if(matchPosition(parts[1])){ playShouldStart = parsePosition(parts[1]); parsed = true; } if(matchAction(parts[1])){ var action = parseAction(vp, area+'/'+parts[1]); playShouldStart = action.start; playShouldStop = action.stop; parsed = true; } if(playShouldStart !== null && !playQueue.length){ playQueue.push({ video: vp.getCurrentVideo(), start: playShouldStart, stop: playShouldStop }); } if(playShouldStart != null){ setInterval(function(){ if(playShouldStop && vp.currentPlayer && vp.currentPlayer.getCurrentTime() > playShouldStop){ playShouldStop = null; if(vp.getCurrentVideo() == playQueue[playQueuePosition].video){ playQueueAdvancePosition(); }else{ playShouldStart = null; } } }, 500); vp.playerContainer.bind('videoplayer.player.statechange', function(e, state){ if(state == 'ended'){ // advance to the next video playQueueAdvancePosition(); } }); vp.playerContainer.bind('videoplayer.player.readychange', function(e, state){ if(state){ updateVolumeState(); if(playShouldStart !== null){ vp.seekTo(playShouldStart); playShouldStart = null; }else{ playShouldStop = null; // someone started other video, stop playing from playQueue } } if(fsonload) { triggerFullscreen(playerId); fsonload = false; } }); } } else if(tab.match(/^wiki\d+$/)){ if(firstTimeActivate){ load_wiki($('#'+tab), function(){ if(area){ var areaNode = $('#'+area); if(areaNode.length>0){ $('html, body').scrollTop(areaNode.offset().top + 10); return true; } } }); } } return parsed; }) window.activateTab = ensure(function(tab, area){ window.activeArea = null; if(tab == 'import_videos'){ if(area){ import_videos(area); }else{ start_import(); } return true; } if(tab == 'chat'){ update_chat_position($('.chat').eq(0)); window.activeArea = 'chat'; jQuery('.tabtrigger').offscreentabs('activateTab', 'chat'); return true; } if(tab in rev_names){ tab = rev_names[tab]; } if(tab.match(':')){ return false; } var sup = $('ul li a[id=#'+tab+']'); if(sup && sup.length>0){ window.activeArea = area; sup.first().click(); if(!window.activateTabArea(tab, area)){ window.activeArea = null; } window.activeArea = null; return true; }else{ var have_tabs = $('#playlist_menu li').length; if(tab.match(/^playlists?\d+$/)){ var to_add = +tab.substring(8).replace(/^s/,'')-have_tabs; if(to_add>0 && have_tabs){ add_more_videos(to_add); return true; } } } return false; }); window.currentPath = ensure(function(){ return window.lastHistory.replace(basepath, '').split('?')[0]; }); window.main_tab = window.main_tab || 'videos'; window.addHistory = ensure(function(path){ if(window.console && console.log) console.log("Adding to history: "+path); if(window.history && history.replaceState && document.location.hostname.match(/^(youtube\.)?(\w{2,3}\.)?wn\.com$/)){ if(path == main_tab || path == main_tab+'/' || path == '' || path == '/') { path = basepath; } else if( path.match('^'+main_tab+'/') ){ path = basepath + '/' + path.replace(main_tab+'/', '').replace('--','/'); } else { path = basepath + '/' + path.replace('--','/'); } if(document.location.search){ path += document.location.search; } if(window.lastHistory) { history.pushState(null, null, path); } else if(window.lastHistory != path){ history.replaceState(null, null, path); window.lastHistory = path; } } else{ path = path.replace('--','/'); if(path == main_tab || path == main_tab+'/' || path == '' || path == '/') { path = ''; } if(window.lastHistory != '/'+path){ window.location.hash = path? '/'+path : ''; window.lastHistory = '/'+path; } } }); $('.tabtrigger li a').live('click', ensure(function() { var tab = $(this).attr('id'); if(tab.substring(0,1) == '#'){ var name = tab.substring(1); if(name in menu_names){ name = menu_names[name][0]; } realTab = rev_names[name]; $('#'+realTab).show(); if(window.console && console.log) console.log("Triggering tab: "+name+(window.activeArea?" activeArea="+window.activeArea:'')); var path = name; if(window.activeArea){ path = path + '/' + window.activeArea; } if(tab.match(/#playlist\d+/) || tab.match(/#details\d+/)){ $('.multiple-playlists').show(); $('.related_playlist').show(); $('.longest_videos_playlist').show(); }else { $('.multiple-playlists').hide(); $('.related_playlist').hide(); $('.longest_videos_playlist').hide(); } // start the related script only when the tab is on screen showing if (tab.match(/related_sites/)) { if (mc) { mc.startCredits(); } } window.activeTab = realTab; addHistory(path); setTimeout(ensure(function(){ if(tab.match(/language--/)){ $('.tabtrigger').offscreentabs('activateTab', 'language'); } if(tab.match(/weather/)) { $('.tabtrigger').offscreentabs('activateTab', 'weather'); loadContinent(); } updateMenus(tab); updateHeight(); }), 10); } return false; })); }); -->

'); } else { var query = elem.find('.keywords').html(); $.ajax({ context: elem, url: 'https://wn.com/api/upge/cheetah-search-adv/video', cache: true, data: { 'query': query }, dataType: 'jsonp', success: function(text) { if (text.length > 0) { video_id = text[0].id; elem.find('.player').html(''); } } }); } } var stopAllYouTubeVideos = function() { var iframes = document.querySelectorAll('iframe'); Array.prototype.forEach.call(iframes, function(iframe) { iframe.contentWindow.postMessage(JSON.stringify({ event: 'command', func: 'pauseVideo' }), '*'); }); } jQuery(function() { jQuery(".playVideo").live("click", function() { if(!$(this).hasClass("played")){ stopAllYouTubeVideos(); var elem = $(this); setTimeout(function(){ mouseOverMe(elem); }, 1000); } }); jQuery(".description_box .expandContent").live("click", function() { elem = $(this).parent().parent().parent().find('.descContent'); if(elem.height() > 51) { elem.css('height', '44px'); $(this).html('Show More '); }else{ elem.css('height', 'auto'); $(this).html('Hide '); } }); jQuery('.interview-play-off').click(function() { $(".interview-play-off").hide(); $(".interview-play").show(); $(".videoplayer-control-pause").click(); }); jQuery(".video-desc .show_author_videos").live("click", function() { query = $(this).attr('title'); container = $(this).parent().parent().parent().find('.video-author-thumbs'); $(this).parent().parent().parent().find('.video-author-thumbs').css('height', '220px'); jQuery.ajax({ url: '/api/upge/cheetah-photo-search/videoresults', data: {'query': query}, success: function(text) { if(!text) { text = i18n("No results"); } container.html(jQuery(text)); } }); }); }); // -->

Latest News for: saving face (2004 film)

Edit

The comeback queen: actor Joan Chen on self-doubt, success, savagings – and a second chance at 63

The Observer 01 Aug 2024
Joan Chen is talking about her busier-than-ever work schedule, her face lit up with excitement, when she mentions being “in the winter of my career”. After decades in the film industry, she sees this as the final chapter ... In 2004’s Saving Face.
Edit

25 Asian American women film and TV directors to know about

North Shore News 22 May 2023
The software engineer turned filmmaker's much-lauded first feature film came out in 2004, "Saving Face," which she also wrote, about the tense relationship between a traditional Chinese ...
Edit

Alice Wu

Dothan Eagle 18 May 2023
... "Saving Face," which she also wrote, about ....
  • 1

Most Viewed

×