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.
- data/.gitignore +4 -0
- data/Gemfile +4 -0
- data/README.md +65 -0
- data/Rakefile +39 -0
- data/bin/fvm +4 -0
- data/fvm.gemspec +28 -0
- data/lib/fvm.rb +39 -0
- data/lib/fvm/cli/build.rb +41 -0
- data/lib/fvm/cli/driver.rb +161 -0
- data/lib/fvm/cli/installation.rb +34 -0
- data/lib/fvm/cli/installer.rb +54 -0
- data/lib/fvm/cli/linker.rb +44 -0
- data/lib/fvm/cli/shell.rb +102 -0
- data/lib/fvm/cli/thor.rb +66 -0
- data/lib/fvm/manipulator.rb +43 -0
- data/lib/fvm/parser.rb +57 -0
- data/lib/fvm/version.rb +6 -0
- data/scripts/fvm +9 -0
- data/test/fixtures/confirmer/Confirmation.html +851 -0
- data/test/fixtures/linker/bin/executable +3 -0
- data/test/fixtures/linker/bin/not_executable +1 -0
- data/test/fixtures/linker/bin/shell_script.sh +1 -0
- data/test/fixtures/parser/Flex_SDK_3.html +1031 -0
- data/test/fixtures/parser/Flex_SDK_4.html +948 -0
- data/test/fixtures/parser/Flex_SDK_Hero.html +888 -0
- data/test/fixtures/parser/Simplified.html +57 -0
- data/test/fvm/test_build.rb +35 -0
- data/test/fvm/test_installation.rb +37 -0
- data/test/fvm/test_linker.rb +33 -0
- data/test/fvm/test_manipulator.rb +48 -0
- data/test/fvm/test_parser.rb +35 -0
- data/test/test_helper.rb +7 -0
- metadata +206 -0
@@ -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
|
data/lib/fvm/cli/thor.rb
ADDED
@@ -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
|
data/lib/fvm/parser.rb
ADDED
@@ -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
|
data/lib/fvm/version.rb
ADDED
data/scripts/fvm
ADDED
@@ -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;"/> 
|
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>
|
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>
|
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>
|
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>
|
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>
|
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 – ‘download’">
|
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…</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&startIndex=0&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&startIndex=0&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&startIndex=0&actionName=dosearchgroups.action&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&startIndex=0&actionName=dosearchgroups.action&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"> (<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&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…</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…</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 & 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>
|