Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
erp5
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Paul Graydon
erp5
Commits
87a653e2
Commit
87a653e2
authored
Aug 29, 2017
by
Vincent Bechu
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
[erp5_officejs] Add App Store to export site
parent
281e85d8
Changes
16
Hide whitespace changes
Inline
Side-by-side
Showing
16 changed files
with
2508 additions
and
38 deletions
+2508
-38
bt5/erp5_officejs/PathTemplateItem/document_module/gadget_officejs_appstore_css_fontawesome_font_fontawesome-webfont_ttf.ttf
...appstore_css_fontawesome_font_fontawesome-webfont_ttf.ttf
+0
-0
bt5/erp5_officejs/PathTemplateItem/document_module/gadget_officejs_appstore_css_fontawesome_font_fontawesome-webfont_ttf.xml
...appstore_css_fontawesome_font_fontawesome-webfont_ttf.xml
+31
-3
bt5/erp5_officejs/PathTemplateItem/document_module/gadget_officejs_appstore_data_all_apps_json.json
...t_module/gadget_officejs_appstore_data_all_apps_json.json
+2
-3
bt5/erp5_officejs/PathTemplateItem/document_module/gadget_officejs_appstore_data_all_apps_json.xml
...nt_module/gadget_officejs_appstore_data_all_apps_json.xml
+3
-3
bt5/erp5_officejs/PathTemplateItem/image_module/gadget_officejs_store_css_fontawesome_font_fontawesome_webfont_svg.svg
...js_store_css_fontawesome_font_fontawesome_webfont_svg.svg
+685
-0
bt5/erp5_officejs/PathTemplateItem/image_module/gadget_officejs_store_css_fontawesome_font_fontawesome_webfont_svg.xml
...js_store_css_fontawesome_font_fontawesome_webfont_svg.xml
+312
-0
bt5/erp5_officejs/PathTemplateItem/web_page_module/gadget_officejs_appstore_css_fontawesome_css_font-awesome_css.css
...fficejs_appstore_css_fontawesome_css_font-awesome_css.css
+1439
-0
bt5/erp5_officejs/PathTemplateItem/web_page_module/gadget_officejs_appstore_css_fontawesome_css_font-awesome_css.xml
...fficejs_appstore_css_fontawesome_css_font-awesome_css.xml
+5
-3
bt5/erp5_officejs/PathTemplateItem/web_page_module/gadget_officejs_appstore_html.html
...teItem/web_page_module/gadget_officejs_appstore_html.html
+0
-0
bt5/erp5_officejs/PathTemplateItem/web_page_module/gadget_officejs_appstore_html.xml
...ateItem/web_page_module/gadget_officejs_appstore_html.xml
+3
-3
bt5/erp5_officejs/PathTemplateItem/web_page_module/gadget_officejs_jio_appcachestorage_js.js
...web_page_module/gadget_officejs_jio_appcachestorage_js.js
+14
-10
bt5/erp5_officejs/PathTemplateItem/web_page_module/gadget_officejs_jio_appcachestorage_js.xml
...eb_page_module/gadget_officejs_jio_appcachestorage_js.xml
+2
-2
bt5/erp5_officejs/PathTemplateItem/web_page_module/gadget_officejs_page_export_html.html
...tem/web_page_module/gadget_officejs_page_export_html.html
+1
-0
bt5/erp5_officejs/PathTemplateItem/web_page_module/gadget_officejs_page_export_html.xml
...Item/web_page_module/gadget_officejs_page_export_html.xml
+2
-2
bt5/erp5_officejs/PathTemplateItem/web_page_module/gadget_officejs_page_export_js.js
...ateItem/web_page_module/gadget_officejs_page_export_js.js
+7
-7
bt5/erp5_officejs/PathTemplateItem/web_page_module/gadget_officejs_page_export_js.xml
...teItem/web_page_module/gadget_officejs_page_export_js.xml
+2
-2
No files found.
bt5/erp5_officejs/PathTemplateItem/document_module/gadget_officejs_appstore_css_fontawesome_font_fontawesome-webfont_ttf.ttf
0 → 100644
View file @
87a653e2
File added
bt5/erp5_officejs/PathTemplateItem/document_module/gadget_officejs_appstore_css_fontawesome_font_fontawesome-webfont_ttf.xml
View file @
87a653e2
...
...
@@ -60,6 +60,10 @@
</tuple>
</value>
</item>
<item>
<key>
<string>
content_md5
</string>
</key>
<value>
<string>
1dc35d25e61d819a9c357074014867ab
</string>
</value>
</item>
<item>
<key>
<string>
content_type
</string>
</key>
<value>
<string>
font/truetype
</string>
</value>
...
...
@@ -68,14 +72,36 @@
<key>
<string>
default_reference
</string>
</key>
<value>
<string>
css/fontawesome/font/fontawesome-webfont.ttf
</string>
</value>
</item>
<item>
<key>
<string>
description
</string>
</key>
<value>
<none/>
</value>
</item>
<item>
<key>
<string>
filename
</string>
</key>
<value>
<string>
font-awesome-webfont.ttf
</string>
</value>
</item>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
gadget_officejs_appstore_css_fontawesome_font_fontawesome-webfont_ttf
</string>
</value>
</item>
<item>
<key>
<string>
language
</string>
</key>
<value>
<none/>
</value>
</item>
<item>
<key>
<string>
portal_type
</string>
</key>
<value>
<string>
File
</string>
</value>
</item>
<item>
<key>
<string>
short_title
</string>
</key>
<value>
<none/>
</value>
</item>
<item>
<key>
<string>
title
</string>
</key>
<value>
<string>
fontawesome-webfont.ttf
</string>
</value>
...
...
@@ -193,7 +219,9 @@
</item>
<item>
<key>
<string>
comment
</string>
</key>
<value>
<string></string>
</value>
<value>
<none/>
</value>
</item>
<item>
<key>
<string>
error_message
</string>
</key>
...
...
@@ -201,7 +229,7 @@
</item>
<item>
<key>
<string>
serial
</string>
</key>
<value>
<string>
0.0.0.0
</string>
</value>
<value>
<string>
960.25484.60987.38638
</string>
</value>
</item>
<item>
<key>
<string>
state
</string>
</key>
...
...
@@ -219,7 +247,7 @@
</tuple>
<state>
<tuple>
<float>
1
497861288.7
9
</float>
<float>
1
504006367.9
9
</float>
<string>
UTC
</string>
</tuple>
</state>
...
...
bt5/erp5_officejs/PathTemplateItem/document_module/gadget_officejs_appstore_data_all_apps_json.json
View file @
87a653e2
...
...
@@ -60,10 +60,9 @@
"generate"
:
"widget"
,
"type"
:
"controlbar"
,
"class_list"
:
"responsive"
,
"children"
:
[
{
"children"
:
[{
"type"
:
"a"
,
"attributes"
:
{
"href"
:
"
www.miitbeian.gov.cn"
},
"attributes"
:
{
"href"
:
"
http://www.miitbeian.gov.cn"
,
"style"
:
"padding-top: 1em;"
},
"logic"
:
{
"text"
:
"沪ICP备14008524号"
}
}]
}]
...
...
bt5/erp5_officejs/PathTemplateItem/document_module/gadget_officejs_appstore_data_all_apps_json.xml
View file @
87a653e2
...
...
@@ -62,7 +62,7 @@
</item>
<item>
<key>
<string>
content_md5
</string>
</key>
<value>
<string>
5d593f5b74d90f39e5e2271a02c8f1c8
</string>
</value>
<value>
<string>
4ca965d37df12a63e0d95aa5d41e9de9
</string>
</value>
</item>
<item>
<key>
<string>
content_type
</string>
</key>
...
...
@@ -207,7 +207,7 @@
</item>
<item>
<key>
<string>
serial
</string>
</key>
<value>
<string>
961.47
837.55773.269
48
</string>
</value>
<value>
<string>
961.47
915.18273.454
48
</string>
</value>
</item>
<item>
<key>
<string>
state
</string>
</key>
...
...
@@ -225,7 +225,7 @@
</tuple>
<state>
<tuple>
<float>
150
3999280.62
</float>
<float>
150
4003979.23
</float>
<string>
UTC
</string>
</tuple>
</state>
...
...
bt5/erp5_officejs/PathTemplateItem/image_module/gadget_officejs_store_css_fontawesome_font_fontawesome_webfont_svg.svg
0 → 100644
View file @
87a653e2
This source diff could not be displayed because it is too large. You can
view the blob
instead.
bt5/erp5_officejs/PathTemplateItem/image_module/gadget_officejs_store_css_fontawesome_font_fontawesome_webfont_svg.xml
0 → 100644
View file @
87a653e2
<?xml version="1.0"?>
<ZopeData>
<record
id=
"1"
aka=
"AAAAAAAAAAE="
>
<pickle>
<global
name=
"Image"
module=
"erp5.portal_type"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
_Access_contents_information_Permission
</string>
</key>
<value>
<tuple>
<string>
Anonymous
</string>
<string>
Assignee
</string>
<string>
Assignor
</string>
<string>
Associate
</string>
<string>
Auditor
</string>
<string>
Manager
</string>
<string>
Owner
</string>
</tuple>
</value>
</item>
<item>
<key>
<string>
_Add_portal_content_Permission
</string>
</key>
<value>
<tuple>
<string>
Assignor
</string>
<string>
Manager
</string>
</tuple>
</value>
</item>
<item>
<key>
<string>
_Change_local_roles_Permission
</string>
</key>
<value>
<tuple>
<string>
Assignor
</string>
<string>
Manager
</string>
</tuple>
</value>
</item>
<item>
<key>
<string>
_Modify_portal_content_Permission
</string>
</key>
<value>
<tuple>
<string>
Manager
</string>
</tuple>
</value>
</item>
<item>
<key>
<string>
_View_Permission
</string>
</key>
<value>
<tuple>
<string>
Anonymous
</string>
<string>
Assignee
</string>
<string>
Assignor
</string>
<string>
Associate
</string>
<string>
Auditor
</string>
<string>
Manager
</string>
<string>
Owner
</string>
</tuple>
</value>
</item>
<item>
<key>
<string>
_count
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAAI=
</string>
</persistent>
</value>
</item>
<item>
<key>
<string>
_mt_index
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAAM=
</string>
</persistent>
</value>
</item>
<item>
<key>
<string>
_tree
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAAQ=
</string>
</persistent>
</value>
</item>
<item>
<key>
<string>
content_md5
</string>
</key>
<value>
<string>
d7c639084f684d66a1bc66855d193ed8
</string>
</value>
</item>
<item>
<key>
<string>
content_type
</string>
</key>
<value>
<string>
image/svg+xml
</string>
</value>
</item>
<item>
<key>
<string>
default_reference
</string>
</key>
<value>
<string>
css/fontawesome/font/fontawesome-webfont.svg
</string>
</value>
</item>
<item>
<key>
<string>
description
</string>
</key>
<value>
<none/>
</value>
</item>
<item>
<key>
<string>
filename
</string>
</key>
<value>
<string>
font-awesome-webfont.svg
</string>
</value>
</item>
<item>
<key>
<string>
height
</string>
</key>
<value>
<int>
-1
</int>
</value>
</item>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
gadget_officejs_store_css_fontawesome_font_fontawesome_webfont_svg
</string>
</value>
</item>
<item>
<key>
<string>
language
</string>
</key>
<value>
<none/>
</value>
</item>
<item>
<key>
<string>
portal_type
</string>
</key>
<value>
<string>
Image
</string>
</value>
</item>
<item>
<key>
<string>
short_title
</string>
</key>
<value>
<none/>
</value>
</item>
<item>
<key>
<string>
title
</string>
</key>
<value>
<string>
fontawesome svg
</string>
</value>
</item>
<item>
<key>
<string>
version
</string>
</key>
<value>
<none/>
</value>
</item>
<item>
<key>
<string>
width
</string>
</key>
<value>
<int>
-1
</int>
</value>
</item>
<item>
<key>
<string>
workflow_history
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAAU=
</string>
</persistent>
</value>
</item>
</dictionary>
</pickle>
</record>
<record
id=
"2"
aka=
"AAAAAAAAAAI="
>
<pickle>
<global
name=
"Length"
module=
"BTrees.Length"
/>
</pickle>
<pickle>
<int>
0
</int>
</pickle>
</record>
<record
id=
"3"
aka=
"AAAAAAAAAAM="
>
<pickle>
<global
name=
"OOBTree"
module=
"BTrees.OOBTree"
/>
</pickle>
<pickle>
<none/>
</pickle>
</record>
<record
id=
"4"
aka=
"AAAAAAAAAAQ="
>
<pickle>
<global
name=
"OOBTree"
module=
"BTrees.OOBTree"
/>
</pickle>
<pickle>
<none/>
</pickle>
</record>
<record
id=
"5"
aka=
"AAAAAAAAAAU="
>
<pickle>
<global
name=
"PersistentMapping"
module=
"Persistence.mapping"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
data
</string>
</key>
<value>
<dictionary>
<item>
<key>
<string>
document_publication_workflow
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAAY=
</string>
</persistent>
</value>
</item>
<item>
<key>
<string>
edit_workflow
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAAc=
</string>
</persistent>
</value>
</item>
</dictionary>
</value>
</item>
</dictionary>
</pickle>
</record>
<record
id=
"6"
aka=
"AAAAAAAAAAY="
>
<pickle>
<global
name=
"WorkflowHistoryList"
module=
"Products.ERP5Type.patches.WorkflowTool"
/>
</pickle>
<pickle>
<tuple>
<none/>
<list>
<dictionary>
<item>
<key>
<string>
action
</string>
</key>
<value>
<string>
publish
</string>
</value>
</item>
<item>
<key>
<string>
actor
</string>
</key>
<value>
<string>
zope
</string>
</value>
</item>
<item>
<key>
<string>
comment
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
error_message
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
time
</string>
</key>
<value>
<object>
<klass>
<global
name=
"DateTime"
module=
"DateTime.DateTime"
/>
</klass>
<tuple>
<none/>
</tuple>
<state>
<tuple>
<float>
1504006389.4
</float>
<string>
UTC
</string>
</tuple>
</state>
</object>
</value>
</item>
<item>
<key>
<string>
validation_state
</string>
</key>
<value>
<string>
published
</string>
</value>
</item>
</dictionary>
</list>
</tuple>
</pickle>
</record>
<record
id=
"7"
aka=
"AAAAAAAAAAc="
>
<pickle>
<global
name=
"WorkflowHistoryList"
module=
"Products.ERP5Type.patches.WorkflowTool"
/>
</pickle>
<pickle>
<tuple>
<none/>
<list>
<dictionary>
<item>
<key>
<string>
action
</string>
</key>
<value>
<string>
edit
</string>
</value>
</item>
<item>
<key>
<string>
actor
</string>
</key>
<value>
<string>
zope
</string>
</value>
</item>
<item>
<key>
<string>
comment
</string>
</key>
<value>
<none/>
</value>
</item>
<item>
<key>
<string>
error_message
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
serial
</string>
</key>
<value>
<string>
961.47974.64716.58077
</string>
</value>
</item>
<item>
<key>
<string>
state
</string>
</key>
<value>
<string>
current
</string>
</value>
</item>
<item>
<key>
<string>
time
</string>
</key>
<value>
<object>
<klass>
<global
name=
"DateTime"
module=
"DateTime.DateTime"
/>
</klass>
<tuple>
<none/>
</tuple>
<state>
<tuple>
<float>
1504007463.97
</float>
<string>
UTC
</string>
</tuple>
</state>
</object>
</value>
</item>
</dictionary>
</list>
</tuple>
</pickle>
</record>
</ZopeData>
bt5/erp5_officejs/PathTemplateItem/web_page_module/gadget_officejs_appstore_css_fontawesome_css_font-awesome_css.css
View file @
87a653e2
/* ===================================================================== */
/* FontAwesome */
/* ===================================================================== */
/*!
* Font Awesome 3.2.0
* the iconic font designed for Bootstrap
* ------------------------------------------------------------------------------
* The full suite of pictographic icons, examples, and documentation can be
* found at http://fontawesome.io. Stay up to date on Twitter at
* http://twitter.com/fontawesome.
*
* License
* ------------------------------------------------------------------------------
* - The Font Awesome font is licensed under SIL OFL 1.1 -
* http://scripts.sil.org/OFL
* - Font Awesome CSS, LESS, and SASS files are licensed under MIT License -
* http://opensource.org/licenses/mit-license.html
* - Font Awesome documentation licensed under CC BY 3.0 -
* http://creativecommons.org/licenses/by/3.0/
* - Attribution is no longer required in Font Awesome 3.0, but much appreciated:
* "Font Awesome by Dave Gandy - http://fontawesome.io"
*
* Author - Dave Gandy
* ------------------------------------------------------------------------------
* Email: dave@fontawesome.io
* Twitter: http://twitter.com/byscuits
* Work: Lead Product Designer @ Kyruus - http://kyruus.com
*/
/* FONT PATH
* -------------------------- */
@font-face
{
font-family
:
'FontAwesome-webfont'
;
src
:
url('fontawesome/font/fontawesome-webfont.eot?v=3.2.0')
;
/* IE9 Compat Modes */
src
:
url('fontawesome/font/fontawesome-webfont.eot?#iefix&v=3.2.0')
format
(
'embedded-opentype'
),
/* IE6-IE8 */
url('fontawesome/font/fontawesome-webfont.woff?v=3.2.0')
format
(
'woff'
),
/* Modern Browsers */
url('fontawesome/font/fontawesome-webfont.ttf?v=3.2.0')
format
(
'truetype'
),
/* Safari, Android, iOS */
url('fontawesome/font/fontawesome-webfont.ff#fontawesomeregular?v=3.2.0')
format
(
'svg'
);
/* Legacy iOS */
font-weight
:
normal
;
font-style
:
normal
;
}
/* FONT AWESOME CORE
* -------------------------- */
html
[
class
^=
"ui-icon-"
]
:after
,
html
[
class
*=
" ui-icon-"
]
:after
{
font-family
:
FontAwesome-webfont
;
font-weight
:
normal
;
font-style
:
normal
;
text-decoration
:
inherit
;
-webkit-font-smoothing
:
antialiased
;
*
margin-right
:
.3em
;
}
html
[
class
^=
"ui-icon-"
]
:after
,
html
[
class
*=
" ui-icon-"
]
:after
{
text-decoration
:
inherit
;
display
:
inline-block
;
cursor
:
pointer
;
speak
:
none
;
}
/* makes the font 33% larger relative to the icon container */
html
.icon-large
:after
{
vertical-align
:
-10%
;
font-size
:
1.3333333333333333em
;
}
/* makes sure icons active on rollover in links */
html
a
[
class
^=
"ui-icon-"
]
:after
,
html
a
[
class
*=
" ui-icon-"
]
:after
{
display
:
inline
;
}
/* increased font size for icon-large */
html
[
class
^=
"ui-icon-"
]
.icon-fixed-width
:after
,
html
[
class
*=
" ui-icon-"
]
.icon-fixed-width
:after
{
display
:
inline-block
;
width
:
1.1428571428571428em
;
text-align
:
right
;
padding-right
:
0.2857142857142857em
;
}
html
[
class
^=
"ui-icon-"
]
.icon-fixed-width.icon-large
:after
,
html
[
class
*=
" ui-icon-"
]
.icon-fixed-width.icon-large
:after
{
width
:
1.4285714285714286em
;
}
html
.icons-ul
{
margin-left
:
2.142857142857143em
;
list-style-type
:
none
;
}
html
.icons-ul
>
li
{
position
:
relative
;
}
html
.icons-ul
.icon-li
{
position
:
absolute
;
left
:
-2.142857142857143em
;
width
:
2.142857142857143em
;
text-align
:
center
;
line-height
:
inherit
;
}
html
[
class
^=
"ui-icon-"
]
.hide
:after
,
html
[
class
*=
" ui-icon-"
]
.hide
:after
{
display
:
none
;
}
html
.icon-muted
{
color
:
#eeeeee
;
}
html
.icon-light
{
color
:
#ffffff
;
}
html
.icon-dark
{
color
:
#333333
;
}
html
.icon-border
{
border
:
solid
1px
#eeeeee
;
padding
:
.2em
.25em
.15em
;
-webkit-border-radius
:
3px
;
-moz-border-radius
:
3px
;
border-radius
:
3px
;
}
html
.icon-2x
{
font-size
:
2em
;
}
html
.icon-2x.icon-border
{
border-width
:
2px
;
-webkit-border-radius
:
4px
;
-moz-border-radius
:
4px
;
border-radius
:
4px
;
}
html
.icon-3x
{
font-size
:
3em
;
}
html
.icon-3x.icon-border
{
border-width
:
3px
;
-webkit-border-radius
:
5px
;
-moz-border-radius
:
5px
;
border-radius
:
5px
;
}
html
.icon-4x
{
font-size
:
4em
;
}
html
.icon-4x.icon-border
{
border-width
:
4px
;
-webkit-border-radius
:
6px
;
-moz-border-radius
:
6px
;
border-radius
:
6px
;
}
html
.icon-5x
{
font-size
:
5em
;
}
html
.icon-5x.icon-border
{
border-width
:
5px
;
-webkit-border-radius
:
7px
;
-moz-border-radius
:
7px
;
border-radius
:
7px
;
}
html
.pull-right
{
float
:
right
;
}
html
.pull-left
{
float
:
left
;
}
html
[
class
^=
"ui-icon-"
]
.pull-left
:after
,
html
[
class
*=
" ui-icon-"
]
.pull-left
:after
{
margin-right
:
.3em
;
}
html
[
class
^=
"ui-icon-"
]
.pull-right
:after
,
html
[
class
*=
" ui-icon-"
]
.pull-right
:after
{
margin-left
:
.3em
;
}
/* EXTRAS
* -------------------------- */
/* Stacked and layered icon */
html
.icon-stack
{
position
:
relative
;
display
:
inline-block
;
width
:
2em
;
height
:
2em
;
line-height
:
2em
;
vertical-align
:
-35%
;
}
html
.icon-stack
[
class
^=
"ui-icon-"
]
:after
,
html
.icon-stack
[
class
*=
" ui-icon-"
]
:after
{
display
:
block
;
text-align
:
center
;
position
:
absolute
;
width
:
100%
;
height
:
100%
;
font-size
:
1em
;
line-height
:
inherit
;
*
line-height
:
2em
;
}
html
.icon-stack
.icon-stack-base
{
font-size
:
2em
;
*
line-height
:
1em
;
}
/* Animated rotating icon */
html
.icon-spin
{
display
:
inline-block
;
-moz-animation
:
spin
2s
infinite
linear
;
-o-animation
:
spin
2s
infinite
linear
;
-webkit-animation
:
spin
2s
infinite
linear
;
animation
:
spin
2s
infinite
linear
;
}
html
a
.icon-spin
{
display
:
inline-block
;
text-decoration
:
none
;
}
@-moz-keyframes
spin
{
0
%
{
-moz-transform
:
rotate
(
0deg
);
}
100
%
{
-moz-transform
:
rotate
(
359deg
);
}
}
@-webkit-keyframes
spin
{
0
%
{
-webkit-transform
:
rotate
(
0deg
);
}
100
%
{
-webkit-transform
:
rotate
(
359deg
);
}
}
@-o-keyframes
spin
{
0
%
{
-o-transform
:
rotate
(
0deg
);
}
100
%
{
-o-transform
:
rotate
(
359deg
);
}
}
@-ms-keyframes
spin
{
0
%
{
-ms-transform
:
rotate
(
0deg
);
}
100
%
{
-ms-transform
:
rotate
(
359deg
);
}
}
@keyframes
spin
{
0
%
{
transform
:
rotate
(
0deg
);
}
100
%
{
transform
:
rotate
(
359deg
);
}
}
/* Icon rotations and mirroring */
html
.icon-rotate-90
:after
{
-webkit-transform
:
rotate
(
90deg
);
-moz-transform
:
rotate
(
90deg
);
-ms-transform
:
rotate
(
90deg
);
-o-transform
:
rotate
(
90deg
);
transform
:
rotate
(
90deg
);
filter
:
progid
:
DXImageTransform
.
Microsoft
.
BasicImage
(
rotation
=
1
);
}
html
.icon-rotate-180
:after
{
-webkit-transform
:
rotate
(
180deg
);
-moz-transform
:
rotate
(
180deg
);
-ms-transform
:
rotate
(
180deg
);
-o-transform
:
rotate
(
180deg
);
transform
:
rotate
(
180deg
);
filter
:
progid
:
DXImageTransform
.
Microsoft
.
BasicImage
(
rotation
=
2
);
}
html
.icon-rotate-270
:after
{
-webkit-transform
:
rotate
(
270deg
);
-moz-transform
:
rotate
(
270deg
);
-ms-transform
:
rotate
(
270deg
);
-o-transform
:
rotate
(
270deg
);
transform
:
rotate
(
270deg
);
filter
:
progid
:
DXImageTransform
.
Microsoft
.
BasicImage
(
rotation
=
3
);
}
html
.icon-flip-horizontal
:after
{
-webkit-transform
:
scale
(
-1
,
1
);
-moz-transform
:
scale
(
-1
,
1
);
-ms-transform
:
scale
(
-1
,
1
);
-o-transform
:
scale
(
-1
,
1
);
transform
:
scale
(
-1
,
1
);
}
html
.icon-flip-vertical
:after
{
-webkit-transform
:
scale
(
1
,
-1
);
-moz-transform
:
scale
(
1
,
-1
);
-ms-transform
:
scale
(
1
,
-1
);
-o-transform
:
scale
(
1
,
-1
);
transform
:
scale
(
1
,
-1
);
}
/* ensure rotation occurs inside anchor tags */
html
a
.icon-rotate-90
:after
,
html
a
.icon-rotate-180
:after
,
html
a
.icon-rotate-270
:after
,
html
a
.icon-flip-horizontal
:after
,
html
a
.icon-flip-vertical
:after
{
display
:
inline-block
;
}
/* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen
readers do not read off random characters that represent icons */
html
.ui-btn.ui-icon-glass
:after
{
content
:
"\f000"
;
}
html
.ui-btn.ui-icon-music
:after
{
content
:
"\f001"
;
}
html
.ui-btn.ui-icon-search
:after
{
content
:
"\f002"
;
}
html
.ui-btn.ui-icon-envelope-alt
:after
{
content
:
"\f003"
;
}
html
.ui-btn.ui-icon-heart
:after
{
content
:
"\f004"
;
}
html
.ui-btn.ui-icon-star
:after
{
content
:
"\f005"
;
}
html
.ui-btn.ui-icon-star-empty
:after
{
content
:
"\f006"
;
}
html
.ui-btn.ui-icon-user
:after
{
content
:
"\f007"
;
}
html
.ui-btn.ui-icon-film
:after
{
content
:
"\f008"
;
}
html
.ui-btn.ui-icon-th-large
:after
{
content
:
"\f009"
;
}
html
.ui-btn.ui-icon-th
:after
{
content
:
"\f00a"
;
}
html
.ui-btn.ui-icon-th-list
:after
{
content
:
"\f00b"
;
}
html
.ui-btn.ui-icon-ok
:after
{
content
:
"\f00c"
;
}
html
.ui-btn.ui-icon-remove
:after
,
html
.ui-btn.ui-icon-delete
:after
{
content
:
"\f00d"
;
}
html
.ui-btn.ui-icon-zoom-in
:after
{
content
:
"\f00e"
;
}
html
.ui-btn.ui-icon-zoom-out
:after
{
content
:
"\f010"
;
}
html
.ui-btn.ui-icon-power-off
:after
,
html
.ui-btn.ui-icon-off
:after
{
content
:
"\f011"
;
}
html
.ui-btn.ui-icon-signal
:after
{
content
:
"\f012"
;
}
html
.ui-btn.ui-icon-cog
:after
{
content
:
"\f013"
;
}
html
.ui-btn.ui-icon-trash
:after
{
content
:
"\f014"
;
}
html
.ui-btn.ui-icon-home
:after
{
content
:
"\f015"
;
}
html
.ui-btn.ui-icon-file-alt
:after
{
content
:
"\f016"
;
}
html
.ui-btn.ui-icon-time
:after
{
content
:
"\f017"
;
}
html
.ui-btn.ui-icon-road
:after
{
content
:
"\f018"
;
}
html
.ui-btn.ui-icon-download-alt
:after
{
content
:
"\f019"
;
}
html
.ui-btn.ui-icon-download
:after
{
content
:
"\f01a"
;
}
html
.ui-btn.ui-icon-upload
:after
{
content
:
"\f01b"
;
}
html
.ui-btn.ui-icon-inbox
:after
{
content
:
"\f01c"
;
}
html
.ui-btn.ui-icon-play-circle
:after
{
content
:
"\f01d"
;
}
html
.ui-btn.ui-icon-rotate-right
:after
,
html
.ui-btn.ui-icon-repeat
:after
{
content
:
"\f01e"
;
}
html
.ui-btn.ui-icon-refresh
:after
{
content
:
"\f021"
;
}
html
.ui-btn.ui-icon-list-alt
:after
{
content
:
"\f022"
;
}
html
.ui-btn.ui-icon-lock
:after
{
content
:
"\f023"
;
}
html
.ui-btn.ui-icon-flag
:after
{
content
:
"\f024"
;
}
html
.ui-btn.ui-icon-headphones
:after
{
content
:
"\f025"
;
}
html
.ui-btn.ui-icon-volume-off
:after
{
content
:
"\f026"
;
}
html
.ui-btn.ui-icon-volume-down
:after
{
content
:
"\f027"
;
}
html
.ui-btn.ui-icon-volume-up
:after
{
content
:
"\f028"
;
}
html
.ui-btn.ui-icon-qrcode
:after
{
content
:
"\f029"
;
}
html
.ui-btn.ui-icon-barcode
:after
{
content
:
"\f02a"
;
}
html
.ui-btn.ui-icon-tag
:after
{
content
:
"\f02b"
;
}
html
.ui-btn.ui-icon-tags
:after
{
content
:
"\f02c"
;
}
html
.ui-btn.ui-icon-book
:after
{
content
:
"\f02d"
;
}
html
.ui-btn.ui-icon-bookmark
:after
{
content
:
"\f02e"
;
}
html
.ui-btn.ui-icon-print
:after
{
content
:
"\f02f"
;
}
html
.ui-btn.ui-icon-camera
:after
{
content
:
"\f030"
;
}
html
.ui-btn.ui-icon-font
:after
{
content
:
"\f031"
;
}
html
.ui-btn.ui-icon-bold
:after
{
content
:
"\f032"
;
}
html
.ui-btn.ui-icon-italic
:after
{
content
:
"\f033"
;
}
html
.ui-btn.ui-icon-text-height
:after
{
content
:
"\f034"
;
}
html
.ui-btn.ui-icon-text-width
:after
{
content
:
"\f035"
;
}
html
.ui-btn.ui-icon-align-left
:after
{
content
:
"\f036"
;
}
html
.ui-btn.ui-icon-align-center
:after
{
content
:
"\f037"
;
}
html
.ui-btn.ui-icon-align-right
:after
{
content
:
"\f038"
;
}
html
.ui-btn.ui-icon-align-justify
:after
{
content
:
"\f039"
;
}
html
.ui-btn.ui-icon-list
:after
{
content
:
"\f03a"
;
}
html
.ui-btn.ui-icon-indent-left
:after
{
content
:
"\f03b"
;
}
html
.ui-btn.ui-icon-indent-right
:after
{
content
:
"\f03c"
;
}
html
.ui-btn.ui-icon-facetime-video
:after
{
content
:
"\f03d"
;
}
html
.ui-btn.ui-icon-picture
:after
{
content
:
"\f03e"
;
}
html
.ui-btn.ui-icon-pencil
:after
{
content
:
"\f040"
;
}
html
.ui-btn.ui-icon-map-marker
:after
{
content
:
"\f041"
;
}
html
.ui-btn.ui-icon-adjust
:after
{
content
:
"\f042"
;
}
html
.ui-btn.ui-icon-tint
:after
{
content
:
"\f043"
;
}
html
.ui-btn.ui-icon-edit
:after
{
content
:
"\f044"
;
}
html
.ui-btn.ui-icon-share
:after
{
content
:
"\f045"
;
}
html
.ui-btn.ui-icon-check
:after
,
html
.ui-btn.ui-icon-checkbox-on
:after
{
content
:
"\f046"
;
}
html
.ui-btn.ui-icon-move
:after
{
content
:
"\f047"
;
}
html
.ui-btn.ui-icon-step-backward
:after
{
content
:
"\f048"
;
}
html
.ui-btn.ui-icon-fast-backward
:after
{
content
:
"\f049"
;
}
html
.ui-btn.ui-icon-backward
:after
{
content
:
"\f04a"
;
}
html
.ui-btn.ui-icon-play
:after
{
content
:
"\f04b"
;
}
html
.ui-btn.ui-icon-pause
:after
{
content
:
"\f04c"
;
}
html
.ui-btn.ui-icon-stop
:after
{
content
:
"\f04d"
;
}
html
.ui-btn.ui-icon-forward
:after
{
content
:
"\f04e"
;
}
html
.ui-btn.ui-icon-fast-forward
:after
{
content
:
"\f050"
;
}
html
.ui-btn.ui-icon-step-forward
:after
{
content
:
"\f051"
;
}
html
.ui-btn.ui-icon-eject
:after
{
content
:
"\f052"
;
}
html
.ui-btn.ui-icon-chevron-left
:after
{
content
:
"\f053"
;
}
html
.ui-btn.ui-icon-chevron-right
:after
{
content
:
"\f054"
;
}
html
.ui-btn.ui-icon-plus-sign
:after
{
content
:
"\f055"
;
}
html
.ui-btn.ui-icon-minus-sign
:after
{
content
:
"\f056"
;
}
html
.ui-btn.ui-icon-remove-sign
:after
{
content
:
"\f057"
;
}
html
.ui-btn.ui-icon-ok-sign
:after
{
content
:
"\f058"
;
}
html
.ui-btn.ui-icon-question-sign
:after
{
content
:
"\f059"
;
}
html
.ui-btn.ui-icon-info-sign
:after
{
content
:
"\f05a"
;
}
html
.ui-btn.ui-icon-screenshot
:after
{
content
:
"\f05b"
;
}
html
.ui-btn.ui-icon-remove-circle
:after
{
content
:
"\f05c"
;
}
html
.ui-btn.ui-icon-ok-circle
:after
{
content
:
"\f05d"
;
}
html
.ui-btn.ui-icon-ban-circle
:after
{
content
:
"\f05e"
;
}
html
.ui-btn.ui-icon-arrow-left
:after
{
content
:
"\f060"
;
}
html
.ui-btn.ui-icon-arrow-right
:after
{
content
:
"\f061"
;
}
html
.ui-btn.ui-icon-arrow-up
:after
{
content
:
"\f062"
;
}
html
.ui-btn.ui-icon-arrow-down
:after
{
content
:
"\f063"
;
}
html
.ui-btn.ui-icon-mail-forward
:after
,
html
.ui-btn.ui-icon-share-alt
:after
{
content
:
"\f064"
;
}
html
.ui-btn.ui-icon-resize-full
:after
{
content
:
"\f065"
;
}
html
.ui-btn.ui-icon-resize-small
:after
{
content
:
"\f066"
;
}
html
.ui-btn.ui-icon-plus
:after
{
content
:
"\f067"
;
}
html
.ui-btn.ui-icon-minus
:after
{
content
:
"\f068"
;
}
html
.ui-btn.ui-icon-asterisk
:after
{
content
:
"\f069"
;
}
html
.ui-btn.ui-icon-exclamation-sign
:after
{
content
:
"\f06a"
;
}
html
.ui-btn.ui-icon-gift
:after
{
content
:
"\f06b"
;
}
html
.ui-btn.ui-icon-leaf
:after
{
content
:
"\f06c"
;
}
html
.ui-btn.ui-icon-fire
:after
{
content
:
"\f06d"
;
}
html
.ui-btn.ui-icon-eye-open
:after
{
content
:
"\f06e"
;
}
html
.ui-btn.ui-icon-eye-close
:after
{
content
:
"\f070"
;
}
html
.ui-btn.ui-icon-warning-sign
:after
{
content
:
"\f071"
;
}
html
.ui-btn.ui-icon-plane
:after
{
content
:
"\f072"
;
}
html
.ui-btn.ui-icon-calendar
:after
{
content
:
"\f073"
;
}
html
.ui-btn.ui-icon-random
:after
{
content
:
"\f074"
;
}
html
.ui-btn.ui-icon-comment
:after
{
content
:
"\f075"
;
}
html
.ui-btn.ui-icon-magnet
:after
{
content
:
"\f076"
;
}
html
.ui-btn.ui-icon-chevron-up
:after
{
content
:
"\f077"
;
}
html
.ui-btn.ui-icon-chevron-down
:after
{
content
:
"\f078"
;
}
html
.ui-btn.ui-icon-retweet
:after
{
content
:
"\f079"
;
}
html
.ui-btn.ui-icon-shopping-cart
:after
{
content
:
"\f07a"
;
}
html
.ui-btn.ui-icon-folder-close
:after
{
content
:
"\f07b"
;
}
html
.ui-btn.ui-icon-folder-open
:after
{
content
:
"\f07c"
;
}
html
.ui-btn.ui-icon-resize-vertical
:after
{
content
:
"\f07d"
;
}
html
.ui-btn.ui-icon-resize-horizontal
:after
{
content
:
"\f07e"
;
}
html
.ui-btn.ui-icon-bar-chart
:after
{
content
:
"\f080"
;
}
html
.ui-btn.ui-icon-twitter-sign
:after
{
content
:
"\f081"
;
}
html
.ui-btn.ui-icon-facebook-sign
:after
{
content
:
"\f082"
;
}
html
.ui-btn.ui-icon-camera-retro
:after
{
content
:
"\f083"
;
}
html
.ui-btn.ui-icon-key
:after
{
content
:
"\f084"
;
}
html
.ui-btn.ui-icon-cogs
:after
{
content
:
"\f085"
;
}
html
.ui-btn.ui-icon-comments
:after
{
content
:
"\f086"
;
}
html
.ui-btn.ui-icon-thumbs-up-alt
:after
{
content
:
"\f087"
;
}
html
.ui-btn.ui-icon-thumbs-down-alt
:after
{
content
:
"\f088"
;
}
html
.ui-btn.ui-icon-star-half
:after
{
content
:
"\f089"
;
}
html
.ui-btn.ui-icon-heart-empty
:after
{
content
:
"\f08a"
;
}
html
.ui-btn.ui-icon-signout
:after
{
content
:
"\f08b"
;
}
html
.ui-btn.ui-icon-linkedin-sign
:after
{
content
:
"\f08c"
;
}
html
.ui-btn.ui-icon-pushpin
:after
{
content
:
"\f08d"
;
}
html
.ui-btn.ui-icon-external-link
:after
{
content
:
"\f08e"
;
}
html
.ui-btn.ui-icon-signin
:after
{
content
:
"\f090"
;
}
html
.ui-btn.ui-icon-trophy
:after
{
content
:
"\f091"
;
}
html
.ui-btn.ui-icon-github-sign
:after
{
content
:
"\f092"
;
}
html
.ui-btn.ui-icon-upload-alt
:after
{
content
:
"\f093"
;
}
html
.ui-btn.ui-icon-lemon
:after
{
content
:
"\f094"
;
}
html
.ui-btn.ui-icon-phone
:after
{
content
:
"\f095"
;
}
html
.ui-btn.ui-icon-unchecked
:after
,
html
.ui-btn.ui-icon-checkbox-off
:after
,
html
.ui-btn.ui-icon-check-empty
:after
{
content
:
"\f096"
;
}
html
.ui-btn.ui-icon-bookmark-empty
:after
{
content
:
"\f097"
;
}
html
.ui-btn.ui-icon-phone-sign
:after
{
content
:
"\f098"
;
}
html
.ui-btn.ui-icon-twitter
:after
{
content
:
"\f099"
;
}
html
.ui-btn.ui-icon-facebook
:after
{
content
:
"\f09a"
;
}
html
.ui-btn.ui-icon-github
:after
{
content
:
"\f09b"
;
}
html
.ui-btn.ui-icon-unlock
:after
{
content
:
"\f09c"
;
}
html
.ui-btn.ui-icon-credit-card
:after
{
content
:
"\f09d"
;
}
html
.ui-btn.ui-icon-rss
:after
{
content
:
"\f09e"
;
}
html
.ui-btn.ui-icon-hdd
:after
{
content
:
"\f0a0"
;
}
html
.ui-btn.ui-icon-bullhorn
:after
{
content
:
"\f0a1"
;
}
html
.ui-btn.ui-icon-bell
:after
{
content
:
"\f0a2"
;
}
html
.ui-btn.ui-icon-certificate
:after
{
content
:
"\f0a3"
;
}
html
.ui-btn.ui-icon-hand-right
:after
{
content
:
"\f0a4"
;
}
html
.ui-btn.ui-icon-hand-left
:after
{
content
:
"\f0a5"
;
}
html
.ui-btn.ui-icon-hand-up
:after
{
content
:
"\f0a6"
;
}
html
.ui-btn.ui-icon-hand-down
:after
{
content
:
"\f0a7"
;
}
html
.ui-btn.ui-icon-circle-arrow-left
:after
{
content
:
"\f0a8"
;
}
html
.ui-btn.ui-icon-circle-arrow-right
:after
{
content
:
"\f0a9"
;
}
html
.ui-btn.ui-icon-circle-arrow-up
:after
{
content
:
"\f0aa"
;
}
html
.ui-btn.ui-icon-circle-arrow-down
:after
{
content
:
"\f0ab"
;
}
html
.ui-btn.ui-icon-globe
:after
{
content
:
"\f0ac"
;
}
html
.ui-btn.ui-icon-wrench
:after
{
content
:
"\f0ad"
;
}
html
.ui-btn.ui-icon-tasks
:after
{
content
:
"\f0ae"
;
}
html
.ui-btn.ui-icon-filter
:after
{
content
:
"\f0b0"
;
}
html
.ui-btn.ui-icon-briefcase
:after
{
content
:
"\f0b1"
;
}
html
.ui-btn.ui-icon-fullscreen
:after
{
content
:
"\f0b2"
;
}
html
.ui-btn.ui-icon-group
:after
{
content
:
"\f0c0"
;
}
html
.ui-btn.ui-icon-link
:after
{
content
:
"\f0c1"
;
}
html
.ui-btn.ui-icon-cloud
:after
{
content
:
"\f0c2"
;
}
html
.ui-btn.ui-icon-beaker
:after
{
content
:
"\f0c3"
;
}
html
.ui-btn.ui-icon-cut
:after
{
content
:
"\f0c4"
;
}
html
.ui-btn.ui-icon-copy
:after
{
content
:
"\f0c5"
;
}
html
.ui-btn.ui-icon-paperclip
:after
,
html
.ui-btn.ui-icon-paper-clip
:after
{
content
:
"\f0c6"
;
}
html
.ui-btn.ui-icon-save
:after
{
content
:
"\f0c7"
;
}
html
.ui-btn.ui-icon-sign-blank
:after
{
content
:
"\f0c8"
;
}
html
.ui-btn.ui-icon-reorder
:after
{
content
:
"\f0c9"
;
}
html
.ui-btn.ui-icon-list-ul
:after
{
content
:
"\f0ca"
;
}
html
.ui-btn.ui-icon-list-ol
:after
{
content
:
"\f0cb"
;
}
html
.ui-btn.ui-icon-strikethrough
:after
{
content
:
"\f0cc"
;
}
html
.ui-btn.ui-icon-underline
:after
{
content
:
"\f0cd"
;
}
html
.ui-btn.ui-icon-table
:after
{
content
:
"\f0ce"
;
}
html
.ui-btn.ui-icon-magic
:after
{
content
:
"\f0d0"
;
}
html
.ui-btn.ui-icon-truck
:after
{
content
:
"\f0d1"
;
}
html
.ui-btn.ui-icon-pinterest
:after
{
content
:
"\f0d2"
;
}
html
.ui-btn.ui-icon-pinterest-sign
:after
{
content
:
"\f0d3"
;
}
html
.ui-btn.ui-icon-google-plus-sign
:after
{
content
:
"\f0d4"
;
}
html
.ui-btn.ui-icon-google-plus
:after
{
content
:
"\f0d5"
;
}
html
.ui-btn.ui-icon-money
:after
{
content
:
"\f0d6"
;
}
html
.ui-btn.ui-icon-caret-down
:after
{
content
:
"\f0d7"
;
}
html
.ui-btn.ui-icon-caret-up
:after
{
content
:
"\f0d8"
;
}
html
.ui-btn.ui-icon-caret-left
:after
{
content
:
"\f0d9"
;
}
html
.ui-btn.ui-icon-caret-right
:after
,
html
.ui-btn.ui-icon-arrow-r
:after
{
content
:
"\f0da"
;
}
html
.ui-btn.ui-icon-columns
:after
{
content
:
"\f0db"
;
}
html
.ui-btn.ui-icon-sort
:after
,
html
{
content
:
"\f0dc"
;
}
html
.ui-btn.ui-icon-sort-down
:after
{
content
:
"\f0dd"
;
}
html
.ui-btn.ui-icon-sort-up
:after
{
content
:
"\f0de"
;
}
html
.ui-btn.ui-icon-envelope
:after
{
content
:
"\f0e0"
;
}
html
.ui-btn.ui-icon-linkedin
:after
{
content
:
"\f0e1"
;
}
html
.ui-btn.ui-icon-rotate-left
:after
,
html
.ui-btn.ui-icon-undo
:after
{
content
:
"\f0e2"
;
}
html
.ui-btn.ui-icon-legal
:after
{
content
:
"\f0e3"
;
}
html
.ui-btn.ui-icon-dashboard
:after
{
content
:
"\f0e4"
;
}
html
.ui-btn.ui-icon-comment-alt
:after
{
content
:
"\f0e5"
;
}
html
.ui-btn.ui-icon-comments-alt
:after
{
content
:
"\f0e6"
;
}
html
.ui-btn.ui-icon-bolt
:after
{
content
:
"\f0e7"
;
}
html
.ui-btn.ui-icon-sitemap
:after
{
content
:
"\f0e8"
;
}
html
.ui-btn.ui-icon-umbrella
:after
{
content
:
"\f0e9"
;
}
html
.ui-btn.ui-icon-paste
:after
{
content
:
"\f0ea"
;
}
html
.ui-btn.ui-icon-lightbulb
:after
{
content
:
"\f0eb"
;
}
html
.ui-btn.ui-icon-exchange
:after
{
content
:
"\f0ec"
;
}
html
.ui-btn.ui-icon-cloud-download
:after
{
content
:
"\f0ed"
;
}
html
.ui-btn.ui-icon-cloud-upload
:after
{
content
:
"\f0ee"
;
}
html
.ui-btn.ui-icon-user-md
:after
{
content
:
"\f0f0"
;
}
html
.ui-btn.ui-icon-stethoscope
:after
{
content
:
"\f0f1"
;
}
html
.ui-btn.ui-icon-suitcase
:after
{
content
:
"\f0f2"
;
}
html
.ui-btn.ui-icon-bell-alt
:after
{
content
:
"\f0f3"
;
}
html
.ui-btn.ui-icon-coffee
:after
{
content
:
"\f0f4"
;
}
html
.ui-btn.ui-icon-food
:after
{
content
:
"\f0f5"
;
}
html
.ui-btn.ui-icon-file-text-alt
:after
{
content
:
"\f0f6"
;
}
html
.ui-btn.ui-icon-building
:after
{
content
:
"\f0f7"
;
}
html
.ui-btn.ui-icon-hospital
:after
{
content
:
"\f0f8"
;
}
html
.ui-btn.ui-icon-ambulance
:after
{
content
:
"\f0f9"
;
}
html
.ui-btn.ui-icon-medkit
:after
{
content
:
"\f0fa"
;
}
html
.ui-btn.ui-icon-fighter-jet
:after
{
content
:
"\f0fb"
;
}
html
.ui-btn.ui-icon-beer
:after
{
content
:
"\f0fc"
;
}
html
.ui-btn.ui-icon-h-sign
:after
{
content
:
"\f0fd"
;
}
html
.ui-btn.ui-icon-plus-sign-alt
:after
{
content
:
"\f0fe"
;
}
html
.ui-btn.ui-icon-double-angle-left
:after
{
content
:
"\f100"
;
}
html
.ui-btn.ui-icon-double-angle-right
:after
{
content
:
"\f101"
;
}
html
.ui-btn.ui-icon-double-angle-up
:after
{
content
:
"\f102"
;
}
html
.ui-btn.ui-icon-double-angle-down
:after
{
content
:
"\f103"
;
}
html
.ui-btn.ui-icon-angle-left
:after
{
content
:
"\f104"
;
}
html
.ui-btn.ui-icon-angle-right
:after
{
content
:
"\f105"
;
}
html
.ui-btn.ui-icon-angle-up
:after
{
content
:
"\f106"
;
}
html
.ui-btn.ui-icon-angle-down
:after
{
content
:
"\f107"
;
}
html
.ui-btn.ui-icon-desktop
:after
{
content
:
"\f108"
;
}
html
.ui-btn.ui-icon-laptop
:after
{
content
:
"\f109"
;
}
html
.ui-btn.ui-icon-tablet
:after
{
content
:
"\f10a"
;
}
html
.ui-btn.ui-icon-mobile-phone
:after
{
content
:
"\f10b"
;
}
html
.ui-btn.ui-icon-circle-blank
:after
{
content
:
"\f10c"
;
}
html
.ui-btn.ui-icon-quote-left
:after
{
content
:
"\f10d"
;
}
html
.ui-btn.ui-icon-quote-right
:after
{
content
:
"\f10e"
;
}
html
.ui-btn.ui-icon-spinner
:after
{
content
:
"\f110"
;
}
html
.ui-btn.ui-icon-circle
:after
{
content
:
"\f111"
;
}
html
.ui-btn.ui-icon-mail-reply
:after
,
html
.ui-btn.ui-icon-reply
:after
{
content
:
"\f112"
;
}
html
.ui-btn.ui-icon-github-alt
:after
{
content
:
"\f113"
;
}
html
.ui-btn.ui-icon-folder-close-alt
:after
{
content
:
"\f114"
;
}
html
.ui-btn.ui-icon-folder-open-alt
:after
{
content
:
"\f115"
;
}
html
.ui-btn.ui-icon-expand-alt
:after
{
content
:
"\f116"
;
}
html
.ui-btn.ui-icon-collapse-alt
:after
{
content
:
"\f117"
;
}
html
.ui-btn.ui-icon-smile
:after
{
content
:
"\f118"
;
}
html
.ui-btn.ui-icon-frown
:after
{
content
:
"\f119"
;
}
html
.ui-btn.ui-icon-meh
:after
{
content
:
"\f11a"
;
}
html
.ui-btn.ui-icon-gamepad
:after
{
content
:
"\f11b"
;
}
html
.ui-btn.ui-icon-keyboard
:after
{
content
:
"\f11c"
;
}
html
.ui-btn.ui-icon-flag-alt
:after
{
content
:
"\f11d"
;
}
html
.ui-btn.ui-icon-flag-checkered
:after
{
content
:
"\f11e"
;
}
html
.ui-btn.ui-icon-terminal
:after
{
content
:
"\f120"
;
}
html
.ui-btn.ui-icon-code
:after
{
content
:
"\f121"
;
}
html
.ui-btn.ui-icon-reply-all
:after
{
content
:
"\f122"
;
}
html
.ui-btn.ui-icon-mail-reply-all
:after
{
content
:
"\f122"
;
}
html
.ui-btn.ui-icon-star-half-full
:after
,
html
.ui-btn.ui-icon-star-half-empty
:after
{
content
:
"\f123"
;
}
html
.ui-btn.ui-icon-location-arrow
:after
{
content
:
"\f124"
;
}
html
.ui-btn.ui-icon-crop
:after
{
content
:
"\f125"
;
}
html
.ui-btn.ui-icon-code-fork
:after
{
content
:
"\f126"
;
}
html
.ui-btn.ui-icon-unlink
:after
{
content
:
"\f127"
;
}
html
.ui-btn.ui-icon-question
:after
{
content
:
"\f128"
;
}
html
.ui-btn.ui-icon-info
:after
{
content
:
"\f129"
;
}
html
.ui-btn.ui-icon-exclamation
:after
{
content
:
"\f12a"
;
}
html
.ui-btn.ui-icon-superscript
:after
{
content
:
"\f12b"
;
}
html
.ui-btn.ui-icon-subscript
:after
{
content
:
"\f12c"
;
}
html
.ui-btn.ui-icon-eraser
:after
{
content
:
"\f12d"
;
}
html
.ui-btn.ui-icon-puzzle-piece
:after
{
content
:
"\f12e"
;
}
html
.ui-btn.ui-icon-microphone
:after
{
content
:
"\f130"
;
}
html
.ui-btn.ui-icon-microphone-off
:after
{
content
:
"\f131"
;
}
html
.ui-btn.ui-icon-shield
:after
{
content
:
"\f132"
;
}
html
.ui-btn.ui-icon-calendar-empty
:after
{
content
:
"\f133"
;
}
html
.ui-btn.ui-icon-fire-extinguisher
:after
{
content
:
"\f134"
;
}
html
.ui-btn.ui-icon-rocket
:after
{
content
:
"\f135"
;
}
html
.ui-btn.ui-icon-maxcdn
:after
{
content
:
"\f136"
;
}
html
.ui-btn.ui-icon-chevron-sign-left
:after
{
content
:
"\f137"
;
}
html
.ui-btn.ui-icon-chevron-sign-right
:after
{
content
:
"\f138"
;
}
html
.ui-btn.ui-icon-chevron-sign-up
:after
{
content
:
"\f139"
;
}
html
.ui-btn.ui-icon-chevron-sign-down
:after
{
content
:
"\f13a"
;
}
html
.ui-btn.ui-icon-html5
:after
{
content
:
"\f13b"
;
}
html
.ui-btn.ui-icon-css3
:after
{
content
:
"\f13c"
;
}
html
.ui-btn.ui-icon-anchor
:after
{
content
:
"\f13d"
;
}
html
.ui-btn.ui-icon-unlock-alt
:after
{
content
:
"\f13e"
;
}
html
.ui-btn.ui-icon-bullseye
:after
{
content
:
"\f140"
;
}
html
.ui-btn.ui-icon-ellipsis-horizontal
:after
{
content
:
"\f141"
;
}
html
.ui-btn.ui-icon-ellipsis-vertical
:after
{
content
:
"\f142"
;
}
html
.ui-btn.ui-icon-rss-sign
:after
{
content
:
"\f143"
;
}
html
.ui-btn.ui-icon-play-sign
:after
{
content
:
"\f144"
;
}
html
.ui-btn.ui-icon-ticket
:after
{
content
:
"\f145"
;
}
html
.ui-btn.ui-icon-minus-sign-alt
:after
{
content
:
"\f146"
;
}
html
.ui-btn.ui-icon-check-minus
:after
{
content
:
"\f147"
;
}
html
.ui-btn.ui-icon-level-up
:after
{
content
:
"\f148"
;
}
html
.ui-btn.ui-icon-level-down
:after
{
content
:
"\f149"
;
}
html
.ui-btn.ui-icon-check-sign
:after
{
content
:
"\f14a"
;
}
html
.ui-btn.ui-icon-edit-sign
:after
{
content
:
"\f14b"
;
}
html
.ui-btn.ui-icon-external-link-sign
:after
{
content
:
"\f14c"
;
}
html
.ui-btn.ui-icon-share-sign
:after
{
content
:
"\f14d"
;
}
html
.ui-btn.ui-icon-compass
:after
{
content
:
"\f14e"
;
}
html
.ui-btn.ui-icon-collapse
:after
{
content
:
"\f150"
;
}
html
.ui-btn.ui-icon-collapse-top
:after
{
content
:
"\f151"
;
}
html
.ui-btn.ui-icon-expand
:after
{
content
:
"\f152"
;
}
html
.ui-btn.ui-icon-euro
:after
,
html
.ui-btn.ui-icon-eur
:after
{
content
:
"\f153"
;
}
html
.ui-btn.ui-icon-gbp
:after
{
content
:
"\f154"
;
}
html
.ui-btn.ui-icon-dollar
:after
,
html
.ui-btn.ui-icon-usd
:after
{
content
:
"\f155"
;
}
html
.ui-btn.ui-icon-rupee
:after
,
html
.ui-btn.ui-icon-inr
:after
{
content
:
"\f156"
;
}
html
.ui-btn.ui-icon-yen
:after
,
html
.ui-btn.ui-icon-jpy
:after
{
content
:
"\f157"
;
}
html
.ui-btn.ui-icon-renminbi
:after
,
html
.ui-btn.ui-icon-cny
:after
{
content
:
"\f158"
;
}
html
.ui-btn.ui-icon-won
:after
,
html
.ui-btn.ui-icon-krw
:after
{
content
:
"\f159"
;
}
html
.ui-btn.ui-icon-bitcoin
:after
,
html
.ui-btn.ui-icon-btc
:after
{
content
:
"\f15a"
;
}
html
.ui-btn.ui-icon-file
:after
{
content
:
"\f15b"
;
}
html
.ui-btn.ui-icon-file-text
:after
{
content
:
"\f15c"
;
}
html
.ui-btn.ui-icon-sort-by-alphabet
:after
{
content
:
"\f15d"
;
}
html
.ui-btn.ui-icon-sort-by-alphabet-alt
:after
{
content
:
"\f15e"
;
}
html
.ui-btn.ui-icon-sort-by-attributes
:after
{
content
:
"\f160"
;
}
html
.ui-btn.ui-icon-sort-by-attributes-alt
:after
{
content
:
"\f161"
;
}
html
.ui-btn.ui-icon-sort-by-order
:after
{
content
:
"\f162"
;
}
html
.ui-btn.ui-icon-sort-by-order-alt
:after
{
content
:
"\f163"
;
}
html
.ui-btn.ui-icon-thumbs-up
:after
{
content
:
"\f164"
;
}
html
.ui-btn.ui-icon-thumbs-down
:after
{
content
:
"\f165"
;
}
html
.ui-btn.ui-icon-youtube-sign
:after
{
content
:
"\f166"
;
}
html
.ui-btn.ui-icon-youtube
:after
{
content
:
"\f167"
;
}
html
.ui-btn.ui-icon-xing
:after
{
content
:
"\f168"
;
}
html
.ui-btn.ui-icon-xing-sign
:after
{
content
:
"\f169"
;
}
html
.ui-btn.ui-icon-youtube-play
:after
{
content
:
"\f16a"
;
}
html
.ui-btn.ui-icon-dropbox
:after
{
content
:
"\f16b"
;
}
html
.ui-btn.ui-icon-stackexchange
:after
{
content
:
"\f16c"
;
}
html
.ui-btn.ui-icon-instagram
:after
{
content
:
"\f16d"
;
}
html
.ui-btn.ui-icon-flickr
:after
{
content
:
"\f16e"
;
}
html
.ui-btn.ui-icon-adn
:after
{
content
:
"\f170"
;
}
html
.ui-btn.ui-icon-bitbucket
:after
{
content
:
"\f171"
;
}
html
.ui-btn.ui-icon-bitbucket-sign
:after
{
content
:
"\f172"
;
}
html
.ui-btn.ui-icon-tumblr
:after
{
content
:
"\f173"
;
}
html
.ui-btn.ui-icon-tumblr-sign
:after
{
content
:
"\f174"
;
}
html
.ui-btn.ui-icon-long-arrow-down
:after
{
content
:
"\f175"
;
}
html
.ui-btn.ui-icon-long-arrow-up
:after
{
content
:
"\f176"
;
}
html
.ui-btn.ui-icon-long-arrow-left
:after
{
content
:
"\f177"
;
}
html
.ui-btn.ui-icon-long-arrow-right
:after
{
content
:
"\f178"
;
}
html
.ui-btn.ui-icon-apple
:after
{
content
:
"\f179"
;
}
html
.ui-btn.ui-icon-windows
:after
{
content
:
"\f17a"
;
}
html
.ui-btn.ui-icon-android
:after
{
content
:
"\f17b"
;
}
html
.ui-btn.ui-icon-linux
:after
{
content
:
"\f17c"
;
}
html
.ui-btn.ui-icon-dribble
:after
{
content
:
"\f17d"
;
}
html
.ui-btn.ui-icon-skype
:after
{
content
:
"\f17e"
;
}
html
.ui-btn.ui-icon-foursquare
:after
{
content
:
"\f180"
;
}
html
.ui-btn.ui-icon-trello
:after
{
content
:
"\f181"
;
}
html
.ui-btn.ui-icon-female
:after
{
content
:
"\f182"
;
}
html
.ui-btn.ui-icon-male
:after
{
content
:
"\f183"
;
}
html
.ui-btn.ui-icon-gittip
:after
{
content
:
"\f184"
;
}
html
.ui-btn.ui-icon-sun
:after
{
content
:
"\f185"
;
}
html
.ui-btn.ui-icon-moon
:after
{
content
:
"\f186"
;
}
html
.ui-btn.ui-icon-archive
:after
{
content
:
"\f187"
;
}
html
.ui-btn.ui-icon-bug
:after
{
content
:
"\f188"
;
}
html
.ui-btn.ui-icon-vk
:after
{
content
:
"\f189"
;
}
html
.ui-btn.ui-icon-weibo
:after
{
content
:
"\f18a"
;
}
html
.ui-btn.ui-icon-renren
:after
{
content
:
"\f18b"
;
}
/* JQM compat */
/* clear background */
html
.ui-btn
:after
,
html
.ui-btn.ui-icon-checkbox-off
:after
,
html
.ui-btn.ui-icon-radio-off
:after
{
background
:
0
none
;
border-radius
:
0
;
-webkit-border-radius
:
0
;
}
/* iconsize, positioning */
.ui-page-theme-slapos-white
.ui-btn
[
class
*=
"ui-icon-"
]
:after
,
.ui-page-theme-slapos-white
.ui-btn
[
class
*=
"ui-icon-"
]
:after
{
font-size
:
1.5em
;
}
.ui-page-theme-slapos-white
.ui-header
.ui-btn
[
class
*=
"ui-icon-"
]
:after
,
.ui-page-theme-slapos-white
.ui-header
.ui-btn
[
class
*=
"ui-icon-"
]
:after
{
margin-top
:
0
;
top
:
0
;
}
/* revert for no-svg */
.ui-nosvg
.ui-page-theme-slapos-white
.ui-btn
[
class
*=
"ui-icon-"
]
:after
,
.ui-nosvg
.ui-page-theme-slapos-white
.ui-btn
[
class
*=
"ui-icon-"
]
:after
{
margin-top
:
-11px
;
top
:
50%
;
content
:
""
;
}
/* FALLBACK Icons - JQM compat: user, reorder, search, delete */
/* bars */
.ui-nosvg
.ui-btn.ui-icon-reorder
:after
{
background-image
:
url(img/jquery-mobile/icons-png/bars-black.png)
;
}
/* delete */
.ui-nosvg
.ui-btn.ui-icon-delete
:after
{
background-image
:
url(images/icons-png/delete-black.png)
;
}
/* search */
.ui-nosvg
.ui-btn.ui-icon-search
:after
{
background-image
:
url(images/icons-png/search-black.png)
;
}
/* user */
.ui-nosvg
.ui-icon-user
:after
{
background-image
:
url(images/icons-png/user-white.png)
;
}
\ No newline at end of file
bt5/erp5_officejs/PathTemplateItem/web_page_module/gadget_officejs_appstore_css_fontawesome_css_font-awesome_css.xml
View file @
87a653e2
...
...
@@ -205,7 +205,9 @@
</item>
<item>
<key>
<string>
comment
</string>
</key>
<value>
<string></string>
</value>
<value>
<none/>
</value>
</item>
<item>
<key>
<string>
error_message
</string>
</key>
...
...
@@ -213,7 +215,7 @@
</item>
<item>
<key>
<string>
serial
</string>
</key>
<value>
<string>
0.0.0.0
</string>
</value>
<value>
<string>
960.25484.60987.38638
</string>
</value>
</item>
<item>
<key>
<string>
state
</string>
</key>
...
...
@@ -231,7 +233,7 @@
</tuple>
<state>
<tuple>
<float>
1
497861288.69
</float>
<float>
1
504004940.82
</float>
<string>
UTC
</string>
</tuple>
</state>
...
...
bt5/erp5_officejs/PathTemplateItem/web_page_module/gadget_officejs_appstore_html.
txt
→
bt5/erp5_officejs/PathTemplateItem/web_page_module/gadget_officejs_appstore_html.
html
View file @
87a653e2
File moved
bt5/erp5_officejs/PathTemplateItem/web_page_module/gadget_officejs_appstore_html.xml
View file @
87a653e2
...
...
@@ -68,7 +68,7 @@
</item>
<item>
<key>
<string>
content_type
</string>
</key>
<value>
<string>
text/
plain
</string>
</value>
<value>
<string>
text/
html
</string>
</value>
</item>
<item>
<key>
<string>
default_reference
</string>
</key>
...
...
@@ -233,7 +233,7 @@
</item>
<item>
<key>
<string>
serial
</string>
</key>
<value>
<string>
960.
12729.13699.3421
8
</string>
</value>
<value>
<string>
960.
25484.60987.3863
8
</string>
</value>
</item>
<item>
<key>
<string>
state
</string>
</key>
...
...
@@ -251,7 +251,7 @@
</tuple>
<state>
<tuple>
<float>
1
498046962.65
</float>
<float>
1
503994049.51
</float>
<string>
UTC
</string>
</tuple>
</state>
...
...
bt5/erp5_officejs/PathTemplateItem/web_page_module/gadget_officejs_jio_appcachestorage_js.js
View file @
87a653e2
...
...
@@ -16,16 +16,20 @@
this
.
_prefix
=
spec
.
prefix
||
""
;
this
.
_documents
=
{};
// Harcoded here, find a better way.
this
.
_relative_url_list
=
[
this
.
_prefix
+
"
/
"
,
this
.
_prefix
+
"
gadget_officejs_bootloader.js
"
,
this
.
_prefix
+
"
gadget_officejs_bootloader_presentation.html
"
,
this
.
_prefix
+
"
gadget_officejs_bootloader_presentation.js
"
,
this
.
_prefix
+
"
gadget_officejs_bootloader_presentation.css
"
,
this
.
_prefix
+
"
gadget_officejs_bootloader_serviceworker.js
"
,
this
.
_prefix
+
"
gadget_erp5_nojqm.css
"
,
this
.
_prefix
+
"
jio_appcachestorage.js
"
];
if
(
this
.
_take_installer
)
{
this
.
_relative_url_list
=
[
this
.
_prefix
+
"
/
"
,
this
.
_prefix
+
"
gadget_officejs_bootloader.js
"
,
this
.
_prefix
+
"
gadget_officejs_bootloader_presentation.html
"
,
this
.
_prefix
+
"
gadget_officejs_bootloader_presentation.js
"
,
this
.
_prefix
+
"
gadget_officejs_bootloader_presentation.css
"
,
this
.
_prefix
+
"
gadget_officejs_bootloader_serviceworker.js
"
,
this
.
_prefix
+
"
gadget_erp5_nojqm.css
"
,
this
.
_prefix
+
"
jio_appcachestorage.js
"
];
}
else
{
this
.
_relative_url_list
=
[
this
.
_prefix
+
"
/
"
];
}
if
(
this
.
_take_installer
)
{
this
.
_version
=
'
app/
'
;
}
...
...
bt5/erp5_officejs/PathTemplateItem/web_page_module/gadget_officejs_jio_appcachestorage_js.xml
View file @
87a653e2
...
...
@@ -239,7 +239,7 @@
</item>
<item>
<key>
<string>
serial
</string>
</key>
<value>
<string>
961.
17737.55306.1348
</string>
</value>
<value>
<string>
961.
47863.39660.12714
</string>
</value>
</item>
<item>
<key>
<string>
state
</string>
</key>
...
...
@@ -257,7 +257,7 @@
</tuple>
<state>
<tuple>
<float>
150
2193583.56
</float>
<float>
150
4000868.4
</float>
<string>
UTC
</string>
</tuple>
</state>
...
...
bt5/erp5_officejs/PathTemplateItem/web_page_module/gadget_officejs_page_export_html.html
View file @
87a653e2
...
...
@@ -46,6 +46,7 @@
<option>
Image Editor
</option>
<option>
Awesome Free Software Publisher List
</option>
<option>
Todomvc
</option>
<option>
App Store
</option>
</select>
</div>
</div>
...
...
bt5/erp5_officejs/PathTemplateItem/web_page_module/gadget_officejs_page_export_html.xml
View file @
87a653e2
...
...
@@ -231,7 +231,7 @@
</item>
<item>
<key>
<string>
serial
</string>
</key>
<value>
<string>
96
0.25484.60987.38638
</string>
</value>
<value>
<string>
96
1.47852.14013.52787
</string>
</value>
</item>
<item>
<key>
<string>
state
</string>
</key>
...
...
@@ -249,7 +249,7 @@
</tuple>
<state>
<tuple>
<float>
1
499259242.52
</float>
<float>
1
504000114.75
</float>
<string>
UTC
</string>
</tuple>
</state>
...
...
bt5/erp5_officejs/PathTemplateItem/web_page_module/gadget_officejs_page_export_js.js
View file @
87a653e2
...
...
@@ -75,7 +75,7 @@
"
no_installer
"
:
true
,
"
sub_gadget
"
:
[
"
connection
"
]
},
"
App
s
tore
"
:
{
"
App
S
tore
"
:
{
"
url
"
:
"
officejsoldv1/
"
,
"
cache
"
:
"
officejs_store.appcache
"
,
"
no_installer
"
:
true
,
...
...
@@ -141,8 +141,7 @@
i
=
0
,
form_result
=
{},
len
=
event
.
target
.
length
,
app
,
take_installer
;
app
;
for
(
j
=
0
;
j
<
len
;
j
+=
1
)
{
form_result
[
event
.
target
[
j
].
name
]
=
event
.
target
[
j
].
value
;
...
...
@@ -157,6 +156,7 @@
return
gadget
.
fillZip
(
application_dict
[
sub_app
].
cache
,
origin_url
+
app
.
url
,
application_dict
[
sub_app
].
no_installer
,
zip_file
,
sub_app
+
"
/
"
)
...
...
@@ -168,7 +168,7 @@
return
zip_file
;
}
return
gadget
.
fillZip
(
app
.
cache
,
origin_url
+
app
.
url
)
return
gadget
.
fillZip
(
app
.
cache
,
origin_url
+
app
.
url
,
app
.
no_installer
)
.
push
(
function
(
zip_file
)
{
return
fill
(
zip_file
);
})
...
...
@@ -196,8 +196,8 @@
g
.
props
.
element
=
element
;
});
})
.
declareMethod
(
"
fillZip
"
,
function
(
cache_file
,
site_url
,
zip_file
,
prefix
)
{
.
declareMethod
(
"
fillZip
"
,
function
(
cache_file
,
site_url
,
no_installer
,
zip_file
,
prefix
)
{
var
gadget
=
this
,
file_storage
=
jIO
.
createJIO
({
type
:
"
replicate
"
,
...
...
@@ -213,7 +213,7 @@
document
:
site_url
,
sub_storage
:
{
type
:
"
appcache
"
,
take_installer
:
true
,
take_installer
:
no_installer
===
undefined
,
manifest
:
cache_file
,
origin_url
:
site_url
,
prefix
:
prefix
||
""
...
...
bt5/erp5_officejs/PathTemplateItem/web_page_module/gadget_officejs_page_export_js.xml
View file @
87a653e2
...
...
@@ -227,7 +227,7 @@
</item>
<item>
<key>
<string>
serial
</string>
</key>
<value>
<string>
961.
17739.7403.25139
</string>
</value>
<value>
<string>
961.
47860.26994.26982
</string>
</value>
</item>
<item>
<key>
<string>
state
</string>
</key>
...
...
@@ -245,7 +245,7 @@
</tuple>
<state>
<tuple>
<float>
150
2193354.69
</float>
<float>
150
4000609.36
</float>
<string>
UTC
</string>
</tuple>
</state>
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment