Yes, it does go in the release notes.
There is an open bug number for this LPP-5242 that Max will resolve against Freya, as well as trunk.

Thanks,
Amy

On Thu, Feb 14, 2008 at 10:55 AM, Lou Iorio wrote:

Does this go in the 4.0.10 release notes?

Lou

On Feb 14, 2008, at 11:41 AM, Amy Muntz wrote:

Agreed. Please check it in to freya/pagan as well.
Thanks,
Amy

On Wed, Feb 13, 2008 at 9:15 PM, Max Carlson < [EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]> > wrote:
I suggest merging this to freya/pagan.
--
Regards,
Max Carlson
OpenLaszlo.org

Author: max
Date: 2008-02-13 17:33:32 -0800 (Wed, 13 Feb 2008)
New Revision: 8021

Modified:
  openlaszlo/trunk/demos/youtube/youtube.jsp
  openlaszlo/trunk/demos/youtube/youtube.lzx
Log:
Change 20080213-maxcarlson-o by [EMAIL PROTECTED] on 2008-02-13 15:13:18 PST
   in /Users/maxcarlson/openlaszlo/trunk
for http://svn.openlaszlo.org/openlaszlo/trunk <http://svn.openlaszlo.org/openlaszlo/trunk>

Summary: Fix youtube video loading, for real this time!

New Features:

Bugs Fixed: LPP-5424 - YouTube demo is broken, clicking on picture does not load video

Technical Reviewer: promanik
QA Reviewer: mkratt
Doc Reviewer: (pending)

Documentation:

Release Notes:

Details: youtube.jsp - Parse out Location header from different URL - totally bulletproof now.

youtube.lzx - Proxied loads are no longer supported/required!

Tests: Any video will play in youtube.lzx now.


Modified: openlaszlo/trunk/demos/youtube/youtube.jsp
===================================================================
--- openlaszlo/trunk/demos/youtube/youtube.jsp 2008-02-14 00:40:55 UTC (rev 8020) +++ openlaszlo/trunk/demos/youtube/youtube.jsp 2008-02-14 01:33:32 UTC (rev 8021)
@@ -11,7 +11,7 @@
 <%!

/* X_LZ_COPYRIGHT_BEGIN **************************************************** - * Copyright 2007 Laszlo Systems, Inc. All Rights Reserved. * + * Copyright 2007, 2008 Laszlo Systems, Inc. All Rights Reserved. * * Use is subject to license terms. * * X_LZ_COPYRIGHT_END ******************************************************/

@@ -199,18 +199,22 @@
        Document result)
    {
        String pageUrl =
- " http://www.YouTube.com/watch?v= <http://www.youtube.com/watch?v=> ";
-        pageUrl += id;
+ " http://www.youtube.com/v/ <http://www.youtube.com/v/> " + id;

-        BufferedReader inputFile = null;
+ // Based on http://www.jeroenwijering.com/?thread=5484#msg50818 <http://www.jeroenwijering.com/?thread=5484#msg50818>
+        // Get Location header and parse strings from that...
+        String redirURL = null;
        try {
            URL u = new URL(pageUrl);
-            inputFile =
-                new BufferedReader(
-                    new InputStreamReader(
-                        u.openStream()));
+ HttpURLConnection redir = (java.net.HttpURLConnection)u.openConnection();
+            redir.setFollowRedirects(false);
+            redir.connect();
+            redirURL = redir.getHeaderField("Location");
+            if (redirURL == null) {
+                throw new Exception("No Location header found");
+            }
        } catch (Exception e) {
-            reportError("Could not load url.", result);
+ reportError("Could not load url " + redirURL + ": " + e.toString(), result);
            return;
        } // try

@@ -219,57 +223,34 @@

        String videoId = "";
        String tId = "";
-        while (true) {
-            String line = null;

-            try {
-                line = inputFile.readLine();
-            } catch (IOException e) {
-                line = null;
-            }
-
-            if (line == null) {
-                break;
-            }
-
-            int start =
-                line.indexOf("swfArgs");
-            if (start == -1) {
-                continue;
-            } else {
-                // Extract the video_id from the args line
- Pattern vidpat = Pattern.compile("video_id:'[\\w\\d]+'?");
-                Pattern tpat = Pattern.compile("t:'[\\w\\d]+'?");
-                Matcher vidmatcher = vidpat.matcher(line);
-                Matcher tmatcher = tpat.matcher(line);
-                if ( vidmatcher.find() ) {
- videoId = (line.substring(vidmatcher.start(), vidmatcher.end())); - videoId = videoId.substring(10, videoId.length()-1);
-                } else {
- reportError("video_id argument not found in HTML page", result);
-                    return;
-                }
-                if ( tmatcher.find() ) {
- tId = (line.substring(tmatcher.start(), tmatcher.end()));
-                    tId = tId.substring(3, tId.length()-1);
-                } else {
- reportError("t argument not found in HTML page", result);
-                    return;
-                }
-            }
-
-            String url =
- " http://www.youtube.com/get_video?video_id= <http://www.youtube.com/get_video?video_id=> " + videoId + "&t=" + tId;
-
-            resultEl.setAttribute("id", videoId);
-            resultEl.setAttribute("t", tId);
-            resultEl.setAttribute("url", url);
-            result.setRootElement(resultEl);
-
+        // Extract the video_id and t fields from
+        Pattern vidpat = Pattern.compile("video_id=[\\w\\d]+'?");
+        Pattern tpat = Pattern.compile("t=[\\w\\d\\-]+'?");
+        Matcher vidmatcher = vidpat.matcher(redirURL);
+        Matcher tmatcher = tpat.matcher(redirURL);
+        if ( vidmatcher.find() ) {
+ videoId = (redirURL.substring(vidmatcher.start(), vidmatcher.end()));
+            videoId = videoId.substring(9, videoId.length());
+        } else {
+ reportError("video_id argument not found in HTML page", result);
            return;
        }
+        if ( tmatcher.find() ) {
+ tId = (redirURL.substring(tmatcher.start(), tmatcher.end()));
+            tId = tId.substring(2, tId.length());
+        } else {
+            reportError("t argument not found in URL", result);
+            return;
+        }

- reportError("Could not find SWFObject at url " + pageUrl, result);
+        String url =
+ " http://www.youtube.com/get_video?video_id= <http://www.youtube.com/get_video?video_id=> " + videoId + "&t=" + tId;
+
+        resultEl.setAttribute("id", videoId);
+        resultEl.setAttribute("t", tId);
+        resultEl.setAttribute("url", url);
+        result.setRootElement(resultEl);
    }


Modified: openlaszlo/trunk/demos/youtube/youtube.lzx
===================================================================
--- openlaszlo/trunk/demos/youtube/youtube.lzx 2008-02-14 00:40:55 UTC (rev 8020) +++ openlaszlo/trunk/demos/youtube/youtube.lzx 2008-02-14 01:33:32 UTC (rev 8021)
@@ -1,5 +1,5 @@
<!-- X_LZ_COPYRIGHT_BEGIN ************************************************ -* Copyright 2007 Laszlo Systems, Inc. All Rights Reserved. * +* Copyright 2007, 2008 Laszlo Systems, Inc. All Rights Reserved. * * Use is subject to license terms. * * X_LZ_COPYRIGHT_END ************************************************** -->

@@ -7,7 +7,6 @@
 <canvas
  width="100%"
  height="100%"
-  proxied="true"
 >

    <include href="av/videoutils.lzx"/>

_______________________________________________
Laszlo-checkins mailing list
[EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>
http://www.openlaszlo.org/mailman/listinfo/laszlo-checkins <http://www.openlaszlo.org/mailman/listinfo/laszlo-checkins>

 <http://www.openlaszlo.org/mailman/listinfo/laszlo-checkins>

Reply via email to