fvm 0.1.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,44 @@
1
+ require 'pathname'
2
+
3
+ module Fvm
4
+ module CLI
5
+ class Linker
6
+
7
+ attr_reader :dir, :executables
8
+ def initialize( dir, executables )
9
+ @dir = Pathname.new( dir ).expand_path
10
+ @executables = executables
11
+ end
12
+
13
+ def files( src )
14
+ Dir[ File.join( src, '*' ) ].select { |name| executables.include? File.basename( name ) }
15
+ end
16
+
17
+ def link( src )
18
+ files( src ).each do |file|
19
+ Dir.chdir dir do
20
+ # thanks, homebrew!
21
+ rv = system 'ln', '-sf', file
22
+ unless rv and $? == 0
23
+ raise <<-EOS.undent
24
+ Could not create symlink to #{file.to_s}.
25
+ Check that you have permissions on #{dir}.
26
+ EOS
27
+ end
28
+ end
29
+ end
30
+ end
31
+
32
+ def unlink!
33
+ files( dir ).each { |file| File.delete file }
34
+ end
35
+
36
+ protected
37
+
38
+ def path_to( file )
39
+ Pathname.new( file ).relative_path_from( Pathname.new( dir ) )
40
+ end
41
+
42
+ end
43
+ end
44
+ end
@@ -0,0 +1,102 @@
1
+ require 'highline'
2
+ require 'active_support/ordered_hash'
3
+
4
+ module Fvm
5
+ module CLI
6
+ class Shell
7
+ =begin rdoc
8
+ Chooses a build from a set of builds
9
+ =end
10
+ def choose( builds )
11
+
12
+ builds = ActiveSupport::OrderedHash[ builds.sort.reverse.map { |b| [ b.to_menu, b ] } ]
13
+
14
+ highline.choose do |m|
15
+
16
+ m.choices *builds.keys do |choice|
17
+
18
+ builds[ choice ]
19
+
20
+ end
21
+ end
22
+ end
23
+ =begin rdoc
24
+ Outputs a list of all builds in the set
25
+ =end
26
+ def list( builds )
27
+ builds.sort.reverse.each do |build|
28
+ puts build.to_menu
29
+ end
30
+ end
31
+ =begin rdoc
32
+ Asks the user if they agree to the MPL terms
33
+ =end
34
+ def mpl?
35
+ highline.say license
36
+ highline.agree agreement
37
+ end
38
+ =begin rdoc
39
+ Exit with the specified message
40
+ =end
41
+ def exit( message )
42
+ highline.say message
43
+ Kernel.exit 1
44
+ end
45
+ =begin rdoc
46
+ Give mad props to the user
47
+ =end
48
+ def props( message )
49
+ highline.say "<%= color( '#{message}', GREEN, BOLD )%>"
50
+ end
51
+ =begin rdoc
52
+ For the time being, the user must manually re-set $FLEX_HOME. Warn them!
53
+ =end
54
+ def warn_restart!
55
+ highline.say "<%= color( 'You have changed the Flex SDK version. Please run `fvm-restart` to re-set $FLEX_HOME.', RED )%>"
56
+ end
57
+
58
+ protected
59
+ =begin rdoc
60
+ The HighLine instance for this shell wrapper
61
+ =end
62
+ def highline
63
+ @highline ||= HighLine.new
64
+ end
65
+
66
+ =begin rdoc
67
+ EULA license text from the Open Source SDK download page.
68
+ =end
69
+ def license
70
+ <<-EOS
71
+ <%= color( 'License', :bold )%>
72
+
73
+ <%= color( 'Mozilla Public License Files:', :underline ) %>
74
+
75
+ The contents of the files contained in this Flex SDK download are subject to the Mozilla Public License Version 1.1 (the "License"); you may not use these files except in compliance with the License. You may obtain a copy of the License here: <%= color( '#{license_url}', :underline ) %>
76
+
77
+ Software distributed under the License is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for the specific language governing rights and limitations under the License.
78
+
79
+ The Original Code consists of the files listed above.
80
+
81
+ The Initial Developer of the Original Code is Adobe Systems Incorporated.
82
+
83
+ By downloading, modifying, distributing, using and/or accessing any files in this Flex SDK, you agree to the terms and conditions of the applicable end user license agreement.
84
+
85
+ EOS
86
+ end
87
+ =begin rdoc
88
+ URL for the mozilla MPL license
89
+ =end
90
+ def license_url
91
+ "http:/www.mozilla.org/MPL/"
92
+ end
93
+ =begin rdoc
94
+ License agreement statement
95
+ =end
96
+ def agreement
97
+ "I have read the License Agreement(s), and by downloading the software, I agree to the terms of the agreement (yes|no):"
98
+ end
99
+
100
+ end
101
+ end
102
+ end
@@ -0,0 +1,66 @@
1
+ require 'thor'
2
+
3
+ module Fvm
4
+ module CLI
5
+ class Thor < Thor
6
+ =begin rdoc
7
+ See Fvm::CLI::Driver#install
8
+ =end
9
+ desc 'install', 'Installs the specified Flex SDK'
10
+ method_options %w| version -v | => :string, %w| sdk -s | => :string
11
+ def install
12
+ driver.install options
13
+ end
14
+ =begin rdoc
15
+ See Fvm::CLI::Driver#use
16
+ =end
17
+ desc 'use', 'Create symlinks to an existing Flex SDK installation'
18
+ def use
19
+ driver.use
20
+ end
21
+ =begin rdoc
22
+ See Fvm::CLI::Driver#list
23
+ =end
24
+ desc 'list', 'List available installed or remote Flex SDK builds'
25
+ method_options %w| remote -r | => :boolean
26
+ def list
27
+ driver.list options
28
+ end
29
+ =begin rdoc
30
+ See Fvm::CLI::Driver#unlink
31
+ =end
32
+ desc 'unlink', 'Unlinks all symlinks to the current Flex SDK'
33
+ def unlink
34
+ driver.unlink
35
+ end
36
+ =begin rdoc
37
+ See Fvm::CLI::Driver#which
38
+ =end
39
+ desc 'which', 'Prints the currently-linked Flex SDK version, if any'
40
+ def which
41
+ driver.which
42
+ end
43
+ =begin rdoc
44
+ See Fvm::CLI::Driver#home
45
+ =end
46
+ desc 'home', 'Prints the current home of the Flex SDK, if any'
47
+ def home
48
+ driver.home
49
+ end
50
+ =begin rdoc
51
+ See Fvm::CLI::Driver#restart
52
+ =end
53
+ desc 'restart', 'Prints the location of the fvm-restart script'
54
+ def restart
55
+ driver.restart
56
+ end
57
+
58
+ protected
59
+
60
+ def driver
61
+ @driver ||= Driver.new
62
+ end
63
+
64
+ end
65
+ end
66
+ end
@@ -0,0 +1,43 @@
1
+ require 'nokogiri'
2
+ require 'cgi'
3
+
4
+ module Fvm
5
+ =begin rdoc
6
+ Provides methods to manipulate the markup of a Flex SDK download page into usable data
7
+ =end
8
+ class Manipulator
9
+ =begin rdoc
10
+ Formats the title node of a table
11
+ =end
12
+ def title( node )
13
+ node.text.strip
14
+ end
15
+ =begin rdoc
16
+ Formats a table into an array of hashes (rows)
17
+ =end
18
+ def table( node )
19
+ rows( node ).map { |row| Hash[ headers( node ).zip( row ).sort ] }
20
+ end
21
+ =begin rdoc
22
+ Formats table header nodes into an array
23
+ =end
24
+ def headers( node )
25
+ node.xpath( 'table/tbody/tr/th' ).map( &:text ).map( &:strip )
26
+ end
27
+ =begin rdoc
28
+ Formats table rows into an associative array
29
+ =end
30
+ def rows( node )
31
+ node.xpath( 'table/tbody/tr[td]' ).map { |row| row.xpath( 'td' ).map { |node| text_or_link node } }
32
+ end
33
+
34
+ protected
35
+ =begin rdoc
36
+ Decides whether a table cell is a text or link. If it is a link, it is html-escaped.
37
+ =end
38
+ def text_or_link( node )
39
+ node.at( 'a' ).nil? ? node.text.strip : CGI.escapeHTML( node.at( 'a' )[ 'href' ] )
40
+ end
41
+
42
+ end
43
+ end
@@ -0,0 +1,57 @@
1
+ require 'nokogiri'
2
+
3
+ module Fvm
4
+ =begin rdoc
5
+ Provides methods for parsing a Flex SDK download page into usable data structures.
6
+ At the moment, Flex SDK download pages list all table headers and bodies in-line
7
+ as siblings so there is no association between a given table's header and body
8
+ except that they are in-order. For the time being, this parser rests on
9
+ this assumption.
10
+ =end
11
+ class Parser
12
+ =begin rdoc
13
+ The xpath for table headers
14
+ =end
15
+ HEADER_XPATH = '//h3'
16
+ =begin rdoc
17
+ The xpath for table bodies
18
+ =end
19
+ TABLE_XPATH = '//div[@class="table-wrap"]'
20
+ =begin rdoc
21
+ Parses a Flex SDK download page into a hash
22
+ =end
23
+ def parse( page )
24
+ { }.tap do |result|
25
+ sections_for( page ).each do |title, table|
26
+ result[ format.title title ] = format.table table
27
+ end
28
+ end
29
+ end
30
+
31
+ protected
32
+ =begin rdoc
33
+ The manipulator for this parser
34
+ =end
35
+ def format
36
+ @format ||= Manipulator.new
37
+ end
38
+ =begin rdoc
39
+ Zips up table titles with their tables
40
+ =end
41
+ def sections_for( page )
42
+ titles_for( page ).zip( tables_for( page ) )
43
+ end
44
+ =begin rdoc
45
+ Finds all table titles in order
46
+ =end
47
+ def titles_for( page )
48
+ page.xpath( HEADER_XPATH )
49
+ end
50
+ =begin rdoc
51
+ Finds all tables in order
52
+ =end
53
+ def tables_for( page )
54
+ page.xpath( TABLE_XPATH )
55
+ end
56
+ end
57
+ end
@@ -0,0 +1,6 @@
1
+ module Fvm
2
+ =begin rdoc
3
+ The version of this gem
4
+ =end
5
+ VERSION = '0.1.4'
6
+ end
@@ -0,0 +1,9 @@
1
+ #!/usr/bin/env bash
2
+
3
+ # this resets the FLEX_HOME environment variable
4
+ # to the current version of the sdk linked to by fvm
5
+ export FLEX_HOME="$(fvm home)"
6
+
7
+ # this sets the alias for this command after being run
8
+ # from a bash init script
9
+ alias fvm-restart="source $(fvm restart)"
@@ -0,0 +1,851 @@
1
+ <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
2
+ <html>
3
+ <head>
4
+ <title>download - Flex SDK - Adobe Open Source</title>
5
+
6
+
7
+
8
+
9
+
10
+
11
+
12
+
13
+
14
+
15
+ <!-- Deprecated since 3.4. To be removed in a future version of Confluence; use AJS.Confluence.getContextPath() -->
16
+ <meta id="confluence-context-path" name="confluence-context-path" content="/wiki">
17
+ <meta name="ajs-context-path" content="/wiki">
18
+ <meta name="ajs-build-number" content="2029">
19
+ <meta id="atlassian-token" name="atlassian-token" content="55fac1994b0c3b4401d268b3a3b3c8829a2eb39b">
20
+ <meta id="confluence-space-key" name="confluence-space-key" content="flexsdk">
21
+ <meta name="ajs-remote-user" content="">
22
+ <meta name="ajs-static-resource-url-prefix" content="/wiki/s/2029/3/_">
23
+
24
+ <script type="text/javascript">
25
+ // Deprecated global variables. To be removed in a future version of Confluence.
26
+ var contextPath = '/wiki';
27
+ </script>
28
+
29
+
30
+
31
+ <!-- include system css resources -->
32
+ <link type="text/css" rel="stylesheet" href="/wiki/s/2029/3/1/_/download/superbatch/css/batch.css" media="all">
33
+ <!--[if IE]>
34
+ <link type="text/css" rel="stylesheet" href="/wiki/s/2029/3/1/_/download/superbatch/css/batch.css?ieonly=true" media="all">
35
+ <![endif]-->
36
+ <link type="text/css" rel="stylesheet" href="/wiki/s/2029/3/1/_/download/superbatch/css/batch.css?media=print" media="print">
37
+ <link type="text/css" rel="stylesheet" href="/wiki/s/2029/3/1.0/_/download/batch/confluence.web.resources:view-comment/confluence.web.resources:view-comment.css" media="all">
38
+ <!--[if IE]>
39
+ <link type="text/css" rel="stylesheet" href="/wiki/s/2029/3/1.0/_/download/batch/confluence.web.resources:view-comment/confluence.web.resources:view-comment.css?ieonly=true" media="all">
40
+ <![endif]-->
41
+ <link type="text/css" rel="stylesheet" href="/wiki/s/2029/3/1.12/_/download/batch/confluence.macros.advanced:fancy-box/confluence.macros.advanced:fancy-box.css" media="all">
42
+ <link type="text/css" rel="stylesheet" href="/wiki/s/2029/3/1.0.8/_/download/batch/com.atlassian.confluence.plugins.drag-and-drop:support/com.atlassian.confluence.plugins.drag-and-drop:support.css" media="all">
43
+ <link type="text/css" rel="stylesheet" href="/wiki/s/2029/3/0.7/_/download/batch/com.atlassian.plugins.shortcuts.atlassian-shortcuts-module:shortcuts/com.atlassian.plugins.shortcuts.atlassian-shortcuts-module:shortcuts.css" media="all">
44
+ <link type="text/css" rel="stylesheet" href="/wiki/s/2029/3/3.4/_/download/batch/com.atlassian.confluence.keyboardshortcuts:confluence-keyboard-shortcuts/com.atlassian.confluence.keyboardshortcuts:confluence-keyboard-shortcuts.css" media="all">
45
+ <link type="text/css" rel="stylesheet" href="/wiki/s/2029/3/3.0.1/_/download/batch/com.adobe.confluence.plugins:adobe-js/com.adobe.confluence.plugins:adobe-js.css" media="all">
46
+
47
+ <!-- end system css resources -->
48
+
49
+ <link rel="stylesheet" href="/wiki/s/2029/3/4/_/styles/combined.css?spaceKey=flexsdk" type="text/css">
50
+
51
+ <meta name="confluence-request-time" content="1298057450885">
52
+
53
+ <meta name="loggedInUsername" content="">
54
+ <meta name="ajs-keyboardshortcut-hash" content="b75da4e55184471b0619ae3800225691">
55
+ <!-- Deprecated since 3.4. To be removed in a future version of Confluence; use atl.header -->
56
+ <meta name="ajs-use-keyboard-shortcuts" content="true">
57
+
58
+ <link rel="shortcut icon" href="/wiki/favicon.ico">
59
+ <link rel="icon" type="image/png" href="/wiki/s/2029/3/_/images/logo/confluence_16.png">
60
+
61
+ <link rel="search" type="application/opensearchdescription+xml" href="/wiki/opensearch/osd.action" title="Adobe Open Source"/>
62
+
63
+ <!-- include system javascript resources -->
64
+
65
+
66
+ <script type="text/javascript" src="/wiki/s/2029/3/1/_/download/superbatch/js/batch.js" ></script>
67
+ <script type="text/javascript" src="/wiki/s/2029/3/1.12/_/download/batch/confluence.macros.advanced:fancy-box/confluence.macros.advanced:fancy-box.js" ></script>
68
+ <script type="text/javascript" src="/wiki/s/2029/3/1.12/_/download/batch/confluence.macros.advanced:thumbnail-images/confluence.macros.advanced:thumbnail-images.js" ></script>
69
+ <script type="text/javascript" src="/wiki/s/2029/3/1.0.8/_/download/batch/com.atlassian.confluence.plugins.drag-and-drop:support/com.atlassian.confluence.plugins.drag-and-drop:support.js" ></script>
70
+ <script type="text/javascript" src="/wiki/s/2029/3/1.0.8/_/download/batch/com.atlassian.confluence.plugins.drag-and-drop:drag-and-drop-for-view-content/com.atlassian.confluence.plugins.drag-and-drop:drag-and-drop-for-view-content.js" ></script>
71
+ <script type="text/javascript" src="/wiki/s/2029/3/1.4/_/download/batch/com.atlassian.confluence.plugins.doctheme:splitter/com.atlassian.confluence.plugins.doctheme:splitter.js" ></script>
72
+ <script type="text/javascript" src="/wiki/s/2029/3/0.7/_/download/batch/com.atlassian.plugins.shortcuts.atlassian-shortcuts-module:shortcuts/com.atlassian.plugins.shortcuts.atlassian-shortcuts-module:shortcuts.js" ></script>
73
+ <script type="text/javascript" src="/wiki/s/2029/3/3.4/_/download/batch/com.atlassian.confluence.keyboardshortcuts:confluence-keyboard-shortcuts/com.atlassian.confluence.keyboardshortcuts:confluence-keyboard-shortcuts.js" ></script>
74
+ <script type="text/javascript" src="/wiki/s/2029/3/1.0/_/download/batch/legacy.confluence.web.resources:prototype/legacy.confluence.web.resources:prototype.js" ></script>
75
+ <script type="text/javascript" src="/wiki/s/2029/3/3.0.1/_/download/batch/com.adobe.confluence.plugins:adobe-js/com.adobe.confluence.plugins:adobe-js.js" ></script>
76
+
77
+
78
+ <!-- end system javascript resources -->
79
+
80
+
81
+
82
+
83
+ <link rel="canonical" href="http://opensource.adobe.com/wiki/display/flexsdk/download">
84
+ <link rel="shortlink" href="http://opensource.adobe.com/wiki/x/4wC_Ag">
85
+ <meta name="wikilink" content="[flexsdk:download]">
86
+
87
+ </head>
88
+
89
+ <body onload="placeFocus()"
90
+ id="com-atlassian-confluence" class="theme ">
91
+ <ul id="assistive-skip-links" class="assistive">
92
+ <li><a href="#title-heading">Skip to content</a></li>
93
+ <li><a href="#breadcrumbs">Skip to breadcrumbs</a></li>
94
+ <li><a href="#header-menu-bar">Skip to header menu</a></li>
95
+ <li><a href="#navigation">Skip to action menu</a></li>
96
+ <li><a href="#quick-search-query">Skip to quick search</a></li>
97
+ </ul>
98
+ <div id="page">
99
+ <div id="full-height-container">
100
+ <div id="adobe-wrapper" class="fixed-width">
101
+
102
+
103
+ <fieldset class="hidden parameters">
104
+ <input type="hidden" id="statusDialogHeading" value="What are you working on?">
105
+ <input type="hidden" id="statusDialogAccessibilityLabel" value="Enter your status (140 character limit)">
106
+ <input type="hidden" id="statusDialogLatestLabel" value="Last update:">
107
+ <input type="hidden" id="statusDialogUpdateButtonLabel" value="Update">
108
+ <input type="hidden" id="statusDialogCancelButtonLabel" value="Cancel">
109
+ </fieldset>
110
+
111
+ <fieldset class="hidden parameters">
112
+ <input type="hidden" id="globalSettingsAttachmentMaxSize" value="10485760">
113
+ <input type="hidden" id="userLocale" value="en_GB">
114
+ <input type="hidden" id="staticResourceUrlPrefix" value="/wiki/s/2029/3/_">
115
+ <input type="hidden" id="contextPath" value="/wiki">
116
+ </fieldset>
117
+
118
+
119
+ <div id="adobe-header">
120
+ <div id="header-top">
121
+ <div id="header-top-left">
122
+ <img src="/wiki/download/resources/com.adobe.confluence.plugins:theme/images/logo_adobe.gif" width="52" height="80"/>
123
+ </div>
124
+ <div id="header-top-middle">
125
+ <div id="headertitle"><span class="adobetitle-red"><a href="/wiki/display/site/Home">Adobe <font color="#FFFFFF">Open Source</font></a></span></div>
126
+ </div>
127
+ <div id="header-top-right">
128
+ <div id="header-top-right-links">
129
+ <span class="whitelinedlinks"><a href="http://www.adobe.com" target="_blank" style="color: #FFFFFF">Adobe.com Home</a> <span class="whitepipe">|</span> <a href="http://www.adobe.com/devnet/" target="_blank" style="color: #FFFFFF">Developer Connection</a></span>
130
+ </div>
131
+ <div id="header-top-right-search">
132
+ <form name="supportform" method="get" onSubmit="return validateSearchForm('supportform', 'term');" action="http://community.adobe.com/help/search.html" target="_top" style="margin-bottom: 0px;">
133
+ <input type="hidden" name="sitesection" value="opensource"/>
134
+ <span class="searchfield">
135
+ <input type="text" name="q" id="q" width="189" style="position: relative; top: -8px;"/>&nbsp
136
+ <input class="submit" name="go" src="/wiki/download/resources/com.adobe.confluence.plugins:theme/images/go_btn.gif" type="image" width="35" height="24" alt="Go" />
137
+ </span>
138
+ </form>
139
+ </div>
140
+ </div>
141
+ </div>
142
+ <div id="header-bottom">
143
+ <div id="header-bottom-left">
144
+ <span class="topmainlinks"><a href="http://www.adobe.com/go/opensource_gnav_home" style="color: #FFFFFF" onmouseover="this.style.color='#000000'" onmouseout="this.style.color='#FFFFFF'">Home</a></span>&nbsp;&nbsp; &nbsp;
145
+ <span class="topmainlinks"><a href="http://www.adobe.com/go/opensource_gnav_projects" style="color: #FFFFFF" onmouseover="this.style.color='#000000'" onmouseout="this.style.color='#FFFFFF'">Projects</a></span>&nbsp;&nbsp; &nbsp;
146
+ <span class="topmainlinks"><a href="http://www.adobe.com/go/opensource_gnav_source" style="color: #FFFFFF" onmouseover="this.style.color='#000000'" onmouseout="this.style.color='#FFFFFF'">Source</a></span>&nbsp;&nbsp; &nbsp;
147
+ <span class="topmainlinks"><a href="http://www.adobe.com/go/opensource_gnav_documentation" style="color: #FFFFFF" onmouseover="this.style.color='#000000'" onmouseout="this.style.color='#FFFFFF'">Documentation</a></span>&nbsp;&nbsp; &nbsp;
148
+ <span class="topmainlinks"><a href="http://www.adobe.com/go/opensource_gnav_forums" style="color: #FFFFFF" onmouseover="this.style.color='#000000'" onmouseout="this.style.color='#FFFFFF'">Forums</a></span>&nbsp;&nbsp;&nbsp;
149
+ <span class="topmainlinks"><a href="http://www.adobe.com/go/opensource_gnav_about" style="color: #FFFFFF" onmouseover="this.style.color='#000000'" onmouseout="this.style.color='#FFFFFF'">About</a></span>
150
+ </div>
151
+ <div id="header-bottom-right">
152
+ <span class="whitelinedlinks topheader adobetitle-white">Welcome Guest | <a href="https://www.adobe.com/cfusion/entitlement/index.cfm?e=ca&returnurl=http%3A%2F%2Fopensource.adobe.com%2Fwiki%2Fdisplay%2Fflexsdk%2Fdownload%3Fbuild%3D4.1.0.16076%26pkgtype%3D2%26release%3D4&os_destination=%2Fdisplay%2Fflexsdk%2Fdownload%3Fbuild%3D4.1.0.16076%26pkgtype%3D2%26release%3D4" style="color: #FFFFFF">Sign In</a></span>
153
+
154
+ </div>
155
+ </div>
156
+ </div>
157
+
158
+
159
+ <div id="content-wrapper">
160
+ <div id="main" >
161
+
162
+
163
+
164
+
165
+
166
+
167
+
168
+ <div id="content" class="page view">
169
+
170
+
171
+
172
+
173
+ <fieldset id="link-to-page-fields" class="hidden parameters">
174
+ <input type="hidden" id="linkToThisPageHeading" value="Link to this Page">
175
+ <input type="hidden" id="linkToThisPageLink" value="Link">
176
+ <input type="hidden" id="linkToThisPageTinyLink" value="Tiny Link">
177
+ <input type="hidden" id="linkToThisPageWikiMarkup" value="Wiki Markup">
178
+ <input type="hidden" id="linkToThisPageClose" value="Close">
179
+ </fieldset>
180
+ <fieldset class="hidden parameters">
181
+ <input type="hidden" title="movePageDialogViewPageTitle" value="Move Page &ndash; &#8216;download&#8217;">
182
+ <input type="hidden" title="movePageDialogEditPageTitle" value="Set Page Location">
183
+ <input type="hidden" title="movePageDialogMoveButton" value="Move">
184
+ <input type="hidden" title="movePageDialogOkButton" value="OK">
185
+ <input type="hidden" title="movePageDialogCancelButton" value="Cancel">
186
+ <input type="hidden" title="movePageDialogBrowsePanelTip" value="Click to select the new parent page for this page and its children.">
187
+ <input type="hidden" title="movePageDialogSearchPanel" value="Search">
188
+ <input type="hidden" title="movePageDialogHistoryPanel" value="Recently Viewed">
189
+ <input type="hidden" title="movePageDialogHistoryNoResults" value="There were no recently viewed pages found.">
190
+ <input type="hidden" title="movePageDialogLocationPanel" value="Known Location">
191
+ <input type="hidden" title="movePageDialogLocationNotFound" value="The specified page was not found.">
192
+ <input type="hidden" title="movePageDialogBrowsePanel" value="Browse">
193
+ <input type="hidden" title="movePageDialogPanelLoadErrorMsg" value="Error reading the panel content from the server.">
194
+ <input type="hidden" title="movePageDialogPanelLoadErrorTip" value="You could try reloading the page and launching the dialog again.">
195
+ <input type="hidden" title="movePageDialogPanelLoadErrorStatus" value="HTTP Status">
196
+ <input type="hidden" title="movePageDialogNoSelectionErrorMsg" value="You must make a selection in the tree before you can move the page.">
197
+ <input type="hidden" title="movePageDialogSearchError" value="Failed to retrieve search results from the server.">
198
+ <input type="hidden" title="movePageDialogSearchNoResults" value="There were no pages found containing <b>{0}</b>.">
199
+ <input type="hidden" title="movePageDialogSearchResultCount" value="Showing <b>{0}</b>-<b>{1}</b> of <b>{2}</b> pages containing <b>{3}</b>.">
200
+ <input type="hidden" title="movePageDialogMoveFailed" value="Move failed. There was a problem contacting the server.">
201
+ <input type="hidden" title="movePageDialogCannotChangeSpace" value="You cannot move this page to another space because you do not have permission to remove it from this space.">
202
+ <input type="hidden" title="pageTitle" value="download"/>
203
+ <input type="hidden" title="parentPageTitle" value=""/>
204
+ <input type="hidden" title="fromPageTitle" value=""/>
205
+ <input type="hidden" title="spaceKey" value="flexsdk"/>
206
+ <input type="hidden" title="spaceName" value="Flex SDK"/>
207
+ <input type="hidden" title="movePageDialogInvalidLocation" value="You cannot move a page to be underneath itself or its children."/>
208
+ <input type="hidden" title="movePageDialogOrderingTitle" value="Page Ordering"/>
209
+ <input type="hidden" title="movePageDialogBackButton" value="Back"/>
210
+ <input type="hidden" title="movePageDialogMoveAndOrderButton" value="Reorder"/>
211
+ <input type="hidden" title="movePageDialogNextButton" value="Move"/>
212
+ </fieldset>
213
+
214
+ <script type="text/x-template" title="movePageDialog">
215
+ <div class="row information">
216
+ <div class="inner">
217
+ <div class="element">
218
+ Specify the new parent page for this page and its children by space and title.
219
+ </div>
220
+ </div>
221
+ </div>
222
+ <div class="form">
223
+ <fieldset>
224
+
225
+
226
+ <legend class="assistive"><span>Change the Parent Page to a Known Page</span></legend>
227
+ <div class="row">
228
+ <label for="new-space">New space:</label>
229
+ <div class="value new-space-value">
230
+ <input id="new-space-key" name="new-space-key" type="hidden" value="flexsdk">
231
+ <span class="space-input">
232
+ <input id="new-space" name="new-space" value="Flex SDK" disabled="disabled">
233
+ </span>
234
+ <span class="description warning">You cannot move this page to another space because you do not have permission to remove it from this space.</span>
235
+ <div class="new-space-dropdown aui-dd-parent autocomplete"></div>
236
+ </div>
237
+ </div>
238
+ <div class="row">
239
+ <label for="new-parent-page">New parent page:</label>
240
+ <div class="value new-parent-page-value">
241
+ <span class="page-input">
242
+ <input id="new-parent-page" name="new-parent-page" value="">
243
+ </span>
244
+ <span class="description">Start typing a page title to see a list of suggestions.</span>
245
+ <div class="new-parent-page-dropdown aui-dd-parent autocomplete"></div>
246
+ </div>
247
+ </div>
248
+ </fieldset>
249
+ </div>
250
+ <div class="location-info">
251
+ <div class="row">
252
+ <label>Current location:</label>
253
+ <div class="value breadcrumbs-container">
254
+ <div class="breadcrumbs-line">
255
+ <ul id="current-parent-breadcrumbs" class="breadcrumbs">
256
+ </ul>
257
+ </div>
258
+ </div>
259
+ </div>
260
+ <div class="row">
261
+ <label>New location:</label>
262
+ <div class="value breadcrumbs-container">
263
+ <div class="breadcrumbs-line">
264
+ <ul id="new-parent-breadcrumbs" class="breadcrumbs">
265
+ </ul>
266
+ </div>
267
+ </div>
268
+ </div>
269
+ </div>
270
+ </script>
271
+ <script type="text/x-template" title="movePageErrors">
272
+ <div id="move-errors" class="hidden warning"></div>
273
+ </script>
274
+ <script type="text/x-template" title="movePageBreadcrumb">
275
+ <li><a class="{2}" title="{3}" tabindex="-1"><span>{0}</span></a></li>
276
+ </script>
277
+ <script type="text/x-template" title="movePageBreadcrumbLoading">
278
+ <li class="loading"><span>Loading breadcrumbs&hellip;</span></li>
279
+ </script>
280
+ <script type="text/x-template" title="movePageBreadcrumbError">
281
+ <li class="warning last"><span>Error retrieving breadcrumbs.</span></li>
282
+ </script>
283
+ <script type="text/x-template" title="movePageNoMatchingPages">
284
+ <ol><li><span class="warning">No matching pages found.</span></li></ol>
285
+ </script>
286
+ <script type="text/x-template" title="movePageNoMatchingSpaces">
287
+ <ol><li><span class="warning">No matching spaces found.</span></li></ol>
288
+ </script>
289
+
290
+ <script type="text/x-template" title="movePageSearchPanel">
291
+ <div class="row information">
292
+ <div class="inner">
293
+ <div class="element">
294
+ Search for and select the new parent page for this page and its children.
295
+ </div>
296
+ </div>
297
+ </div>
298
+ <div id="move-page-search-container" class="row">
299
+ <div class="search-form">
300
+ <fieldset>
301
+
302
+
303
+ <legend class="assistive"><span>Search for a New Parent Page</span></legend>
304
+
305
+
306
+ <label for="move-page-search-query" class="assistive">Search keywords</label>
307
+ <input class="search-query" id="move-page-search-query">
308
+
309
+
310
+ <label for="move-page-search-space" class="assistive">Search in space</label>
311
+ <select id="move-page-search-space" class="search-space" disabled="disabled">
312
+ <option value="flexsdk" selected="selected">Flex SDK</option>
313
+ </select>
314
+ <input type="button" value="Search">
315
+ <div class="description warning">You cannot move this page to another space because you do not have permission to remove it from this space.</div>
316
+ </fieldset>
317
+ </div>
318
+ <div class="search-results">
319
+ </div>
320
+ </div>
321
+ </script>
322
+ <script type="text/x-template" title="movePageSearchResultsLoading">
323
+ <div class="searching">Searching…</div>
324
+ </script>
325
+
326
+ <script type="text/x-template" title="movePageHistoryPanel">
327
+ <div class="row information">
328
+ <div class="inner">
329
+ <div class="element">
330
+ Select the new parent page for this page and its children from your history.
331
+ </div>
332
+ </div>
333
+ </div>
334
+ <div id="move-page-search-container" class="row">
335
+ <div class="search-results">
336
+ </div>
337
+ </div>
338
+ </script>
339
+ <script type="text/x-template" title="movePageHistoryLoading">
340
+ <div class="searching">Loading…</div>
341
+ </script>
342
+ <script type="text/x-template" title="movePageBrowsePanel">
343
+ <div class="row information">
344
+ <div class="inner">
345
+ <div class="element">
346
+ Click to select the new parent page for this page and its children.
347
+ </div>
348
+ </div>
349
+ </div>
350
+ <div class="tree"></div>
351
+ </script>
352
+ <script type="text/x-template" title="movePagePanelLoading">
353
+ <span>Loading…</span>
354
+ </script>
355
+ <script type="text/x-template" title="movePageBrowsePanelSpace">
356
+ <ul><li id='tree-root-node-item' class='root-node-list-item'><a class='root-node' href='#'>{0}</a></li></ul>
357
+ </script>
358
+ <script type="text/x-template" title="orderingPagePanel">
359
+ <div id="orderingPlaceHolder"></div>
360
+ </script>
361
+ <script type="text/x-template" title="reorderCheckbox">
362
+ <span id="reorderRequirement"><input id="reorderCheck" type="checkbox" name="reorderFlag" title="Choose the position of this page within the list of child pages."/><label for="reorderCheck" title="Choose the position of this page within the list of child pages.">Reorder</label></span>
363
+ </script>
364
+ <script type="text/x-template" title="move-help-link">
365
+ <div class="dialog-help-link">
366
+ <a href="http://docs.atlassian.com/confluence/docs-34/Moving+a+Page" target="_blank">Help</a>
367
+ </div>
368
+ </script>
369
+ <script type="text/x-template" title="searchResultsGrid">
370
+ <table>
371
+ <thead>
372
+ <tr class="header">
373
+ <th class="search-result-title">Page Title</th>
374
+ <th class="search-result-space">Space</th>
375
+ <th class="search-result-date">Updated</th>
376
+ </tr>
377
+ </thead>
378
+ </table>
379
+ </script>
380
+ <script type="text/x-template" title="searchResultsGridCount">
381
+ <p class="search-result-count">{0}</p>
382
+ </script>
383
+ <script type="text/x-template" title="searchResultsGridRow">
384
+ <tr class="search-result">
385
+ <th class="search-result-title"><a href="{1}" class="content-type-{2}"><span>{0}</span></a></th>
386
+ <td class="search-result-space"><a class="space" href="/wiki/display/{4}/" title="{3}">{3}</a></td>
387
+ <td class="search-result-date"><span class="date" title="{6}">{5}</span></td>
388
+ </tr>
389
+ </script>
390
+ <!-- Start restrictions section -->
391
+ <fieldset class="hidden parameters i18n">
392
+ <input type="hidden" title="i18n.page.perms.error.invalid.entity.names" value="Unknown user or group:">
393
+ <input type="hidden" title="i18n.page.perms.dialog.heading" value="Page Restrictions">
394
+ <input type="hidden" title="i18n.page.perms.editing.restricted.to" value="Editing restricted to:">
395
+ <input type="hidden" title="i18n.cancel.name" value="Cancel">
396
+ <input type="hidden" title="i18n.close.name" value="Close">
397
+ <input type="hidden" title="i18n.update.name" value="Save">
398
+ </fieldset>
399
+
400
+ <script type="text/x-template" title="page-permissions-div">
401
+ <div id="page-permissions-div">
402
+ <div id="page-permissions-editor-form">
403
+
404
+ <div id="page-permissions-error-div" class="hidden">
405
+ <a href="#" id="permissions-error-div-close">Ok</a>
406
+ <div></div>
407
+ </div>
408
+
409
+ <div id="page-permissions-type-radios" class="page-permissions-label-rows">
410
+ <div>
411
+ <input id="restrictViewRadio" type="radio" checked="checked" name="pagePermissionTypeRadio" value="view"/>
412
+ <label for="restrictViewRadio">Restrict viewing of this page</label>
413
+ <input id="restrictEditRadio" type="radio" name="pagePermissionTypeRadio" value="edit"/>
414
+ <label for="restrictEditRadio">Restrict editing of this page</label>
415
+ </div>
416
+ </div>
417
+ <div id="page-permissions-input" class="page-permissions-label-rows">
418
+ <div class="page-permissions-label">To:</div>
419
+ <div id="page-permissions-chooser-box">
420
+ <span id="page-permissions-choose-user" class="ajs-button">
421
+
422
+
423
+
424
+
425
+
426
+
427
+
428
+
429
+ <a href="#" id='userpicker-popup-link-image' onClick="var picker = window.open('/wiki/spaces/openuserpicker.action?key=flexsdk&amp;startIndex=0&amp;onPopupSubmit=AJS.PagePermissions.addUserPermissions', 'EntitiesPicker', 'status=yes,resizable=yes,top=100,left=200,width=700,height=680,scrollbars=yes'); picker.focus(); return false;"><img src="/wiki/s/2029/3/_/images/icons/user_16.gif" height=16 width=16 border=0 align="absmiddle" title="Choose users" /></a>
430
+ <a href="#" id='userpicker-popup-link-text' onClick="var picker = window.open('/wiki/spaces/openuserpicker.action?key=flexsdk&amp;startIndex=0&amp;onPopupSubmit=AJS.PagePermissions.addUserPermissions', 'EntitiesPicker', 'status=yes,resizable=yes,top=100,left=200,width=700,height=680,scrollbars=yes'); picker.focus(); return false;">Person...</a>
431
+
432
+
433
+ </span>
434
+ <span id="page-permissions-choose-group" class="ajs-button">
435
+
436
+
437
+
438
+
439
+
440
+
441
+
442
+
443
+ <a href="#" id='grouppicker-popup-link-image' onClick="var picker = window.open('/wiki/spaces/opengrouppicker.action?key=flexsdk&amp;startIndex=0&amp;actionName=dosearchgroups.action&amp;onPopupSubmit=AJS.PagePermissions.addGroupPermissions', 'EntitiesPicker', 'status=yes,resizable=yes,top=100,left=200,width=580,height=550,scrollbars=yes'); picker.focus(); return false;"><img src="/wiki/s/2029/3/_/images/icons/group_16.gif" height=16 width=16 border=0 align="absmiddle" title="Choose groups" /></a>
444
+ <a href="#" id='grouppicker-popup-link-text' onClick="var picker = window.open('/wiki/spaces/opengrouppicker.action?key=flexsdk&amp;startIndex=0&amp;actionName=dosearchgroups.action&amp;onPopupSubmit=AJS.PagePermissions.addGroupPermissions', 'EntitiesPicker', 'status=yes,resizable=yes,top=100,left=200,width=580,height=550,scrollbars=yes'); picker.focus(); return false;">Group...</a>
445
+
446
+
447
+ </span>
448
+ </div>
449
+ <div id="page-permissions-input-box">
450
+ <span>
451
+ <input type="text" id="page-permissions-names-input" class="input-placeholder" value="Enter user or group name" name="permissionNames" size="30" autocomplete="off"/>
452
+ </span>
453
+ <input
454
+ type="hidden"
455
+ id="page-permissions-names-hidden" /> <img height="16px" width="1px" src="/wiki/s/2029/3/_/images/border/spacer.gif"/>
456
+ <input type="button" id="add-typed-names" value="Restrict">
457
+ </div>
458
+ </div>
459
+ </div>
460
+ <div id="page-permissions-tables">
461
+ <div id="page-permissions-table-div">
462
+ <table id="page-permissions-table" class="page-permissions-table">
463
+ <tr id="page-permissions-no-views" class="marker-row">
464
+ <td colspan="3" class="page-permissions-marker-cell"><span>No view restrictions are defined for this page</span></td>
465
+ </tr>
466
+ <tr id="page-permissions-no-edits" class="marker-row">
467
+ <td colspan="3" class="page-permissions-marker-cell"><span>No edit restrictions are defined for this page</span></td>
468
+ </tr>
469
+ </table>
470
+ </div>
471
+ <div id="page-inherited-permissions-table-div" class="hidden">
472
+ <span id="page-inherited-permissions-table-desc">
473
+ <a class="icon twisty-closed">Show/Hide</a>
474
+ <a id="toggle-inherited-permissions" title="Click to see inherited restrictions">This page has restricted parent pages. It can only be seen by users who can see those parent pages.</a>
475
+ </span>
476
+ <div id="page-inherited-permissions-tables" class="hidden page-inheritance-togglable"></div>
477
+ </div>
478
+ </div>
479
+ </div>
480
+ </script>
481
+
482
+ <script type="text/x-template" title="permissions-row-template">
483
+ <tr class="permission-row">
484
+
485
+ <td class="page-permissions-marker-cell" width="20%">
486
+ <span>Viewing restricted to:</span>
487
+ </td>
488
+ <td class="permission-entity" nowrap="true" width="40%">
489
+ <span class="entity-container">
490
+ <img class="permission-entity-picture"/>
491
+ <span class="permission-entity-display-name"></span>
492
+ <span class="permission-entity-name-wrap">&nbsp;(<span class="permission-entity-name"></span>)</span>
493
+ </span>
494
+ </td>
495
+ <td class="permission-detail-column">
496
+ <div class="permission-remove-div">
497
+ <a href="#" class="remove-permission-link">Remove restriction</a>
498
+ </div>
499
+ </td>
500
+ </tr>
501
+ </script>
502
+ <script type="text/x-template" title="permissions-username-no-suggestion-template">
503
+ <ol>
504
+ <li><a href="#" class="message"><span>No matches</span></a></li>
505
+ </ol>
506
+ </script>
507
+ <script type="text/x-template" title="page-inherited-permissions-table-div-template">
508
+ <div class="page-inherited-permissions-owner-div">
509
+ <div class="page-inherited-permissions-table-desc">Viewing restrictions apply to “<a></a>”. In order to see “<span></span>”, a user must be in the following list of users and groups:</div>
510
+ <table class="page-permissions-table"></table>
511
+ </div>
512
+ </script>
513
+ <script type="text/x-template" title="page-restrictions-help-link">
514
+ <div class="dialog-help-link">
515
+ <a href="http://docs.atlassian.com/confluence/docs-34/Page+Restrictions" target="_blank">Help</a>
516
+ </div>
517
+ </script>
518
+ <!-- End restrictions section -->
519
+
520
+ <fieldset class="hidden parameters">
521
+ <input type="hidden" title="spaceKeyEncoded" value="flexsdk">
522
+ <input type="hidden" title="spaceKeyDecoded" value="flexsdk">
523
+ </fieldset>
524
+
525
+
526
+
527
+
528
+
529
+
530
+
531
+
532
+
533
+
534
+
535
+
536
+
537
+
538
+ <fieldset class="hidden parameters">
539
+ <input type="hidden" title="browsePageTreeMode" value="view">
540
+ <input type="hidden" title="parentPageId" value="">
541
+ </fieldset>
542
+
543
+ <div class="wiki-content">
544
+ <!-- wiki content -->
545
+ <script>
546
+ var eulaType;
547
+
548
+ function getURLParams()
549
+ {
550
+ varArray = document.location.href.split('?')[1].split('&');
551
+ for(var x=0; x<varArray.length; x++) {
552
+ var tmp = varArray[x].split('=');
553
+ eval(unescape(tmp[0]) + '="' + unescape(tmp[1]) + '"');
554
+
555
+ if (tmp[0]=="build") {
556
+ build= tmp[1];
557
+ } else if (tmp[0]=="pkgtype") {
558
+ type= tmp[1];
559
+ if (type != 4) {
560
+ eulaDisplay(type);
561
+ } else {
562
+ downloadOnly();
563
+ }
564
+ }
565
+ }
566
+ }
567
+
568
+
569
+ function eulaDisplay(eulaType) {
570
+ var content;
571
+ if(eulaType == 1) {
572
+ content = '<u>Adobe Flex SDK License Agreement:</u><br>';
573
+ content += '<p>All files contained in this Adobe Flex SDK download are subject to and governed by the Adobe Flex SDK License Agreement specified here: <a href="http://adobe.com/go/flex3_sdk_eula">Adobe Flex SDK License Agreement</a>, EXCEPT those files specifically identified below as "Mozilla Public License Files".<br>';
574
+ content += '<p>By downloading\, modifying\, distributing\, using and/or accessing any files in this Adobe Flex SDK\, you agree to the terms and conditions of the applicable end user license agreement.<br>';
575
+ content += '<p>In addition to the Adobe license terms\, you also agree to be bound by the third-party terms specified here: <a href="http://adobe.com/go/thirdparty">Third Party Software Notices</a>. Adobe recommends that you review these third-party terms.<br></p>';
576
+ content += '<br><u>Mozilla Public License Files:</u><br>';
577
+ content += '<p>The files located in the following directory locations of the Adobe Flex SDK are governed by the "Mozilla Public License Version 1.1" found below.';
578
+ content += '<p style=" text-indent:10px; ">ant<br><p style=" text-indent:10px; ">asdoc';
579
+ content += '<p style=" text-indent:10px; ">frameworks/javascript';
580
+ content += '<p style=" text-indent:10px; ">frameworks/locale';
581
+ content += '<p style=" text-indent:10px; ">frameworks/projects';
582
+ content += '<p style=" text-indent:10px; ">frameworks/themes';
583
+ content += '<p>The contents of such above files are subject to the Mozilla Public License Version 1.1 (the "License"); you may not use these files except in compliance with the License. You may obtain a copy of the License here: <a href="http://www.mozilla.org/MPL/">http:/www.mozilla.org/MPL/</a><br>';
584
+ content += '<p>Software distributed under the License is distributed on an "AS IS" basis\, WITHOUT WARRANTY OF ANY KIND\, either express or implied. See the License for the specific language governing rights and limitations under the License.<br>';
585
+ content += '<p>The Original Code consists of the files listed above.<br>';
586
+ content += '<p>The Initial Developer of the Original Code is Adobe Systems Incorporated.<br>';
587
+ content += '<p>By downloading\, modifying, distributing\, using and/or accessing any files in this Adobe Flex SDK\, you agree to the terms and conditions of the applicable end user license agreement.</p>';
588
+
589
+
590
+ }
591
+ if(eulaType == 2) {
592
+ content = '<strong>License</strong><br>';
593
+ content += '<br><u>Mozilla Public License Files:</u><br>';
594
+ content += '<p>The contents of the files contained in this Flex SDK download are subject to the Mozilla Public License Version 1.1 (the "License"); you may not use these files except in compliance with the License. You may obtain a copy of the License here: <a href="http://www.mozilla.org/MPL/">http:/www.mozilla.org/MPL/</a><br>';
595
+ content += '<br>Software distributed under the License is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for the specific language governing rights and limitations under the License.<br>';
596
+ content += '<br>The Original Code consists of the files listed above.<br>';
597
+ content += '<br>The Initial Developer of the Original Code is Adobe Systems Incorporated.<br>';
598
+ content += '<br>By downloading\, modifying\, distributing\, using and/or accessing any files in this Flex SDK\, you agree to the terms and conditions of the applicable end user license agreement.</p>';
599
+
600
+
601
+ }
602
+ if(eulaType == 3) {
603
+ content = '<strong>License</strong><br>';
604
+ content += '<br><u>Adobe Flex SDK License Agreement:</u>';
605
+ content += '<p>All files contained in this Adobe Flex SDK download are subject to and governed by the Adobe Flex SDK License Agreement specified here: <a href="http://adobe.com/go/flex3_sdk_eula">Adobe Flex SDK License Agreement</a>.';
606
+ content += ' <p>By downloading\, modifying\, distributing\, using and/or accessing any files in this package\, you agree to the terms and conditions of the applicable end user license agreement.';
607
+ content += ' <p>In addition to the Adobe license terms\, you also agree to be bound by the third-party terms specified here: <a href="http://adobe.com/go/thirdparty>Third Party Software Notices</a>. Adobe recommends that you review these third-party terms.</p>';
608
+
609
+
610
+ }
611
+
612
+ document.getElementById("eula").innerHTML = content;
613
+ document.getElementById("accept").style.display = "block";
614
+ }
615
+
616
+ function doDownload() {
617
+ if(jQuery('#eulaAccept').attr('checked')) {
618
+ var varArray = document.location.href.split('?')[1].split('&');
619
+ for(var x=0; x<varArray.length; x++) {
620
+ var tmp = varArray[x].split('=');
621
+ eval(unescape(tmp[0]) + '="' + unescape(tmp[1]) + '"');
622
+ if (tmp[0]=="build") {
623
+ build= tmp[1];
624
+ if (document.referrer.length > 60) {
625
+ referrerUrl= document.referrer;
626
+ release= referrerUrl.split('+')[2].toLowerCase();
627
+ } else {
628
+ release= tmp[2];
629
+ }
630
+
631
+
632
+ } else if (tmp[0]=="pkgtype") {
633
+ pkgtype= tmp[1];
634
+ if(pkgtype == 1) {
635
+ var pkgname="flex_sdk_"+build+".zip"
636
+ } else if(pkgtype == 2) {
637
+ var pkgname="flex_sdk_"+build+"_mpl.zip"
638
+ } else if(pkgtype == 3) {
639
+ var pkgname="flex_sdk_"+build+"_add-on.zip"
640
+ } else if(pkgtype == 4) {
641
+ var pkgname="flex_langRef_"+build+".zip"
642
+ }
643
+ }
644
+ }
645
+
646
+ jQuery('#dlink').show();
647
+ document.getElementById("download").href = 'http://fpdownload.adobe.com/pub/flex/sdk/builds/flex'+release+'/'+pkgname+'';
648
+ } else {
649
+ jQuery('#dlink').hide();
650
+ }
651
+ }
652
+
653
+ function enableButton()
654
+ {
655
+ download.disabled=!download.disabled;
656
+ }
657
+
658
+ function downloadOnly()
659
+ {
660
+ var content = '<p>Documentation download</p>';
661
+ document.getElementById("eula").innerHTML = content;
662
+ doDownload();
663
+ }
664
+
665
+ </script>
666
+
667
+ <noscript>
668
+ <div class="error">
669
+ <p><strong>Note:</strong> JavaScript is disabled in your browser. To download the runtime files, please enable JavaScript and reload the page.</p>
670
+ </div>
671
+ </noscript>
672
+
673
+ <div id="eula"></div>
674
+
675
+ <div id="accept" style="display:none ">
676
+ <input type="checkbox" name="eulaAccept" id="eulaAccept" accesskey="a" tabindex="1" onclick="doDownload();" />
677
+ <label for="eulaAccept">I have read the License Agreement(s), and by downloading the software, I agree to the terms of the agreement.</label>
678
+ </div>
679
+
680
+ <br><br>
681
+
682
+ <div id="dlink" style="display: none;">
683
+ <a href="" id="download" >Download Zip</a><br>
684
+ </div>
685
+ <script>getURLParams();</script>
686
+ <br>
687
+ <div id="goback">
688
+ <a href="javascript:history.go(-1)">Back to downloads</a>
689
+ </div>
690
+ </div>
691
+
692
+ <!--
693
+ <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
694
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
695
+ xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/">
696
+ <rdf:Description
697
+ rdf:about="http://opensource.adobe.com/wiki/display/flexsdk/download"
698
+ dc:identifier="http://opensource.adobe.com/wiki/display/flexsdk/download"
699
+ dc:title="download"
700
+ trackback:ping="http://opensource.adobe.com/wiki/rpc/trackback/46006499"/>
701
+ </rdf:RDF>
702
+ -->
703
+
704
+
705
+
706
+
707
+
708
+ </div>
709
+
710
+
711
+
712
+
713
+
714
+
715
+
716
+
717
+
718
+
719
+
720
+
721
+
722
+
723
+
724
+ <fieldset class="hidden parameters">
725
+ <input type="hidden" title="i18n.done.name" value="Done">
726
+ <input type="hidden" title="i18n.manage.watchers.dialog.title" value="Manage Watchers">
727
+ <input type="hidden" title="i18n.manage.watchers.unable.to.remove.error" value="Failed to remove watcher. Refresh page to see latest status.">
728
+ <input type="hidden" title="i18n.manage.watchers.status.adding.watcher" value="Adding watcher&amp;hellip;">
729
+ </fieldset>
730
+ <script type="text/x-template" title="manage-watchers-dialog">
731
+ <div class="dialog-content">
732
+ <div class="column page-watchers">
733
+ <h3>Watching this page</h3>
734
+ <p class="description">These people are notified when the page is changed. You can add or remove people from this list.</p>
735
+ <form action="/wiki/json/addwatch.action" method="POST">
736
+ <input type="hidden" name="atl_token" value="55fac1994b0c3b4401d268b3a3b3c8829a2eb39b">
737
+ <input type="hidden" name="pageId" value="46006499"/>
738
+ <input type="hidden" id="add-watcher-username" name="username" value=""/>
739
+ <label for="add-watcher-user">User</label>
740
+ <input id="add-watcher-user" name="userFullName" type="search" class="autocomplete-user"
741
+ value="" placeholder="Full name or username" autocomplete="off"
742
+ data-max="10" data-target="#add-watcher-username" data-dropdown-target="#add-watcher-dropdown"
743
+ data-template="{title}" data-none-message="No matching users found.">
744
+ <input id="add-watcher-submit" type="submit" name="add" value="Add">
745
+ <div id="add-watcher-dropdown" class="aui-dd-parent autocomplete"></div>
746
+ <div class="status hidden"></div>
747
+ </form>
748
+ <ul class="user-list">
749
+ <li class="loading">Loading&hellip;</li>
750
+ <li class="no-users hidden">No page watchers</li>
751
+ </ul>
752
+ </div>
753
+ <div class="column space-watchers">
754
+ <h3>Watching this space</h3>
755
+ <p class="description">These people are notified when any content in the space is changed. You cannot modify this list.</p>
756
+ <ul class="user-list">
757
+ <li class="loading">Loading&hellip;</li>
758
+ <li class="no-users hidden">No space watchers</li>
759
+ </ul>
760
+ </div>
761
+ </div>
762
+ </script>
763
+ <script type="text/x-template" title="manage-watchers-user">
764
+ <li class="watch-user">
765
+ <img class="profile-picture confluence-userlink" src="{iconUrl}" data-username="{username}">
766
+ <a class="confluence-userlink" href="{url}" data-username="{username}">{fullName} <span class="username">({username})</span></a>
767
+ <span class="remove-watch" title="Remove"
768
+ data-username="{username}">Remove</span>
769
+ </li>
770
+ </script>
771
+ <script type="text/x-template" title="manage-watchers-help-link">
772
+ <div class="dialog-help-link">
773
+ <a href="http://docs.atlassian.com/confluence/docs-34/Managing+Watchers" target="_blank">Help</a>
774
+ </div>
775
+ </script>
776
+ <br class="clear">
777
+ </div><!-- \#main -->
778
+ <div id="corner-container">
779
+ <div class="corners bl"></div><div class="corners br"></div>
780
+ <div class="corners tl"></div><div class="corners tr"></div>
781
+ </div>
782
+ </div><!-- \#content-wrapper -->
783
+
784
+
785
+ <div id="adobe-footer">
786
+ <div id="adobe-poweredby" class="smalltext">
787
+ Last Modified: 2010-04-16 16:19:37.0 <br/>
788
+ Powered by <a href="http://www.atlassian.com/software/confluence" class="hover-footer-link">Atlassian Confluence</a> 3.4, the <a href="2029" class="hover-footer-link">Enterprise Wiki</a>
789
+ <br/>
790
+ </div>
791
+ <p />
792
+ <span class="footerlinks"> <a href="http://www.adobe.com/aboutadobe/" target="_blank" style="color: rgb(255, 255, 255);" onmouseover="this.style.color='#000000'" onmouseout="this.style.color='#FFFFFF'">Company</a> <span class="footerpipe">|</span>
793
+ <span class="footerlinks"> <a href="http://www.adobe.com/misc/privacy.html" target="_blank" style="color: rgb(255, 255, 255);" onmouseover="this.style.color='#000000'" onmouseout="this.style.color='#FFFFFF'">Online Privacy Policy</a> </span><span class="footerpipe">|</span>
794
+ <span class="footerlinks"> <a href="http://www.adobe.com/misc/copyright.html" target="_blank" style="color: rgb(255, 255, 255);" onmouseover="this.style.color='#000000'" onmouseout="this.style.color='#FFFFFF'">Terms of Use</a> </span><span class="footerpipe">|</span>
795
+ <span class="footerlinks"> <a href="http://www.adobe.com/aboutadobe/contact.html" target="_blank" style="color: rgb(255, 255, 255);" onmouseover="this.style.color='#000000'" onmouseout="this.style.color='#FFFFFF'">Contact Us</a> </span><span class="footerpipe">|</span>
796
+ <span class="footerlinks"> <a href="http://www.adobe.com/help/accessibility.html" target="_blank" style="color: rgb(255, 255, 255);" onmouseover="this.style.color='#000000'" onmouseout="this.style.color='#FFFFFF'">Accessibility</a> </span><span class="footerpipe">|</span>
797
+ <span class="footerlinks"> <a href="http://www.adobe.com/aboutadobe/antipiracy/" target="_blank" style="color: rgb(255, 255, 255);" onmouseover="this.style.color='#000000'" onmouseout="this.style.color='#FFFFFF'">Report Piracy</a> </span><span class="footerpipe">|</span>
798
+ <span class="footerlinks"> <a href="http://www.adobe.com/misc/agreement.html" target="_blank" style="color: rgb(255, 255, 255);" onmouseover="this.style.color='#000000'" onmouseout="this.style.color='#FFFFFF'">Permissions &amp; Trademarks</a> </span>
799
+ <p class="footercopyright">Copyright @ 2011 Adobe Systems Incorporated.<br />
800
+ Use of this website signifies your agreement to the Terms of Use and Online Privacy Policy.<br />
801
+ </p>
802
+ <!-- Omniture SiteCatalyst code for opensource.adobe.com $revision 1.0
803
+ SiteCatalyst code version: G.9.
804
+ Copyright 2002 Omniture, Inc. More info available at
805
+ http://www.omniture.com -->
806
+ <script language="JavaScript" type="text/javascript"><!--
807
+ var s_code=' '//--></script>
808
+ <script language="JavaScript"
809
+ src="https://www.adobe.com/uber/js/omniture_s_code.js"
810
+ type="text/javascript"></script>
811
+ <script language="JavaScript" type="text/javascript"><!--
812
+ var s_accountName;
813
+ var s_channel;
814
+ var s_docHost = window.location.hostname.toLowerCase();
815
+ // Specify Report Suite (auto-switch between Dev/Stage and Live Site)
816
+ if ((s_docHost.indexOf("stage.") != -1) || (s_docHost.indexOf("corp.")
817
+ != -1)) {
818
+ s_accountName="mxadobetest"; // Dev/QA Site
819
+ }
820
+ else {
821
+ s_accountName="mxmacromedia"; // Production Site
822
+ }
823
+
824
+ // Specify Channel
825
+ s_channel="opensource.adobe.com";
826
+
827
+ // Specify pageName (Discard query string)
828
+ var s_docURL = document.URL.toLowerCase();
829
+ if (s_docURL.indexOf(';') != -1)
830
+ s_docURL=s_docURL.substring(0,s_docURL.indexOf(';'));
831
+ if (s_docURL.indexOf('?') != -1)
832
+ s_docURL=s_docURL.substring(0,s_docURL.indexOf('?'));
833
+ var s_pageName=s_docURL;
834
+
835
+ var s_wd=window,s_tm=new Date;if(s_code!=' '){s_code=s_dc(
836
+ s_accountName);if(s_code)document.write(s_code)}
837
+ function sendAnalyticsEvent(str){var
838
+ ns=s_accountName;if(str!=null)ns+=","+str;void(s_gs(ns));}
839
+ //--></script><noscript><img
840
+ src="http://stats.adobe.com/b/ss/mxmacromedia/1/F.3-XELvs"
841
+ height="1" width="1" border="0" alt="" /></noscript><!--/DO NOT
842
+ REMOVE/-->
843
+ <!-- End SiteCatalyst code version: G.9. -->
844
+ </div>
845
+
846
+
847
+ </div><!-- \#adobe-wrapper -->
848
+ </div><!-- \#full-height-container -->
849
+ </div><!-- \#page -->
850
+ </body>
851
+ </html>