Procházet zdrojové kódy

HUE-1695 [core] Update FontAwesome to version 4

Changed font files, css and modified all the names
Enrico Berti před 12 roky
rodič
revize
6b18c69cfb
100 změnil soubory, kde provedl 1010 přidání a 1002 odebrání
  1. 12 12
      apps/about/src/about/templates/admin_wizard.mako
  2. 2 2
      apps/beeswax/src/beeswax/templates/choose_delimiter.mako
  3. 2 2
      apps/beeswax/src/beeswax/templates/choose_file.mako
  4. 2 2
      apps/beeswax/src/beeswax/templates/create_table_manually.mako
  5. 5 5
      apps/beeswax/src/beeswax/templates/define_columns.mako
  6. 13 13
      apps/beeswax/src/beeswax/templates/execute.mako
  7. 16 16
      apps/beeswax/src/beeswax/templates/list_designs.mako
  8. 13 13
      apps/beeswax/src/beeswax/templates/list_trashed_designs.mako
  9. 20 20
      apps/beeswax/src/beeswax/templates/my_queries.mako
  10. 5 5
      apps/beeswax/src/beeswax/templates/watch_results.mako
  11. 1 1
      apps/filebrowser/src/filebrowser/static/help/index.html
  12. 3 3
      apps/filebrowser/src/filebrowser/templates/chooser.mako
  13. 9 9
      apps/filebrowser/src/filebrowser/templates/display.mako
  14. 5 5
      apps/filebrowser/src/filebrowser/templates/fb_components.mako
  15. 19 19
      apps/filebrowser/src/filebrowser/templates/listdir.mako
  16. 4 4
      apps/filebrowser/src/filebrowser/templates/listdir_components.mako
  17. 33 33
      apps/hbase/src/hbase/templates/app.mako
  18. 1 1
      apps/hbase/static/css/hbase.css
  19. 6 6
      apps/jobbrowser/src/jobbrowser/templates/job.mako
  20. 1 1
      apps/jobbrowser/src/jobbrowser/templates/job_not_assigned.mako
  21. 1 1
      apps/jobbrowser/src/jobbrowser/templates/jobbrowser_components.mako
  22. 3 3
      apps/jobbrowser/src/jobbrowser/templates/jobs.mako
  23. 1 1
      apps/jobbrowser/src/jobbrowser/templates/task.mako
  24. 1 1
      apps/jobbrowser/src/jobbrowser/templates/tasks.mako
  25. 1 1
      apps/jobbrowser/static/help/index.html
  26. 1 1
      apps/jobbrowser/static/js/utils.js
  27. 25 25
      apps/jobsub/src/jobsub/templates/designs.mako
  28. 1 1
      apps/jobsub/static/templates/actions/distcp.html
  29. 1 1
      apps/jobsub/static/templates/actions/email.html
  30. 1 1
      apps/jobsub/static/templates/actions/fs.html
  31. 1 1
      apps/jobsub/static/templates/actions/hive.html
  32. 1 1
      apps/jobsub/static/templates/actions/java.html
  33. 1 1
      apps/jobsub/static/templates/actions/mapreduce.html
  34. 1 1
      apps/jobsub/static/templates/actions/pig.html
  35. 1 1
      apps/jobsub/static/templates/actions/shell.html
  36. 1 1
      apps/jobsub/static/templates/actions/sqoop.html
  37. 1 1
      apps/jobsub/static/templates/actions/ssh.html
  38. 1 1
      apps/jobsub/static/templates/actions/streaming.html
  39. 11 11
      apps/metastore/src/metastore/templates/databases.mako
  40. 1 1
      apps/metastore/src/metastore/templates/describe_partitions.mako
  41. 5 5
      apps/metastore/src/metastore/templates/describe_table.mako
  42. 14 14
      apps/metastore/src/metastore/templates/tables.mako
  43. 1 1
      apps/oozie/src/oozie/templates/dashboard/list_oozie_bundle.mako
  44. 1 1
      apps/oozie/src/oozie/templates/dashboard/list_oozie_coordinator.mako
  45. 3 3
      apps/oozie/src/oozie/templates/dashboard/list_oozie_workflow.mako
  46. 2 2
      apps/oozie/src/oozie/templates/dashboard/list_oozie_workflow_action.mako
  47. 1 1
      apps/oozie/src/oozie/templates/editor/action_utils.mako
  48. 1 1
      apps/oozie/src/oozie/templates/editor/create_bundle.mako
  49. 2 2
      apps/oozie/src/oozie/templates/editor/create_workflow.mako
  50. 7 7
      apps/oozie/src/oozie/templates/editor/edit_bundle.mako
  51. 7 7
      apps/oozie/src/oozie/templates/editor/edit_coordinator.mako
  52. 31 31
      apps/oozie/src/oozie/templates/editor/edit_workflow.mako
  53. 2 2
      apps/oozie/src/oozie/templates/editor/gen/workflow-graph-status.xml.mako
  54. 1 1
      apps/oozie/src/oozie/templates/editor/import_workflow.mako
  55. 16 16
      apps/oozie/src/oozie/templates/editor/list_bundles.mako
  56. 16 16
      apps/oozie/src/oozie/templates/editor/list_coordinators.mako
  57. 13 13
      apps/oozie/src/oozie/templates/editor/list_trashed_bundles.mako
  58. 13 13
      apps/oozie/src/oozie/templates/editor/list_trashed_coordinators.mako
  59. 13 13
      apps/oozie/src/oozie/templates/editor/list_trashed_workflows.mako
  60. 19 19
      apps/oozie/src/oozie/templates/editor/list_workflows.mako
  61. 2 2
      apps/oozie/src/oozie/templates/utils.inc.mako
  62. 40 40
      apps/pig/src/pig/templates/app.mako
  63. 12 12
      apps/search/src/search/templates/admin_collection_facets.mako
  64. 6 6
      apps/search/src/search/templates/admin_collection_sorting.mako
  65. 6 6
      apps/search/src/search/templates/admin_collection_template.mako
  66. 8 8
      apps/search/src/search/templates/admin_collections.mako
  67. 4 4
      apps/search/src/search/templates/layout.mako
  68. 2 2
      apps/search/src/search/templates/macros.mako
  69. 1 1
      apps/search/src/search/templates/no_collections.mako
  70. 7 7
      apps/search/src/search/templates/search.mako
  71. 2 2
      apps/search/static/help/index.html
  72. 9 9
      apps/search/static/js/freshereditor.min.js
  73. 21 21
      apps/sqoop/src/sqoop/templates/app.mako
  74. 9 9
      apps/useradmin/src/useradmin/templates/list_groups.mako
  75. 10 10
      apps/useradmin/src/useradmin/templates/list_users.mako
  76. 1 1
      apps/useradmin/static/help/index.html
  77. 4 4
      apps/zookeeper/src/zookeeper/templates/tree.mako
  78. 2 2
      apps/zookeeper/src/zookeeper/templates/view.mako
  79. 3 3
      desktop/core/src/desktop/templates/500.mako
  80. 2 2
      desktop/core/src/desktop/templates/common_footer.mako
  81. 8 8
      desktop/core/src/desktop/templates/common_header.mako
  82. 1 1
      desktop/core/src/desktop/templates/config_alert_dock.mako
  83. 18 18
      desktop/core/src/desktop/templates/home.mako
  84. 5 5
      desktop/core/src/desktop/templates/login.mako
  85. 1 1
      desktop/core/src/desktop/templates/logs.mako
  86. 1 1
      desktop/core/src/desktop/templates/popup_error.mako
  87. 395 402
      desktop/core/static/ext/css/font-awesome.min.css
  88. binární
      desktop/core/static/ext/font/FontAwesome.otf
  89. binární
      desktop/core/static/ext/font/fontawesome-webfont.eot
  90. binární
      desktop/core/static/ext/font/fontawesome-webfont.woff
  91. binární
      desktop/core/static/ext/fonts/FontAwesome.otf
  92. binární
      desktop/core/static/ext/fonts/fontawesome-webfont.eot
  93. 21 6
      desktop/core/static/ext/fonts/fontawesome-webfont.svg
  94. binární
      desktop/core/static/ext/fonts/fontawesome-webfont.ttf
  95. binární
      desktop/core/static/ext/fonts/fontawesome-webfont.woff
  96. 0 0
      desktop/core/static/ext/js/bootstrap-editable.min.js
  97. 0 0
      desktop/core/static/ext/js/bootstrap-timepicker.min.js
  98. 9 9
      desktop/core/static/ext/js/freshereditor.min.js
  99. 2 2
      desktop/core/static/js/codemirror-hql-hint.js
  100. 2 2
      desktop/core/static/js/codemirror-isql-hint.js

+ 12 - 12
apps/about/src/about/templates/admin_wizard.mako

@@ -42,10 +42,10 @@ ${ header.menubar() }
           <div id="properties" class="section">
             <ul class="nav nav-tabs" style="margin-bottom: 0">
               <li class="active"><a href="#step1" class="step">${ _('Step 1:') } <i
-                  class="icon-cogs"></i> ${ _('Check Configuration') }</a></li>
-              <li><a href="#step2" class="step">${ _('Step 2:') } <i class="icon-book"></i> ${ _('Examples') }</a></li>
-              <li><a href="#step3" class="step">${ _('Step 3:') } <i class="icon-group"></i> ${ _('Users') }</a></li>
-              <li><a id="lastStep" href="#step4" class="step">${ _('Step 4:') } <i class="icon-flag"></i> ${_('Go!') }
+                  class="fa fa-cogs"></i> ${ _('Check Configuration') }</a></li>
+              <li><a href="#step2" class="step">${ _('Step 2:') } <i class="fa fa-book"></i> ${ _('Examples') }</a></li>
+              <li><a href="#step3" class="step">${ _('Step 3:') } <i class="fa fa-group"></i> ${ _('Users') }</a></li>
+              <li><a id="lastStep" href="#step4" class="step">${ _('Step 4:') } <i class="fa fa-flag"></i> ${_('Go!') }
               </a></li>
             </ul>
 
@@ -56,7 +56,7 @@ ${ header.menubar() }
 
               <div class="card-body">
                 <div id="check-config-section" style="margin-bottom:20px">
-                  <!--[if !IE]><!--><i class="icon-spinner icon-spin" style="font-size: 60px; color: #DDD"></i><!--<![endif]-->
+                  <!--[if !IE]><!--><i class="fa fa-spinner fa-spin" style="font-size: 60px; color: #DDD"></i><!--<![endif]-->
                   <!--[if IE]><img src="/static/art/spinner.gif" /><![endif]-->
                 </div>
               </div>
@@ -90,7 +90,7 @@ ${ header.menubar() }
                 <ul>
                   <li>
                     <a href="#" class="installAllBtn" data-loading-text="${ _('Installing...') }">
-                      <i class="icon-download-alt"></i> ${ _('All') }
+                      <i class="fa fa-download"></i> ${ _('All') }
                     </a>
                   </li>
                 </ul>
@@ -107,7 +107,7 @@ ${ header.menubar() }
               <li>
                 <a href="#" class="installBtn" data-loading-text="${ _('Installing...') }"
                    data-sample-url="${ url('beeswax:install_examples') }">
-                  <i class="icon-download-alt"></i> ${ apps['beeswax'].nice_name }
+                  <i class="fa fa-download"></i> ${ apps['beeswax'].nice_name }
                 </a>
               </li>
           % endif
@@ -115,7 +115,7 @@ ${ header.menubar() }
               <li>
                 <a href="#" class="installBtn" data-loading-text="${ _('Installing...') }"
                    data-sample-url="${ url('impala:install_examples') }">
-                  <i class="icon-download-alt"></i> ${ apps['impala'].nice_name }
+                  <i class="fa fa-download"></i> ${ apps['impala'].nice_name }
                 </a>
               </li>
           % endif
@@ -123,7 +123,7 @@ ${ header.menubar() }
               <li>
                 <a href="#" class="installBtn" data-loading-text="${ _('Installing...') }"
                    data-sample-url="${ url('oozie:install_examples') }">
-                  <i class="icon-download-alt"></i> ${ apps['jobsub'].nice_name }
+                  <i class="fa fa-download"></i> ${ apps['jobsub'].nice_name }
                 </a>
               </li>
           % endif
@@ -131,7 +131,7 @@ ${ header.menubar() }
               <li>
                 <a href="#" class="installBtn" data-loading-text="${ _('Installing...') }"
                    data-sample-url="${ url('oozie:install_examples') }">
-                  <i class="icon-download-alt"></i> ${ apps['oozie'].nice_name }
+                  <i class="fa fa-download"></i> ${ apps['oozie'].nice_name }
                 </a>
               </li>
           % endif
@@ -139,7 +139,7 @@ ${ header.menubar() }
               <li>
                 <a href="#" class="installBtn" data-loading-text="${ _('Installing...') }"
                    data-sample-url="${ url('pig:install_examples') }">
-                  <i class="icon-download-alt"></i> ${ apps['pig'].nice_name }
+                  <i class="fa fa-download"></i> ${ apps['pig'].nice_name }
                 </a>
               </li>
           % endif
@@ -184,7 +184,7 @@ ${ header.menubar() }
 
                 <div class="card-body">
                   <p>
-                    <a href="${ url('desktop.views.home') }" class="step"><i class="icon-home"></i> ${_('Hue Home') }
+                    <a href="${ url('desktop.views.home') }" class="step"><i class="fa fa-home"></i> ${_('Hue Home') }
                     </a>
                   </p>
                 </div>

+ 2 - 2
apps/beeswax/src/beeswax/templates/choose_delimiter.mako

@@ -31,8 +31,8 @@ ${ layout.metastore_menubar() }
             <div class="sidebar-nav">
                 <ul class="nav nav-list">
                     <li class="nav-header">${_('Actions')}</li>
-                    <li><a href="${ url(app_name + ':import_wizard', database=database)}"><i class="icon-copy"></i> ${_('Create a new table from a file')}</a></li>
-                    <li><a href="${ url(app_name + ':create_table', database=database)}"><i class="icon-wrench"></i> ${_('Create a new table manually')}</a></li>
+                    <li><a href="${ url(app_name + ':import_wizard', database=database)}"><i class="fa fa-files-o"></i> ${_('Create a new table from a file')}</a></li>
+                    <li><a href="${ url(app_name + ':create_table', database=database)}"><i class="fa fa-wrench"></i> ${_('Create a new table manually')}</a></li>
                 </ul>
             </div>
         </div>

+ 2 - 2
apps/beeswax/src/beeswax/templates/choose_file.mako

@@ -30,8 +30,8 @@ ${ layout.metastore_menubar() }
             <div class="sidebar-nav">
                 <ul class="nav nav-list">
                     <li class="nav-header">${_('Actions')}</li>
-                    <li><a href="${ url(app_name + ':import_wizard', database=database)}"><i class="icon-copy"></i> ${_('Create a new table from a file')}</a></li>
-                    <li><a href="${ url(app_name + ':create_table', database=database)}"><i class="icon-wrench"></i> ${_('Create a new table manually')}</a></li>
+                    <li><a href="${ url(app_name + ':import_wizard', database=database)}"><i class="fa fa-files-o"></i> ${_('Create a new table from a file')}</a></li>
+                    <li><a href="${ url(app_name + ':create_table', database=database)}"><i class="fa fa-wrench"></i> ${_('Create a new table manually')}</a></li>
                 </ul>
             </div>
         </div>

+ 2 - 2
apps/beeswax/src/beeswax/templates/create_table_manually.mako

@@ -30,8 +30,8 @@ ${ layout.metastore_menubar() }
     <div class="sidebar-nav">
         <ul class="nav nav-list">
             <li class="nav-header">${_('Actions')}</li>
-            <li><a href="${ url(app_name + ':import_wizard', database=database)}"><i class="icon-copy"></i> ${_('Create a new table from a file')}</a></li>
-            <li><a href="${ url(app_name + ':create_table', database=database)}"><i class="icon-wrench"></i> ${_('Create a new table manually')}</a></li>
+            <li><a href="${ url(app_name + ':import_wizard', database=database)}"><i class="fa fa-files-o"></i> ${_('Create a new table from a file')}</a></li>
+            <li><a href="${ url(app_name + ':create_table', database=database)}"><i class="fa fa-wrench"></i> ${_('Create a new table manually')}</a></li>
         </ul>
     </div>
 </div>

+ 5 - 5
apps/beeswax/src/beeswax/templates/define_columns.mako

@@ -31,8 +31,8 @@ ${ layout.metastore_menubar() }
             <div class="sidebar-nav">
                 <ul class="nav nav-list">
                     <li class="nav-header">${_('Actions')}</li>
-                    <li><a href="${ url(app_name + ':import_wizard', database=database)}"><i class="icon-copy"></i> ${_('Create a new table from a file')}</a></li>
-                    <li><a href="${ url(app_name + ':create_table', database=database)}"><i class="icon-wrench"></i> ${_('Create a new table manually')}</a></li>
+                    <li><a href="${ url(app_name + ':import_wizard', database=database)}"><i class="fa fa-files-o"></i> ${_('Create a new table from a file')}</a></li>
+                    <li><a href="${ url(app_name + ':create_table', database=database)}"><i class="fa fa-wrench"></i> ${_('Create a new table manually')}</a></li>
                 </ul>
             </div>
         </div>
@@ -63,7 +63,7 @@ ${ layout.metastore_menubar() }
                             <div class="scrollable">
                                 <table class="table table-striped">
                                     <thead>
-                                      <th id="editColumns">${ _('Column name') } &nbsp;<i class="icon-edit" rel="tooltip" data-placement="right" title="${ _('Bulk edit names') }"></i></th>
+                                      <th id="editColumns">${ _('Column name') } &nbsp;<i class="fa fa-edit" rel="tooltip" data-placement="right" title="${ _('Bulk edit names') }"></i></th>
                                       <th>${ _('Column Type') }</th>
                                       % for i in range(0, n_rows):
                                         <th><em>${_('Sample Row')} #${i + 1}</em></th>
@@ -122,8 +122,8 @@ ${ layout.metastore_menubar() }
                   <input type="text" class="span8" style="padding-right: 24px;" placeholder="${ _('e.g. id, name, salary') }">
                 </div>
                 <div class="editable-buttons">
-                  <button type="button" class="btn btn-primary editable-submit"><i class="icon-ok"></i></button>
-                  <button type="button" class="btn editable-cancel"><i class="icon-remove"></i></button>
+                  <button type="button" class="btn btn-primary editable-submit"><i class="fa fa-check"></i></button>
+                  <button type="button" class="btn editable-cancel"><i class="fa fa-times"></i></button>
                 </div>
               </div>
             </div>

+ 13 - 13
apps/beeswax/src/beeswax/templates/execute.mako

@@ -223,7 +223,7 @@ ${layout.menubar(section='query')}
               <li class="white">
                 <div class="control-group">
                   <span id="refresh-dyk">
-                    <i class="icon-refresh"></i>
+                    <i class="fa fa-refresh"></i>
                     ${ _('Sync tables tips') }
                   </span>
                   <div id="refresh-content" class="hide">
@@ -239,7 +239,7 @@ ${layout.menubar(section='query')}
               <li class="nav-header"></li>
               <li class="white">
                 <div class="control-group">
-                  <i class="icon-question-sign" id="help"></i>
+                  <i class="fa fa-question-circle" id="help"></i>
                   <div id="help-content" class="hide">
                     <ul style="text-align: left;">
                       <li>${ _('Press CTRL + Space to autocomplete') }</li>
@@ -334,8 +334,8 @@ ${layout.menubar(section='query')}
 
     <div class="span2" id="navigator">
       <div class="card card-small">
-        <a href="#" title="${_('Double click on a table name or field to insert it in the editor')}" rel="tooltip" data-placement="left" class="pull-right" style="margin:10px;margin-left: 0"><i class="icon-question-sign"></i></a>
-        <a id="refreshNavigator" href="#" title="${_('Manually refresh the table list')}" rel="tooltip" data-placement="left" class="pull-right" style="margin:10px"><i class="icon-refresh"></i></a>
+        <a href="#" title="${_('Double click on a table name or field to insert it in the editor')}" rel="tooltip" data-placement="left" class="pull-right" style="margin:10px;margin-left: 0"><i class="fa fa-question-circle"></i></a>
+        <a id="refreshNavigator" href="#" title="${_('Manually refresh the table list')}" rel="tooltip" data-placement="left" class="pull-right" style="margin:10px"><i class="fa fa-refresh"></i></a>
         <h1 class="card-heading simple">${_('Navigator')}</h1>
         <div class="card-body">
           <p>
@@ -343,7 +343,7 @@ ${layout.menubar(section='query')}
             <span id="navigatorNoTables">${_('The selected database has no tables.')}</span>
             <ul id="navigatorTables" class="unstyled"></ul>
             <div id="navigatorLoader">
-              <!--[if !IE]><!--><i class="icon-spinner icon-spin" style="font-size: 20px; color: #DDD"></i><!--<![endif]-->
+              <!--[if !IE]><!--><i class="fa fa-spinner fa-spin" style="font-size: 20px; color: #DDD"></i><!--<![endif]-->
               <!--[if IE]><img src="/static/art/spinner.gif" /><![endif]-->
             </div>
           </p>
@@ -397,12 +397,12 @@ ${layout.menubar(section='query')}
 <div id="navigatorQuicklook" class="modal hide fade">
     <div class="modal-header">
         <a href="#" class="close" data-dismiss="modal">&times;</a>
-        <a class="tableLink pull-right" href="#" target="_blank" style="margin-right: 20px;margin-top:6px"><i class="icon-external-link"></i> ${ _('View in Metastore Browser') }</a>
+        <a class="tableLink pull-right" href="#" target="_blank" style="margin-right: 20px;margin-top:6px"><i class="fa fa-external-link"></i> ${ _('View in Metastore Browser') }</a>
         <h3>${_('Data sample for')} <span class="tableName"></span></h3>
     </div>
     <div class="modal-body" style="min-height: 100px">
       <div class="loader">
-        <!--[if !IE]><!--><i class="icon-spinner icon-spin" style="font-size: 30px; color: #DDD"></i><!--<![endif]-->
+        <!--[if !IE]><!--><i class="fa fa-spinner fa-spin" style="font-size: 30px; color: #DDD"></i><!--<![endif]-->
         <!--[if IE]><img src="/static/art/spinner.gif" /><![endif]-->
       </div>
       <div class="sample"></div>
@@ -558,17 +558,17 @@ ${layout.menubar(section='query')}
           $(data.split(" ")).each(function (cnt, table) {
             if ($.trim(table) != ""){
               var _table = $("<li>");
-              _table.html("<a href='/metastore/table/" + $("#id_query-database").val() + "/" + table + "' target='_blank' class='pull-right'><i class='icon-eye-open' title='" + "${ _('View in Metastore Browser') }" + "' style='margin-left:5px'></i></a><a href='#' class='pull-right hide'><i class='icon-list' title='" + "${ _('Preview Sample data') }" + "'></i></a><a href='#' title='" + table + "'><i class='icon-table'></i> " + table + "</a><ul class='unstyled'></ul>");
+              _table.html("<a href='/metastore/table/" + $("#id_query-database").val() + "/" + table + "' target='_blank' class='pull-right'><i class='fa fa-eye' title='" + "${ _('View in Metastore Browser') }" + "' style='margin-left:5px'></i></a><a href='#' class='pull-right hide'><i class='fa fa-list' title='" + "${ _('Preview Sample data') }" + "'></i></a><a href='#' title='" + table + "'><i class='fa fa-table'></i> " + table + "</a><ul class='unstyled'></ul>");
               _table.data("table", table).attr("id", "navigatorTables_" + table);
               _table.find("a:eq(2)").on("click", function () {
-                _table.find(".icon-table").removeClass("icon-table").addClass("icon-spin").addClass("icon-spinner");
+                _table.find(".fa-table").removeClass("fa-table").addClass("fa-spin").addClass("fa-spinner");
                 hac_getTableColumns($("#id_query-database").val(), table, "", function (plain_columns, extended_columns) {
                   _table.find("a:eq(1)").removeClass("hide");
                   _table.find("ul").empty();
-                  _table.find(".icon-spinner").removeClass("icon-spinner").removeClass("icon-spin").addClass("icon-table");
+                  _table.find(".fa-spinner").removeClass("fa-spinner").removeClass("fa-spin").addClass("fa-table");
                   $(extended_columns).each(function (iCnt, col) {
                     var _column = $("<li>");
-                    _column.html("<a href='#' style='padding-left:10px'" + (col.comment != null && col.comment != "" ? " title='" + col.comment + "'" : "") + "><i class='icon-columns'></i> " + col.name + " (" + col.type + ")</a>");
+                    _column.html("<a href='#' style='padding-left:10px'" + (col.comment != null && col.comment != "" ? " title='" + col.comment + "'" : "") + "><i class='fa fa-columns'></i> " + col.name + " (" + col.type + ")</a>");
                     _column.appendTo(_table.find("ul"));
                     _column.on("dblclick", function () {
                       codeMirror.replaceSelection($.trim(col.name) + ', ');
@@ -808,7 +808,7 @@ ${layout.menubar(section='query')}
         });
 
         var pos = cm.cursorCoords();
-        $("<i class='icon-spinner icon-spin CodeMirror-spinner'></i>").css("top", pos.top + "px").css("left", (pos.left - 4) + "px").appendTo($("body"));
+        $("<i class='fa fa-spinner fa-spin CodeMirror-spinner'></i>").css("top", pos.top + "px").css("left", (pos.left - 4) + "px").appendTo($("body"));
 
         if ($.totalStorage('tables_' + $("#id_query-database").val()) == null) {
           CodeMirror.showHint(cm, AUTOCOMPLETE_SET);
@@ -922,7 +922,7 @@ ${layout.menubar(section='query')}
         var err = $(".queryErrorMessage").text().toLowerCase();
         var firstPos = err.indexOf("line");
         selectedLine = $.trim(err.substring(err.indexOf(" ", firstPos), err.indexOf(":", firstPos))) * 1;
-        errorWidget = codeMirror.addLineWidget(selectedLine - 1, $("<div>").addClass("editorError").html("<i class='icon-exclamation-sign'></i> " + err)[0], {coverGutter: true, noHScroll: true})
+        errorWidget = codeMirror.addLineWidget(selectedLine - 1, $("<div>").addClass("editorError").html("<i class='fa fa-exclamation-circle'></i> " + err)[0], {coverGutter: true, noHScroll: true})
       }
 
       codeMirror.setSize("95%", $(window).height() - 270 - $("#queryPane .alert-error").outerHeight() - $(".nav-tabs").outerHeight());

+ 16 - 16
apps/beeswax/src/beeswax/templates/list_designs.mako

@@ -39,17 +39,17 @@ ${layout.menubar(section='saved queries')}
 
       <%def name="actions()">
         <div class="btn-toolbar" style="display: inline; vertical-align: middle">
-          <button id="editBtn" class="btn toolbarBtn" title="${_('Edit the selected query')}" disabled="disabled"><i class="icon-edit"></i> ${_('Edit')}</button>
-          <button id="cloneBtn" class="btn toolbarBtn" title="${_('Copy the selected query')}" disabled="disabled"><i class="icon-copy"></i> ${_('Copy')}</button>
-          <button id="historyBtn" class="btn toolbarBtn" title="${_('View the usage history of the selected query')}" disabled="disabled"><i class="icon-tasks"></i> ${_('Usage history')}</button>
+          <button id="editBtn" class="btn toolbarBtn" title="${_('Edit the selected query')}" disabled="disabled"><i class="fa fa-edit"></i> ${_('Edit')}</button>
+          <button id="cloneBtn" class="btn toolbarBtn" title="${_('Copy the selected query')}" disabled="disabled"><i class="fa fa-files-o"></i> ${_('Copy')}</button>
+          <button id="historyBtn" class="btn toolbarBtn" title="${_('View the usage history of the selected query')}" disabled="disabled"><i class="fa fa-tasks"></i> ${_('Usage history')}</button>
 
           <div id="delete-dropdown" class="btn-group" style="vertical-align: middle">
-            <button id="trashQueryBtn" class="btn toolbarBtn" disabled="disabled"><i class="icon-remove"></i> ${_('Move to trash')}</button>
+            <button id="trashQueryBtn" class="btn toolbarBtn" disabled="disabled"><i class="fa fa-times"></i> ${_('Move to trash')}</button>
             <button id="trashQueryCaretBtn" class="btn toolbarBtn dropdown-toggle" data-toggle="dropdown" disabled="disabled">
               <span class="caret"></span>
             </button>
             <ul class="dropdown-menu">
-              <li><a href="#" id="deleteQueryBtn" title="${_('Delete forever')}"><i class="icon-bolt"></i> ${_('Delete forever')}</a></li>
+              <li><a href="#" id="deleteQueryBtn" title="${_('Delete forever')}"><i class="fa fa-bolt"></i> ${_('Delete forever')}</a></li>
             </ul>
           </div>
         </div>
@@ -57,8 +57,8 @@ ${layout.menubar(section='saved queries')}
 
       <%def name="creation()">
         <div class="btn-toolbar" style="display: inline; vertical-align: middle">          
-          <a class="btn" href="${ url(app_name + ':execute_query') }" title="${_('Create new query')}"><i class="icon-plus-sign"></i> ${_('New query')}</a>
-          <a class="btn" href="${ url(app_name + ':list_trashed_designs') }" title="${_('Go to the trash')}"><i class="icon-trash"></i> ${_('View trash')}</a>
+          <a class="btn" href="${ url(app_name + ':execute_query') }" title="${_('Create new query')}"><i class="fa fa-plus-circle"></i> ${_('New query')}</a>
+          <a class="btn" href="${ url(app_name + ':list_trashed_designs') }" title="${_('Go to the trash')}"><i class="fa fa-trash-o"></i> ${_('View trash')}</a>
         </div>
       </%def>
     </%actionbar:render>
@@ -66,7 +66,7 @@ ${layout.menubar(section='saved queries')}
     <table class="table table-condensed datatables">
     <thead>
       <tr>
-        <th width="1%"><div class="hueCheckbox selectAll" data-selectables="savedCheck"></div></th>
+        <th width="1%"><div class="hueCheckbox selectAll fa" data-selectables="savedCheck"></div></th>
         <th>${_('Name')}</th>
         <th>${_('Description')}</th>
         <th>${_('Owner')}</th>
@@ -80,7 +80,7 @@ ${layout.menubar(section='saved queries')}
         %>
       <tr>
         <td data-row-selector-exclude="true">
-          <div class="hueCheckbox savedCheck"
+          <div class="hueCheckbox savedCheck fa"
             % if may_edit:
               data-edit-url="${ url(app_name + ':execute_query', design_id=design.id) }"
               data-delete-name="${ design.id }"
@@ -170,24 +170,24 @@ ${layout.menubar(section='saved queries')}
 
     $(".selectAll").click(function () {
       if ($(this).attr("checked")) {
-        $(this).removeAttr("checked").removeClass("icon-ok");
-        $("." + $(this).data("selectables")).removeClass("icon-ok").removeAttr("checked");
+        $(this).removeAttr("checked").removeClass("fa-check");
+        $("." + $(this).data("selectables")).removeClass("fa-check").removeAttr("checked");
       }
       else {
-        $(this).attr("checked", "checked").addClass("icon-ok");
-        $("." + $(this).data("selectables")).addClass("icon-ok").attr("checked", "checked");
+        $(this).attr("checked", "checked").addClass("fa-check");
+        $("." + $(this).data("selectables")).addClass("fa-check").attr("checked", "checked");
       }
       toggleActions();
     });
 
     $(".savedCheck").click(function () {
       if ($(this).attr("checked")) {
-        $(this).removeClass("icon-ok").removeAttr("checked");
+        $(this).removeClass("fa-check").removeAttr("checked");
       }
       else {
-        $(this).addClass("icon-ok").attr("checked", "checked");
+        $(this).addClass("fa-check").attr("checked", "checked");
       }
-      $(".selectAll").removeAttr("checked").removeClass("icon-ok");
+      $(".selectAll").removeAttr("checked").removeClass("fa-check");
       toggleActions();
     });
 

+ 13 - 13
apps/beeswax/src/beeswax/templates/list_trashed_designs.mako

@@ -40,10 +40,10 @@ ${layout.menubar(section='saved queries')}
       <%def name="actions()">
         <div class="btn-toolbar" style="display: inline; vertical-align: middle">
           <button id="deleteQueryBtn" class="btn toolbarBtn" title="${_('Delete forever')}" disabled="disabled">
-            <i class="icon-bolt"></i> ${_('Delete forever')}
+            <i class="fa fa-bolt"></i> ${_('Delete forever')}
           </button>
           <button id="restoreQueryBtn" class="btn toolbarBtn" title="${_('Restore from trash')}" disabled="disabled">
-            <i class="icon-cloud-upload"></i> ${_('Restore')}
+            <i class="fa fa-cloud-upload"></i> ${_('Restore')}
           </button>
         </div>
       </%def>
@@ -51,10 +51,10 @@ ${layout.menubar(section='saved queries')}
       <%def name="creation()">
         <div class="btn-toolbar" style="display: inline; vertical-align: middle">
           <button id="emptyTrashBtn" class="btn" title="${_('Empty trash')}" data-bind="enabled: availableSavedQueries().length > 0">
-            <i class="icon-fire"></i> ${_('Empty trash')}
+            <i class="fa fa-fire"></i> ${_('Empty trash')}
           </button>        
           <button id="viewQueriesBtn" class="btn" title="${_('View queries')}">
-            <i class="icon-home"></i> ${_('Back')}
+            <i class="fa fa-home"></i> ${_('Back')}
           </button>
         </div>
       </%def>
@@ -63,7 +63,7 @@ ${layout.menubar(section='saved queries')}
     <table class="table table-condensed datatables">
     <thead>
       <tr>
-        <th width="1%"><div class="hueCheckbox selectAll" data-selectables="savedCheck"></div></th>
+        <th width="1%"><div class="hueCheckbox selectAll fa" data-selectables="savedCheck"></div></th>
         <th>${_('Name')}</th>
         <th>${_('Description')}</th>
         <th>${_('Owner')}</th>
@@ -77,7 +77,7 @@ ${layout.menubar(section='saved queries')}
         %>
       <tr>
         <td data-row-selector-exclude="true">
-          <div class="hueCheckbox savedCheck"
+          <div class="hueCheckbox savedCheck fa"
             % if may_edit:
               data-delete-id="${ design.id }"
             % endif
@@ -162,24 +162,24 @@ ${layout.menubar(section='saved queries')}
 
     $(".selectAll").click(function () {
       if ($(this).attr("checked")) {
-        $(this).removeAttr("checked").removeClass("icon-ok");
-        $("." + $(this).data("selectables")).removeClass("icon-ok").removeAttr("checked");
+        $(this).removeAttr("checked").removeClass("fa-check");
+        $("." + $(this).data("selectables")).removeClass("fa-check").removeAttr("checked");
       }
       else {
-        $(this).attr("checked", "checked").addClass("icon-ok");
-        $("." + $(this).data("selectables")).addClass("icon-ok").attr("checked", "checked");
+        $(this).attr("checked", "checked").addClass("fa-check");
+        $("." + $(this).data("selectables")).addClass("fa-check").attr("checked", "checked");
       }
       toggleActions();
     });
 
     $(".savedCheck").click(function () {
       if ($(this).attr("checked")) {
-        $(this).removeClass("icon-ok").removeAttr("checked");
+        $(this).removeClass("fa-check").removeAttr("checked");
       }
       else {
-        $(this).addClass("icon-ok").attr("checked", "checked");
+        $(this).addClass("fa-check").attr("checked", "checked");
       }
-      $(".selectAll").removeAttr("checked").removeClass("icon-ok");
+      $(".selectAll").removeAttr("checked").removeClass("fa-check");
       toggleActions();
     });
 

+ 20 - 20
apps/beeswax/src/beeswax/templates/my_queries.mako

@@ -46,17 +46,17 @@ ${layout.menubar(section='my queries')}
 
       <%def name="actions()">
         <div class="btn-toolbar" style="display: inline; vertical-align: middle">
-          <button id="viewBtn" class="btn toolbarBtn" title="${_('View the result of the selected')}" disabled="disabled"><i class="icon-eye-open"></i> ${_('View result')}</button>
-          <button id="editBtn" class="btn toolbarBtn" title="${_('Edit the selected query')}" disabled="disabled"><i class="icon-edit"></i> ${_('Edit')}</button>
-          <button id="cloneBtn" class="btn toolbarBtn" title="${_('Copy the selected query')}" disabled="disabled"><i class="icon-copy"></i> ${_('Copy')}</button>
-          <button id="historyBtn" class="btn toolbarBtn" title="${_('View the usage history of the selected query')}" disabled="disabled"><i class="icon-tasks"></i> ${_('Usage history')}</button>
+          <button id="viewBtn" class="btn toolbarBtn" title="${_('View the result of the selected')}" disabled="disabled"><i class="fa fa-eye"></i> ${_('View result')}</button>
+          <button id="editBtn" class="btn toolbarBtn" title="${_('Edit the selected query')}" disabled="disabled"><i class="fa fa-edit"></i> ${_('Edit')}</button>
+          <button id="cloneBtn" class="btn toolbarBtn" title="${_('Copy the selected query')}" disabled="disabled"><i class="fa fa-files-o"></i> ${_('Copy')}</button>
+          <button id="historyBtn" class="btn toolbarBtn" title="${_('View the usage history of the selected query')}" disabled="disabled"><i class="fa fa-tasks"></i> ${_('Usage history')}</button>
           <div id="delete-dropdown" class="btn-group" style="vertical-align: middle">
-            <button id="trashQueryBtn" class="btn toolbarBtn" disabled="disabled"><i class="icon-remove"></i> ${_('Move to trash')}</button>
+            <button id="trashQueryBtn" class="btn toolbarBtn" disabled="disabled"><i class="fa fa-times"></i> ${_('Move to trash')}</button>
             <button id="trashQueryCaretBtn" class="btn toolbarBtn dropdown-toggle" data-toggle="dropdown" disabled="disabled">
               <span class="caret"></span>
             </button>
             <ul class="dropdown-menu">
-              <li><a href="#" id="deleteQueryBtn" title="${_('Delete forever')}"><i class="icon-bolt"></i> ${_('Delete forever')}</a></li>
+              <li><a href="#" id="deleteQueryBtn" title="${_('Delete forever')}"><i class="fa fa-bolt"></i> ${_('Delete forever')}</a></li>
             </ul>
           </div>
         </div>
@@ -64,8 +64,8 @@ ${layout.menubar(section='my queries')}
 
       <%def name="creation()">
         <div class="btn-toolbar" style="display: inline; vertical-align: middle">
-          <a class="btn" href="${ url(app_name + ':list_trashed_designs') }" title="${_('Go to the trash')}"><i class="icon-trash"></i> ${_('View trash')}</a>
-          <a class="btn" href="${ url(app_name + ':execute_query') }" title="${_('Create new query')}"><i class="icon-plus-sign"></i> ${_('New query')}</a>
+          <a class="btn" href="${ url(app_name + ':list_trashed_designs') }" title="${_('Go to the trash')}"><i class="fa fa-trash-o"></i> ${_('View trash')}</a>
+          <a class="btn" href="${ url(app_name + ':execute_query') }" title="${_('Create new query')}"><i class="fa fa-plus-circle"></i> ${_('New query')}</a>
         </div>
       </%def>
     </%actionbar:render>
@@ -80,7 +80,7 @@ ${layout.menubar(section='my queries')}
       <table id="recentSavedQueriesTable" class="table table-condensed datatables">
         <thead>
           <tr>
-            <th width="1%"><div class="hueCheckbox selectAll" data-selectables="savedCheck"></div></th>
+            <th width="1%"><div class="hueCheckbox selectAll fa" data-selectables="savedCheck"></div></th>
             <th>${_('Name')}</th>
             <th>${_('Desc')}</th>
             <th>${_('Last Modified')}</th>
@@ -90,7 +90,7 @@ ${layout.menubar(section='my queries')}
         % for design in q_page.object_list:
           <tr>
             <td data-row-selector-exclude="true">
-              <div class="hueCheckbox savedCheck canDelete"
+              <div class="hueCheckbox savedCheck fa canDelete"
                    data-edit-url="${ url(app_name + ':execute_query', design_id=design.id) }"
                    data-delete-name="${ design.id }"
                    data-history-url="${ url(app_name + ':list_query_history') }?q-design_id=${design.id}"
@@ -133,7 +133,7 @@ ${layout.menubar(section='my queries')}
         %>
           <tr>
             <td width="1%" data-row-selector-exclude="true">
-              <div class="hueCheckbox runCheck"
+              <div class="hueCheckbox runCheck fa"
                 data-edit-url="${ url(app_name + ':execute_query', design_id=query.design.id) }"
                 % if qcontext and query.last_state != models.QueryHistory.STATE.expired.index:
                   data-view-url="${ url(app_name + ':watch_query', id=query.id) }?context=${qcontext|u}"
@@ -243,32 +243,32 @@ ${layout.menubar(section='my queries')}
 
     $(".selectAll").click(function () {
       if ($(this).attr("checked")) {
-        $(this).removeAttr("checked").removeClass("icon-ok");
-        $("." + $(this).data("selectables")).removeClass("icon-ok").removeAttr("checked");
+        $(this).removeAttr("checked").removeClass("fa-check");
+        $("." + $(this).data("selectables")).removeClass("fa-check").removeAttr("checked");
       }
       else {
-        $(this).attr("checked", "checked").addClass("icon-ok");
-        $("." + $(this).data("selectables")).addClass("icon-ok").attr("checked", "checked");
+        $(this).attr("checked", "checked").addClass("fa-check");
+        $("." + $(this).data("selectables")).addClass("fa-check").attr("checked", "checked");
       }
       toggleActions();
     });
 
     $(".savedCheck").click(function () {
-      $(".runCheck").removeClass("icon-ok").removeAttr("checked");
+      $(".runCheck").removeClass("fa-check").removeAttr("checked");
     });
 
     $(".runCheck").click(function () {
-      $(".savedCheck").removeClass("icon-ok").removeAttr("checked");
+      $(".savedCheck").removeClass("fa-check").removeAttr("checked");
     });
 
     $(".savedCheck, .runCheck").click(function () {
       if ($(this).attr("checked")) {
-        $(this).removeClass("icon-ok").removeAttr("checked");
+        $(this).removeClass("fa-check").removeAttr("checked");
       }
       else {
-        $(this).addClass("icon-ok").attr("checked", "checked");
+        $(this).addClass("fa-check").attr("checked", "checked");
       }
-      $(".selectAll").removeAttr("checked").removeClass("icon-ok");
+      $(".selectAll").removeAttr("checked").removeClass("fa-check");
       toggleActions();
     });
 

+ 5 - 5
apps/beeswax/src/beeswax/templates/watch_results.mako

@@ -63,19 +63,19 @@ ${layout.menubar(section='query')}
 </style>
 
 <div class="container-fluid">
-  <div id="expand"><i class="icon-chevron-right" style="color: #FFFFFF"></i></div>
+  <div id="expand"><i class="fa fa-chevron-right" style="color: #FFFFFF"></i></div>
     <div class="row-fluid">
         <div class="span3">
             <div class="sidebar-nav">
                 <ul class="nav nav-list">
-                    <li><a id="collapse" class="btn btn-small"><i class="icon-chevron-left" rel="tooltip" title="${_('Collapse this panel')}"></i></a></li>
+                    <li><a id="collapse" class="btn btn-small"><i class="fa fa-chevron-left" rel="tooltip" title="${_('Collapse this panel')}"></i></a></li>
                     % if download_urls:
                     <li class="nav-header">${_('Results')}</li>
-                    <li><a target="_blank" href="${download_urls["csv"]}"><i class="icon-download"></i> ${_('Download as CSV')}</a></li>
-                    <li><a target="_blank" href="${download_urls["xls"]}"><i class="icon-download"></i> ${_('Download as XLS')}</a></li>
+                    <li><a target="_blank" href="${download_urls["csv"]}"><i class="fa fa-arrow-circle-o-down"></i> ${_('Download as CSV')}</a></li>
+                    <li><a target="_blank" href="${download_urls["xls"]}"><i class="fa fa-arrow-circle-o-down"></i> ${_('Download as XLS')}</a></li>
                     % endif
                     %if can_save:
-                    <li><a data-toggle="modal" href="#saveAs"><i class="icon-save"></i> ${_('Save')}</a></li>
+                    <li><a data-toggle="modal" href="#saveAs"><i class="fa fa-floppy-o"></i> ${_('Save')}</a></li>
                     % endif
                     % if app_name != 'impala':
                     <%

+ 1 - 1
apps/filebrowser/src/filebrowser/static/help/index.html

@@ -69,7 +69,7 @@
 
     <div class="body conbody">
 
-      <p class="p">Click the <strong class="ph b">File Browser</strong> icon (<i class="icon-file"></i>) in the navigation bar at the top of the Hue browser page. </p>
+      <p class="p">Click the <strong class="ph b">File Browser</strong> icon (<i class="fa fa-file"></i>) in the navigation bar at the top of the Hue browser page. </p>
 
 
     </div>

+ 3 - 3
apps/filebrowser/src/filebrowser/templates/chooser.mako

@@ -16,9 +16,9 @@
 
 <%namespace name="dir" file="listdir_components.mako" />
 
-<div class="fb-actions" data-filters="ArtButtonBar">
-  <a class="fb-upload" data-filters="ArtButton" data-icon-styles="{'width': 16, 'height' : 16}" href="${url('filebrowser.views.upload_file')}?dest=${path|u}&next=${current_request_path|u}">Upload Files</a>
-  <a class="fb-mkdir" data-filters="ArtButton" data-icon-styles="{'width': 16, 'height': 16}" href="${url('filebrowser.views.mkdir')}?path=${path|u}&next=${current_request_path|u}">New Directory</a>
+<div class="fb-actions">
+  <a class="fb-upload" data-icon-styles="{'width': 16, 'height' : 16}" href="${url('filebrowser.views.upload_file')}?dest=${path|u}&next=${current_request_path|u}">Upload Files</a>
+  <a class="fb-mkdir" data-icon-styles="{'width': 16, 'height': 16}" href="${url('filebrowser.views.mkdir')}?path=${path|u}&next=${current_request_path|u}">New Directory</a>
 </div>
 
 ${dir.list_table_chooser(files, path_enc, current_request_path)}

+ 9 - 9
apps/filebrowser/src/filebrowser/templates/display.mako

@@ -38,32 +38,32 @@ ${ fb_components.menubar() }
         <ul class="nav nav-list">
           <li class="nav-header">${_('Actions')}</li>
           % if view['mode'] == "binary":
-            <li><a href="${base_url}?offset=${view['offset']}&length=${view['length']}&mode=text&compression=${view['compression']}"><i class="icon-font"></i> ${_('View as text')}</a></li>
+            <li><a href="${base_url}?offset=${view['offset']}&length=${view['length']}&mode=text&compression=${view['compression']}"><i class="fa fa-font"></i> ${_('View as text')}</a></li>
           % endif
 
           % if view['mode'] == "text":
-            <li><a href="${base_url}?offset=${view['offset']}&length=${view['length']}&mode=binary&compression=${view['compression']}"><i class="icon-barcode"></i> ${_('View as binary')}</a></li>
+            <li><a href="${base_url}?offset=${view['offset']}&length=${view['length']}&mode=binary&compression=${view['compression']}"><i class="fa fa-barcode"></i> ${_('View as binary')}</a></li>
           % endif
 
           % if view['compression'] != "gzip" and path.endswith('.gz'):
-            <li><a href="${base_url}?offset=0&length=2000&mode=${view['mode']}&compression=gzip"><i class="icon-youtube-play"></i> ${_('Preview as Gzip')}</a></li>
+            <li><a href="${base_url}?offset=0&length=2000&mode=${view['mode']}&compression=gzip"><i class="fa fa-youtube-play"></i> ${_('Preview as Gzip')}</a></li>
           % endif
 
           % if view['compression'] != "avro" and view['compression'] != "snappy_avro" and path.endswith('.avro'):
-            <li><a href="${base_url}?offset=0&length=2000&mode=${view['mode']}&compression=avro"><i class="icon-youtube-play"></i> ${_('Preview as Avro')}</a></li>
+            <li><a href="${base_url}?offset=0&length=2000&mode=${view['mode']}&compression=avro"><i class="fa fa-youtube-play"></i> ${_('Preview as Avro')}</a></li>
           % endif
 
           % if view['compression'] and view['compression'] != "none":
-            <li><a href="${base_url}?offset=0&length=2000&mode=${view['mode']}&compression=none"><i class="icon-remove-circle"></i> ${_('Stop preview')}</a></li>
+            <li><a href="${base_url}?offset=0&length=2000&mode=${view['mode']}&compression=none"><i class="fa fa-times-circle"></i> ${_('Stop preview')}</a></li>
           % endif
 
           % if editable and view['compression'] == "none":
-            <li><a href="${url('filebrowser.views.edit', path=path_enc)}"><i class="icon-pencil"></i> ${_('Edit file')}</a></li>
+            <li><a href="${url('filebrowser.views.edit', path=path_enc)}"><i class="fa fa-pencil"></i> ${_('Edit file')}</a></li>
           % endif
 
-           <li><a href="${url('filebrowser.views.download', path=path_enc)}"><i class="icon-download-alt"></i> ${_('Download')}</a></li>
-           <li><a href="${url('filebrowser.views.view', path=dirname_enc)}"><i class="icon-file-text"></i> ${_('View file location')}</a></li>
-           <li><a id="refreshBtn"><i class="icon-refresh"></i> ${_('Refresh')}</a></li>
+           <li><a href="${url('filebrowser.views.download', path=path_enc)}"><i class="fa fa-download"></i> ${_('Download')}</a></li>
+           <li><a href="${url('filebrowser.views.view', path=dirname_enc)}"><i class="fa fa-file-text"></i> ${_('View file location')}</a></li>
+           <li><a id="refreshBtn"><i class="fa fa-refresh"></i> ${_('Refresh')}</a></li>
 
           <li class="nav-header">${_('Info')}</li>
           <li class="white">

+ 5 - 5
apps/filebrowser/src/filebrowser/templates/fb_components.mako

@@ -21,9 +21,9 @@ from django.utils.translation import ugettext as _
 <%def name="breadcrumbs(path, breadcrumbs, from_listdir=False)">
     <ul class="nav nav-pills hueBreadcrumbBar">
         % if from_listdir:
-        <li><a href="${url('filebrowser.views.view', path=urlencode(path))}?default_to_home" style="line-height:18px"><i class="icon-home"></i> ${_('Home')}</a></li>
+        <li><a href="${url('filebrowser.views.view', path=urlencode(path))}?default_to_home" style="line-height:18px"><i class="fa fa-home"></i> ${_('Home')}</a></li>
         <li>
-            <span style="float:right; margin-top:10px;"><i id="editBreadcrumb" class="icon-pencil hand" rel="tooltip" title="${_('Edit path')}"></i></span>
+            <span style="float:right; margin-top:10px;"><i id="editBreadcrumb" class="fa fa-pencil hand" rel="tooltip" title="${_('Edit path')}"></i></span>
             <ul class="hueBreadcrumb" data-bind="foreach: breadcrumbs" style="padding-right:40px; padding-top: 12px">
                 <li data-bind="visible: label == '/'"><a href="#" data-bind="click: show"><span class="divider" data-bind="text: label"></span></a></li>
                 <li data-bind="visible: label != '/'"><a href="#" data-bind="text: label, click: show"></a><span class="divider">/</span></li>
@@ -32,11 +32,11 @@ from django.utils.translation import ugettext as _
         </li>
         <li class="pull-right">
           <a href="${url('filebrowser.views.view', path=urlencode(path))}?default_to_trash" style="line-height:18px" data-bind="visible: trashEnabled" title="${_('View trash')}">
-            <i class="icon-trash"></i> ${_('View trash')}
+            <i class="fa fa-trash-o"></i> ${_('View trash')}
           </a>
         </li>
         % else:
-        <li><a href="${url('filebrowser.views.view', path=urlencode(path))}?default_to_home"><i class="icon-home"></i> ${_('Home')}</a></li>
+        <li><a href="${url('filebrowser.views.view', path=urlencode(path))}?default_to_home"><i class="fa fa-home"></i> ${_('Home')}</a></li>
         <li>
             <ul class="hueBreadcrumb" style="padding-right:40px; padding-top: 12px">
                     % for breadcrumb_item in breadcrumbs:
@@ -53,7 +53,7 @@ from django.utils.translation import ugettext as _
         % endif
         % if not trash_enabled and is_superuser:
         <li id="trash-help" class="pull-right" style="width:30px;text-align:right;line-height:35px;">
-            <i class='icon-question-sign'></i>
+            <i class='fa fa-question-circle'></i>
         </li>
         % endif
     </ul>

+ 19 - 19
apps/filebrowser/src/filebrowser/templates/listdir.mako

@@ -38,65 +38,65 @@ ${ fb_components.menubar() }
 
         <%def name="actions()">
           <div class="btn-toolbar" style="display: inline; vertical-align: middle">
-            <button class="btn fileToolbarBtn" title="${_('Rename')}" data-bind="visible: !inTrash(), click: renameFile, enable: selectedFiles().length == 1"><i class="icon-font"></i> ${_('Rename')}</button>
-            <button class="btn fileToolbarBtn" title="${_('Move')}" data-bind="click: move, enable: selectedFiles().length > 0"><i class="icon-random"></i> ${_('Move')}</button>
-            <button class="btn fileToolbarBtn" title="${_('Copy')}" data-bind="click: copy, enable: selectedFiles().length > 0"><i class="icon-copy"></i> ${_('Copy')}</button>
+            <button class="btn fileToolbarBtn" title="${_('Rename')}" data-bind="visible: !inTrash(), click: renameFile, enable: selectedFiles().length == 1"><i class="fa fa-font"></i> ${_('Rename')}</button>
+            <button class="btn fileToolbarBtn" title="${_('Move')}" data-bind="click: move, enable: selectedFiles().length > 0"><i class="fa fa-random"></i> ${_('Move')}</button>
+            <button class="btn fileToolbarBtn" title="${_('Copy')}" data-bind="click: copy, enable: selectedFiles().length > 0"><i class="fa fa-files-o"></i> ${_('Copy')}</button>
             %if is_fs_superuser:
             <div id="ch-dropdown" class="btn-group" style="vertical-align: middle">
               <button href="#" class="btn dropdown-toggle" title="${_('Chown / Chmod')}" data-toggle="dropdown" data-bind="visible: !inTrash(), enable: selectedFiles().length > 0">
-                <i class="icon-user"></i> ${_('Chmod / Chown')}
+                <i class="fa fa-user"></i> ${_('Chmod / Chown')}
                 <span class="caret" style="line-height: 29px"></span>
               </button>
               <ul class="dropdown-menu" style="top: auto">
-                <li><a href="#" title="${_('Change owner/group')}" data-bind="visible: !inTrash(), click: changeOwner, enable: selectedFiles().length > 0"><i class="icon-user"></i> ${_('Change owner / group')}</a></li>
-                <li><a href="#" title="${_('Change permissions')}" data-bind="visible: !inTrash(), click: changePermissions, enable: selectedFiles().length > 0"><i class="icon-list-alt"></i> ${_('Change permissions')}</a></li>
+                <li><a href="#" title="${_('Change owner/group')}" data-bind="visible: !inTrash(), click: changeOwner, enable: selectedFiles().length > 0"><i class="fa fa-user"></i> ${_('Change owner / group')}</a></li>
+                <li><a href="#" title="${_('Change permissions')}" data-bind="visible: !inTrash(), click: changePermissions, enable: selectedFiles().length > 0"><i class="fa fa-list-alt"></i> ${_('Change permissions')}</a></li>
               </ul>
             </div>
             %else:
-              <button class="btn fileToolbarBtn" title="${_('Change permissions')}" data-bind="visible: !inTrash(), click: changePermissions, enable: selectedFiles().length > 0"><i class="icon-list-alt"></i> ${_('Change permissions')}</button>
+              <button class="btn fileToolbarBtn" title="${_('Change permissions')}" data-bind="visible: !inTrash(), click: changePermissions, enable: selectedFiles().length > 0"><i class="fa fa-list-alt"></i> ${_('Change permissions')}</button>
             %endif
-            <button class="btn fileToolbarBtn" title="${_('Download')}" data-bind="visible: !inTrash(), click: downloadFile, enable: selectedFiles().length == 1 && selectedFile().type == 'file'"><i class="icon-download-alt"></i> ${_('Download')}</button>
-            <button class="btn fileToolbarBtn" title="${_('Restore from trash')}" data-bind="visible: inRestorableTrash(), click: restoreTrashSelected, enable: selectedFiles().length > 0"><i class="icon-cloud-upload"></i> ${_('Restore')}</button>
+            <button class="btn fileToolbarBtn" title="${_('Download')}" data-bind="visible: !inTrash(), click: downloadFile, enable: selectedFiles().length == 1 && selectedFile().type == 'file'"><i class="fa fa-arrow-circle-o-down"></i> ${_('Download')}</button>
+            <button class="btn fileToolbarBtn" title="${_('Restore from trash')}" data-bind="visible: inRestorableTrash(), click: restoreTrashSelected, enable: selectedFiles().length > 0"><i class="fa fa-cloud-upload"></i> ${_('Restore')}</button>
             <!-- ko ifnot: inTrash -->
               <!-- ko if: trashEnabled -->
                 <div id="delete-dropdown" class="btn-group" style="vertical-align: middle">
-                  <button id="trash-btn" class="btn toolbarBtn" data-bind="enable: selectedFiles().length > 0, click: trashSelected"><i class="icon-remove"></i> ${_('Move to trash')}</button>
+                  <button id="trash-btn" class="btn toolbarBtn" data-bind="enable: selectedFiles().length > 0, click: trashSelected"><i class="fa fa-times"></i> ${_('Move to trash')}</button>
                   <button id="trash-btn-caret" class="btn toolbarBtn dropdown-toggle" data-toggle="dropdown" data-bind="enable: selectedFiles().length > 0">
                     <span class="caret"></span>
                   </button>
                   <ul class="dropdown-menu">
-                    <li><a href="#" class="delete-link" title="${_('Delete forever')}" data-bind="enable: selectedFiles().length > 0, click: deleteSelected"><i class="icon-bolt"></i> ${_('Delete forever')}</a></li>
+                    <li><a href="#" class="delete-link" title="${_('Delete forever')}" data-bind="enable: selectedFiles().length > 0, click: deleteSelected"><i class="fa fa-bolt"></i> ${_('Delete forever')}</a></li>
                   </ul>
                 </div>
               <!-- /ko -->
             <!-- /ko -->
             <!-- ko ifnot: trashEnabled -->
-              <button class="btn fileToolbarBtn delete-link" title="${_('Delete forever')}" data-bind="enable: selectedFiles().length > 0, click: deleteSelected"><i class="icon-bolt"></i> ${_('Delete forever')}</button>
+              <button class="btn fileToolbarBtn delete-link" title="${_('Delete forever')}" data-bind="enable: selectedFiles().length > 0, click: deleteSelected"><i class="fa fa-bolt"></i> ${_('Delete forever')}</button>
             <!-- /ko -->
           </div>
         </%def>
 
         <%def name="creation()">
-          <button class="btn fileToolbarBtn" title="${_('Empty trash')}" data-bind="visible: inTrash(), click: purgeTrash"><i class="icon-fire"></i> ${_('Empty trash')}</button>
+          <button class="btn fileToolbarBtn" title="${_('Empty trash')}" data-bind="visible: inTrash(), click: purgeTrash"><i class="fa fa-fire"></i> ${_('Empty trash')}</button>
           <div class="btn-toolbar" style="display: inline; vertical-align: middle">
             <div id="upload-dropdown" class="btn-group" style="vertical-align: middle">
               <a href="#" class="btn upload-link dropdown-toggle" title="${_('Upload')}" data-toggle="dropdown" data-bind="visible: !inTrash()">
-                <i class="icon-upload"></i> ${_('Upload')}
+                <i class="fa fa-arrow-circle-o-up"></i> ${_('Upload')}
                 <span class="caret"></span>
               </a>
               <ul class="dropdown-menu">
-                <li><a href="#" class="upload-link" title="${_('Files')}" data-bind="click: uploadFile"><i class="icon-file-alt"></i> ${_('Files')}</a></li>
-                <li><a href="#" class="upload-link" title="${_('Archive')}" data-bind="click: uploadArchive"><i class="icon-gift"></i> ${_('Zip file')}</a></li>
+                <li><a href="#" class="upload-link" title="${_('Files')}" data-bind="click: uploadFile"><i class="fa fa-file-o"></i> ${_('Files')}</a></li>
+                <li><a href="#" class="upload-link" title="${_('Archive')}" data-bind="click: uploadArchive"><i class="fa fa-gift"></i> ${_('Zip file')}</a></li>
               </ul>
             </div>
             <div class="btn-group" style="vertical-align: middle">
               <a href="#" data-toggle="dropdown" class="btn dropdown-toggle" data-bind="visible: !inTrash()">
-                <i class="icon-plus-sign"></i> ${_('New')}
+                <i class="fa fa-plus-circle"></i> ${_('New')}
                 <span class="caret"></span>
               </a>
               <ul class="dropdown-menu" style="top: auto">
-                <li><a href="#" class="create-file-link" title="${_('File')}"><i class="icon-file-alt"></i> ${_('File')}</a></li>
-                <li><a href="#" class="create-directory-link" title="${_('Directory')}"><i class="icon-folder-close"></i> ${_('Directory')}</a></li>
+                <li><a href="#" class="create-file-link" title="${_('File')}"><i class="fa fa-file-o"></i> ${_('File')}</a></li>
+                <li><a href="#" class="create-directory-link" title="${_('Directory')}"><i class="fa fa-folder"></i> ${_('Directory')}</a></li>
               </ul>
             </div>
           </div>

+ 4 - 4
apps/filebrowser/src/filebrowser/templates/listdir_components.mako

@@ -113,8 +113,8 @@ from django.utils.translation import ugettext as _
     <table class="table table-condensed datatables tablescroller-disable">
         <thead>
             <tr>
-                <th width="1%"><div data-bind="click: selectAll, css: {hueCheckbox: true, 'icon-ok': allSelected}"></div></th>
-                <th class="sortable sorting" data-sort="type" width="4%" data-bind="click: sort">Type</th>
+                <th width="1%"><div data-bind="click: selectAll, css: {hueCheckbox: true, 'fa': true, 'fa-check': allSelected}"></div></th>
+                <th class="sortable sorting" data-sort="type" width="1%" data-bind="click: sort">&nbsp;</th>
                 <th class="sortable sorting" data-sort="name" data-bind="click: sort">${_('Name')}</th>
                 <th class="sortable sorting" data-sort="size" width="10%" data-bind="click: sort">${_('Size')}</th>
                 <th class="sortable sorting" data-sort="user" width="10%" data-bind="click: sort">${_('User')}</th>
@@ -145,9 +145,9 @@ from django.utils.translation import ugettext as _
     <script id="fileTemplate" type="text/html">
         <tr style="cursor: pointer" data-bind="event: { mouseover: toggleHover, mouseout: toggleHover}">
             <td class="center" data-bind="click: handleSelect" style="cursor: default">
-                <div data-bind="visible: name != '.' && name != '..', css: {hueCheckbox: name != '.' && name != '..', 'icon-ok': selected}"></div>
+                <div data-bind="visible: name != '.' && name != '..', css: {hueCheckbox: name != '.' && name != '..', 'fa': name != '.' && name != '..', 'fa-check': selected}"></div>
             </td>
-            <td data-bind="click: $root.viewFile" class="left"><i data-bind="css: {'icon-file-alt': type == 'file', 'icon-folder-close': type != 'file', 'icon-folder-open': type != 'file' && hovered}"></i></td>
+            <td data-bind="click: $root.viewFile" class="left"><i data-bind="css: {'fa': true, 'fa-file-o': type == 'file', 'fa-folder': type != 'file', 'fa-folder-open': type != 'file' && hovered}"></i></td>
             <td data-bind="click: $root.viewFile, attr: {'title': tooltip}" rel="tooltip">
                 <strong><a href="#" data-bind="click: $root.viewFile, text: name"></a></strong>
             </td>

+ 33 - 33
apps/hbase/src/hbase/templates/app.mako

@@ -45,7 +45,7 @@ ${ commonheader(None, "hbase", user) | n,unicode }
   <table data-datasource="${datasource}" class="table table-striped table-condensed datatables tablescroller-disable" style="padding-left: 0;padding-right: 0">
       <thead>
         <tr>
-          <th width="1%"><div data-bind="click: ${datasource}.toggleSelectAll, css: {hueCheckbox: true,'icon-ok':${datasource}.selected().length == ${datasource}.items().length && ${datasource}.items().length>0}"></div></th>
+          <th width="1%"><div data-bind="click: ${datasource}.toggleSelectAll, css: {hueCheckbox: true, 'fa': true, 'fa-check':${datasource}.selected().length == ${datasource}.items().length && ${datasource}.items().length>0}"></div></th>
           <!-- ko foreach: ${datasource}.columns() -->
             <th data-bind="text:$data"></th> <!-- need to i18n first -->
           <!-- /ko -->
@@ -74,22 +74,22 @@ ${ commonheader(None, "hbase", user) | n,unicode }
 <%def name="smartview(datasource)">
   <div class="smartview" data-bind="foreach: ${datasource}.items(), css: { 'gridView': ${datasource}.showGrid() }">
     <div class="smartview-row" data-bind="css:{selected:$data.isSelected()}, visible: $data.items().length > 0 || $data.isLoading()">
-      <h5 data-bind="click: lockClickOrigin($data.select, $element)"><code class="row_key" data-bind="text: $data.row.slice(0, 100) + ($data.row.length > 100 ? '...' : '')"></code> <i class="icon-check-sign" data-bind="visible:$data.isSelected()"></i> <img data-bind="visible: $data.isLoading()" src="/static/art/spinner.gif" />
+      <h5 data-bind="click: lockClickOrigin($data.select, $element)"><code class="row_key" data-bind="text: $data.row.slice(0, 100) + ($data.row.length > 100 ? '...' : '')"></code> <i class="fa fa-check-square" data-bind="visible:$data.isSelected()"></i> <img data-bind="visible: $data.isLoading()" src="/static/art/spinner.gif" />
         <span class="smartview-row-controls controls-hover-bottom">
-          <button class="btn" data-bind="click: $data.reload, clickBubble: false" data-toggle="tooltip" title="${_('Refresh Row')}"><i class="icon-refresh"></i></button>
+          <button class="btn" data-bind="click: $data.reload, clickBubble: false" data-toggle="tooltip" title="${_('Refresh Row')}"><i class="fa fa-refresh"></i></button>
           % if user.is_superuser:
-            <button class="btn" data-bind="click: $data.drop, clickBubble: false" data-toggle="tooltip" title="${_('Delete Row')}"><i class="icon-trash"></i></button>
+            <button class="btn" data-bind="click: $data.drop, clickBubble: false" data-toggle="tooltip" title="${_('Delete Row')}"><i class="fa fa-trash-o"></i></button>
           % endif
         </span>
         <span class="smartview-row-controls pull-right">
-          <button class="btn" data-bind="click: $data.toggleSelectedCollapse, enable: $data.selected().length > 0, clickBubble: false" data-toggle="tooltip" title="${_('Toggle Collapse Selected')}"><i data-bind="css: { 'icon-resize-small': !$data.isCollapsed(), 'icon-resize-full': $data.isCollapsed() }"></i></button>
-          <button class="btn" data-bind="click: $data.toggleSelectAllVisible, enable: $data.displayedItems().length > 0, clickBubble: false" data-toggle="tooltip" title="${_('Select All Visible')}"><i class="icon-check"></i></button>
+          <button class="btn" data-bind="click: $data.toggleSelectedCollapse, enable: $data.selected().length > 0, clickBubble: false" data-toggle="tooltip" title="${_('Toggle Collapse Selected')}"><i data-bind="css: { 'fa': true, 'fa-resize-small': !$data.isCollapsed(), 'fa-resize-full': $data.isCollapsed() }"></i></button>
+          <button class="btn" data-bind="click: $data.toggleSelectAllVisible, enable: $data.displayedItems().length > 0, clickBubble: false" data-toggle="tooltip" title="${_('Select All Visible')}"><i class="fa fa-check-square-o"></i></button>
           <input type="text" placeholder="${('Filter Column Names/Family')}" data-bind="value: $data.searchQuery, valueUpdate: $data.items().length < 100 ? 'afterkeydown' : 'change', clickBubble: false"/>
           ${sortBtn('$data.sortDropDown')}
           % if user.is_superuser:
-            <button class="btn" data-bind="enable: $data.selected().length > 0, click: $data.dropSelected, clickBubble: false"><i class="icon-trash"></i> Drop Columns</button>
+            <button class="btn" data-bind="enable: $data.selected().length > 0, click: $data.dropSelected, clickBubble: false"><i class="fa fa-trash-o"></i> Drop Columns</button>
           % endif
-          <a href="#new_column_modal" data-bind="click:function(){app.focusModel($data);launchModal('new_column_modal', $data);}" class="btn" title="${_('Add New Column/Cell')}"><i class="icon-plus"></i></a>
+          <a href="#new_column_modal" data-bind="click:function(){app.focusModel($data);launchModal('new_column_modal', $data);}" class="btn" title="${_('Add New Column/Cell')}"><i class="fa fa-plus"></i></a>
         </span>
       </h5>
       <ul class="smartview-cells" data-bind="event: {scroll: onScroll}">
@@ -97,11 +97,11 @@ ${ commonheader(None, "hbase", user) | n,unicode }
         <li data-bind="css: {'active': $data.isSelected()}, click: $data.select">
           <div>
             <h6><span class="label" data-bind="text: $data.name.split(':')[0]+':', style: {'backgroundColor': stringHashColor($data.name.split(':')[0])}"></span> <span data-bind="text: $data.name.split(':')[1]"></span></h6>
-            <span class="timestamp label"><i class='icon-time'></i> <span data-bind="text: convertTimestamp($data.timestamp)"></span></span>
+            <span class="timestamp label"><i class='fa fa-clock-o'></i> <span data-bind="text: convertTimestamp($data.timestamp)"></span></span>
             % if user.is_superuser:
-              <a class="corner-btn btn" data-bind="click: $data.drop, clickBubble: false"><i class="icon-trash"></i></a>
+              <a class="corner-btn btn" data-bind="click: $data.drop, clickBubble: false"><i class="fa fa-trash-o"></i></a>
             % endif
-            <a class="corner-btn btn" data-bind="visible: $data.editing(), event: { mousedown: function(){launchModal('cell_edit_modal',{content:$data, mime: detectMimeType($data.value())})} }"><i class="icon-pencil"></i> ${_('Full Editor')}</a>
+            <a class="corner-btn btn" data-bind="visible: $data.editing(), event: { mousedown: function(){launchModal('cell_edit_modal',{content:$data, mime: detectMimeType($data.value())})} }"><i class="fa fa-pencil"></i> ${_('Full Editor')}</a>
             <pre data-bind="text: ($data.value().length > 146 ? $data.value().substring(0, 144)+'...' : $data.value()).replace(/(\r\n|\n|\r)/gm,''), click: $data.value().length > 146 ? function(){launchModal('cell_edit_modal',{content:$data, mime: detectMimeType($data.value())})} : function(){$data.editing(true)}, clickBubble: false, visible: !$data.isLoading() && !$data.editing()"></pre>
             <textarea data-bind="visible: !$data.isLoading() && $data.editing(), hasfocus: $data.editing, value: $data.value, click:function(){}, clickBubble: false"></textarea>
             <img src="/static/art/spinner.gif" data-bind="visible: $data.isLoading() " />
@@ -113,7 +113,7 @@ ${ commonheader(None, "hbase", user) | n,unicode }
   </div>
   <br/>
   <center data-bind="visible: ${datasource}.isLoading()">
-  <!--[if !IE]><!--><i class="icon-spinner icon-spin loader-main"></i><!--<![endif]-->
+  <!--[if !IE]><!--><i class="fa fa-spinner fa-spin loader-main"></i><!--<![endif]-->
   <!--[if IE]><img src="/hbase/static/art/loader.gif" /><![endif]-->
   </center>
   <div class="alert" data-bind="visible: ${datasource}.items().length == 0 && !${datasource}.isLoading()">
@@ -164,15 +164,15 @@ ${ commonheader(None, "hbase", user) | n,unicode }
         <input type="text" class="input-large search-query" placeholder="${_('Search for Table Name')}" data-bind="value: views.tables.searchQuery, valueUpdate: 'afterkeydown'">
         % if user.is_superuser:
           <span class="btn-group">
-            <button class="btn" data-bind="enable: views.tables.canEnable, click: views.tables.enableSelected"><i class="icon-check-sign"></i> ${_('Enable')}</button>
+            <button class="btn" data-bind="enable: views.tables.canEnable, click: views.tables.enableSelected"><i class="fa fa-check-square"></i> ${_('Enable')}</button>
             <button class="btn" data-bind="enable: views.tables.canDisable, click: views.tables.disableSelected">
-              <i class="icon-check-empty"></i> ${_('Disable')}
+              <i class="fa fa-square-o"></i> ${_('Disable')}
             </button>
           </span>
-          <button class="btn" data-bind="enable: views.tables.selected().length > 0, click: views.tables.dropSelected"><i class="icon-trash"></i> ${_('Drop')}</button>
+          <button class="btn" data-bind="enable: views.tables.selected().length > 0, click: views.tables.dropSelected"><i class="fa fa-trash-o"></i> ${_('Drop')}</button>
         % endif
         <span class="pull-right">
-          <a href="#new_table_modal" role="button" data-bind="click: function(){app.focusModel(app.views.tables);}" class="btn" data-toggle="modal"><i class='icon-plus-sign'></i> ${_('New Table')}</a>
+          <a href="#new_table_modal" role="button" data-bind="click: function(){app.focusModel(app.views.tables);}" class="btn" data-toggle="modal"><i class='fa fa-plus-circle'></i> ${_('New Table')}</a>
         </span>
       </div>
     </div>
@@ -181,9 +181,9 @@ ${ commonheader(None, "hbase", user) | n,unicode }
 
     <script id="itemTemplate" type="text/html">
       <tr>
-        <td><div data-bind="click: $data.select, css: {hueCheckbox: true,'icon-ok':$data.isSelected}" data-row-selector-exclude="true"></div></td>
+        <td><div data-bind="click: $data.select, css: {hueCheckbox: true,'fa': true, 'fa-check':$data.isSelected}" data-row-selector-exclude="true"></div></td>
         <td width="90%"><a data-bind="text:$data.name,attr: {href: '#'+app.cluster()+'/'+$data.name}" data-row-selector="true"></a></td>
-        <td width="5%"><i data-bind="click: $data.toggle, css: {'icon-check-sign':$data.enabled, 'icon-check-empty':$data.enabled != true}" data-row-selector-exclude="true"></i></td>
+        <td width="5%"><i data-bind="click: $data.toggle, css: {'fa': true, 'fa-check-square':$data.enabled, 'fa-square-o':$data.enabled != true}" data-row-selector-exclude="true"></i></td>
       </tr>
     </script>
 
@@ -200,7 +200,7 @@ ${ commonheader(None, "hbase", user) | n,unicode }
         <ul>
           <li><input type="text" name="table_columns" placeholder="family_name"></li>
         </ul>
-        <a class="btn action_addColumn"><i class="icon-plus-sign"></i> ${_('Additional Column Family')}</a>
+        <a class="btn action_addColumn"><i class="fa fa-plus-circle"></i> ${_('Additional Column Family')}</a>
       </div>
       <div class="modal-footer">
         <button class="btn" data-dismiss="modal" aria-hidden="true">${_('Cancel')}</button>
@@ -215,7 +215,7 @@ ${ commonheader(None, "hbase", user) | n,unicode }
       <div class="container-fluid">
         <div class="row-fluid">
           <div id="searchbar-main" class="span5" data-bind="click: search.clickTagBar">
-            <a class="search-remove" data-bind="visible: search.cur_input() != '', click: function(){ app.search.cur_input(''); app.search.focused(true) }"><i class="icon-remove-sign"></i></a>
+            <a class="search-remove" data-bind="visible: search.cur_input() != '', click: function(){ app.search.cur_input(''); app.search.focused(true) }"><i class="fa fa-times-circle"></i></a>
             <div id="search-tags" contenteditable="true" data-bind="editableText: search.cur_input, hasfocus: search.focused, css: { 'active': search.cur_input() != '' }, event: { 'keydown': search.onKeyDown, click: search.updateMenu.bind(null) }" data-placeholder="${_('row_key, row_prefix* +scan_len [col1, family:col2, fam3:, col_prefix* +3, fam: col2 to col3] {Filter1() AND Filter2()}')}">
             </div>
           </div>
@@ -231,23 +231,23 @@ ${ commonheader(None, "hbase", user) | n,unicode }
             <li class="search-suggestion" data-bind="event: { mousedown: app.search.replaceFocusNode.bind(null, $data) }, css: {active: app.search.activeSuggestion() == $index()}"><a><span data-bind="text: $data"></span></a></li>
             <!-- /ko -->
           </ul>
-          <button class="btn btn-primary add-on" data-bind="enabled: !search.submitted(), click: search.evaluate.bind(null)"><i class="icon-search"></i></button>
+          <button class="btn btn-primary add-on" data-bind="enabled: !search.submitted(), click: search.evaluate.bind(null)"><i class="fa fa-search"></i></button>
           <span id="column-family-selectors">
             <!-- ko foreach: views.tabledata.columnFamilies() -->
               <span class="label" data-bind="text: $data.name, style: {'backgroundColor': ($data.enabled()) ? stringHashColor($data.name.split(':')[0]) : '#ccc' ,'cursor':'pointer'}, click: $data.toggle"></span>
             <!-- /ko -->
            </span>
             <span class="pull-right">
-              <button class="btn" data-bind="click: function(){views.tabledata.showGrid(!views.tabledata.showGrid());}, clickBubble: false" data-toggle="tooltip" title="${_('Toggle Grid')}"><i class="icon-table"></i></button>
+              <button class="btn" data-bind="click: function(){views.tabledata.showGrid(!views.tabledata.showGrid());}, clickBubble: false" data-toggle="tooltip" title="${_('Toggle Grid')}"><i class="fa fa-table"></i></button>
               <input type="text" placeholder="Filter Columns/Families" style="margin-left: 5px;" data-bind="value: app.views.tabledata.columnQuery, clickBubble: false"/>
-              <button class="btn" data-bind="click: views.tabledata.toggleSelectAll" style="margin-left: 5px;" data-toggle="tooltip" title="${_('Toggle Select All Rows')}"><i class="icon-check-sign"></i> ${_('All')}</button>
+              <button class="btn" data-bind="click: views.tabledata.toggleSelectAll" style="margin-left: 5px;" data-toggle="tooltip" title="${_('Toggle Select All Rows')}"><i class="fa fa-check-square"></i> ${_('All')}</button>
               ${sortBtn('views.tabledata.sortDropDown')}
             </span>
             <span class="smartview-row-controls pull-right" data-bind="if: views.tabledata.items().length > 0 && views.tabledata.selected().length > 0">
-              <button class="btn" data-bind="click: views.tabledata.batchSelectedAlias.bind(null, 'toggleSelectedCollapse'), clickBubble: false" data-toggle="tooltip" title="${_('Toggle Collapse Selected')}"><i class="icon-resize-small"></i></button>
-              <button class="btn" data-bind="click: views.tabledata.batchSelectedAlias.bind(null, 'toggleSelectAllVisible'), clickBubble: false" data-toggle="tooltip" title="${_('Select All Visible')}"><i class="icon-check"></i></button>
+              <button class="btn" data-bind="click: views.tabledata.batchSelectedAlias.bind(null, 'toggleSelectedCollapse'), clickBubble: false" data-toggle="tooltip" title="${_('Toggle Collapse Selected')}"><i class="fa fa-resize-small"></i></button>
+              <button class="btn" data-bind="click: views.tabledata.batchSelectedAlias.bind(null, 'toggleSelectAllVisible'), clickBubble: false" data-toggle="tooltip" title="${_('Select All Visible')}"><i class="fa fa-check-square-o"></i></button>
               % if user.is_superuser:
-                <button class="btn" data-bind="enable: views.tabledata.items()[0].selected().length > 0, click: views.tabledata.items()[0].dropSelected, clickBubble: false"><i class="icon-trash"></i> ${_('Drop Columns')}</button>
+                <button class="btn" data-bind="enable: views.tabledata.items()[0].selected().length > 0, click: views.tabledata.items()[0].dropSelected, clickBubble: false"><i class="fa fa-trash-o"></i> ${_('Drop Columns')}</button>
               % endif
             </span>
         </div>
@@ -276,10 +276,10 @@ ${ commonheader(None, "hbase", user) | n,unicode }
           </div>
           <span class="pull-right">
             % if user.is_superuser:
-              <a class="btn" data-bind="enable: views.tabledata.selected().length > 0, click: views.tabledata.dropSelected"><i class="icon-trash"></i> ${_('Drop Rows')}</a>
+              <a class="btn" data-bind="enable: views.tabledata.selected().length > 0, click: views.tabledata.dropSelected"><i class="fa fa-trash-o"></i> ${_('Drop Rows')}</a>
             % endif
-            <a id="bulk-upload-btn" class="btn fileChooserBtn" data-toggle="tooltip" title="${_('.CSV, .TSV, etc...')}" aria-hidden="true"><i class="icon-upload"></i> ${_('Bulk Upload')}</a>
-            <a href="#new_row_modal" data-bind="click:function(){app.focusModel(app.views.tabledata);launchModal('new_row_modal')}" role="button" class="btn btn-primary" data-callback=""><i class='icon-plus-sign'></i> ${_('New Row')}</a>
+            <a id="bulk-upload-btn" class="btn fileChooserBtn" data-toggle="tooltip" title="${_('.CSV, .TSV, etc...')}" aria-hidden="true"><i class="fa fa-upload"></i> ${_('Bulk Upload')}</a>
+            <a href="#new_row_modal" data-bind="click:function(){app.focusModel(app.views.tabledata);launchModal('new_row_modal')}" role="button" class="btn btn-primary" data-callback=""><i class='fa fa-plus-circle'></i> ${_('New Row')}</a>
           </span>
         </div>
     </div>
@@ -299,7 +299,7 @@ ${ commonheader(None, "hbase", user) | n,unicode }
         <input type="text" name="row_key" placeholder="row_key">
         <input type="hidden" name="column_data" data-subscribe="#new_row_field_list"/>
         <ul id="new_row_field_list"></ul>
-        <a class="btn action_addColumnValue"><i class="icon-plus-sign"></i> ${_('Add Field')}</a>
+        <a class="btn action_addColumnValue"><i class="fa fa-plus-circle"></i> ${_('Add Field')}</a>
       </div>
       <div class="modal-footer">
         <button class="btn" data-dismiss="modal" aria-hidden="true">${_('Cancel')}</button>
@@ -326,7 +326,7 @@ ${ commonheader(None, "hbase", user) | n,unicode }
         </div>
         <div class="modal-footer">
           <button class="btn" data-dismiss="modal" aria-hidden="true">${_('Cancel')}</button>
-          <a id="column-upload-btn" class="btn fileChooserBtn" aria-hidden="true"><i class="icon-upload"></i> ${_('Upload')}</a>
+          <a id="column-upload-btn" class="btn fileChooserBtn" aria-hidden="true"><i class="fa fa-upload"></i> ${_('Upload')}</a>
           <input type="submit" class="btn btn-primary" value="Submit">
         </div>
     </script>
@@ -338,7 +338,7 @@ ${ commonheader(None, "hbase", user) | n,unicode }
     <script id="cell_edit_modal_template" type="text/html">
       <div class="modal-header">
         <button type="button" class="close" data-dismiss="modal" aria-hidden="true">&times;</button>
-        <h3>Edit Cell - <span data-bind="text: content.name || formatTimestamp(content.timestamp)"></span> <code data-bind="text: mime"></code> <small><i class="icon-time"></i> <span data-bind="text: $data.content.timestamp"></span></small></h3>
+        <h3>Edit Cell - <span data-bind="text: content.name || formatTimestamp(content.timestamp)"></span> <code data-bind="text: mime"></code> <small><i class="fa fa-clock-o"></i> <span data-bind="text: $data.content.timestamp"></span></small></h3>
       </div>
       <div class="modal-body container-fluid">
           <div class="row-fluid">
@@ -367,7 +367,7 @@ ${ commonheader(None, "hbase", user) | n,unicode }
       <div class="modal-footer" data-bind="if: !$data.readonly">
         % if user.is_superuser:
           <button class="btn" data-dismiss="modal" aria-hidden="true">${_('Cancel')}</button>
-          <button id="file-upload-btn" class="btn fileChooserBtn" aria-hidden="true"><i class="icon-upload"></i> ${_('Upload')}</button>
+          <button id="file-upload-btn" class="btn fileChooserBtn" aria-hidden="true"><i class="fa fa-upload"></i> ${_('Upload')}</button>
           <input type="submit" class="btn btn-primary" value="${_('Save')}">
         % else:
           <button class="btn" data-dismiss="modal" aria-hidden="true">${_('OK')}</button>

+ 1 - 1
apps/hbase/static/css/hbase.css

@@ -568,7 +568,7 @@ textarea {
   border-top-left-radius: 0;
   height: auto;
   display: inline-block;
-  padding: 3px 12px 3px 8px;
+  padding: 8px 12px 9px 8px;
 }
 
 .add-on i {

+ 6 - 6
apps/jobbrowser/src/jobbrowser/templates/job.mako

@@ -42,7 +42,7 @@
                 <td data-row-selector-exclude="true">
                 %if task.taskAttemptIds:
                     <a href="${ url('jobbrowser.views.single_task_attempt_logs', job=task.jobId, taskid=task.taskId, attemptid=task.taskAttemptIds[-1]) }"
-                        data-row-selector="true"><i class="icon-tasks"></i>
+                        data-row-selector="true"><i class="fa fa-tasks"></i>
                     </a>
                 %endif
                 </td>
@@ -123,7 +123,7 @@ ${ comps.menubar() }
           <li class="nav-header">${_('Status')}</li>
           <li class="white" id="jobStatus">&nbsp;</li>
           <li class="nav-header">${_('Logs')}</li>
-          <li><a href="${ url('jobbrowser.views.job_single_logs', job=job.jobId) }"><i class="icon-tasks"></i> ${_('Logs')}</a></li>
+          <li><a href="${ url('jobbrowser.views.job_single_logs', job=job.jobId) }"><i class="fa fa-tasks"></i> ${_('Logs')}</a></li>
           % if not job.is_retired:
           <li class="nav-header">${_('Maps:')}</li>
           <li class="white" id="jobMaps">&nbsp;</li>
@@ -144,7 +144,7 @@ ${ comps.menubar() }
             % if location_url != None:
             <a href="${location_url}" title="${output_dir}">
             % endif
-            <i class="icon-folder-open"></i> ${dir_name}
+            <i class="fa fa-folder-open"></i> ${dir_name}
             % if location_url != None:
             </a>
             % endif
@@ -187,7 +187,7 @@ ${ comps.menubar() }
                       <tr>
                         <td>
                           <a href="${ url('jobbrowser.views.job_attempt_logs', job=job.jobId, attempt_index=loop.index) }" data-row-selector="true">
-                            <i class="icon-tasks"></i>
+                            <i class="fa fa-tasks"></i>
                           </a>
                         </td>
                         <td>${ attempt['id'] }</td>
@@ -449,7 +449,7 @@ $(document).ready(function () {
       $(".killJob").hide();
     }
     $("#killJobContainer").html(killCell);
-    $("#jobStatus").html('<span class="label ' + getStatusClass(job.status) + '">' + (job.isRetired && !job.isMR2 ? '<i class="icon-briefcase icon-white" title="${ _('Retired') }"></i> ' : '') + job.status + '</span>');
+    $("#jobStatus").html('<span class="label ' + getStatusClass(job.status) + '">' + (job.isRetired && !job.isMR2 ? '<i class="fa fa-briefcase fa fa-white" title="${ _('Retired') }"></i> ' : '') + job.status + '</span>');
     if (job.desiredMaps > 0) {
       $("#jobMaps").html((job.isRetired ? '${_('N/A')}' : '<div class="progress" style="width:100px" title="' + (job.isMR2 ? job.mapsPercentComplete : job.finishedMaps + '/' + job.desiredMaps) + '"><div class="bar-label">' + job.mapsPercentComplete + '%</div><div class="' + 'bar ' + getStatusClass(job.status, "bar-") + '" style="margin-top:-20px;width:' + job.mapsPercentComplete + '%"></div></div>'));
     }
@@ -519,7 +519,7 @@ $(document).ready(function () {
 
   function getTaskRow(task) {
     return [
-      '<a href="' + emptyStringIfNull(task.logs) + '" data-row-selector-exclude="true"><i class="icon-tasks"></i></a>',
+      '<a href="' + emptyStringIfNull(task.logs) + '" data-row-selector-exclude="true"><i class="fa fa-tasks"></i></a>',
       '<a href="' + emptyStringIfNull(task.url) + '" title="${_('View this task')}" data-row-selector="true">' + emptyStringIfNull(task.shortId) + '</a>',
       emptyStringIfNull(task.type)
     ]

+ 1 - 1
apps/jobbrowser/src/jobbrowser/templates/job_not_assigned.mako

@@ -50,7 +50,7 @@ ${ comps.menubar() }
               <br/>
               <br/>
 
-              <!--[if !IE]><!--><i class="icon-spinner icon-spin" style="font-size: 60px; color: #DDD"></i><!--<![endif]-->
+              <!--[if !IE]><!--><i class="fa fa-spinner fa-spin" style="font-size: 60px; color: #DDD"></i><!--<![endif]-->
               <!--[if IE]><img src="/static/art/spinner.gif" /><![endif]-->
             </p>
       </div>

+ 1 - 1
apps/jobbrowser/src/jobbrowser/templates/jobbrowser_components.mako

@@ -185,7 +185,7 @@
     additional_class = get_bootstrap_class(job, 'label')
     %>
     % if job.is_retired and not job.is_mr2:
-        <span class="label ${additional_class}"><i class="icon-briefcase icon-white" title="${ _('Retired') }"></i> ${job.status.lower()}</span>
+        <span class="label ${additional_class}"><i class="fa fa-briefcase" style="color: #FFFFFF" title="${ _('Retired') }"></i> ${job.status.lower()}</span>
     % else:
         <span class="label ${additional_class}">${job.status.lower()}</span>
     % endif

+ 3 - 3
apps/jobbrowser/src/jobbrowser/templates/jobs.mako

@@ -55,7 +55,7 @@ ${ components.menubar() }
     </%def>
   </%actionbar:render>
 
-  <div id="noJobs" class="alert"><i class="icon-warning-sign"></i>&nbsp; ${_('There are no jobs that match your search criteria.')}</div>
+  <div id="noJobs" class="alert"><i class="fa fa-exclamation-triangle"></i>&nbsp; ${_('There are no jobs that match your search criteria.')}</div>
 
   <table id="jobsTable" class="datatables table table-condensed">
     <thead>
@@ -229,10 +229,10 @@ ${ components.menubar() }
                 '>${ _('Kill') }</a>';
       }
       return [
-        '<a href="' + emptyStringIfNull(job.logs) + '" data-row-selector-exclude="true"><i class="icon-tasks"></i></a>',
+        '<a href="' + emptyStringIfNull(job.logs) + '" data-row-selector-exclude="true"><i class="fa fa-tasks"></i></a>',
         '<a href="' + emptyStringIfNull(job.url) + '" title="${_('View this job')}" data-row-selector="true">' + emptyStringIfNull(job.shortId) + '</a>',
         emptyStringIfNull(job.name),
-        '<span class="label ' + getStatusClass(job.status) + '">' + (job.isRetired && !job.isMR2 ? '<i class="icon-briefcase icon-white" title="${ _('Retired') }"></i> ' : '') + job.status + '</span>',
+        '<span class="label ' + getStatusClass(job.status) + '">' + (job.isRetired && !job.isMR2 ? '<i class="fa fa-briefcase fa fa-white" title="${ _('Retired') }"></i> ' : '') + job.status + '</span>',
         emptyStringIfNull(job.user),
         '<span title="' + emptyStringIfNull(job.mapsPercentComplete) + '">' + (job.isRetired ? '${_('N/A')}' : '<div class="progress" title="' + (job.isMR2 ? job.mapsPercentComplete : job.finishedMaps + '/' + job.desiredMaps) + '"><div class="bar-label">' + job.mapsPercentComplete + '%</div><div class="' + 'bar ' + getStatusClass(job.status, "bar-") + '" style="margin-top:-20px;width:' + job.mapsPercentComplete + '%"></div></div>') + '</span>',
         '<span title="' + emptyStringIfNull(job.reducesPercentComplete) + '">' + (job.isRetired ? '${_('N/A')}' : '<div class="progress" title="' + (job.isMR2 ? job.reducesPercentComplete : job.finishedReduces + '/' + job.desiredReduces) + '"><div class="bar-label">' + job.reducesPercentComplete + '%</div><div class="' + 'bar ' + getStatusClass(job.status, "bar-") + '" style="margin-top:-20px;width:' + job.reducesPercentComplete + '%"></div></div>') + '</span>',

+ 1 - 1
apps/jobbrowser/src/jobbrowser/templates/task.mako

@@ -79,7 +79,7 @@ ${ comps.menubar() }
                   <tbody>
                   % for attempt in task.attempts:
                     <tr>
-                      <td data-row-selector-exclude="true"><a href="${ url('jobbrowser.views.single_task_attempt_logs', job=joblnk.jobId, taskid=task.taskId, attemptid=attempt.attemptId) }" data-row-selector-exclude="true"><i class="icon-tasks"></i></a></td>
+                      <td data-row-selector-exclude="true"><a href="${ url('jobbrowser.views.single_task_attempt_logs', job=joblnk.jobId, taskid=task.taskId, attemptid=attempt.attemptId) }" data-row-selector-exclude="true"><i class="fa fa-tasks"></i></a></td>
                       <td><a title="${_('View this attempt')}" href="${ url('jobbrowser.views.single_task_attempt', job=joblnk.jobId, taskid=task.taskId, attemptid=attempt.attemptId) }" data-row-selector="true">${attempt.attemptId_short}</a></td>
                       <td>${"%d" % (attempt.progress * 100)}%</td>
                       <td><span class="status_link ${attempt.state}">${attempt.state}</span></td>

+ 1 - 1
apps/jobbrowser/src/jobbrowser/templates/tasks.mako

@@ -85,7 +85,7 @@ ${ comps.menubar() }
         <tr>
           <td data-row-selector-exclude="true">
               %if t.taskAttemptIds:
-              <a href="${ url('jobbrowser.views.single_task_attempt_logs', job=t.jobId, taskid=t.taskId, attemptid=t.taskAttemptIds[-1]) }" data-row-selector-exclude="true"><i class="icon-tasks"></i></a>
+              <a href="${ url('jobbrowser.views.single_task_attempt_logs', job=t.jobId, taskid=t.taskId, attemptid=t.taskAttemptIds[-1]) }" data-row-selector-exclude="true"><i class="fa fa-tasks"></i></a>
               %endif
           </td>
           <td>${t.taskId_short}</td>

+ 1 - 1
apps/jobbrowser/static/help/index.html

@@ -58,7 +58,7 @@
 
     <div class="body conbody">
 
-      <p class="p">Click the <strong class="ph b">Job Browser</strong> icon (<i class="icon-list-alt"></i>) in the navigation bar at the top of the Hue web page. </p>
+      <p class="p">Click the <strong class="ph b">Job Browser</strong> icon (<i class="fa fa-list-alt"></i>) in the navigation bar at the top of the Hue web page. </p>
 
 
       <p class="p">

+ 1 - 1
apps/jobbrowser/static/js/utils.js

@@ -124,7 +124,7 @@ function hellipsify() {
       })
       $(this).html(_oText.substr(0, MAX_LENGTH - 1) + "&hellip;&nbsp;");
       var _eye = $("<button class='nochrome btn-small'></button>");
-      _eye.html("<i class='icon-eye-open'></i>");
+      _eye.html("<i class='fa fa-eye'></i>");
       _eye.css("cursor", "pointer");
       _eye.on("click", function (e) {
         e.stopImmediatePropagation();

+ 25 - 25
apps/jobsub/src/jobsub/templates/designs.mako

@@ -70,22 +70,22 @@ ${ commonheader(None, "jobsub", user) | n,unicode }
     <%def name="actions()">
       <div class="btn-toolbar" style="display: inline; vertical-align: middle">
       <!-- ko ifnot: inTrash -->
-        <button id="submit-design" class="btn" title="${_('Submit')}" data-bind="enable: selectedDesignObjects().length == 1"><i class="icon-play"></i> ${_('Submit')}</button>
-        <button id="edit-design" class="btn" title="${_('Edit')}" data-bind="enable: selectedDesignObjects().length == 1"><i class="icon-pencil"></i> ${_('Edit')}</button>
-        <button id="copy-designs" class="btn" title="${_('Copy')}" data-bind="enable: selectedDesignObjects().length > 0"><i class="icon-copy"></i> ${_('Copy')}</button>
+        <button id="submit-design" class="btn" title="${_('Submit')}" data-bind="enable: selectedDesignObjects().length == 1"><i class="fa fa-play"></i> ${_('Submit')}</button>
+        <button id="edit-design" class="btn" title="${_('Edit')}" data-bind="enable: selectedDesignObjects().length == 1"><i class="fa fa-pencil"></i> ${_('Edit')}</button>
+        <button id="copy-designs" class="btn" title="${_('Copy')}" data-bind="enable: selectedDesignObjects().length > 0"><i class="fa fa-files-o"></i> ${_('Copy')}</button>
         <div id="delete-dropdown" class="btn-group" style="vertical-align: middle">
-          <button id="trash-designs" class="btn" data-bind="enable: selectedDesignObjects().length > 0"><i class="icon-remove"></i> ${_('Move to trash')}</button>
+          <button id="trash-designs" class="btn" data-bind="enable: selectedDesignObjects().length > 0"><i class="fa fa-times"></i> ${_('Move to trash')}</button>
           <button class="btn dropdown-toggle" data-toggle="dropdown" data-bind="enable: selectedDesignObjects().length > 0">
             <span class="caret"></span>
           </button>
           <ul class="dropdown-menu">
-            <li><a href="javascript:void(0);" id="destroy-designs" title="${_('Delete forever')}"><i class="icon-bolt"></i> ${_('Delete forever')}</a></li>
+            <li><a href="javascript:void(0);" id="destroy-designs" title="${_('Delete forever')}"><i class="fa fa-bolt"></i> ${_('Delete forever')}</a></li>
           </ul>
         </div>
       <!-- /ko -->
       <!-- ko if: inTrash -->
-        <button id="restore-designs" disabled="disabled" class="btn" title="${_('Restore')}" data-bind="enable: selectedDesignObjects().length > 0"><i class="icon-cloud-upload"></i> ${_('Restore')}</button>
-        <button id="destroy-designs" disabled="disabled" class="btn" title="${_('Delete forever')}" data-bind="enable: selectedDesignObjects().length > 0"><i class="icon-bolt"></i> ${_('Delete forever')}</button>
+        <button id="restore-designs" disabled="disabled" class="btn" title="${_('Restore')}" data-bind="enable: selectedDesignObjects().length > 0"><i class="fa fa-cloud-upload"></i> ${_('Restore')}</button>
+        <button id="destroy-designs" disabled="disabled" class="btn" title="${_('Delete forever')}" data-bind="enable: selectedDesignObjects().length > 0"><i class="fa fa-bolt"></i> ${_('Delete forever')}</button>
       <!-- /ko -->
       </div>
     </%def>
@@ -93,54 +93,54 @@ ${ commonheader(None, "jobsub", user) | n,unicode }
     <%def name="creation()">
       <div class="btn-toolbar" style="display: inline; vertical-align: middle">
       <!-- ko if: inTrash -->
-        <button disabled="disabled" type="button" id="purge-trashed-designs" class="btn" title="${ _('Delete all the designs') }"><i class="icon-fire"></i> ${ _('Empty trash') }</button>
+        <button disabled="disabled" type="button" id="purge-trashed-designs" class="btn" title="${ _('Delete all the designs') }"><i class="fa fa-fire"></i> ${ _('Empty trash') }</button>
         &nbsp;&nbsp;
       <!-- /ko -->
-      <button id="home" class="btn" title="${_('Home')}" data-bind="visible: isEditing"><i class="icon-home"></i> ${_('View designs')}</button>
+      <button id="home" class="btn" title="${_('Home')}" data-bind="visible: isEditing"><i class="fa fa-home"></i> ${_('View designs')}</button>
       <!-- ko ifnot: inTrash -->
         <div id="new-action-dropdown" class="btn-group" style="vertical-align: middle">
           <a href="#" class="btn new-action-link dropdown-toggle" title="${_('New action')}" data-toggle="dropdown">
-            <i class="icon-plus-sign"></i> ${_('New action')}
+            <i class="fa fa-plus-circle"></i> ${_('New action')}
             <span class="caret"></span>
           </a>
           <ul class="dropdown-menu" style="top: auto">
             <li>
-              <a href="#new-design/mapreduce" class="new-node-link" title="${_('Create MapReduce design')}" rel="tooltip"><i class="icon-plus-sign"></i> MapReduce</a>
+              <a href="#new-design/mapreduce" class="new-node-link" title="${_('Create MapReduce design')}" rel="tooltip"><i class="fa fa-plus-circle"></i> MapReduce</a>
             </li>
             <li>
-              <a href="#new-design/java" class="new-node-link" title="${_('Create Java design')}" rel="tooltip"><i class="icon-plus-sign"></i> Java</a>
+              <a href="#new-design/java" class="new-node-link" title="${_('Create Java design')}" rel="tooltip"><i class="fa fa-plus-circle"></i> Java</a>
             </li>
             <li>
-              <a href="#new-design/streaming" class="new-node-link" title="${_('Create Streaming design')}" rel="tooltip"><i class="icon-plus-sign"></i> Streaming</a>
+              <a href="#new-design/streaming" class="new-node-link" title="${_('Create Streaming design')}" rel="tooltip"><i class="fa fa-plus-circle"></i> Streaming</a>
             </li>
             <li>
-              <a href="#new-design/hive" class="new-node-link" title="${_('Create Hive design')}" rel="tooltip"><i class="icon-plus-sign"></i> Hive</a>
+              <a href="#new-design/hive" class="new-node-link" title="${_('Create Hive design')}" rel="tooltip"><i class="fa fa-plus-circle"></i> Hive</a>
             </li>
             <li>
-              <a href="#new-design/pig" class="new-node-link" title="${_('Create Pig design')}" rel="tooltip"><i class="icon-plus-sign"></i> Pig</a>
+              <a href="#new-design/pig" class="new-node-link" title="${_('Create Pig design')}" rel="tooltip"><i class="fa fa-plus-circle"></i> Pig</a>
             </li>
             <li>
-              <a href="#new-design/sqoop" class="new-node-link" title="${_('Create Sqoop design')}" rel="tooltip"><i class="icon-plus-sign"></i> Sqoop</a>
+              <a href="#new-design/sqoop" class="new-node-link" title="${_('Create Sqoop design')}" rel="tooltip"><i class="fa fa-plus-circle"></i> Sqoop</a>
             </li>
             <li>
-              <a href="#new-design/fs" class="new-node-link" title="${_('Create Fs design')}" rel="tooltip"><i class="icon-plus-sign"></i> Fs</a>
+              <a href="#new-design/fs" class="new-node-link" title="${_('Create Fs design')}" rel="tooltip"><i class="fa fa-plus-circle"></i> Fs</a>
             </li>
             <li>
-              <a href="#new-design/ssh" class="new-node-link" title="${_('Create SSH design')}" rel="tooltip"><i class="icon-plus-sign"></i> Ssh</a>
+              <a href="#new-design/ssh" class="new-node-link" title="${_('Create SSH design')}" rel="tooltip"><i class="fa fa-plus-circle"></i> Ssh</a>
             </li>
             <li>
-              <a href="#new-design/shell" class="new-node-link" title="${_('Create Shell design')}" rel="tooltip"><i class="icon-plus-sign"></i> Shell</a>
+              <a href="#new-design/shell" class="new-node-link" title="${_('Create Shell design')}" rel="tooltip"><i class="fa fa-plus-circle"></i> Shell</a>
             </li>
             <li>
-              <a href="#new-design/email" class="new-node-link" title="${_('Create Email design')}" rel="tooltip"><i class="icon-plus-sign"></i> Email</a>
+              <a href="#new-design/email" class="new-node-link" title="${_('Create Email design')}" rel="tooltip"><i class="fa fa-plus-circle"></i> Email</a>
             </li>
             <li>
-              <a href="#new-design/distcp" class="new-node-link" title="${_('Create DistCp design')}" rel="tooltip"><i class="icon-plus-sign"></i> DistCp</a>
+              <a href="#new-design/distcp" class="new-node-link" title="${_('Create DistCp design')}" rel="tooltip"><i class="fa fa-plus-circle"></i> DistCp</a>
             </li>
           </ul>
         </div>
         &nbsp;&nbsp;
-        <a href="#trashed-designs" class="btn"><i class="icon-trash"></i> ${ _('View trash') }</a>
+        <a href="#trashed-designs" class="btn"><i class="fa fa-trash-o"></i> ${ _('View trash') }</a>
       <!-- /ko -->
 
       </div>
@@ -154,7 +154,7 @@ ${ commonheader(None, "jobsub", user) | n,unicode }
       <thead>
         <tr>
           <th width="1%">
-            <div id="selectAll" data-bind="click: toggleSelectAll, css: {'hueCheckbox': true, 'icon-ok': allSelected}"></div>
+            <div id="selectAll" data-bind="click: toggleSelectAll, css: {'hueCheckbox': true, 'fa': true, 'fa-check': allSelected}"></div>
           </th>
           <th>${_('Name')}</th>
           <th>${_('Description')}</th>
@@ -180,14 +180,14 @@ ${ commonheader(None, "jobsub", user) | n,unicode }
     <img src="/static/art/spinner-big.gif" />
   <![endif]-->
   <!--[if !IE]> -->
-    <i class="icon-spinner icon-spin"></i>
+    <i class="fa fa-spinner fa-spin"></i>
   <!-- <![endif]-->
 </div>
 
 <script id="designTemplate" type="text/html">
   <tr style="cursor: pointer" data-bind="with: design">
     <td data-row-selector-exclude="true" data-bind="click: function(data, event) {$root.toggleSelect.call($root, $index());}" class="center" style="cursor: default">
-      <div class="hueCheckbox savedCheck" data-row-selector-exclude="true" data-bind="css: {'hueCheckbox': name != '..', 'icon-ok': $parent.selected()}"></div>
+      <div class="hueCheckbox savedCheck" data-row-selector-exclude="true" data-bind="css: {'hueCheckbox': name != '..', 'fa': name != '..', 'fa-check': $parent.selected()}"></div>
     </td>
     <td data-bind="click: function(data, event) { window.location = '#edit-design/' + id() }, text: name"></td>
     <td data-bind="click: function(data, event) { window.location = '#edit-design/' + id() }, text: description"></td>

+ 1 - 1
apps/jobsub/static/templates/actions/distcp.html

@@ -13,7 +13,7 @@
       <div class="control-group ">
         <label class="control-label">
           <a href="javascript:void(0);" onclick="$('div.advanced').toggle('hide')" class="advanced">
-            <i class="icon-share-alt"></i>
+            <i class="fa fa-share"></i>
             advanced
           </a>
         </label>

+ 1 - 1
apps/jobsub/static/templates/actions/email.html

@@ -13,7 +13,7 @@
       <div class="control-group ">
         <label class="control-label">
           <a href="javascript:void(0);" onclick="$('div.advanced').toggle('hide')" class="advanced">
-            <i class="icon-share-alt"></i>
+            <i class="fa fa-share"></i>
             advanced
           </a>
         </label>

+ 1 - 1
apps/jobsub/static/templates/actions/fs.html

@@ -13,7 +13,7 @@
       <div class="control-group ">
         <label class="control-label">
           <a href="javascript:void(0);" onclick="$('div.advanced').toggle('hide')" class="advanced">
-            <i class="icon-share-alt"></i>
+            <i class="fa fa-share"></i>
             advanced
           </a>
         </label>

+ 1 - 1
apps/jobsub/static/templates/actions/hive.html

@@ -13,7 +13,7 @@
       <div class="control-group ">
         <label class="control-label">
           <a href="javascript:void(0);" onclick="$('div.advanced').toggle('hide')" class="advanced">
-            <i class="icon-share-alt"></i>
+            <i class="fa fa-share"></i>
             advanced
           </a>
         </label>

+ 1 - 1
apps/jobsub/static/templates/actions/java.html

@@ -13,7 +13,7 @@
       <div class="control-group ">
         <label class="control-label">
           <a href="javascript:void(0);" onclick="$('div.advanced').toggle('hide')" class="advanced">
-            <i class="icon-share-alt"></i>
+            <i class="fa fa-share"></i>
             advanced
           </a>
         </label>

+ 1 - 1
apps/jobsub/static/templates/actions/mapreduce.html

@@ -13,7 +13,7 @@
       <div class="control-group ">
         <label class="control-label">
           <a href="javascript:void(0);" onclick="$('div.advanced').toggle('hide')" class="advanced">
-            <i class="icon-share-alt"></i>
+            <i class="fa fa-share"></i>
             advanced
           </a>
         </label>

+ 1 - 1
apps/jobsub/static/templates/actions/pig.html

@@ -13,7 +13,7 @@
       <div class="control-group ">
         <label class="control-label">
           <a href="javascript:void(0);" onclick="$('div.advanced').toggle('hide')" class="advanced">
-            <i class="icon-share-alt"></i>
+            <i class="fa fa-share"></i>
             advanced
           </a>
         </label>

+ 1 - 1
apps/jobsub/static/templates/actions/shell.html

@@ -13,7 +13,7 @@
       <div class="control-group ">
         <label class="control-label">
           <a href="javascript:void(0);" onclick="$('div.advanced').toggle('hide')" class="advanced">
-            <i class="icon-share-alt"></i>
+            <i class="fa fa-share"></i>
             advanced
           </a>
         </label>

+ 1 - 1
apps/jobsub/static/templates/actions/sqoop.html

@@ -13,7 +13,7 @@
       <div class="control-group ">
         <label class="control-label">
           <a href="javascript:void(0);" onclick="$('div.advanced').toggle('hide')" class="advanced">
-            <i class="icon-share-alt"></i>
+            <i class="fa fa-share"></i>
             advanced
           </a>
         </label>

+ 1 - 1
apps/jobsub/static/templates/actions/ssh.html

@@ -13,7 +13,7 @@
       <div class="control-group ">
         <label class="control-label">
           <a href="javascript:void(0);" onclick="$('div.advanced').toggle('hide')" class="advanced">
-            <i class="icon-share-alt"></i>
+            <i class="fa fa-share"></i>
             advanced
           </a>
         </label>

+ 1 - 1
apps/jobsub/static/templates/actions/streaming.html

@@ -13,7 +13,7 @@
       <div class="control-group ">
         <label class="control-label">
           <a href="javascript:void(0);" onclick="$('div.advanced').toggle('hide')" class="advanced">
-            <i class="icon-share-alt"></i>
+            <i class="fa fa-share"></i>
             advanced
           </a>
         </label>

+ 11 - 11
apps/metastore/src/metastore/templates/databases.mako

@@ -30,7 +30,7 @@ ${ components.menubar() }
       <div class="sidebar-nav card-small">
         <ul class="nav nav-list">
           <li class="nav-header">${_('actions')}</li>
-          <li><a href="${ url('beeswax:create_database') }"><i class="icon-plus-sign"></i> ${_('Create a new database')}</a></li>
+          <li><a href="${ url('beeswax:create_database') }"><i class="fa fa-plus-circle"></i> ${_('Create a new database')}</a></li>
         </ul>
       </div>
     </div>
@@ -47,7 +47,7 @@ ${ components.menubar() }
 
           <%def name="actions()">
             % if has_write_access:
-              <button id="dropBtn" class="btn toolbarBtn" title="${_('Drop the selected databases')}" disabled="disabled"><i class="icon-trash"></i>  ${_('Drop')}</button>
+              <button id="dropBtn" class="btn toolbarBtn" title="${_('Drop the selected databases')}" disabled="disabled"><i class="fa fa-trash-o"></i>  ${_('Drop')}</button>
             % endif
           </%def>
         </%actionbar:render>
@@ -55,7 +55,7 @@ ${ components.menubar() }
         <table class="table table-condensed datatables">
           <thead>
             <tr>
-              <th width="1%"><div class="hueCheckbox selectAll" data-selectables="databaseCheck"></div></th>
+              <th width="1%"><div class="hueCheckbox selectAll fa" data-selectables="databaseCheck"></div></th>
               <th>${_('Database Name')}</th>
             </tr>
           </thead>
@@ -63,7 +63,7 @@ ${ components.menubar() }
           % for database in databases:
             <tr>
               <td data-row-selector-exclude="true" width="1%">
-                <div class="hueCheckbox databaseCheck"
+                <div class="hueCheckbox databaseCheck fa"
                    data-view-url="${ url('metastore:show_tables', database=database) }"
                    data-drop-name="${ database }"
                    data-row-selector-exclude="true"></div>
@@ -133,24 +133,24 @@ ${ components.menubar() }
 
     $(".selectAll").click(function () {
       if ($(this).attr("checked")) {
-        $(this).removeAttr("checked").removeClass("icon-ok");
-        $("." + $(this).data("selectables")).removeClass("icon-ok").removeAttr("checked");
+        $(this).removeAttr("checked").removeClass("fa-check");
+        $("." + $(this).data("selectables")).removeClass("fa-check").removeAttr("checked");
       }
       else {
-        $(this).attr("checked", "checked").addClass("icon-ok");
-        $("." + $(this).data("selectables")).addClass("icon-ok").attr("checked", "checked");
+        $(this).attr("checked", "checked").addClass("fa-check");
+        $("." + $(this).data("selectables")).addClass("fa-check").attr("checked", "checked");
       }
       toggleActions();
     });
 
     $(".databaseCheck").click(function () {
       if ($(this).attr("checked")) {
-        $(this).removeClass("icon-ok").removeAttr("checked");
+        $(this).removeClass("fa-check").removeAttr("checked");
       }
       else {
-        $(this).addClass("icon-ok").attr("checked", "checked");
+        $(this).addClass("fa-check").attr("checked", "checked");
       }
-      $(".selectAll").removeAttr("checked").removeClass("icon-ok");
+      $(".selectAll").removeAttr("checked").removeClass("fa-check");
       toggleActions();
     });
 

+ 1 - 1
apps/metastore/src/metastore/templates/describe_partitions.mako

@@ -30,7 +30,7 @@ ${ components.menubar() }
       <div class="sidebar-nav card-small">
         <ul class="nav nav-list">
           <li class="nav-header">${_('Actions')}</li>
-          <li><a href="${ url('metastore:describe_table', database=database, table=table.name) }"><i class="icon-reply"></i> ${_('Show Table')}</a></li>
+          <li><a href="${ url('metastore:describe_table', database=database, table=table.name) }"><i class="fa fa-reply"></i> ${_('Show Table')}</a></li>
         </ul>
       </div>
     </div>

+ 5 - 5
apps/metastore/src/metastore/templates/describe_table.mako

@@ -58,15 +58,15 @@ ${ components.menubar() }
         <ul class="nav nav-list">
           <li class="nav-header">${_('Actions')}</li>
           % if has_write_access:
-          <li><a href="#" id="import-data-btn"><i class="icon-download"></i> ${_('Import Data')}</a></li>
+          <li><a href="#" id="import-data-btn"><i class="fa fa-arrow-circle-o-down"></i> ${_('Import Data')}</a></li>
           % endif
-          <li><a href="${ url('metastore:read_table', database=database, table=table.name) }"><i class="icon-list"></i> ${_('Browse Data')}</a></li>
+          <li><a href="${ url('metastore:read_table', database=database, table=table.name) }"><i class="fa fa-list"></i> ${_('Browse Data')}</a></li>
           % if has_write_access:
-          <li><a href="#dropTable" data-toggle="modal"><i class="icon-trash"></i> ${_('Drop')} ${view_or_table_noun}</a></li>
+          <li><a href="#dropTable" data-toggle="modal"><i class="fa fa-trash-o"></i> ${_('Drop')} ${view_or_table_noun}</a></li>
           % endif
-          <li><a href="${ table.hdfs_link }" rel="${ table.path_location }"><i class="icon-share"></i> ${_('View File Location')}</a></li>
+          <li><a href="${ table.hdfs_link }" rel="${ table.path_location }"><i class="fa fa-share-square-o"></i> ${_('View File Location')}</a></li>
           % if table.partition_keys:
-          <li><a href="${ url('metastore:describe_partitions', database=database, table=table.name) }"><i class="icon-sitemap"></i> ${_('Show Partitions')} (${ len(partitions) })</a></li>
+          <li><a href="${ url('metastore:describe_partitions', database=database, table=table.name) }"><i class="fa fa-sitemap"></i> ${_('Show Partitions')} (${ len(partitions) })</a></li>
           % endif
         </ul>
       </div>

+ 14 - 14
apps/metastore/src/metastore/templates/tables.mako

@@ -37,8 +37,8 @@ ${ components.menubar() }
           </li>
           % if has_write_access:
           <li class="nav-header">${_('Actions')}</li>
-          <li><a href="${ url('beeswax:import_wizard', database=database) }"><i class="icon-copy"></i> ${_('Create a new table from a file')}</a></li>
-          <li><a href="${ url('beeswax:create_table', database=database) }"><i class="icon-wrench"></i> ${_('Create a new table manually')}</a></li>
+          <li><a href="${ url('beeswax:import_wizard', database=database) }"><i class="fa fa-files-o"></i> ${_('Create a new table from a file')}</a></li>
+          <li><a href="${ url('beeswax:create_table', database=database) }"><i class="fa fa-wrench"></i> ${_('Create a new table manually')}</a></li>
           % endif
         </ul>
       </div>
@@ -52,10 +52,10 @@ ${ components.menubar() }
           </%def>
 
           <%def name="actions()">
-            <button id="viewBtn" class="btn toolbarBtn" title="${_('Browse the selected table')}" disabled="disabled"><i class="icon-eye-open"></i> ${_('View')}</button>
-            <button id="browseBtn" class="btn toolbarBtn" title="${_('Browse the selected table')}" disabled="disabled"><i class="icon-list"></i> ${_('Browse Data')}</button>
+            <button id="viewBtn" class="btn toolbarBtn" title="${_('Browse the selected table')}" disabled="disabled"><i class="fa fa-eye"></i> ${_('View')}</button>
+            <button id="browseBtn" class="btn toolbarBtn" title="${_('Browse the selected table')}" disabled="disabled"><i class="fa fa-list"></i> ${_('Browse Data')}</button>
             % if has_write_access:
-            <button id="dropBtn" class="btn toolbarBtn" title="${_('Delete the selected tables')}" disabled="disabled"><i class="icon-trash"></i>  ${_('Drop')}</button>
+            <button id="dropBtn" class="btn toolbarBtn" title="${_('Delete the selected tables')}" disabled="disabled"><i class="fa fa-trash-o"></i>  ${_('Drop')}</button>
             % endif
           </%def>
         </%actionbar:render>
@@ -63,7 +63,7 @@ ${ components.menubar() }
           <table class="table table-condensed datatables" data-tablescroller-disable="true">
           <thead>
             <tr>
-              <th width="1%"><div class="hueCheckbox selectAll" data-selectables="tableCheck"></div></th>
+              <th width="1%"><div class="hueCheckbox selectAll fa" data-selectables="tableCheck"></div></th>
               <th>${_('Table Name')}</th>
             </tr>
           </thead>
@@ -71,7 +71,7 @@ ${ components.menubar() }
           % for table in tables:
             <tr>
               <td data-row-selector-exclude="true" width="1%">
-                <div class="hueCheckbox tableCheck"
+                <div class="hueCheckbox tableCheck fa"
                      data-view-url="${ url('metastore:describe_table', database=database, table=table) }"
                      data-browse-url="${ url('metastore:read_table', database=database, table=table) }"
                      data-drop-name="${ table }"
@@ -147,24 +147,24 @@ ${ components.menubar() }
 
     $(".selectAll").click(function () {
       if ($(this).attr("checked")) {
-        $(this).removeAttr("checked").removeClass("icon-ok");
-        $("." + $(this).data("selectables")).removeClass("icon-ok").removeAttr("checked");
+        $(this).removeAttr("checked").removeClass("fa-check");
+        $("." + $(this).data("selectables")).removeClass("fa-check").removeAttr("checked");
       }
       else {
-        $(this).attr("checked", "checked").addClass("icon-ok");
-        $("." + $(this).data("selectables")).addClass("icon-ok").attr("checked", "checked");
+        $(this).attr("checked", "checked").addClass("fa-check");
+        $("." + $(this).data("selectables")).addClass("fa-check").attr("checked", "checked");
       }
       toggleActions();
     });
 
     $(".tableCheck").click(function () {
       if ($(this).attr("checked")) {
-        $(this).removeClass("icon-ok").removeAttr("checked");
+        $(this).removeClass("fa-check").removeAttr("checked");
       }
       else {
-        $(this).addClass("icon-ok").attr("checked", "checked");
+        $(this).addClass("fa-check").attr("checked", "checked");
       }
-      $(".selectAll").removeAttr("checked").removeClass("icon-ok");
+      $(".selectAll").removeAttr("checked").removeClass("fa-check");
       toggleActions();
     });
 

+ 1 - 1
apps/oozie/src/oozie/templates/dashboard/list_oozie_bundle.mako

@@ -67,7 +67,7 @@ ${ layout.menubar(section='bundles', dashboard=True) }
           % for bundled in bundle.coordinators.distinct():
             <li rel="tooltip" title="${ bundled.coordinator.name }" class="white">
               <a href="${ bundled.coordinator.get_absolute_url() }">
-                <i class="icon-eye-open"></i> <span class="dataset">${ bundled.coordinator.name }</span>
+                <i class="fa fa-eye"></i> <span class="dataset">${ bundled.coordinator.name }</span>
               </a>
             </li>
           % endfor

+ 1 - 1
apps/oozie/src/oozie/templates/dashboard/list_oozie_coordinator.mako

@@ -67,7 +67,7 @@ ${ layout.menubar(section='coordinators', dashboard=True) }
         % if coordinator:
             <li class="nav-header">${ _('Datasets') }</li>
           % for dataset in coordinator.dataset_set.all():
-            <li rel="tooltip" title="${ dataset.name } : ${ dataset.uri }" class="white"><i class="icon-eye-open"></i> <span class="dataset">${ dataset.name }</span></li>
+            <li rel="tooltip" title="${ dataset.name } : ${ dataset.uri }" class="white"><i class="fa fa-eye"></i> <span class="dataset">${ dataset.name }</span></li>
           % endfor
         % endif
 

+ 3 - 3
apps/oozie/src/oozie/templates/dashboard/list_oozie_workflow.mako

@@ -70,10 +70,10 @@ ${ layout.menubar(section='workflows', dashboard=True) }
                 % if var not in ParameterForm.NON_PARAMETERS and var != 'oozie.use.system.libpath':
                   % if utils.is_linkable(var, str(value)):
                   <li rel="tooltip" title="${ var } : ${ str(value) }">
-                    <a href="${ utils.hdfs_link_js(str(value)) }"><i class="icon-eye-open"></i> <span class="variable hide">${ var }</span></a>
+                    <a href="${ utils.hdfs_link_js(str(value)) }"><i class="fa fa-eye"></i> <span class="variable hide">${ var }</span></a>
                   % else:
                   <li rel="tooltip" title="${ var } : ${ str(value) }" class="white">
-                    <i class="icon-eye-open"></i> <span class="variable">${ var }</span>
+                    <i class="fa fa-eye"></i> <span class="variable">${ var }</span>
                   % endif
                   </li>
                 % endif
@@ -206,7 +206,7 @@ ${ layout.menubar(section='workflows', dashboard=True) }
         <script id="actionTemplate" type="text/html">
           <tr>
             <td>
-              <a data-bind="visible:externalId !='', attr: { href: log}" data-row-selector-exclude="true"><i class="icon-tasks"></i></a>
+              <a data-bind="visible:externalId !='', attr: { href: log}" data-row-selector-exclude="true"><i class="fa fa-tasks"></i></a>
             </td>
             <td>
               <a data-bind="text: id, attr: { href: url}" data-row-selector="true"></a>

+ 2 - 2
apps/oozie/src/oozie/templates/dashboard/list_oozie_workflow_action.mako

@@ -49,7 +49,7 @@ ${ layout.menubar(section='workflows', dashboard=True) }
 
             <li class="nav-header">${ _('Logs') }</li>
             <li>
-              <a href="${ url('jobbrowser.views.job_single_logs', job=action.externalId) }" title="${ _('View the logs') }" rel="tooltip"><i class="icon-tasks"></i></a>
+              <a href="${ url('jobbrowser.views.job_single_logs', job=action.externalId) }" title="${ _('View the logs') }" rel="tooltip"><i class="fa fa-tasks"></i></a>
             </li>
           % endif
 
@@ -158,7 +158,7 @@ ${ layout.menubar(section='workflows', dashboard=True) }
               <tr>
                 <td>
                   <a href="${ url('jobbrowser.views.job_single_logs', job=child_id) }" title="${ _('View the logs') }" rel="tooltip">
-                    <i class="icon-tasks"></i>
+                    <i class="fa fa-tasks"></i>
                   </a>
                 </td>
                 <td>

+ 1 - 1
apps/oozie/src/oozie/templates/editor/action_utils.mako

@@ -65,7 +65,7 @@
   <div class="control-group ">
     <label class="control-label">
       <a href="javascript:void(0);" id="advanced-btn" onclick="$('#node-advanced-container').toggle('hide')">
-        <i class="icon-share-alt"></i> ${ _('Advanced') }</a>
+        <i class="fa fa-share"></i> ${ _('Advanced') }</a>
     </label>
     <div class="controls"></div>
   </div>

+ 1 - 1
apps/oozie/src/oozie/templates/editor/create_bundle.mako

@@ -34,7 +34,7 @@ ${ layout.menubar(section='bundles') }
         <div class="sidebar-nav">
           <ul class="nav nav-list">
             <li class="nav-header">${ _('Properties') }</li>
-            <li class="active"><a href="#properties"><i class="icon-reorder"></i> ${ _('Edit properties') }</a></li>
+            <li class="active"><a href="#properties"><i class="fa fa-reorder"></i> ${ _('Edit properties') }</a></li>
           </ul>
         </div>
       </div>

+ 2 - 2
apps/oozie/src/oozie/templates/editor/create_workflow.mako

@@ -34,7 +34,7 @@ ${ layout.menubar(section='workflows') }
       <div id="workflowControls" class="sidebar-nav">
         <ul class="nav nav-list">
           <li class="nav-header">${ _('New workflow') }</li>
-          <li class="active"><a href="#properties"><i class="icon-reorder"></i> ${ _('Properties') }</a></li>
+          <li class="active"><a href="#properties"><i class="fa fa-reorder"></i> ${ _('Properties') }</a></li>
         </ul>
       </div>
     </div>
@@ -51,7 +51,7 @@ ${ layout.menubar(section='workflows') }
               <div class="control-group ">
                 <label class="control-label">
                   <a href="#" id="advanced-btn" onclick="$('#advanced-container').toggle('hide')">
-                    <i class="icon-share-alt"></i> ${ _('advanced') }
+                    <i class="fa fa-share"></i> ${ _('advanced') }
                   </a>
                 </label>
                 <div class="controls"></div>

+ 7 - 7
apps/oozie/src/oozie/templates/editor/edit_bundle.mako

@@ -54,29 +54,29 @@ ${ layout.menubar(section='bundles') }
       <div class="sidebar-nav">
         <ul class="nav nav-list">
           <li class="nav-header">${ _('Properties') }</li>
-          <li class="active"><a href="#properties"><i class="icon-reorder"></i> ${ _('Edit properties') }</a></li>
+          <li class="active"><a href="#properties"><i class="fa fa-reorder"></i> ${ _('Edit properties') }</a></li>
 
           <li class="nav-header">${ _('Coordinators') }</li>
           % if bundle.is_editable(user):
-          <li><a href="#addBundledCoordinator"><i class="icon-plus"></i>${ _('Add') }</a></li>
+          <li><a href="#addBundledCoordinator"><i class="fa fa-plus"></i>${ _('Add') }</a></li>
           % endif
-          <li><a href="#listCoordinators"><i class="icon-cloud"></i> ${ _('Show selected') }</a></li>
+          <li><a href="#listCoordinators"><i class="fa fa-cloud"></i> ${ _('Show selected') }</a></li>
 
           % if bundle.is_editable(user):
               <li class="nav-header">${ _('History') }</li>
-              <li><a href="#listHistory"><i class="icon-archive"></i> ${ _('Show history') }</a></li>
+              <li><a href="#listHistory"><i class="fa fa-archive"></i> ${ _('Show history') }</a></li>
           % endif
 
           % if bundle:
               <li class="nav-header">${ _('Actions') }</li>
               <li>
                 <a id="submit-btn" href="javascript:void(0)" data-submit-url="${ url('oozie:submit_bundle', bundle=bundle.id) }"
-                   title="${ _('Submit this bundle') }" rel="tooltip" data-placement="right"><i class="icon-play"></i> ${ _('Submit') }
+                   title="${ _('Submit this bundle') }" rel="tooltip" data-placement="right"><i class="fa fa-play"></i> ${ _('Submit') }
                 </a>
               </li>
               <li>
                 <a id="clone-btn" href="javascript:void(0)" data-clone-url="${ url('oozie:clone_bundle', bundle=bundle.id) }"
-                   title="${ _('Copy this bundle') }" rel="tooltip" data-placement="right"><i class="icon-copy"></i> ${ _('Copy') }
+                   title="${ _('Copy this bundle') }" rel="tooltip" data-placement="right"><i class="fa fa-files-o"></i> ${ _('Copy') }
                 </a>
              </li>
           % endif
@@ -164,7 +164,7 @@ ${ layout.menubar(section='bundles') }
                 <tr title="${ _('Click to view the coordinator') }" rel="tooltip">
                   <td>
                     <a href="${ url('oozie:edit_coordinator', coordinator=form.instance.coordinator.id) }" target="_blank">
-                    <i class="icon-share-alt"></i> ${ form.instance.coordinator.name }
+                    <i class="fa fa-share"></i> ${ form.instance.coordinator.name }
                     </a>
                   </td>
                   <td>

+ 7 - 7
apps/oozie/src/oozie/templates/editor/edit_coordinator.mako

@@ -53,28 +53,28 @@ ${ layout.menubar(section='coordinators') }
       <div class="sidebar-nav">
         <ul class="nav nav-list">
           <li class="nav-header">${ _('Properties') }</li>
-          <li class="active"><a href="#properties"><i class="icon-reorder"></i> ${ _('Edit properties') }</a></li>
+          <li class="active"><a href="#properties"><i class="fa fa-reorder"></i> ${ _('Edit properties') }</a></li>
 
           % if coordinator.workflow:
             <li class="nav-header">${ _('Workflow') }</li>
-            <li id="workflowName"><a href="${ coordinator.workflow.get_absolute_url() }" target="_blank"><i class="icon-code-fork"></i> ${ coordinator.workflow }</a></li>
+            <li id="workflowName"><a href="${ coordinator.workflow.get_absolute_url() }" target="_blank"><i class="fa fa-code-fork"></i> ${ coordinator.workflow }</a></li>
           % endif
 
           <li class="nav-header">${ _('Datasets') }</li>
           % if coordinator.is_editable(user):
-          <li><a href="#createDataset"><i class="icon-plus"></i> ${ _('Create new') }</a></li>
+          <li><a href="#createDataset"><i class="fa fa-plus"></i> ${ _('Create new') }</a></li>
           % endif
-          <li><a href="#listDataset"><i class="icon-cloud"></i> ${ _('Show existing') }</a></li>
+          <li><a href="#listDataset"><i class="fa fa-cloud"></i> ${ _('Show existing') }</a></li>
 
           % if coordinator.is_editable(user):
               <li class="nav-header">${ _('History') }</li>
-              <li><a href="#listHistory"><i class="icon-archive"></i> ${ _('Show history') }</a></li>
+              <li><a href="#listHistory"><i class="fa fa-archive"></i> ${ _('Show history') }</a></li>
           % endif
 
           % if coordinator:
               <li class="nav-header">${ _('Actions') }</li>
-              <li><a id="submit-btn" href="javascript:void(0)" data-submit-url="${ url('oozie:submit_coordinator', coordinator=coordinator.id) }" title="${ _('Submit this coordinator') }" rel="tooltip" data-placement="right"><i class="icon-play"></i> ${ _('Submit') }</a></li>
-              <li><a id="clone-btn" href="javascript:void(0)" data-clone-url="${ url('oozie:clone_coordinator', coordinator=coordinator.id) }" title="${ _('Copy this coordinator') }" rel="tooltip" data-placement="right"><i class="icon-copy"></i> ${ _('Copy') }</a></li>
+              <li><a id="submit-btn" href="javascript:void(0)" data-submit-url="${ url('oozie:submit_coordinator', coordinator=coordinator.id) }" title="${ _('Submit this coordinator') }" rel="tooltip" data-placement="right"><i class="fa fa-play"></i> ${ _('Submit') }</a></li>
+              <li><a id="clone-btn" href="javascript:void(0)" data-clone-url="${ url('oozie:clone_coordinator', coordinator=coordinator.id) }" title="${ _('Copy this coordinator') }" rel="tooltip" data-placement="right"><i class="fa fa-files-o"></i> ${ _('Copy') }</a></li>
           % endif
 
         </ul>

+ 31 - 31
apps/oozie/src/oozie/templates/editor/edit_workflow.mako

@@ -40,39 +40,39 @@ ${ layout.menubar(section='workflows') }
     <div id="workflowControls" class="sidebar-nav">
       <ul class="nav nav-list">
         <li class="nav-header">${ _('Editor') }</li>
-        <li><a href="#editWorkflow"><i class="icon-code-fork"></i> ${ _('Workflow') }</a></li>
-        <li><a href="#properties"><i class="icon-reorder"></i> ${ _('Properties') }</a></li>
+        <li><a href="#editWorkflow"><i class="fa fa-code-fork"></i> ${ _('Workflow') }</a></li>
+        <li><a href="#properties"><i class="fa fa-reorder"></i> ${ _('Properties') }</a></li>
         % if user_can_edit_job:
           <li>
-            <a data-bind="attr: {href: '/filebrowser/view' + deployment_dir() }" target="_blank" title="${ _('Go upload additional files and libraries to the deployment directory on HDFS') }" rel="tooltip" data-placement="right"><i class="icon-folder-open"></i> ${ _('Workspace') }</a>
+            <a data-bind="attr: {href: '/filebrowser/view' + deployment_dir() }" target="_blank" title="${ _('Go upload additional files and libraries to the deployment directory on HDFS') }" rel="tooltip" data-placement="right"><i class="fa fa-folder-open"></i> ${ _('Workspace') }</a>
           </li>
         % endif
 
         <li class="nav-header">${ _('Advanced') }</li>
-        <li><a href="#importAction" title="${ _('Click to import an Oozie workflow action or Job Designer action') }" rel="tooltip" data-placement="right"><i class="icon-download-alt"></i> ${ _('Import action') }</a></li>
+        <li><a href="#importAction" title="${ _('Click to import an Oozie workflow action or Job Designer action') }" rel="tooltip" data-placement="right"><i class="fa fa-arrow-circle-o-down"></i> ${ _('Import action') }</a></li>
         % if user_can_edit_job:
           <li>
-            <a title="${ _('Edit kill node') }" rel="tooltip" data-placement="right" href="#kill"><i class="icon-off"></i> ${ _('Kill node') }</a>
+            <a title="${ _('Edit kill node') }" rel="tooltip" data-placement="right" href="#kill"><i class="fa fa-power-off"></i> ${ _('Kill node') }</a>
           </li>
         % endif
 
         % if user_can_edit_job:
-          <li><a href="#listHistory"><i class="icon-archive"></i> ${ _('History') }</a></li>
+          <li><a href="#listHistory"><i class="fa fa-archive"></i> ${ _('History') }</a></li>
         % endif
 
         <li class="nav-header">${ _('Actions') }</li>
         % if user_can_access_job:
           <li>
-            <a id="submit-btn" href="javascript:void(0)" data-submit-url="${ url('oozie:submit_workflow', workflow=workflow.id) }" title="${ _('Submit this workflow') }" rel="tooltip" data-placement="right"><i class="icon-play"></i> ${ _('Submit') }</a>
+            <a id="submit-btn" href="javascript:void(0)" data-submit-url="${ url('oozie:submit_workflow', workflow=workflow.id) }" title="${ _('Submit this workflow') }" rel="tooltip" data-placement="right"><i class="fa fa-play"></i> ${ _('Submit') }</a>
           </li>
           <li>
-            <a href="${ url('oozie:schedule_workflow', workflow=workflow.id) }" title="${ _('Schedule this workflow') }" rel="tooltip" data-placement="right"><i class="icon-calendar"></i> ${ _('Schedule') }</a>
+            <a href="${ url('oozie:schedule_workflow', workflow=workflow.id) }" title="${ _('Schedule this workflow') }" rel="tooltip" data-placement="right"><i class="fa fa-calendar"></i> ${ _('Schedule') }</a>
           </li>
           <li>
-            <a id="clone-btn" href="#" data-clone-url="${ url('oozie:clone_workflow', workflow=workflow.id) }" title="${ _('Copy this workflow') }" rel="tooltip" data-placement="right"><i class="icon-copy"></i> ${ _('Copy') }</a>
+            <a id="clone-btn" href="#" data-clone-url="${ url('oozie:clone_workflow', workflow=workflow.id) }" title="${ _('Copy this workflow') }" rel="tooltip" data-placement="right"><i class="fa fa-files-o"></i> ${ _('Copy') }</a>
           </li>
           <li>
-            <a id="export-btn" href="${ url('oozie:export_workflow', workflow=workflow.id) }" title="${ _('Export this workflow') }" rel="tooltip" data-placement="right"><i class="icon-upload-alt"></i> ${ _('Export') }</a>
+            <a id="export-btn" href="${ url('oozie:export_workflow', workflow=workflow.id) }" title="${ _('Export this workflow') }" rel="tooltip" data-placement="right"><i class="fa fa-upload"></i> ${ _('Export') }</a>
           </li>
         % endif
       </ul>
@@ -110,7 +110,7 @@ ${ layout.menubar(section='workflows') }
         <div class="control-group ">
           <label class="control-label">
             <a href="#" id="advanced-btn" onclick="$('#advanced-container').toggle('hide')">
-              <i class="icon-share-alt"></i> ${ _('advanced') }</a>
+              <i class="fa fa-share"></i> ${ _('advanced') }</a>
           </label>
           <div class="controls"></div>
         </div>
@@ -138,7 +138,7 @@ ${ layout.menubar(section='workflows') }
       <div class="card-body">
         <p>
           <fieldset data-bind="with: context().node">
-            <p>&nbsp;${_('Action enabled: ')} <i class="icon-check" data-bind="visible: to().length > 0"></i><i class="icon-check-empty" data-bind="visible: to().length == 0"></i></p>
+            <p>&nbsp;${_('Action enabled: ')} <i class="fa fa-check-square-o" data-bind="visible: to().length > 0"></i><i class="fa fa-square-o" data-bind="visible: to().length == 0"></i></p>
 
             % for form_info in action_forms:
               % if form_info[0] == 'email':
@@ -251,79 +251,79 @@ ${ layout.menubar(section='workflows') }
         <div class="draggable-button">
           <a data-node-type="mapreduce"
              title="${ _('Drag and drop this action on the workflow') }" class="btn new-node-link">
-            <i class="icon-move"></i> MapReduce
+            <i class="fa fa-move"></i> MapReduce
           </a>
         </div>
         <div class="draggable-button">
           <a data-node-type="streaming"
              title="${ _('Drag and drop this action on the workflow') }" class="btn new-node-link">
-            <i class="icon-move"></i> Streaming
+            <i class="fa fa-move"></i> Streaming
           </a>
         </div>
         <div class="draggable-button">
           <a data-node-type="java"
              title="${ _('Drag and drop this action on the workflow') }" class="btn new-node-link">
-            <i class="icon-move"></i> Java
+            <i class="fa fa-move"></i> Java
           </a>
          </div>
         <div class="draggable-button">
           <a data-node-type="pig"
              title="${ _('Drag and drop this action on the workflow') }" class="btn new-node-link">
-            <i class="icon-move"></i> Pig
+            <i class="fa fa-move"></i> Pig
           </a>
         </div>
         <div class="draggable-button">
           <a data-node-type="hive"
              title="${ _('Drag and drop this action on the workflow') }" class="btn new-node-link">
-            <i class="icon-move"></i> Hive
+            <i class="fa fa-move"></i> Hive
           </a>
         </div>
         <div class="draggable-button">
           <a data-node-type="sqoop"
              title="${ _('Drag and drop this action on the workflow') }" class="btn new-node-link">
-            <i class="icon-move"></i> Sqoop
+            <i class="fa fa-move"></i> Sqoop
           </a>
         </div>
         <div class="draggable-button">
           <a data-node-type="shell"
              title="${ _('Drag and drop this action on the workflow') }" class="btn new-node-link">
-            <i class="icon-move"></i> Shell
+            <i class="fa fa-move"></i> Shell
           </a>
         </div>
         <div class="draggable-button">
           <a data-node-type="ssh"
              title="${ _('Drag and drop this action on the workflow') }" class="btn new-node-link">
-            <i class="icon-move"></i> Ssh
+            <i class="fa fa-move"></i> Ssh
           </a>
         </div>
         <div class="draggable-button">
           <a data-node-type="distcp"
              title="${ _('Drag and drop this action on the workflow') }" class="btn new-node-link">
-            <i class="icon-move"></i> DistCp
+            <i class="fa fa-move"></i> DistCp
           </a>
         </div>
         <div class="draggable-button">
           <a data-node-type="fs"
              title="${ _('Drag and drop this action on the workflow') }" class="btn new-node-link">
-            <i class="icon-move"></i> Fs
+            <i class="fa fa-move"></i> Fs
           </a>
         </div>
         <div class="draggable-button">
           <a data-node-type="email"
              title="${ _('Drag and drop this action on the workflow') }" class="btn new-node-link">
-            <i class="icon-move"></i> Email
+            <i class="fa fa-move"></i> Email
           </a>
         </div>
         <div class="draggable-button">
           <a data-node-type="subworkflow"
              title="${ _('Drag and drop this action on the workflow') }" class="btn new-node-link">
-            <i class="icon-move"></i> Sub-workflow
+            <i class="fa fa-move"></i> Sub-workflow
           </a>
         </div>
         <div class="draggable-button">
           <a data-node-type="generic"
              title="${ _('Drag and drop this action on the workflow') }" class="btn new-node-link">
-            <i class="icon-move"></i> Generic
+            <i class="fa fa-move"></i> Generic
           </a>
         </div>
       </div>
@@ -478,9 +478,9 @@ ${ controls.decision_form(node_form, link_form, default_link_form, 'decision', T
 
       <div class="row-fluid node-action-bar">
         <div class="span12" style="text-align:right">
-          <a class="btn btn-mini edit-node-link" title="${ _('Edit') }" relz="tooltip" data-bind="attr: { 'data-node-type': node_type() }"><i class="icon-pencil"></i></a>
-          <a class="btn btn-mini clone-node-btn" title="${ _('Copy') }" relz="tooltip"><i class="icon-copy"></i></a>
-          <a class="btn btn-mini delete-node-btn" title="${ _('Delete') }" relz="tooltip"><i class="icon-trash"></i></a>
+          <a class="btn btn-mini edit-node-link" title="${ _('Edit') }" relz="tooltip" data-bind="attr: { 'data-node-type': node_type() }"><i class="fa fa-pencil"></i></a>
+          <a class="btn btn-mini clone-node-btn" title="${ _('Copy') }" relz="tooltip"><i class="fa fa-files-o"></i></a>
+          <a class="btn btn-mini delete-node-btn" title="${ _('Delete') }" relz="tooltip"><i class="fa fa-trash-o"></i></a>
           &nbsp;
         </div>
       </div>
@@ -503,8 +503,8 @@ ${ controls.decision_form(node_form, link_form, default_link_form, 'decision', T
 
       <div class="row-fluid node-action-bar">
         <div class="span12" style="text-align:right">
-          <a class="btn btn-mini edit-node-link" title="${ _('Edit') }" relz="tooltip" data-bind="attr: { 'data-node-type': node_type() }"><i class="icon-pencil"></i></a>
-          <a class="btn btn-mini convert-node-link" title="${ _('Convert to Decision') }" data-bind="attr: { 'data-node-type': node_type() }" relz="tooltip"><i class="icon-wrench"></i></a>
+          <a class="btn btn-mini edit-node-link" title="${ _('Edit') }" relz="tooltip" data-bind="attr: { 'data-node-type': node_type() }"><i class="fa fa-pencil"></i></a>
+          <a class="btn btn-mini convert-node-link" title="${ _('Convert to Decision') }" data-bind="attr: { 'data-node-type': node_type() }" relz="tooltip"><i class="fa fa-wrench"></i></a>
           &nbsp;
         </div>
       </div>
@@ -538,7 +538,7 @@ ${ controls.decision_form(node_form, link_form, default_link_form, 'decision', T
 
       <div class="row-fluid node-action-bar">
         <div class="span12" style="text-align:right">
-          <a class="btn btn-mini edit-node-link" title="${ _('Edit') }" data-bind="attr: { 'data-node-type': node_type() }" relz="tooltip"><i class="icon-pencil"></i></a>
+          <a class="btn btn-mini edit-node-link" title="${ _('Edit') }" data-bind="attr: { 'data-node-type': node_type() }" relz="tooltip"><i class="fa fa-pencil"></i></a>
           &nbsp;
         </div>
       </div>

+ 2 - 2
apps/oozie/src/oozie/templates/editor/gen/workflow-graph-status.xml.mako

@@ -66,9 +66,9 @@
           </div>
           <div class="span10" style="text-align:right">
             % if action:
-              <a href="${ action.get_absolute_url() }" class="btn btn-mini" title="${ _('View workflow action') }" rel="tooltip"><i class="icon-eye-open"></i></a>
+              <a href="${ action.get_absolute_url() }" class="btn btn-mini" title="${ _('View workflow action') }" rel="tooltip"><i class="fa fa-eye"></i></a>
             % endif
-            <a href="${ url('jobbrowser.views.job_single_logs', job=action.externalId) }" class="btn btn-mini" title="${ _('View the logs') }" rel="tooltip" data-row-selector-exclude="true" id="advanced-btn"><i class="icon-tasks"></i></a>
+            <a href="${ url('jobbrowser.views.job_single_logs', job=action.externalId) }" class="btn btn-mini" title="${ _('View the logs') }" rel="tooltip" data-row-selector-exclude="true" id="advanced-btn"><i class="fa fa-tasks"></i></a>
             &nbsp;
           </div>
         </div>

+ 1 - 1
apps/oozie/src/oozie/templates/editor/import_workflow.mako

@@ -53,7 +53,7 @@ ${ layout.menubar(section='workflows') }
           <div class="control-group ">
             <label class="control-label">
               <a href="#" id="advanced-btn" onclick="$('#advanced-container').toggle('hide')">
-                <i class="icon-share-alt"></i> ${ _('advanced') }
+                <i class="fa fa-share"></i> ${ _('advanced') }
               </a>
             </label>
             <div class="controls"></div>

+ 16 - 16
apps/oozie/src/oozie/templates/editor/list_bundles.mako

@@ -44,31 +44,31 @@ ${ layout.menubar(section='bundles') }
 
     <%def name="actions()">
       <div class="btn-toolbar" style="display: inline; vertical-align: middle">
-        <button class="btn toolbarBtn" id="submit-btn" disabled="disabled"><i class="icon-play"></i> ${ _('Submit') }</button>
-        <button class="btn toolbarBtn" id="clone-btn" disabled="disabled"><i class="icon-copy"></i> ${ _('Copy') }</button>
+        <button class="btn toolbarBtn" id="submit-btn" disabled="disabled"><i class="fa fa-play"></i> ${ _('Submit') }</button>
+        <button class="btn toolbarBtn" id="clone-btn" disabled="disabled"><i class="fa fa-files-o"></i> ${ _('Copy') }</button>
         <div id="delete-dropdown" class="btn-group" style="vertical-align: middle">
-          <button id="trash-btn" class="btn toolbarBtn" disabled="disabled"><i class="icon-remove"></i> ${_('Move to trash')}</button>
+          <button id="trash-btn" class="btn toolbarBtn" disabled="disabled"><i class="fa fa-times"></i> ${_('Move to trash')}</button>
           <button id="trash-btn-caret" class="btn toolbarBtn dropdown-toggle" data-toggle="dropdown" disabled="disabled">
             <span class="caret"></span>
           </button>
           <ul class="dropdown-menu">
-            <li><a href="javascript:void(0);" id="destroy-btn" title="${_('Delete forever')}"><i class="icon-bolt"></i> ${_('Delete forever')}</a></li>
+            <li><a href="javascript:void(0);" id="destroy-btn" title="${_('Delete forever')}"><i class="fa fa-bolt"></i> ${_('Delete forever')}</a></li>
           </ul>
         </div>
       </div>
     </%def>
 
     <%def name="creation()">
-      <a href="${ url('oozie:create_bundle') }" class="btn"><i class="icon-plus-sign"></i> ${ _('Create') }</a>
+      <a href="${ url('oozie:create_bundle') }" class="btn"><i class="fa fa-plus-circle"></i> ${ _('Create') }</a>
       &nbsp;&nbsp;
-      <a href="${ url('oozie:list_trashed_bundles') }" class="btn"><i class="icon-trash"></i> ${ _('View trash') }</a>
+      <a href="${ url('oozie:list_trashed_bundles') }" class="btn"><i class="fa fa-trash-o"></i> ${ _('View trash') }</a>
     </%def>
   </%actionbar:render>
 
   <table id="bundleTable" class="table datatables">
     <thead>
       <tr>
-        <th width="1%"><div class="hueCheckbox selectAll" data-selectables="bundleCheck"></div></th>
+        <th width="1%"><div class="hueCheckbox selectAll fa" data-selectables="bundleCheck"></div></th>
         <th width="10%">${ _('Name') }</th>
         <th width="20%">${ _('Description') }</th>
         <th width="35%">${ _('Coordinators') }</th>
@@ -82,7 +82,7 @@ ${ layout.menubar(section='bundles') }
       % for bundle in jobs:
         <tr>
           <td data-row-selector-exclude="true">
-            <div class="hueCheckbox bundleCheck" data-row-selector-exclude="true"
+            <div class="hueCheckbox bundleCheck fa" data-row-selector-exclude="true"
               % if bundle.can_read(user):
                   data-clone-url="${ url('oozie:clone_bundle', bundle=bundle.id) }"
                   data-submit-url="${ url('oozie:submit_bundle', bundle=bundle.id) }"
@@ -124,7 +124,7 @@ ${ layout.menubar(section='bundles') }
     <img src="/static/art/spinner-big.gif" />
   <![endif]-->
   <!--[if !IE]> -->
-    <i class="icon-spinner icon-spin"></i>
+    <i class="fa fa-spinner fa-spin"></i>
   <!-- <![endif]-->
 </div>
 
@@ -177,24 +177,24 @@ ${ layout.menubar(section='bundles') }
 
     $(".selectAll").click(function () {
       if ($(this).attr("checked")) {
-        $(this).removeAttr("checked").removeClass("icon-ok");
-        $("." + $(this).data("selectables")).removeClass("icon-ok").removeAttr("checked");
+        $(this).removeAttr("checked").removeClass("fa-check");
+        $("." + $(this).data("selectables")).removeClass("fa-check").removeAttr("checked");
       }
       else {
-        $(this).attr("checked", "checked").addClass("icon-ok");
-        $("." + $(this).data("selectables")).addClass("icon-ok").attr("checked", "checked");
+        $(this).attr("checked", "checked").addClass("fa-check");
+        $("." + $(this).data("selectables")).addClass("fa-check").attr("checked", "checked");
       }
       toggleActions();
     });
 
     $(".bundleCheck").click(function () {
       if ($(this).attr("checked")) {
-        $(this).removeClass("icon-ok").removeAttr("checked");
+        $(this).removeClass("fa-check").removeAttr("checked");
       }
       else {
-        $(this).addClass("icon-ok").attr("checked", "checked");
+        $(this).addClass("fa-check").attr("checked", "checked");
       }
-      $(".selectAll").removeAttr("checked").removeClass("icon-ok");
+      $(".selectAll").removeAttr("checked").removeClass("fa-check");
       toggleActions();
     });
 

+ 16 - 16
apps/oozie/src/oozie/templates/editor/list_coordinators.mako

@@ -43,31 +43,31 @@ ${ layout.menubar(section='coordinators') }
 
     <%def name="actions()">
       <div class="btn-toolbar" style="display: inline; vertical-align: middle">
-        <button class="btn toolbarBtn" id="submit-btn" disabled="disabled"><i class="icon-play"></i> ${ _('Submit') }</button>
-        <button class="btn toolbarBtn" id="clone-btn" disabled="disabled"><i class="icon-copy"></i> ${ _('Copy') }</button>
+        <button class="btn toolbarBtn" id="submit-btn" disabled="disabled"><i class="fa fa-play"></i> ${ _('Submit') }</button>
+        <button class="btn toolbarBtn" id="clone-btn" disabled="disabled"><i class="fa fa-files-o"></i> ${ _('Copy') }</button>
         <div id="delete-dropdown" class="btn-group" style="vertical-align: middle">
-          <button id="trash-btn" class="btn toolbarBtn" disabled="disabled"><i class="icon-remove"></i> ${_('Move to trash')}</button>
+          <button id="trash-btn" class="btn toolbarBtn" disabled="disabled"><i class="fa fa-times"></i> ${_('Move to trash')}</button>
           <button id="trash-btn-caret" class="btn toolbarBtn dropdown-toggle" data-toggle="dropdown" disabled="disabled">
             <span class="caret"></span>
           </button>
           <ul class="dropdown-menu">
-            <li><a href="javascript:void(0);" id="destroy-btn" title="${_('Delete forever')}"><i class="icon-bolt"></i> ${_('Delete forever')}</a></li>
+            <li><a href="javascript:void(0);" id="destroy-btn" title="${_('Delete forever')}"><i class="fa fa-bolt"></i> ${_('Delete forever')}</a></li>
           </ul>
         </div>
       </div>
     </%def>
 
     <%def name="creation()">
-      <a href="${ url('oozie:create_coordinator') }" class="btn"><i class="icon-plus-sign"></i> ${ _('Create') }</a>
+      <a href="${ url('oozie:create_coordinator') }" class="btn"><i class="fa fa-plus-circle"></i> ${ _('Create') }</a>
       &nbsp;&nbsp;
-      <a href="${ url('oozie:list_trashed_coordinators') }" class="btn"><i class="icon-trash"></i> ${ _('View trash') }</a>
+      <a href="${ url('oozie:list_trashed_coordinators') }" class="btn"><i class="fa fa-trash-o"></i> ${ _('View trash') }</a>
     </%def>
   </%actionbar:render>
 
   <table id="coordinatorTable" class="table datatables">
     <thead>
       <tr>
-        <th width="1%"><div class="hueCheckbox selectAll" data-selectables="coordinatorCheck"></div></th>
+        <th width="1%"><div class="hueCheckbox selectAll fa" data-selectables="coordinatorCheck"></div></th>
         <th>${ _('Name') }</th>
         <th>${ _('Description') }</th>
         <th>${ _('Workflow') }</th>
@@ -81,7 +81,7 @@ ${ layout.menubar(section='coordinators') }
       %for coordinator in jobs:
         <tr>
           <td data-row-selector-exclude="true">
-            <div class="hueCheckbox coordinatorCheck" data-row-selector-exclude="true"
+            <div class="hueCheckbox coordinatorCheck fa" data-row-selector-exclude="true"
               % if coordinator.can_read(user):
                   data-clone-url="${ url('oozie:clone_coordinator', coordinator=coordinator.id) }"
                   data-submit-url="${ url('oozie:submit_coordinator', coordinator=coordinator.id) }"
@@ -120,7 +120,7 @@ ${ layout.menubar(section='coordinators') }
     <img src="/static/art/spinner-big.gif" />
   <![endif]-->
   <!--[if !IE]> -->
-    <i class="icon-spinner icon-spin"></i>
+    <i class="fa fa-spinner fa-spin"></i>
   <!-- <![endif]-->
 </div>
 
@@ -173,24 +173,24 @@ ${ layout.menubar(section='coordinators') }
 
     $(".selectAll").click(function () {
       if ($(this).attr("checked")) {
-        $(this).removeAttr("checked").removeClass("icon-ok");
-        $("." + $(this).data("selectables")).removeClass("icon-ok").removeAttr("checked");
+        $(this).removeAttr("checked").removeClass("fa fa-check");
+        $("." + $(this).data("selectables")).removeClass("fa-check").removeAttr("checked");
       }
       else {
-        $(this).attr("checked", "checked").addClass("icon-ok");
-        $("." + $(this).data("selectables")).addClass("icon-ok").attr("checked", "checked");
+        $(this).attr("checked", "checked").addClass("fa-check");
+        $("." + $(this).data("selectables")).addClass("fa-check").attr("checked", "checked");
       }
       toggleActions();
     });
 
     $(".coordinatorCheck").click(function () {
       if ($(this).attr("checked")) {
-        $(this).removeClass("icon-ok").removeAttr("checked");
+        $(this).removeClass("fa-check").removeAttr("checked");
       }
       else {
-        $(this).addClass("icon-ok").attr("checked", "checked");
+        $(this).addClass("fa-check").attr("checked", "checked");
       }
-      $(".selectAll").removeAttr("checked").removeClass("icon-ok");
+      $(".selectAll").removeAttr("checked").removeClass("fa-check");
       toggleActions();
     });
 

+ 13 - 13
apps/oozie/src/oozie/templates/editor/list_trashed_bundles.mako

@@ -38,23 +38,23 @@ ${ layout.menubar(section='bundles') }
     </%def>
 
     <%def name="actions()">
-      <button class="btn toolbarBtn" id="restore-btn" disabled="disabled" title="${ _('Retore the selected bundles') }"><i class="icon-cloud-upload"></i> ${ _('Restore') }</button>
-      <button class="btn toolbarBtn" id="destroy-btn" disabled="disabled" title="${ _('Delete the selected bundles') }"><i class="icon-bolt"></i> ${ _('Delete forever') }</button>
+      <button class="btn toolbarBtn" id="restore-btn" disabled="disabled" title="${ _('Retore the selected bundles') }"><i class="fa fa-cloud-upload"></i> ${ _('Restore') }</button>
+      <button class="btn toolbarBtn" id="destroy-btn" disabled="disabled" title="${ _('Delete the selected bundles') }"><i class="fa fa-bolt"></i> ${ _('Delete forever') }</button>
     </%def>
 
     <%def name="creation()">
       <button class="btn" id="purge-btn" title="${ _('Delete all the bundles') }" data-bind="enabled: availableJobs().length > 0">
-        <i class="icon-fire"></i> ${ _('Empty trash') }
+        <i class="fa fa-fire"></i> ${ _('Empty trash') }
       </button>
       &nbsp;&nbsp;
-      <a href="${ url('oozie:list_bundles') }" id="home-btn" class="btn" title="${ _('Got to bundle manager') }"><i class="icon-home"></i> ${ _('Back') }</a>
+      <a href="${ url('oozie:list_bundles') }" id="home-btn" class="btn" title="${ _('Got to bundle manager') }"><i class="fa fa-home"></i> ${ _('Back') }</a>
     </%def>
   </%actionbar:render>
 
   <table id="bundleTable" class="table datatables">
     <thead>
       <tr>
-        <th width="1%"><div class="hueCheckbox selectAll" data-selectables="bundleCheck"></div></th>
+        <th width="1%"><div class="hueCheckbox selectAll fa" data-selectables="bundleCheck"></div></th>
         <th width="10%">${ _('Name') }</th>
         <th width="20%">${ _('Description') }</th>
         <th width="35%">${ _('Coordinators') }</th>
@@ -68,7 +68,7 @@ ${ layout.menubar(section='bundles') }
       % for bundle in jobs:
         <tr>
           <td data-row-selector-exclude="true">
-            <div class="hueCheckbox bundleCheck" data-row-selector-exclude="true" data-bundle-id="${ bundle.id }"></div>
+            <div class="hueCheckbox bundleCheck fa" data-row-selector-exclude="true" data-bundle-id="${ bundle.id }"></div>
           </td>
           <td>${ bundle.name }</td>
           <td>${ bundle.description }</td>
@@ -156,24 +156,24 @@ ${ layout.menubar(section='bundles') }
 
     $(".selectAll").click(function () {
       if ($(this).attr("checked")) {
-        $(this).removeAttr("checked").removeClass("icon-ok");
-        $("." + $(this).data("selectables")).removeClass("icon-ok").removeAttr("checked");
+        $(this).removeAttr("checked").removeClass("fa-check");
+        $("." + $(this).data("selectables")).removeClass("fa-check").removeAttr("checked");
       }
       else {
-        $(this).attr("checked", "checked").addClass("icon-ok");
-        $("." + $(this).data("selectables")).addClass("icon-ok").attr("checked", "checked");
+        $(this).attr("checked", "checked").addClass("fa-check");
+        $("." + $(this).data("selectables")).addClass("fa-check").attr("checked", "checked");
       }
       toggleActions();
     });
 
     $(".bundleCheck").click(function () {
       if ($(this).attr("checked")) {
-        $(this).removeClass("icon-ok").removeAttr("checked");
+        $(this).removeClass("fa-check").removeAttr("checked");
       }
       else {
-        $(this).addClass("icon-ok").attr("checked", "checked");
+        $(this).addClass("fa-check").attr("checked", "checked");
       }
-      $(".selectAll").removeAttr("checked").removeClass("icon-ok");
+      $(".selectAll").removeAttr("checked").removeClass("fa-check");
       toggleActions();
     });
 

+ 13 - 13
apps/oozie/src/oozie/templates/editor/list_trashed_coordinators.mako

@@ -38,18 +38,18 @@ ${ layout.menubar(section='coordinators') }
 
     <%def name="actions()">
         <button class="btn toolbarBtn" id="restore-btn" disabled="disabled" title="${_('Restore the selected coordinators')}">
-          <i class="icon-cloud-upload"></i> ${ _('Restore') }
+          <i class="fa fa-cloud-upload"></i> ${ _('Restore') }
         </button>
         <button class="btn toolbarBtn" id="destroy-btn" disabled="disabled" title="${_('Delete the selected coordinators')}">
-          <i class="icon-bolt"></i> ${ _('Delete forever') }
+          <i class="fa fa-bolt"></i> ${ _('Delete forever') }
         </button>
     </%def>
 
     <%def name="creation()">
-       <button class="btn" id="purge-btn"><i class="icon-fire"></i> ${ _('Empty trash') }</button>
+       <button class="btn" id="purge-btn"><i class="fa fa-fire"></i> ${ _('Empty trash') }</button>
        &nbsp;&nbsp;
        <a href="${ url('oozie:list_coordinators') }" id="home-btn" class="btn" title="${ _('Got to coordinator manager') }">
-         <i class="icon-home"></i> ${ _('Back') }
+         <i class="fa fa-home"></i> ${ _('Back') }
        </a>        
     </%def>
   </%actionbar:render>
@@ -57,7 +57,7 @@ ${ layout.menubar(section='coordinators') }
   <table id="coordinatorTable" class="table datatables">
     <thead>
       <tr>
-        <th width="1%"><div class="hueCheckbox selectAll" data-selectables="coordinatorCheck"></div></th>
+        <th width="1%"><div class="hueCheckbox selectAll fa" data-selectables="coordinatorCheck"></div></th>
         <th>${ _('Name') }</th>
         <th>${ _('Description') }</th>
         <th>${ _('Workflow') }</th>
@@ -71,7 +71,7 @@ ${ layout.menubar(section='coordinators') }
       %for coordinator in jobs:
         <tr>
           <td data-row-selector-exclude="true">
-            <div class="hueCheckbox coordinatorCheck" data-row-selector-exclude="true" data-coordinator-id="${ coordinator.id }"></div>
+            <div class="hueCheckbox coordinatorCheck fa" data-row-selector-exclude="true" data-coordinator-id="${ coordinator.id }"></div>
           </td>
           <td>${ coordinator.name }</td>
           <td>${ coordinator.description }</td>
@@ -158,24 +158,24 @@ ${ layout.menubar(section='coordinators') }
 
     $(".selectAll").click(function () {
       if ($(this).attr("checked")) {
-        $(this).removeAttr("checked").removeClass("icon-ok");
-        $("." + $(this).data("selectables")).removeClass("icon-ok").removeAttr("checked");
+        $(this).removeAttr("checked").removeClass("fa-check");
+        $("." + $(this).data("selectables")).removeClass("fa-check").removeAttr("checked");
       }
       else {
-        $(this).attr("checked", "checked").addClass("icon-ok");
-        $("." + $(this).data("selectables")).addClass("icon-ok").attr("checked", "checked");
+        $(this).attr("checked", "checked").addClass("fa-check");
+        $("." + $(this).data("selectables")).addClass("fa-check").attr("checked", "checked");
       }
       toggleActions();
     });
 
     $(".coordinatorCheck").click(function () {
       if ($(this).attr("checked")) {
-        $(this).removeClass("icon-ok").removeAttr("checked");
+        $(this).removeClass("fa-check").removeAttr("checked");
       }
       else {
-        $(this).addClass("icon-ok").attr("checked", "checked");
+        $(this).addClass("fa-check").attr("checked", "checked");
       }
-      $(".selectAll").removeAttr("checked").removeClass("icon-ok");
+      $(".selectAll").removeAttr("checked").removeClass("fa-check");
       toggleActions();
     });
 

+ 13 - 13
apps/oozie/src/oozie/templates/editor/list_trashed_workflows.mako

@@ -38,19 +38,19 @@ ${ layout.menubar(section='workflows') }
 
     <%def name="actions()">
       <button type="button" id="restore-btn" class="btn toolbarBtn" disabled="disabled" title="${ _('Restore the selected workflows') }">
-        <i class="icon-cloud-upload"></i> ${ _('Restore') }
+        <i class="fa fa-cloud-upload"></i> ${ _('Restore') }
       </button>
       <button type="button" id="destroy-btn" class="btn toolbarBtn" disabled="disabled" title="${ _('Delete the selected workflows') }">
-        <i class="icon-bolt"></i> ${ _('Delete forever') }
+        <i class="fa fa-bolt"></i> ${ _('Delete forever') }
       </button>
     </%def>
 
     <%def name="creation()">
       <button type="button" id="purge-btn" class="btn" title="${ _('Delete all the workflows') }">
-        <i class="icon-fire"></i> ${ _('Empty trash') }
+        <i class="fa fa-fire"></i> ${ _('Empty trash') }
       </button>
       <a href="${ url('oozie:list_workflows') }" id="home-btn" class="btn" title="${ _('Go to workflow manager') }">
-        <i class="icon-home"></i> ${ _('Back') }
+        <i class="fa fa-home"></i> ${ _('Back') }
       </a>
     </%def>
   </%actionbar:render>
@@ -59,7 +59,7 @@ ${ layout.menubar(section='workflows') }
   <table id="workflowTable" class="table datatables">
     <thead>
       <tr>
-        <th width="1%"><div class="hueCheckbox selectAll" data-selectables="workflowCheck"></div></th>
+        <th width="1%"><div class="hueCheckbox selectAll fa" data-selectables="workflowCheck"></div></th>
         <th>${ _('Name') }</th>
         <th>${ _('Description') }</th>
         <th>${ _('Last Modified') }</th>
@@ -72,7 +72,7 @@ ${ layout.menubar(section='workflows') }
       % for workflow in jobs:
         <tr>
           <td data-row-selector-exclude="true">
-             <div class="hueCheckbox workflowCheck" data-row-selector-exclude="true" data-workflow-id="${ workflow.id }"></div>
+             <div class="hueCheckbox workflowCheck fa" data-row-selector-exclude="true" data-workflow-id="${ workflow.id }"></div>
           </td>
           <td>
             ${ workflow.name }
@@ -157,24 +157,24 @@ ${ layout.menubar(section='workflows') }
 
     $(".selectAll").click(function () {
       if ($(this).attr("checked")) {
-        $(this).removeAttr("checked").removeClass("icon-ok");
-        $("." + $(this).data("selectables")).removeClass("icon-ok").removeAttr("checked");
+        $(this).removeAttr("checked").removeClass("fa-check");
+        $("." + $(this).data("selectables")).removeClass("fa-check").removeAttr("checked");
       }
       else {
-        $(this).attr("checked", "checked").addClass("icon-ok");
-        $("." + $(this).data("selectables")).addClass("icon-ok").attr("checked", "checked");
+        $(this).attr("checked", "checked").addClass("fa-check");
+        $("." + $(this).data("selectables")).addClass("fa-check").attr("checked", "checked");
       }
       toggleActions();
     });
 
     $(".workflowCheck").click(function () {
       if ($(this).attr("checked")) {
-        $(this).removeClass("icon-ok").removeAttr("checked");
+        $(this).removeClass("fa-check").removeAttr("checked");
       }
       else {
-        $(this).addClass("icon-ok").attr("checked", "checked");
+        $(this).addClass("fa-check").attr("checked", "checked");
       }
-      $(".selectAll").removeAttr("checked").removeClass("icon-ok");
+      $(".selectAll").removeAttr("checked").removeClass("fa-check");
       toggleActions();
     });
 

+ 19 - 19
apps/oozie/src/oozie/templates/editor/list_workflows.mako

@@ -43,27 +43,27 @@ ${ layout.menubar(section='workflows') }
 
     <%def name="actions()">
       <div class="btn-toolbar" style="display: inline; vertical-align: middle">
-        <button class="btn toolbarBtn" id="submit-btn" disabled="disabled"><i class="icon-play"></i> ${ _('Submit') }</button>
-        <button class="btn toolbarBtn" id="schedule-btn" disabled="disabled"><i class="icon-calendar"></i> ${ _('Schedule') }</button>
-        <button class="btn toolbarBtn" id="clone-btn" disabled="disabled"><i class="icon-copy"></i> ${ _('Copy') }</button>
-        <button class="btn toolbarBtn" id="export-btn" disabled="disabled"><i class="icon-upload-alt"></i> ${ _('Export') }</button>
+        <button class="btn toolbarBtn" id="submit-btn" disabled="disabled"><i class="fa fa-play"></i> ${ _('Submit') }</button>
+        <button class="btn toolbarBtn" id="schedule-btn" disabled="disabled"><i class="fa fa-calendar"></i> ${ _('Schedule') }</button>
+        <button class="btn toolbarBtn" id="clone-btn" disabled="disabled"><i class="fa fa-files-o"></i> ${ _('Copy') }</button>
+        <button class="btn toolbarBtn" id="export-btn" disabled="disabled"><i class="fa fa-upload"></i> ${ _('Export') }</button>
         <div id="delete-dropdown" class="btn-group" style="vertical-align: middle">
-          <button id="trash-btn" class="btn toolbarBtn" disabled="disabled"><i class="icon-remove"></i> ${_('Move to trash')}</button>
+          <button id="trash-btn" class="btn toolbarBtn" disabled="disabled"><i class="fa fa-times"></i> ${_('Move to trash')}</button>
           <button id="trash-btn-caret" class="btn toolbarBtn dropdown-toggle" data-toggle="dropdown" disabled="disabled">
             <span class="caret"></span>
           </button>
           <ul class="dropdown-menu">
-            <li><a href="javascript:void(0);" id="destroy-btn" title="${_('Delete forever')}"><i class="icon-bolt"></i> ${_('Delete forever')}</a></li>
+            <li><a href="javascript:void(0);" id="destroy-btn" title="${_('Delete forever')}"><i class="fa fa-bolt"></i> ${_('Delete forever')}</a></li>
           </ul>
         </div>
       </div>
     </%def>
 
     <%def name="creation()">
-      <a href="${ url('oozie:create_workflow') }" class="btn"><i class="icon-plus-sign"></i> ${ _('Create') }</a>
-      <a href="${ url('oozie:import_workflow') }" class="btn"><i class="icon-download-alt"></i> ${ _('Import') }</a>      
+      <a href="${ url('oozie:create_workflow') }" class="btn"><i class="fa fa-plus-circle"></i> ${ _('Create') }</a>
+      <a href="${ url('oozie:import_workflow') }" class="btn"><i class="fa fa-download"></i> ${ _('Import') }</a>
       &nbsp;&nbsp;
-      <a href="${ url('oozie:list_trashed_workflows') }" class="btn"><i class="icon-trash"></i> ${ _('Trash') }</a>
+      <a href="${ url('oozie:list_trashed_workflows') }" class="btn"><i class="fa fa-trash-o"></i> ${ _('Trash') }</a>
     </%def>
   </%actionbar:render>
 
@@ -71,7 +71,7 @@ ${ layout.menubar(section='workflows') }
   <table id="workflowTable" class="table datatables">
     <thead>
       <tr>
-        <th width="1%"><div class="hueCheckbox selectAll" data-selectables="workflowCheck"></div></th>
+        <th width="1%"><div class="hueCheckbox selectAll fa" data-selectables="workflowCheck"></div></th>
         <th>${ _('Name') }</th>
         <th>${ _('Description') }</th>
         <th>${ _('Last Modified') }</th>
@@ -84,7 +84,7 @@ ${ layout.menubar(section='workflows') }
       % for workflow in jobs:
         <tr>
           <td data-row-selector-exclude="true">
-             <div class="hueCheckbox workflowCheck" data-row-selector-exclude="true"
+             <div class="hueCheckbox workflowCheck fa" data-row-selector-exclude="true"
               % if workflow.can_read(user):
                   data-submit-url="${ url('oozie:submit_workflow', workflow=workflow.id) }"
                   data-schedule-url="${ url('oozie:schedule_workflow', workflow=workflow.id) }"
@@ -123,7 +123,7 @@ ${ layout.menubar(section='workflows') }
     <img src="/static/art/spinner-big.gif" />
   <![endif]-->
   <!--[if !IE]> -->
-    <i class="icon-spinner icon-spin"></i>
+    <i class="fa fa-spinner fa-spin"></i>
   <!-- <![endif]-->
 </div>
 
@@ -177,24 +177,24 @@ ${ layout.menubar(section='workflows') }
 
     $(".selectAll").click(function () {
       if ($(this).attr("checked")) {
-        $(this).removeAttr("checked").removeClass("icon-ok");
-        $("." + $(this).data("selectables")).removeClass("icon-ok").removeAttr("checked");
+        $(this).removeAttr("checked").removeClass("fa-check");
+        $("." + $(this).data("selectables")).removeClass("fa-check").removeAttr("checked");
       }
       else {
-        $(this).attr("checked", "checked").addClass("icon-ok");
-        $("." + $(this).data("selectables")).addClass("icon-ok").attr("checked", "checked");
+        $(this).attr("checked", "checked").addClass("fa-check");
+        $("." + $(this).data("selectables")).addClass("fa-check").attr("checked", "checked");
       }
       toggleActions();
     });
 
     $(".workflowCheck").click(function () {
       if ($(this).attr("checked")) {
-        $(this).removeClass("icon-ok").removeAttr("checked");
+        $(this).removeClass("fa-check").removeAttr("checked");
       }
       else {
-        $(this).addClass("icon-ok").attr("checked", "checked");
+        $(this).addClass("fa-check").attr("checked", "checked");
       }
-      $(".selectAll").removeAttr("checked").removeClass("icon-ok");
+      $(".selectAll").removeAttr("checked").removeClass("fa-check");
       toggleActions();
     });
 

+ 2 - 2
apps/oozie/src/oozie/templates/utils.inc.mako

@@ -386,7 +386,7 @@
       $(".date:not('.input-append')").each(function () {
         $(this).removeClass("date").addClass("dateInput").wrap($("<div>").addClass("input-append").addClass("date").css("marginRight", "8px"));
         $(this).parent().data("date", $(this).val());
-        $("<span>").addClass("add-on").html('<i class="icon-th"></i>').appendTo($(this).parent());
+        $("<span>").addClass("add-on").html('<i class="fa fa-th"></i>').appendTo($(this).parent());
       });
 
       $("input[name='end_0']").data("original-val", $("input[name='end_0']").val());
@@ -414,7 +414,7 @@
 
       $(".time:not('.input-append')").each(function () {
         $(this).attr("class", "input-mini timepicker-default").wrap($("<div>").addClass("input-append").addClass("date").addClass("bootstrap-timepicker-component"));
-        $("<span>").addClass("add-on").html('<i class="icon-time"></i>').appendTo($(this).parent());
+        $("<span>").addClass("add-on").html('<i class="fa fa-clock-o"></i>').appendTo($(this).parent());
       });
 
       $(".timepicker-default").timepicker({

+ 40 - 40
apps/pig/src/pig/templates/app.mako

@@ -51,13 +51,13 @@ ${ commonheader(None, "pig", user) | n,unicode }
         </%def>
 
         <%def name="actions()">
-            <button class="btn fileToolbarBtn" title="${_('Run this script')}" data-bind="enable: selectedScripts().length == 1, click: listRunScript, visible: scripts().length > 0"><i class="icon-play"></i> ${_('Run')}</button>
-            <button class="btn fileToolbarBtn" title="${_('Copy this script')}" data-bind="enable: selectedScripts().length == 1, click: listCopyScript, visible: scripts().length > 0"><i class="icon-copy"></i> ${_('Copy')}</button>
-            <button class="btn fileToolbarBtn" title="${_('Delete this script')}" data-bind="enable: selectedScripts().length > 0, click: listConfirmDeleteScripts, visible: scripts().length > 0"><i class="icon-trash"></i> ${_('Delete')}</button>
+            <button class="btn fileToolbarBtn" title="${_('Run this script')}" data-bind="enable: selectedScripts().length == 1, click: listRunScript, visible: scripts().length > 0"><i class="fa fa-play"></i> ${_('Run')}</button>
+            <button class="btn fileToolbarBtn" title="${_('Copy this script')}" data-bind="enable: selectedScripts().length == 1, click: listCopyScript, visible: scripts().length > 0"><i class="fa fa-files-o"></i> ${_('Copy')}</button>
+            <button class="btn fileToolbarBtn" title="${_('Delete this script')}" data-bind="enable: selectedScripts().length > 0, click: listConfirmDeleteScripts, visible: scripts().length > 0"><i class="fa fa-trash-o"></i> ${_('Delete')}</button>
         </%def>
 
         <%def name="creation()">
-            <button class="btn fileToolbarBtn" title="${_('Create a new script')}" data-bind="click: confirmNewScript"><i class="icon-plus-sign"></i> ${_('New Script')}</button>
+            <button class="btn fileToolbarBtn" title="${_('Create a new script')}" data-bind="click: confirmNewScript"><i class="fa fa-plus-circle"></i> ${_('New Script')}</button>
         </%def>
       </%actionbar:render>
       <div class="alert alert-info" data-bind="visible: scripts().length == 0">
@@ -67,7 +67,7 @@ ${ commonheader(None, "pig", user) | n,unicode }
       <table class="table table-striped table-condensed tablescroller-disable" data-bind="visible: scripts().length > 0">
         <thead>
         <tr>
-          <th width="1%"><div data-bind="click: selectAll, css: {hueCheckbox: true, 'icon-ok': allSelected}"></div></th>
+          <th width="1%"><div data-bind="click: selectAll, css: {hueCheckbox: true, 'fa': true, 'fa-check': allSelected}"></div></th>
           <th width="20%">${_('Name')}</th>
           <th width="79%">${_('Script')}</th>
         </tr>
@@ -94,7 +94,7 @@ ${ commonheader(None, "pig", user) | n,unicode }
       <script id="scriptTemplate" type="text/html">
         <tr style="cursor: pointer" data-bind="event: { mouseover: toggleHover, mouseout: toggleHover}">
           <td class="center" data-bind="click: handleSelect" style="cursor: default">
-            <div data-bind="css: {hueCheckbox: true, 'icon-ok': selected}"></div>
+            <div data-bind="css: {hueCheckbox: true, 'fa': true, 'fa-check': selected}"></div>
           </td>
           <td data-bind="click: $root.confirmViewScript">
             <strong><a href="#" data-bind="click: $root.confirmViewScript, text: name"></a></strong>
@@ -113,51 +113,51 @@ ${ commonheader(None, "pig", user) | n,unicode }
           <ul class="nav nav-list">
             <li class="nav-header">${_('Editor')}</li>
             <li data-bind="click: editScript" class="active" data-section="edit">
-              <a href="#"><i class="icon-edit"></i> ${ _('Pig') }</a>
+              <a href="#"><i class="fa fa-edit"></i> ${ _('Pig') }</a>
             </li>
             <li data-bind="click: editScriptProperties" data-section="properties">
-              <a href="#"><i class="icon-reorder"></i> ${ _('Properties') }</a>
+              <a href="#"><i class="fa fa-reorder"></i> ${ _('Properties') }</a>
             </li>
             <li data-bind="click: saveScript">
               <a href="#" title="${ _('Save the script') }" rel="tooltip" data-placement="right">
-                <i class="icon-save"></i> ${ _('Save') }
+                <i class="fa fa-floppy-o"></i> ${ _('Save') }
               </a>
             </li>
             <li class="nav-header">${_('Run')}</li>
             <li data-bind="click: runOrShowSubmissionModal, visible: !currentScript().isRunning()">
               <a href="#" title="${ _('Run the script') }" rel="tooltip" data-placement="right">
-                <i class="icon-play"></i> ${ _('Submit') }
+                <i class="fa fa-play"></i> ${ _('Submit') }
               </a>
             </li>
             <li data-bind="click: showStopModal, visible: currentScript().isRunning()">
               <a href="#" title="${ _('Stop the script') }" rel="tooltip" data-placement="right" class="disabled">
-                <i class="icon-ban-circle"></i> ${ _('Stop') }
+                <i class="fa fa-ban"></i> ${ _('Stop') }
               </a>
             </li>
             <li data-bind="click: showScriptLogs" data-section="logs">
               <a href="#" title="${ _('Show Logs') }" rel="tooltip" data-placement="right">
-                <i class="icon-tasks"></i> ${ _('Logs') }
+                <i class="fa fa-tasks"></i> ${ _('Logs') }
               </a>
             </li>
             <li class="nav-header">${_('File')}</li>
             <li data-bind="visible: currentScript().id() != -1, click: copyScript">
               <a href="#" title="${ _('Copy the script') }" rel="tooltip" data-placement="right">
-                <i class="icon-copy"></i> ${ _('Copy') }
+                <i class="fa fa-files-o"></i> ${ _('Copy') }
               </a>
             </li>
             <li data-bind="visible: currentScript().id() != -1, click: confirmDeleteScript">
               <a href="#" title="${ _('Delete the script') }" rel="tooltip" data-placement="right">
-                <i class="icon-trash"></i> ${ _('Delete') }
+                <i class="fa fa-trash-o"></i> ${ _('Delete') }
               </a>
             </li>
             <li data-bind="click: confirmNewScript">
               <a href="#" title="${ _('New script') }" rel="tooltip" data-placement="right">
-                <i class="icon-plus-sign"></i> ${ _('Script') }
+                <i class="fa fa-plus-circle"></i> ${ _('Script') }
               </a>
             </li>
             <li>
             <a href="#" id="help">
-              <i class="icon-question-sign"></i>
+              <i class="fa fa-question-circle"></i>
             </a>
             <div id="help-content" class="hide">
               <ul style="text-align: left;">
@@ -179,8 +179,8 @@ ${ commonheader(None, "pig", user) | n,unicode }
 
       <div id="edit" class="section">
         <div class="alert alert-info">
-          <a class="mainAction" href="#" title="${ _('Run this script') }" data-bind="click: runOrShowSubmissionModal, visible: !currentScript().isRunning()"><i class="icon-play"></i></a>
-          <a class="mainAction" href="#" title="${ _('Stop this script') }" data-bind="click: showStopModal, visible: currentScript().isRunning()"><i class="icon-stop"></i></a>
+          <a class="mainAction" href="#" title="${ _('Run this script') }" data-bind="click: runOrShowSubmissionModal, visible: !currentScript().isRunning()"><i class="fa fa-play"></i></a>
+          <a class="mainAction" href="#" title="${ _('Stop this script') }" data-bind="click: showStopModal, visible: currentScript().isRunning()"><i class="fa fa-stop"></i></a>
           <h3><span data-bind="text: currentScript().name"></span></h3>
         </div>
         <div class="row-fluid">
@@ -190,7 +190,7 @@ ${ commonheader(None, "pig", user) | n,unicode }
             </form>
           </div>
           <div class="span3">
-            <a href="#" title="${_('Double click on function to insert it in the editor')}" rel="tooltip" data-placement="left" class="pull-right" style="margin:10px;margin-left: 0"><i class="icon-question-sign"></i></a>
+            <a href="#" title="${_('Double click on function to insert it in the editor')}" rel="tooltip" data-placement="left" class="pull-right" style="margin:10px;margin-left: 0"><i class="fa fa-question-circle"></i></a>
             <h1 class="card-heading simple">${_('Navigator')}</h1>
             <div class="card-body">
               <p>
@@ -334,8 +334,8 @@ ${ commonheader(None, "pig", user) | n,unicode }
 
       <div id="properties" class="section hide">
         <div class="alert alert-info">
-          <a class="mainAction" href="#" title="${ _('Run this script') }" data-bind="click: runOrShowSubmissionModal, visible: !currentScript().isRunning()"><i class="icon-play"></i></a>
-          <a class="mainAction" href="#" title="${ _('Stop this script') }" data-bind="click: showStopModal, visible: currentScript().isRunning()"><i class="icon-stop"></i></a>
+          <a class="mainAction" href="#" title="${ _('Run this script') }" data-bind="click: runOrShowSubmissionModal, visible: !currentScript().isRunning()"><i class="fa fa-play"></i></a>
+          <a class="mainAction" href="#" title="${ _('Stop this script') }" data-bind="click: showStopModal, visible: currentScript().isRunning()"><i class="fa fa-stop"></i></a>
           <h3><span data-bind="text: currentScript().name"></span></h3>
         </div>
         <form class="form-inline" style="padding-left: 10px">
@@ -347,7 +347,7 @@ ${ commonheader(None, "pig", user) | n,unicode }
           <br/>
           <br/>
 
-          <h4>${ _('Parameters') } &nbsp; <i id="parameters-dyk" class="icon-question-sign"></i></h4>
+          <h4>${ _('Parameters') } &nbsp; <i id="parameters-dyk" class="fa fa-question-circle"></i></h4>
           <div id="parameters-dyk-content" class="hide">
             <ul style="text-align: left;">
               <li>input /user/data</li>
@@ -362,7 +362,7 @@ ${ commonheader(None, "pig", user) | n,unicode }
                 <td>
                   ${ _('There are currently no defined parameters.') }
                   <button class="btn" data-bind="click: currentScript().addParameter" style="margin-left: 4px">
-                    <i class="icon-plus"></i> ${ _('Add') }
+                    <i class="fa fa-plus"></i> ${ _('Add') }
                   </button>
                 </td>
               </tr>
@@ -384,13 +384,13 @@ ${ commonheader(None, "pig", user) | n,unicode }
                       <button class="btn fileChooserBtn" data-bind="click: $root.showFileChooser">..</button>
                     </div>
                   </td>
-                  <td><button data-bind="click: viewModel.currentScript().removeParameter" class="btn"><i class="icon-trash"></i> ${ _('Remove') }</button></td>
+                  <td><button data-bind="click: viewModel.currentScript().removeParameter" class="btn"><i class="fa fa-trash-o"></i> ${ _('Remove') }</button></td>
                 </tr>
               </tbody>
               <tfoot data-bind="visible: currentScript().parameters().length > 0">
                 <tr>
                   <td colspan="3">
-                    <button class="btn" data-bind="click: currentScript().addParameter"><i class="icon-plus"></i> ${ _('Add') }</button>
+                    <button class="btn" data-bind="click: currentScript().addParameter"><i class="fa fa-plus"></i> ${ _('Add') }</button>
                   </td>
                 </tr>
               </tfoot>
@@ -398,7 +398,7 @@ ${ commonheader(None, "pig", user) | n,unicode }
           </div>
 
           <br/>
-          <h4>${ _('Hadoop properties') } &nbsp; <i id="properties-dyk" class="icon-question-sign"></i></h4>
+          <h4>${ _('Hadoop properties') } &nbsp; <i id="properties-dyk" class="fa fa-question-circle"></i></h4>
           <div id="properties-dyk-content" class="hide">
             <ul style="text-align: left; word-wrap:break-word">
               <li>mapred.job.queue.name production</li>
@@ -411,7 +411,7 @@ ${ commonheader(None, "pig", user) | n,unicode }
                 <td>
                   ${ _('There are currently no defined Hadoop properties.') }
                   <button class="btn" data-bind="click: currentScript().addHadoopProperties" style="margin-left: 4px">
-                    <i class="icon-plus"></i> ${ _('Add') }
+                    <i class="fa fa-plus"></i> ${ _('Add') }
                   </button>
                 </td>
               </tr>
@@ -433,13 +433,13 @@ ${ commonheader(None, "pig", user) | n,unicode }
                       <button class="btn fileChooserBtn" data-bind="click: $root.showFileChooser">..</button>
                     </div>
                   </td>
-                  <td><button data-bind="click: viewModel.currentScript().removeHadoopProperties" class="btn"><i class="icon-trash"></i> ${ _('Remove') }</button></td>
+                  <td><button data-bind="click: viewModel.currentScript().removeHadoopProperties" class="btn"><i class="fa fa-trash-o"></i> ${ _('Remove') }</button></td>
                 </tr>
               </tbody>
               <tfoot data-bind="visible: currentScript().hadoopProperties().length > 0">
                 <tr>
                   <td colspan="3">
-                    <button class="btn" data-bind="click: currentScript().addHadoopProperties"><i class="icon-plus"></i> ${ _('Add') }</button>
+                    <button class="btn" data-bind="click: currentScript().addHadoopProperties"><i class="fa fa-plus"></i> ${ _('Add') }</button>
                   </td>
                 </tr>
               </tfoot>
@@ -448,7 +448,7 @@ ${ commonheader(None, "pig", user) | n,unicode }
 
           <br/>
 
-          <h4>${ _('Resources') } &nbsp; <i id="resources-dyk" class="icon-question-sign"></i></h4>
+          <h4>${ _('Resources') } &nbsp; <i id="resources-dyk" class="fa fa-question-circle"></i></h4>
           <div id="resources-dyk-content" class="hide">
             <ul style="text-align: left;">
               <li>${ _("Path to a HDFS file or zip file to add to the workspace of the running script") }</li>
@@ -460,7 +460,7 @@ ${ commonheader(None, "pig", user) | n,unicode }
                 <td>
                   ${ _('There are currently no defined resources.') }
                   <button class="btn" data-bind="click: currentScript().addResource" style="margin-left: 4px">
-                    <i class="icon-plus"></i> ${ _('Add') }
+                    <i class="fa fa-plus"></i> ${ _('Add') }
                   </button>
                 </td>
               </tr>
@@ -490,14 +490,14 @@ ${ commonheader(None, "pig", user) | n,unicode }
                   </td>
                   <td>
                     <button data-bind="click: viewModel.currentScript().removeResource" class="btn">
-                    <i class="icon-trash"></i> ${ _('Remove') }</button>
+                    <i class="fa fa-trash-o"></i> ${ _('Remove') }</button>
                   </td>
                 </tr>
               </tbody>
               <tfoot data-bind="visible: currentScript().resources().length > 0">
                 <tr>
                   <td colspan="3">
-                    <button class="btn" data-bind="click: currentScript().addResource"><i class="icon-plus"></i> ${ _('Add') }</button>
+                    <button class="btn" data-bind="click: currentScript().addResource"><i class="fa fa-plus"></i> ${ _('Add') }</button>
                   </td>
                 </tr>
               </tfoot>
@@ -508,14 +508,14 @@ ${ commonheader(None, "pig", user) | n,unicode }
 
       <div id="logs" class="section hide">
           <div class="alert alert-info">
-            <a class="mainAction" href="#" title="${ _('Stop this script') }" data-bind="click: showStopModal, visible: currentScript().isRunning()"><i class="icon-stop"></i></a>
+            <a class="mainAction" href="#" title="${ _('Stop this script') }" data-bind="click: showStopModal, visible: currentScript().isRunning()"><i class="fa fa-stop"></i></a>
             <h3><span data-bind="text: currentScript().name"></span></h3>
           </div>
           <div data-bind="template: {name: 'logTemplate', foreach: currentScript().actions}"></div>
           <script id="logTemplate" type="text/html">
             <div data-bind="css:{'alert-modified': name != '', 'alert': name != '', 'alert-success': status == 'SUCCEEDED' || status == 'OK', 'alert-error': status != 'RUNNING' && status != 'SUCCEEDED' && status != 'OK' && status != 'PREP' && status != 'SUSPENDED'}">
               <div class="pull-right">
-                  ${ _('Status:') } <a data-bind="text: status, visible: absoluteUrl != '', attr: {'href': absoluteUrl}" target="_blank"/> <i class="icon-share-alt"></i>
+                  ${ _('Status:') } <a data-bind="text: status, visible: absoluteUrl != '', attr: {'href': absoluteUrl}" target="_blank"/> <i class="fa fa-share"></i>
               </div>
               <h4>${ _('Progress:') } <span data-bind="text: progress"></span>${ _('%') }</h4>
               <div data-bind="css: {'progress': name != '', 'progress-striped': name != '', 'active': status == 'RUNNING'}" style="margin-top:10px">
@@ -590,7 +590,7 @@ ${ commonheader(None, "pig", user) | n,unicode }
           </div>
         </td>
         <td data-bind="text: created"></td>
-        <td data-bind="click: $root.showLogs"><i class="icon-tasks"></i></td>
+        <td data-bind="click: $root.showLogs"><i class="fa fa-tasks"></i></td>
       </tr>
     </script>
 
@@ -959,11 +959,11 @@ ${ commonheader(None, "pig", user) | n,unicode }
         if (data.error == null) {
           $(data.files).each(function (cnt, item) {
             if (item.name != ".") {
-              var _ico = "icon-file-alt";
+              var _ico = "fa-file-o";
               if (item.type == "dir") {
-                _ico = "icon-folder-close";
+                _ico = "fa-folder";
               }
-              CodeMirror.currentFiles.push('<i class="' + _ico + '"></i> ' + item.name);
+              CodeMirror.currentFiles.push('<i class="fa ' + _ico + '"></i> ' + item.name);
             }
           });
           CodeMirror.isPath = true;
@@ -1142,7 +1142,7 @@ ${ commonheader(None, "pig", user) | n,unicode }
           var _lineNo = line.match(/[Ll]ine \d*/) != null ? line.match(/[Ll]ine \d*/)[0].split(" ")[1] * 1 : -1;
           var _colNo = line.match(/[Cc]olumn \d*/) != null ? line.match(/[Cc]olumn \d*/)[0].split(" ")[1] * 1 : -1;
           if (_lineNo != -1 && _colNo != -1 && errorWidget == null) {
-            errorWidget = codeMirror.addLineWidget(_lineNo - 1, $("<div>").addClass("editorError").html("<i class='icon-exclamation-sign'></i> " + line)[0], {coverGutter: true, noHScroll: true});
+            errorWidget = codeMirror.addLineWidget(_lineNo - 1, $("<div>").addClass("editorError").html("<i class='fa fa-exclamation-circle'></i> " + line)[0], {coverGutter: true, noHScroll: true});
             codeMirror.setSelection({line: _lineNo - 1, ch: _colNo}, {line: _lineNo - 1, ch: _colNo + codeMirror.getLine(_lineNo - 1).substring(_colNo).split(" ")[0].length});
             $(document).trigger("showEditor");
           }

+ 12 - 12
apps/search/src/search/templates/admin_collection_facets.mako

@@ -94,7 +94,7 @@ ${ commonheader(_('Search'), "search", user, "29px") | n,unicode }
             <div class="bubble">
               <strong><span data-bind="editable: label"></span></strong>
               <span style="color:#666;font-size: 12px">(<span data-bind="text: field"></span>)</span>
-              <a class="btn btn-small" data-bind="click: $root.removeFieldFacet"><i class="icon-trash"></i></a>
+              <a class="btn btn-small" data-bind="click: $root.removeFieldFacet"><i class="fa fa-trash-o"></i></a>
             </div>
           </div>
           <div class="clearfix"></div>
@@ -105,7 +105,7 @@ ${ commonheader(_('Search'), "search", user, "29px") | n,unicode }
             <input id="selectedFieldLabel" type="text" data-bind="value: selectedFieldLabel" class="input" />
             <br/>
             <br/>
-            <a class="btn" data-bind="click: $root.addFieldFacet"><i class="icon-plus-sign"></i> ${_('Add to Field Facets')}</a>
+            <a class="btn" data-bind="click: $root.addFieldFacet"><i class="fa fa-plus-circle"></i> ${_('Add to Field Facets')}</a>
             &nbsp;<span id="field-facet-error" class="label label-important hide">${_('The field you are trying to add is already in the list.')}</span>
           </div>
         </div>
@@ -118,10 +118,10 @@ ${ commonheader(_('Search'), "search", user, "29px") | n,unicode }
           <div class="bubble">
             <strong><span data-bind="editable: label"></span></strong>
             <span style="color:#666;font-size: 12px">
-              (<span data-bind="text: field"></span>, <span data-bind="editable: start"></span> <i class="icon-double-angle-right"></i> <span data-bind="editable: end"></span>,
-              <i class="icon-resize-horizontal"></i> <span data-bind="editable: gap"></span>)
+              (<span data-bind="text: field"></span>, <span data-bind="editable: start"></span> <i class="fa fa-double-angle-right"></i> <span data-bind="editable: end"></span>,
+              <i class="fa fa-resize-horizontal"></i> <span data-bind="editable: gap"></span>)
             </span>
-            <a class="btn btn-small" data-bind="click: $root.removeRangeFacet"><i class="icon-trash"></i></a>
+            <a class="btn btn-small" data-bind="click: $root.removeRangeFacet"><i class="fa fa-trash-o"></i></a>
           </div>
         </div>
         <div class="clearfix"></div>
@@ -140,7 +140,7 @@ ${ commonheader(_('Search'), "search", user, "29px") | n,unicode }
           <input type="number" data-bind="value: selectedRangeGapFacet" class="input-mini" />
           <br/>
           <br/>
-          <a class="btn" data-bind="click: $root.addRangeFacet"><i class="icon-plus-sign"></i> ${_('Add to Range Facets')}</a>
+          <a class="btn" data-bind="click: $root.addRangeFacet"><i class="fa fa-plus-circle"></i> ${_('Add to Range Facets')}</a>
         </div>
       </div>
 
@@ -152,10 +152,10 @@ ${ commonheader(_('Search'), "search", user, "29px") | n,unicode }
           <div class="bubble">
             <strong><span data-bind="editable: label"></span></strong>
             <span style="color:#666;font-size: 12px">
-              (<span data-bind="text: field"></span>, <span data-bind="editable: start"></span> <i class="icon-double-angle-right"></i> <span data-bind="editable: end"></span>,
-              <i class="icon-resize-horizontal"></i> <span data-bind="editable: gap"></span>, <i class="icon-calendar"></i> <span data-bind="editable: format"></span>)
+              (<span data-bind="text: field"></span>, <span data-bind="editable: start"></span> <i class="fa fa-double-angle-right"></i> <span data-bind="editable: end"></span>,
+              <i class="fa fa-resize-horizontal"></i> <span data-bind="editable: gap"></span>, <i class="fa fa-calendar"></i> <span data-bind="editable: format"></span>)
             </span>
-            <a class="btn btn-small" data-bind="click: $root.removeDateFacet"><i class="icon-trash"></i></a>
+            <a class="btn btn-small" data-bind="click: $root.removeDateFacet"><i class="fa fa-trash-o"></i></a>
           </div>
         </div>
         <div class="clearfix"></div>
@@ -181,10 +181,10 @@ ${ commonheader(_('Search'), "search", user, "29px") | n,unicode }
           <br/>
           <br/>
           ${_('Date format')}
-          <input id="dateFormatInput" type="text" data-bind="value: selectedDateFormat" class="input" /> <a href="#formatHelpModal" class="btn btn-mini" data-toggle="modal"><i class="icon-question-sign"></i></a>
+          <input id="dateFormatInput" type="text" data-bind="value: selectedDateFormat" class="input" /> <a href="#formatHelpModal" class="btn btn-mini" data-toggle="modal"><i class="fa fa-question-circle"></i></a>
           <br/>
           <br/>
-          <a class="btn" data-bind="click: $root.addDateFacet"><i class="icon-plus-sign"></i> ${_('Add to Date Facets')}</a>
+          <a class="btn" data-bind="click: $root.addDateFacet"><i class="fa fa-plus-circle"></i> ${_('Add to Date Facets')}</a>
         </div>
       </div>
 
@@ -194,7 +194,7 @@ ${ commonheader(_('Search'), "search", user, "29px") | n,unicode }
         </div>
         <div data-bind="sortable: sortableFacets, afterMove: isSaveBtnVisible(true)">
           <div class="bubble" style="float: none;cursor: move">
-            <i class="icon-move"></i>
+            <i class="fa fa-move"></i>
             <strong><span data-bind="text: label"></span></strong>
             <span style="color:#666;font-size: 12px">(<span data-bind="text: field"></span>)</span>
           </div>

+ 6 - 6
apps/search/src/search/templates/admin_collection_sorting.mako

@@ -61,12 +61,12 @@ ${ commonheader(_('Search'), "search", user, "29px") | n,unicode }
         </div>
         <div data-bind="sortable: sortingFields">
           <div class="bubble" style="cursor: move">
-            <i class="icon-move"></i>
+            <i class="fa fa-move"></i>
             <strong><span data-bind="editable: label"></span></strong>
             <span style="color:#666;font-size: 12px">
-              (<span data-bind="text: field"></span> <i class="icon-arrow-up" data-bind="visible: asc() == true"></i><i class="icon-arrow-down" data-bind="visible: asc() == false"></i> <span data-bind="editable: order"></span>, <input type="checkbox" data-bind="checked: include" style="margin-top:0" /> ${_('Default sorting')} )
+              (<span data-bind="text: field"></span> <i class="fa fa-arrow-up" data-bind="visible: asc() == true"></i><i class="fa fa-arrow-down" data-bind="visible: asc() == false"></i> <span data-bind="editable: order"></span>, <input type="checkbox" data-bind="checked: include" style="margin-top:0" /> ${_('Default sorting')} )
             </span>
-            <a class="btn btn-small" data-bind="click: $root.removeSortingField"><i class="icon-trash"></i></a>
+            <a class="btn btn-small" data-bind="click: $root.removeSortingField"><i class="fa fa-trash-o"></i></a>
           </div>
         </div>
         <div class="clearfix"></div>
@@ -77,15 +77,15 @@ ${ commonheader(_('Search'), "search", user, "29px") | n,unicode }
           <input id="newFieldLabel" type="text" data-bind="value: newFieldLabel" class="input" />
           &nbsp;${_('Sorting')}
           <div class="btn-group" style="display: inline">
-            <button id="newFieldAsc" type="button" data-bind="css: {'active': newFieldAscDesc() == 'asc', 'btn': true}"><i class="icon-arrow-up"></i></button>
-            <button id="newFieldDesc" type="button" data-bind="css: {'active': newFieldAscDesc() == 'desc', 'btn': true}"><i class="icon-arrow-down"></i></button>
+            <button id="newFieldAsc" type="button" data-bind="css: {'active': newFieldAscDesc() == 'asc', 'btn': true}"><i class="fa fa-arrow-up"></i></button>
+            <button id="newFieldDesc" type="button" data-bind="css: {'active': newFieldAscDesc() == 'desc', 'btn': true}"><i class="fa fa-arrow-down"></i></button>
           </div>
           <label class="checkbox" style="display: inline">
             <input id="newFieldInclude" type="checkbox" style="float:none;margin-left:0;margin-top: -2px;margin-right: 4px"  data-bind="checked: newFieldIncludeInSorting" /> ${_('Include in default sorting')}
           </label>
           <br/>
           <br/>
-          <a class="btn" data-bind="click: $root.addSortingField"><i class="icon-plus-sign"></i> ${_('Add to Sorting')}</a>
+          <a class="btn" data-bind="click: $root.addSortingField"><i class="fa fa-plus-circle"></i> ${_('Add to Sorting')}</a>
         </div>
       </div>
 

+ 6 - 6
apps/search/src/search/templates/admin_collection_template.mako

@@ -160,12 +160,12 @@ ${ commonheader(_('Search'), "search", user, "29px") | n,unicode }
             <div id="content-editor" class="clear">${ hue_collection.result.get_template() | n,unicode }</div>
             <div id="cloud-template" class="btn-group">
               <a title="${_('Cloud Template')}" class="btn toolbar-btn toolbar-cmd">
-                <i class="icon-cloud-download" style="margin-top:2px;"></i>
+                <i class="fa fa-cloud-download" style="margin-top:2px;"></i>
               </a>
             </div>
             <div id="load-template" class="btn-group">
               <a title="${_('Layout')}" class="btn toolbar-btn toolbar-cmd">
-                <i class="icon-th-large" style="margin-top:2px;"></i>
+                <i class="fa fa-th-large" style="margin-top:2px;"></i>
               </a>
             </div>
           </div>
@@ -176,7 +176,7 @@ ${ commonheader(_('Search'), "search", user, "29px") | n,unicode }
                 <p>
                   <select data-bind="options: availableFields, value: selectedVisualField" class="input-large chosen-select"></select>
                   <button title="${ _('Click on this button to add the field') }" class="btn plus-btn" data-bind="click: $root.addFieldToVisual">
-                    <i class="icon-plus"></i>
+                    <i class="fa fa-plus"></i>
                   </button>
                   <div class="clearfix"></div>
                 </p>
@@ -200,7 +200,7 @@ ${ commonheader(_('Search'), "search", user, "29px") | n,unicode }
                   <option title="${ _('Truncate a value after 500 characters') }" value="{{#truncate500}} {{/truncate500}}">{{#truncate500}}</option>
                 </select>
                 <button title="${ _('Click on this button to add the field') }" class="btn plus-btn" data-bind="click: $root.addFunctionToVisual">
-                  <i class="icon-plus"></i>
+                  <i class="fa fa-plus"></i>
                 </button>
                 <div class="clearfix"></div>
                 <p class="muted" style="margin-top: 10px"></p>
@@ -222,7 +222,7 @@ ${ commonheader(_('Search'), "search", user, "29px") | n,unicode }
                 <p>
                   <select data-bind="options: availableFields, value: selectedSourceField" class="input-medium chosen-select"></select>
                   <button title="${ _('Click on this button to add the field') }" class="btn plus-btn" data-bind="click: $root.addFieldToSource">
-                    <i class="icon-plus"></i>
+                    <i class="fa fa-plus"></i>
                   </button>
                   <div class="clearfix"></div>
                 </p>
@@ -246,7 +246,7 @@ ${ commonheader(_('Search'), "search", user, "29px") | n,unicode }
                   <option title="${ _('Truncate a value after 500 characters') }" value="{{#truncate500}} {{/truncate500}}">{{#truncate500}}</option>
                 </select>
                 <button title="${ _('Click on this button to add the field') }" class="btn plus-btn" data-bind="click: $root.addFunctionToSource">
-                  <i class="icon-plus"></i>
+                  <i class="fa fa-plus"></i>
                 </button>
                 <div class="clearfix"></div>
                 <p class="muted" style="margin-top: 10px"></p>

+ 8 - 8
apps/search/src/search/templates/admin_collections.mako

@@ -28,7 +28,7 @@ ${ commonheader(_('Search'), "search", user, "29px") | n,unicode }
 
 <div class="search-bar" style="height: 30px">
     <div class="pull-right" style="margin-top: 4px; margin-right: 20px">
-      <a href="${ url('search:index') }"><i class="icon-share-alt"></i> ${ _('Search page') }</a>
+      <a href="${ url('search:index') }"><i class="fa fa-share"></i> ${ _('Search page') }</a>
     </div>
   <h4>${_('Collection Manager')}</h4>
 </div>
@@ -42,19 +42,19 @@ ${ commonheader(_('Search'), "search", user, "29px") | n,unicode }
     </%def>
 
     <%def name="creation()">
-      <button type="button" class="btn importBtn" data-bind="visible: collections().length > 0 && !isLoading()"><i class="icon-plus-sign"></i> ${ _('Import') }</button>
+      <button type="button" class="btn importBtn" data-bind="visible: collections().length > 0 && !isLoading()"><i class="fa fa-plus-circle"></i> ${ _('Import') }</button>
     </%def>
   </%actionbar:render>
 
   <div class="row-fluid" data-bind="visible: collections().length == 0 && !isLoading()">
     <div class="span10 offset1 center importBtn" style="cursor: pointer">
-      <i class="icon-plus-sign waiting"></i>
+      <i class="fa fa-plus-circle waiting"></i>
       <h1 class="emptyMessage">${ _('There are currently no collections defined.') }<br/><a href="javascript:void(0)" class="importBtn">${ _('Click here to add') }</a> ${ _('one or more.') }</h1>
     </div>
   </div>
   <div class="row-fluid" data-bind="visible: isLoading()">
     <div class="span10 offset1 center">
-      <i class="icon-spinner icon-spin" style="font-size: 60px; color: #DDD"></i>
+      <i class="fa fa-spinner fa-spin" style="font-size: 60px; color: #DDD"></i>
     </div>
   </div>
   <div class="row-fluid">
@@ -69,10 +69,10 @@ ${ commonheader(_('Search'), "search", user, "29px") | n,unicode }
   <script id="collectionTemplate" type="text/html">
     <li class="collectionRow" data-bind="click: $root.editCollection" title="${ _('Click to edit') }">
       <div class="pull-right" style="margin-top: 10px;margin-right: 10px; cursor: pointer">
-        <a data-bind="click: $root.copyCollection, clickBubble: false"><i class="icon-copy"></i> ${_('Copy')}</a> &nbsp;
-        <a data-bind="click: $root.markForDeletion, clickBubble: false"><i class="icon-remove"></i> ${_('Delete')}</a>
+        <a data-bind="click: $root.copyCollection, clickBubble: false"><i class="fa fa-files-o"></i> ${_('Copy')}</a> &nbsp;
+        <a data-bind="click: $root.markForDeletion, clickBubble: false"><i class="fa fa-times"></i> ${_('Delete')}</a>
       </div>
-      <h4><i class="icon-list"></i> <span data-bind="text: label"></span></h4>
+      <h4><i class="fa fa-list"></i> <span data-bind="text: label"></span></h4>
     </li>
   </script>
   </div>
@@ -105,7 +105,7 @@ ${ commonheader(_('Search'), "search", user, "29px") | n,unicode }
 <script id="importableTemplate" type="text/html">
   <tr>
     <td width="24">
-      <div data-bind="click: handleSelect, css: {hueCheckbox: true, 'icon-ok': selected}"></div>
+      <div data-bind="click: handleSelect, css: {hueCheckbox: true, 'fa': true, 'fa-check': selected}"></div>
     </td>
     <td data-bind="text: name"></td>
   </tr>

+ 4 - 4
apps/search/src/search/templates/layout.mako

@@ -29,8 +29,8 @@
   <div class="search-bar" style="height: 30px">
     % if not hasattr(caller, "no_navigation"):
       <div class="pull-right" style="margin-top: 4px; margin-right: 20px">
-        <a href="${ url('search:index') }"><i class="icon-share-alt"></i> ${ _('Search page') }</a> &nbsp; &nbsp;
-        <a href="${ url('search:admin_collections') }"><i class="icon-sitemap"></i> ${ _('Collection manager') }</a>
+        <a href="${ url('search:index') }"><i class="fa fa-share"></i> ${ _('Search page') }</a> &nbsp; &nbsp;
+        <a href="${ url('search:admin_collections') }"><i class="fa fa-sitemap"></i> ${ _('Collection manager') }</a>
       </div>
     % endif
 
@@ -78,10 +78,10 @@
 
     <li class="nav-header">${_('Collection')}</li>
       <li class="${ utils.is_selected(section, 'properties') }">
-        <a href="${ url('search:admin_collection_properties', collection_id=hue_collection.id) }"><i class="icon-reorder"></i> ${_('Properties')}</a>
+        <a href="${ url('search:admin_collection_properties', collection_id=hue_collection.id) }"><i class="fa fa-reorder"></i> ${_('Properties')}</a>
       </li>
       <li>
-        <a href="${ url('search:index') }?collection=${ hue_collection.id }"><i class="icon-search"></i> ${ _('Search it') }</a>
+        <a href="${ url('search:index') }?collection=${ hue_collection.id }"><i class="fa fa-search"></i> ${ _('Search it') }</a>
       </li>
 
       <li class="nav-header">${_('Template')}</li>

+ 2 - 2
apps/search/src/search/templates/macros.mako

@@ -203,13 +203,13 @@ def escape(text)  :
         <ul class="tweet-actions">
           <li class="action">
             <a href="https://twitter.com/intent/tweet?in_reply_to=${ result.get('id', '') }" target="_blank">
-              <i class="icon icon-reply"></i>
+              <i class="icon fa fa-reply"></i>
               <b>${_('Reply')}</b>
             </a>
           </li>
           <li class="action">
             <a href="https://twitter.com/intent/retweet?tweet_id=${ result.get('id', '') }" target="_blank">
-              <i class="icon icon-retweet"></i>
+              <i class="icon fa fa-retweet"></i>
               <b>${_('Retweet')}</b>
             </a>
           </li>

+ 1 - 1
apps/search/src/search/templates/no_collections.mako

@@ -43,7 +43,7 @@ ${ commonheader(_('Search'), "search", user, "120px") | n,unicode }
   <div class="row-fluid">
     <div class="span10 offset1 center">
 
-      <i class="icon-search waiting"></i>
+      <i class="fa fa-search waiting"></i>
       <h1>${ _('It seems there is nothing to search on ...') }</h1>
 
     </div>

+ 7 - 7
apps/search/src/search/templates/search.mako

@@ -44,13 +44,13 @@ ${ commonheader(_('Search'), "search", user, "29px") | n,unicode }
 <div class="search-bar">
   % if user.is_superuser:
     <div class="pull-right" style="margin-top: 4px">
-      <a class="change-settings" href="#"><i class="icon-edit"></i> ${ _('Customize this collection') }</a> &nbsp;&nbsp;
-      <a href="${ url('search:admin_collections') }"><i class="icon-sitemap"></i> ${ _('Collection manager') }</a>
+      <a class="change-settings" href="#"><i class="fa fa-edit"></i> ${ _('Customize this collection') }</a> &nbsp;&nbsp;
+      <a href="${ url('search:admin_collections') }"><i class="fa fa-sitemap"></i> ${ _('Collection manager') }</a>
     </div>
   % endif
   <form class="form-search" style="margin: 0">
     <div class="dropdown" style="display: inline">
-      ${ _('Search in')} <a href="#" data-toggle="dropdown"><strong class="current-collection"></strong> <i class="icon-caret-down"></i></a>
+      ${ _('Search in')} <a href="#" data-toggle="dropdown"><strong class="current-collection"></strong> <i class="fa fa-caret-down"></i></a>
       <ul class="dropdown-menu">
         % if user.is_superuser:
           % for collection in hue_collections:
@@ -65,7 +65,7 @@ ${ commonheader(_('Search'), "search", user, "29px") | n,unicode }
     </div>
     <div class="input-append">
       ${ search_form | n,unicode }
-      <button type="submit" class="btn"><i class="icon-search"></i></button>
+      <button type="submit" class="btn"><i class="fa fa-search"></i></button>
     </div>
   </form>
 </div>
@@ -114,13 +114,13 @@ ${ commonheader(_('Search'), "search", user, "29px") | n,unicode }
             % endif
             % if found_value != "":
               % if fld['type'] == 'field' and '"' + group + '"' == found_value:
-                <li><strong>${ group }</strong> <a href="?collection=${ current_collection }&query=${ solr_query['q'] }&fq=${'|'.join(remove_list)}${solr_query.get("sort") and '&sort=' + solr_query.get("sort") or ''}"><i class="icon-remove"></i></a></li>
+                <li><strong>${ group }</strong> <a href="?collection=${ current_collection }&query=${ solr_query['q'] }&fq=${'|'.join(remove_list)}${solr_query.get("sort") and '&sort=' + solr_query.get("sort") or ''}"><i class="fa fa-times"></i></a></li>
               % endif
               % if fld['type'] == 'range' and '["' + group + '" TO "' + str(int(group) + int(fld['gap']) - 1) + '"]' == found_value:
-                <li><strong>${ group } - ${ str(int(group) + int(fld['gap']) - 1) }</strong> <a href="?collection=${ current_collection }&query=${ solr_query['q'] }&fq=${'|'.join(remove_list)}${solr_query.get("sort") and '&sort=' + solr_query.get("sort") or ''}"><i class="icon-remove"></i></a></li>
+                <li><strong>${ group } - ${ str(int(group) + int(fld['gap']) - 1) }</strong> <a href="?collection=${ current_collection }&query=${ solr_query['q'] }&fq=${'|'.join(remove_list)}${solr_query.get("sort") and '&sort=' + solr_query.get("sort") or ''}"><i class="fa fa-times"></i></a></li>
               % endif
               % if fld['type'] == 'date' and found_value.startswith('[' + group + ' TO'):
-                <li><strong><span class="dateFacet" data-format="${fld['format']}">${ group }<span class="dateFacetGap hide">${ fld['gap'] }</span></span></strong> <a href="?collection=${ current_collection }&query=${ solr_query['q'] }&fq=${'|'.join(remove_list)}${solr_query.get("sort") and '&sort=' + solr_query.get("sort") or ''}"><i class="icon-remove"></i></a></li>
+                <li><strong><span class="dateFacet" data-format="${fld['format']}">${ group }<span class="dateFacetGap hide">${ fld['gap'] }</span></span></strong> <a href="?collection=${ current_collection }&query=${ solr_query['q'] }&fq=${'|'.join(remove_list)}${solr_query.get("sort") and '&sort=' + solr_query.get("sort") or ''}"><i class="fa fa-times"></i></a></li>
               % endif
             % endif
           % endfor

+ 2 - 2
apps/search/static/help/index.html

@@ -20,7 +20,7 @@ containing text that matches the specified substring.</p>
 <p><a id="importCollection"></a></p>
 <h3>Importing Collections</h3>
 <ol>
-<li>If there are existing collections, click the <i class="icon-plus-sign"></i> <strong>Import</strong> button at the top right. The Import Collections and Cores dialog displays.</li>
+<li>If there are existing collections, click the <i class="fa fa-plus-sign"></i> <strong>Import</strong> button at the top right. The Import Collections and Cores dialog displays.</li>
 <li>Check the checkboxes next to the collections to import.</li>
 <li>Click <strong>Import Selected</strong>. The collection is added to the Collection Manager.</li>
 </ol>
@@ -36,7 +36,7 @@ containing text that matches the specified substring.</p>
 <li>Select a collection from the <strong>Search in</strong> drop-down list.</li>
 <li>Type a search string in the <strong>Search...</strong> text box.</li>
 <li>
-<p>Press <strong>Enter</strong> or click the <i class="icon-search"></i>  icon.</p>
+<p>Press <strong>Enter</strong> or click the <i class="fa fa-search"></i>  icon.</p>
 </li>
 <li>
 <p>If you have defined <a href="#facets">facets</a>, click a facet to display only those results in the group defined by the facet.</p>

+ 9 - 9
apps/search/static/js/freshereditor.min.js

@@ -52,7 +52,7 @@
             classname: 'toolbar_strikethrough'
           }, {
             name: 'removeFormat',
-            label: "<i class='icon-minus'></i>",
+            label: "<i class='fa fa-minus'></i>",
             title: 'Remove Formating (Ctrl+M)',
             classname: 'toolbar_remove'
           }
@@ -91,22 +91,22 @@
           ], [
             {
               name: 'justifyleft',
-              label: "<i class='icon-align-left' style='margin-top:2px;'></i>",
+              label: "<i class='fa fa-align-left' style='margin-top:2px;'></i>",
               title: 'Left justify',
               classname: 'toolbar_justifyleft'
             }, {
               name: 'justifycenter',
-              label: "<i class='icon-align-center' style='margin-top:2px;'></i>",
+              label: "<i class='fa fa-align-center' style='margin-top:2px;'></i>",
               title: 'Center justify',
               classname: 'toolbar_justifycenter'
             }, {
               name: 'justifyright',
-              label: "<i class='icon-align-right' style='margin-top:2px;'></i>",
+              label: "<i class='fa fa-align-right' style='margin-top:2px;'></i>",
               title: 'Right justify',
               classname: 'toolbar_justifyright'
             }, {
               name: 'justifyfull',
-              label: "<i class='icon-align-justify' style='margin-top:2px;'></i>",
+              label: "<i class='fa fa-align-justify' style='margin-top:2px;'></i>",
               title: 'Full justify',
               classname: 'toolbar_justifyfull'
             }
@@ -119,18 +119,18 @@
               classname: 'toolbar_link'
             }, {
               name: 'insertimage',
-              label: "<i style='margin-top:2px;' class='icon-picture'></i>",
+              label: "<i style='margin-top:2px;' class='fa fa-picture-o'></i>",
               title: 'Insert an image (Ctrl+G)',
               userinput: "yes",
               classname: 'toolbar_image'
             }, {
               name: 'insertorderedlist',
-              label: "<i class='icon-list-alt' style='margin-top:2px;'></i>",
+              label: "<i class='fa fa-list-alt' style='margin-top:2px;'></i>",
               title: 'Insert ordered list',
               classname: 'toolbar_ol'
             }, {
               name: 'insertunorderedlist',
-              label: "<i class='icon-list' style='margin-top:2px;'></i>",
+              label: "<i class='fa fa-list' style='margin-top:2px;'></i>",
               title: 'Insert unordered list',
               classname: 'toolbar_ul'
             }
@@ -169,7 +169,7 @@
           ], [
             {
               name: 'blockquote',
-              label: "<i style='margin-top:2px;' class='icon-comment'></i>",
+              label: "<i style='margin-top:2px;' class='fa fa-comment'></i>",
               title: 'Blockquote (Ctrl+Q)',
               classname: 'toolbar_blockquote',
               block: 'blockquote'

+ 21 - 21
apps/sqoop/src/sqoop/templates/app.mako

@@ -25,7 +25,7 @@ ${ commonheader(None, "sqoop", user) | n,unicode }
 <div data-bind="if: !isLoading(), css: {'hide': isLoading}" id="top-bar-container" class="hide">
   <div class="top-bar" data-bind="visible:shownSection() == 'jobs-list'">
     <div style="margin-top: 4px; margin-right: 40px" class="pull-right">
-      <a title="${_('Create a new job')}" href="#job/new" data-bind="visible: isReady"><i class="icon-plus-sign"></i> ${_('New job')}</a>
+      <a title="${_('Create a new job')}" href="#job/new" data-bind="visible: isReady"><i class="fa fa-plus-circle"></i> ${_('New job')}</a>
     </div>
     <h4>${_('Sqoop Jobs')}</h4>
     <input id="filter" type="text" class="input-xlarge search-query" placeholder="${_('Search for job name or content')}"  data-bind="visible: isReady">
@@ -34,15 +34,15 @@ ${ commonheader(None, "sqoop", user) | n,unicode }
   <!-- ko if: job -->
   <div class="top-bar" data-bind="visible:shownSection() == 'job-editor', with: job">
     <div style="margin-top: 4px; margin-right: 40px" class="pull-right">
-      <a title="${_('Create a new job')}" href="#job/new"><i class="icon-plus-sign"></i> ${_('New job')}</a>
+      <a title="${_('Create a new job')}" href="#job/new"><i class="fa fa-plus-circle"></i> ${_('New job')}</a>
     </div>
     <h4 data-bind="visible: !persisted()"><a title="${_('Back to jobs list')}" href="#jobs">${_('Sqoop Jobs')}</a> <span class="muted">/</span> ${_('New Job')}</h4>
-    <h4 data-bind="visible: persisted"><a title="${_('Back to jobs list')}" href="#jobs">${_('Sqoop Jobs')}</a> <span class="muted">/</span> <i data-bind="css:{'icon-download-alt': type() == 'IMPORT', 'icon-upload-alt': type() == 'EXPORT'}"></i> &nbsp;<span data-bind="text: type"></span> <span class="muted" data-bind="editable: name, editableOptions: {'placement': 'right'}"></span></h4>
+    <h4 data-bind="visible: persisted"><a title="${_('Back to jobs list')}" href="#jobs">${_('Sqoop Jobs')}</a> <span class="muted">/</span> <i data-bind="css:{'fa fa-arrow-circle-o-down': type() == 'IMPORT', 'fa fa-upload': type() == 'EXPORT'}"></i> &nbsp;<span data-bind="text: type"></span> <span class="muted" data-bind="editable: name, editableOptions: {'placement': 'right'}"></span></h4>
   </div>
 
   <div class="top-bar" data-bind="visible:shownSection() == 'connection-editor', with: editConnection">
     <h4 data-bind="visible: !persisted()"><a title="${_('Back to jobs list')}" href="#jobs">${_('Sqoop Jobs')}</a> <span class="muted">/</span> <a href="#connection/edit-cancel" data-bind="text: name"></a> <span class="muted">/</span> ${_('New Connection')}</h4>
-    <h4 data-bind="visible: persisted()"><a title="${_('Back to jobs list')}" href="#jobs">${_('Sqoop Jobs')}</a> <span class="muted">/</span> <a href="#connection/edit-cancel"><i data-bind="css:{'icon-download-alt': $root.job().type() == 'IMPORT', 'icon-upload-alt': $root.job().type() == 'EXPORT'}"></i> &nbsp;<span data-bind="text: $root.job().type"></span> <span data-bind="text: $root.job().name"></span></a> <span class="muted">/</span> <span data-bind="text: $root.job().name"></span></h4>
+    <h4 data-bind="visible: persisted()"><a title="${_('Back to jobs list')}" href="#jobs">${_('Sqoop Jobs')}</a> <span class="muted">/</span> <a href="#connection/edit-cancel"><i data-bind="css:{'fa fa-arrow-circle-o-down': $root.job().type() == 'IMPORT', 'fa fa-upload': $root.job().type() == 'EXPORT'}"></i> &nbsp;<span data-bind="text: $root.job().type"></span> <span data-bind="text: $root.job().name"></span></a> <span class="muted">/</span> <span data-bind="text: $root.job().name"></span></h4>
   </div>
   <!-- /ko -->
 </div>
@@ -50,7 +50,7 @@ ${ commonheader(None, "sqoop", user) | n,unicode }
 <div class="container-fluid">
   <div data-bind="foreach: sqoop_errors" id="sqoop-error" class="row-fluid mainSection hide" style="margin-top: 10px">
     <div class="alert alert-error">
-      <i class="icon-warning-sign"></i>
+      <i class="fa fa-exclamation-triangle"></i>
       <strong>${_('Sqoop error')}:</strong>
       <span data-bind="text: $data" class="message"></span>
     </div>
@@ -62,7 +62,7 @@ ${ commonheader(None, "sqoop", user) | n,unicode }
         <img src="/static/art/spinner-big.gif" />
       <![endif]-->
       <!--[if !IE]> -->
-        <i class="icon-spinner icon-spin" style="font-size: 60px; color: #DDD"></i>
+        <i class="fa fa-spinner fa-spin" style="font-size: 60px; color: #DDD"></i>
       <!-- <![endif]-->
     </div>
   </div>
@@ -97,7 +97,7 @@ ${ commonheader(None, "sqoop", user) | n,unicode }
         </ul>
         <div class="card" data-bind="visible: filteredJobs().length == 0">
           <div class="span10 offset1 center nojobs">
-            <a href="#job/new" class="nounderline"><i class="icon-plus-sign waiting"></i></a>
+            <a href="#job/new" class="nounderline"><i class="fa fa-plus-circle waiting"></i></a>
             <h1 class="emptyMessage">${ _('There are currently no jobs.') }<br/><a href="#job/new">${ _('Click here to add one.') }</a></h1>
           </div>
           <div class="clearfix"></div>
@@ -112,38 +112,38 @@ ${ commonheader(None, "sqoop", user) | n,unicode }
             <li class="nav-header" data-bind="visible: $root.job().persisted">${_('Actions')}</li>
             <li data-bind="visible: $root.job().persisted() && !$root.job().isRunning()">
               <a id="save-run-link" data-placement="right" rel="tooltip" title="${_('Run the job')}" href="#job/save-and-run">
-                <i class="icon-play"></i> ${_('Run')}
+                <i class="fa fa-play"></i> ${_('Run')}
               </a>
             </li>
             <li data-bind="visible: $root.job().isRunning()">
               <a data-placement="right" rel="tooltip" title="${_('Stop the job')}" href="#job/stop">
-                <i class="icon-stop"></i> ${_('Stop')}
+                <i class="fa fa-stop"></i> ${_('Stop')}
               </a>
             </li>
             <li data-bind="visible: $root.job().persisted">
               <a data-placement="right" rel="tooltip" title="${_('Copy the job')}" href="#job/copy">
-                <i class="icon-copy"></i> ${_('Copy')}
+                <i class="fa fa-files-o"></i> ${_('Copy')}
               </a>
             </li>
             <li data-bind="visible: $root.job().persisted">
               <a data-bind="click: $root.showDeleteJobModal.bind($root)" data-placement="right" rel="tooltip" title="${_('Delete the job')}" href="javascript:void(0);">
-                <i class="icon-remove"></i> ${_('Delete')}
+                <i class="fa fa-times"></i> ${_('Delete')}
               </a>
             </li>
             <li class="nav-header" data-bind="visible: $root.job().persisted">${_('Submissions')}</li>
             <li data-bind="visible: $root.job().persisted() && $root.job().outputDirectoryFilebrowserURL">
               <a data-bind="attr: { 'href': $root.job().outputDirectoryFilebrowserURL }" data-placement="right" rel="tooltip" title="${_('Browse output directory')}" href="javascript:void(0);" target="_new">
-                <i class="icon-folder-open"></i> ${_('Output directory')}
+                <i class="fa fa-folder-open"></i> ${_('Output directory')}
               </a>
             </li>
             <li data-bind="visible: $root.job().persisted() && $root.job().inputDirectoryFilebrowserURL">
               <a data-bind="attr: { 'href': $root.job().inputDirectoryFilebrowserURL }" data-placement="right" rel="tooltip" title="${_('Browse input directory')}" href="javascript:void(0);" target="_new">
-                <i class="icon-folder-open"></i> ${_('Input directory')}
+                <i class="fa fa-folder-open"></i> ${_('Input directory')}
               </a>
             </li>
             <li data-bind="visible: $root.job().submission().external_id()">
               <a rel="tooltip" title="${_('Logs')}" href="javascript:void(0);" target="_new" data-bind="attr: {href: '/jobbrowser/jobs/' + $root.job().submission().external_id() + '/single_logs'}">
-                <i class="icon-list"></i>
+                <i class="fa fa-list"></i>
                 ${_('Logs')}
               </a>
             </li>
@@ -282,7 +282,7 @@ ${ commonheader(None, "sqoop", user) | n,unicode }
 <script type="text/html" id="job-list-item">
 <h4 style="display: inline-block">
   <!-- ko if: type() == 'IMPORT' -->
-  <i class="icon-download-alt"></i>&nbsp;
+  <i class="fa fa-download"></i>&nbsp;
   <span data-bind="text: type"></span>
   <span>${_('from ')}</span>
   <span data-bind="text: $root.getDatabaseByConnectionId(connection_id())"></span>
@@ -291,7 +291,7 @@ ${ commonheader(None, "sqoop", user) | n,unicode }
   <span data-bind="text: name" class="muted"></span>
   <!-- /ko -->
   <!-- ko if: type() == 'EXPORT' -->
-  <i class="icon-upload-alt"></i>&nbsp;
+  <i class="fa fa-upload"></i>&nbsp;
   <span data-bind="text: type"></span>
   <span>${_('from ')}</span>
   <span data-bind="text: storageType"></span>
@@ -347,11 +347,11 @@ ${ commonheader(None, "sqoop", user) | n,unicode }
     <label class="control-label">${ _('Job type') }</label>
     <div class="controls">
       <div title="${ _('Import from a Database to Hadoop') }" data-bind="css:{ 'big-btn': type() != '', 'selected': type() == 'IMPORT' }, click: setImport">
-        <i class="icon-download-alt"></i><br/>
+        <i class="fa fa-download"></i><br/>
         ${ _('Import') }
       </div>
       <div title="${ _('Import from Hadoop to a Database') }"data-bind="css:{ 'big-btn': type() != '', 'selected': type() == 'EXPORT' }, click: setExport">
-        <i class="icon-upload-alt"></i><br/>
+        <i class="fa fa-upload"></i><br/>
         ${ _('Export') }
       </div>
       <input name="type" type="hidden" data-bind="value: type" />
@@ -366,16 +366,16 @@ ${ commonheader(None, "sqoop", user) | n,unicode }
       <!-- ko if: $root.connection() -->
       <div style="display:inline">
         <a data-bind="routie: 'connection/edit/' + $root.connection().id()" href="javascript:void(0);" class="subbtn" style="margin-left: 5px">
-          <i class="icon-edit"></i> ${_('Edit')}
+          <i class="fa fa-edit"></i> ${_('Edit')}
         </a>
         <a data-bind="click: $root.showDeleteConnectionModal.bind($root)" href="javascript:void(0);" class="subbtn" style="margin-left: 5px">
-          <i class="icon-remove"></i> ${_('Delete')}
+          <i class="fa fa-times"></i> ${_('Delete')}
         </a>
       </div>
       <!-- /ko -->
       <div class="clearfix"></div>
       <a data-bind="routie: 'connection/new'" href="javascript:void(0);" style="margin: 5px; display: block">
-        <i class="icon-plus"></i> ${_('Add a new connection')}
+        <i class="fa fa-plus"></i> ${_('Add a new connection')}
       </a>
     </div>
   </div>

+ 9 - 9
apps/useradmin/src/useradmin/templates/list_groups.mako

@@ -37,15 +37,15 @@ ${layout.menubar(section='groups')}
       <%def name="actions()">
         %if user.is_superuser:
             <button id="deleteGroupBtn" class="btn confirmationModal" title="${_('Delete')}" disabled="disabled"><i
-                class="icon-trash"></i> ${_('Delete')}</button>
+                class="fa fa-trash-o"></i> ${_('Delete')}</button>
         %endif
       </%def>
       <%def name="creation()">
         %if user.is_superuser:
             <a id="addGroupBtn" href="${url('useradmin.views.edit_group')}" class="btn"><i
-                class="icon-plus-sign"></i> ${_('Add group')}</a>
+                class="fa fa-plus-circle"></i> ${_('Add group')}</a>
             <a id="addLdapGroupBtn" href="${url('useradmin.views.add_ldap_groups')}" class="btn"><i
-                class="icon-refresh"></i> ${_('Add/Sync LDAP group')}</a>
+                class="fa fa-refresh"></i> ${_('Add/Sync LDAP group')}</a>
         %endif
       </%def>
     </%actionbar:render>
@@ -55,7 +55,7 @@ ${layout.menubar(section='groups')}
       <tr>
         %if user.is_superuser:
             <th width="1%">
-              <div id="selectAll" class="hueCheckbox"></div>
+              <div id="selectAll" class="hueCheckbox fa"></div>
             </th>
         %endif
         <th>${_('Group Name')}</th>
@@ -69,7 +69,7 @@ ${layout.menubar(section='groups')}
               data-search="${group.name}${', '.join([group_user.username for group_user in group.user_set.all()])}">
           %if user.is_superuser:
               <td data-row-selector-exclude="true">
-                <div class="hueCheckbox groupCheck" data-group="${group.name}"
+                <div class="hueCheckbox groupCheck fa" data-group="${group.name}"
                      data-confirmation-url="${ url('useradmin.views.delete_group', name=urllib.quote(group.name))}"
                      data-row-selector-exclude="true"></div>
               </td>
@@ -146,21 +146,21 @@ ${layout.menubar(section='groups')}
     $("#selectAll").click(function () {
       if ($(this).attr("checked")) {
         $(this).removeAttr("checked");
-        $(".groupCheck").removeClass("icon-ok").removeAttr("checked");
+        $(".groupCheck").removeClass("fa-check").removeAttr("checked");
       }
       else {
         $(this).attr("checked", "checked");
-        $(".groupCheck").addClass("icon-ok").attr("checked", "checked");
+        $(".groupCheck").addClass("fa-check").attr("checked", "checked");
       }
       toggleActions();
     });
 
     $(".groupCheck").click(function () {
       if ($(this).attr("checked")) {
-        $(this).removeClass("icon-ok").removeAttr("checked");
+        $(this).removeClass("fa-check").removeAttr("checked");
       }
       else {
-        $(this).addClass("icon-ok").attr("checked", "checked");
+        $(this).addClass("fa-check").attr("checked", "checked");
       }
       toggleActions();
     });

+ 10 - 10
apps/useradmin/src/useradmin/templates/list_users.mako

@@ -37,17 +37,17 @@ ${layout.menubar(section='users')}
       <%def name="actions()">
         %if user.is_superuser:
             <button id="deleteUserBtn" class="btn" title="${_('Delete')}" disabled="disabled"><i
-                class="icon-trash"></i> ${_('Delete')}</button>
+                class="fa fa-trash-o"></i> ${_('Delete')}</button>
         %endif
       </%def>
       <%def name="creation()">
         %if user.is_superuser:
-            <a href="${ url('useradmin.views.edit_user') }" class="btn"><i class="icon-user"></i> ${_('Add user')}</a>
+            <a href="${ url('useradmin.views.edit_user') }" class="btn"><i class="fa fa-user"></i> ${_('Add user')}</a>
             <a href="${ url('useradmin.views.add_ldap_users') }" class="btn"><i
-                class="icon-briefcase"></i> ${_('Add/Sync LDAP user')}</a>
+                class="fa fa-briefcase"></i> ${_('Add/Sync LDAP user')}</a>
             <a href="javascript:void(0)" class="btn confirmationModal"
                data-confirmation-url="${ url('useradmin.views.sync_ldap_users_groups') }"><i
-                class="icon-refresh"></i> ${_('Sync LDAP users/groups')}</a>
+                class="fa fa-refresh"></i> ${_('Sync LDAP users/groups')}</a>
         %endif
       </%def>
     </%actionbar:render>
@@ -57,7 +57,7 @@ ${layout.menubar(section='users')}
       <tr>
         %if user.is_superuser:
             <th width="1%">
-              <div id="selectAll" class="hueCheckbox"></div>
+              <div id="selectAll" class="hueCheckbox fa"></div>
             </th>
         %endif
         <th>${_('Username')}</th>
@@ -74,7 +74,7 @@ ${layout.menubar(section='users')}
               data-search="${listed_user.username}${listed_user.first_name}${listed_user.last_name}${listed_user.email}${', '.join([group.name for group in listed_user.groups.all()])}">
           %if user.is_superuser:
               <td data-row-selector-exclude="true">
-                <div class="hueCheckbox userCheck" data-row-selector-exclude="true" data-id="${ listed_user.id }"></div>
+                <div class="hueCheckbox userCheck fa" data-row-selector-exclude="true" data-id="${ listed_user.id }"></div>
               </td>
           %endif
           <td>
@@ -182,21 +182,21 @@ ${layout.menubar(section='users')}
     $("#selectAll").click(function () {
       if ($(this).attr("checked")) {
         $(this).removeAttr("checked");
-        $(".userCheck").removeClass("icon-ok").removeAttr("checked");
+        $(".userCheck").removeClass("fa-check").removeAttr("checked");
       }
       else {
         $(this).attr("checked", "checked");
-        $(".userCheck").addClass("icon-ok").attr("checked", "checked");
+        $(".userCheck").addClass("fa-check").attr("checked", "checked");
       }
       toggleActions();
     });
 
     $(".userCheck").click(function () {
       if ($(this).attr("checked")) {
-        $(this).removeClass("icon-ok").removeAttr("checked");
+        $(this).removeClass("fa-check").removeAttr("checked");
       }
       else {
-        $(this).addClass("icon-ok").attr("checked", "checked");
+        $(this).addClass("fa-check").attr("checked", "checked");
       }
       toggleActions();
     });

+ 1 - 1
apps/useradmin/static/help/index.html

@@ -33,7 +33,7 @@
 
     <div class="body conbody">
 
-      <p class="p">Click the <strong class="ph b">User Admin</strong> icon <i class="icon-group"></i> in the navigation bar at the top of the Hue browser page below your login name. The Hue
+      <p class="p">Click the <strong class="ph b">User Admin</strong> icon <i class="fa fa-group"></i> in the navigation bar at the top of the Hue browser page below your login name. The Hue
         Users page opens. </p>
 
 

+ 4 - 4
apps/zookeeper/src/zookeeper/templates/tree.mako

@@ -51,8 +51,8 @@ ${ shared.header(_breadcrumbs, clusters, False) }
           <li class="white">${ _('No children available') }</li>
         % endif
         <li class="white">
-          <button class="btn" onclick="location.href='${url('zookeeper:create', id=cluster['id'], path=path)}'"><i class="icon-plus-sign"></i> ${ _('Add') }</button>
-          <button id="removeBtn" class="btn btn-danger disable-feedback" data-msg="${_('Are you sure you want to delete %s?' % path)}" data-url="${url('zookeeper:delete', id=cluster['id'], path=path)}"><i class="icon-remove-sign"></i> ${ _('Remove current ZNode') }</button>
+          <button class="btn" onclick="location.href='${url('zookeeper:create', id=cluster['id'], path=path)}'"><i class="fa fa-plus-circle"></i> ${ _('Add') }</button>
+          <button id="removeBtn" class="btn btn-danger disable-feedback" data-msg="${_('Are you sure you want to delete %s?' % path)}" data-url="${url('zookeeper:delete', id=cluster['id'], path=path)}"><i class="fa fa-times-circle"></i> ${ _('Remove current ZNode') }</button>
         </li>
       </ul>
     </div>
@@ -71,11 +71,11 @@ ${ shared.header(_breadcrumbs, clusters, False) }
       %if znode.get('dataLength', 0) != 0:
       <div class="tab-pane active" id="text">
         <textarea id="textareaText" rows="25" readonly="readonly"></textarea>
-        <a href="${url('zookeeper:edit_as_text', id=cluster['id'], path=path)}" class="btn"><i class="icon-pencil"></i> ${_('Edit as Text')}</a>
+        <a href="${url('zookeeper:edit_as_text', id=cluster['id'], path=path)}" class="btn"><i class="fa fa-pencil"></i> ${_('Edit as Text')}</a>
       </div>      
       <div class="tab-pane" id="base64">
         <textarea id="textarea64" rows="25" readonly="readonly">${znode.get('data64', '')}</textarea>
-        <a href="${url('zookeeper:edit_as_base64', id=cluster['id'], path=path)}" class="btn"><i class="icon-pencil"></i> ${_('Edit as Base64')}</a>
+        <a href="${url('zookeeper:edit_as_base64', id=cluster['id'], path=path)}" class="btn"><i class="fa fa-pencil"></i> ${_('Edit as Base64')}</a>
       </div>
       <div class="tab-pane" id="stats">
       %else:

+ 2 - 2
apps/zookeeper/src/zookeeper/templates/view.mako

@@ -121,7 +121,7 @@ ${ shared.header(_breadcrumbs, clusters, False) }
 
     % if leader:
       <h2 class="card-heading simple simpler">
-        <div class="pull-right"><a href="${url('zookeeper:clients', id=cluster['id'], host=leader['host'])}"><i class="icon-eye-open"></i> ${_('Client Connections')}</a></div>
+        <div class="pull-right"><a href="${url('zookeeper:clients', id=cluster['id'], host=leader['host'])}"><i class="fa fa-eye"></i> ${_('Client Connections')}</a></div>
         ${ _('Node') } ${leader['host']} (${ _('leader') })
       </h2>
 
@@ -145,7 +145,7 @@ ${ shared.header(_breadcrumbs, clusters, False) }
 
     % for stats in followers:
       <h2 class="card-heading simple simpler">
-        <div class="pull-right"><a href="${url('zookeeper:clients', id=cluster['id'], host=stats['host'])}"><i class="icon-eye-open"></i> ${ _('Client Connections') }</a></div>
+        <div class="pull-right"><a href="${url('zookeeper:clients', id=cluster['id'], host=stats['host'])}"><i class="fa fa-eye"></i> ${ _('Client Connections') }</a></div>
       ${ _('Node') } ${stats['host']} (${ _('follower') })
       </h2>
       <table class="table">

+ 3 - 3
desktop/core/src/desktop/templates/500.mako

@@ -30,10 +30,10 @@ ${ commonheader(_('Error'), "", user) | n,unicode }
           <p>${_("Sorry, there's been an error. An email was sent to your administrators. Thank you for your patience.")}</p>
           <div class="details">
           % if traceback:
-            <a href="javascript:toggleDisplay('#traceback');" title="${ _('See the stacktrace') }"><i class="icon-share-alt"></i> ${_('More Info')}</a>
+            <a href="javascript:toggleDisplay('#traceback');" title="${ _('See the stacktrace') }"><i class="fa fa-share"></i> ${_('More Info')}</a>
             % if user.is_superuser:
               &nbsp;
-              <a href="/logs" target="_new" title="${ _('View server logs') }"><i class="icon-tasks"></i> ${_('View Logs')}</a>
+              <a href="/logs" target="_new" title="${ _('View server logs') }"><i class="fa fa-tasks"></i> ${_('View Logs')}</a>
             % endif
             <br />
             <br />
@@ -59,7 +59,7 @@ ${ commonheader(_('Error'), "", user) | n,unicode }
             </div>
           % else:
             % if user.is_superuser:
-              <a href="/logs" target="_new" title="${ _('View server logs') }"><i class="icon-tasks"></i> ${_('View Logs')}</a>
+              <a href="/logs" target="_new" title="${ _('View server logs') }"><i class="fa fa-tasks"></i> ${_('View Logs')}</a>
             % endif
           % endif
           </div>

+ 2 - 2
desktop/core/src/desktop/templates/common_footer.mako

@@ -187,13 +187,13 @@ from django.template.defaultfilters import escape, escapejs
       <h3>${_('Did you know?')}</h3>
     </div>
     <div class="modal-body">
-      <div class="pull-left" style="color: #DDDDDD;font-size: 116px;margin: 10px; margin-right: 20px"><i class="icon-flag-checkered"></i></div>
+      <div class="pull-left" style="color: #DDDDDD;font-size: 116px;margin: 10px; margin-right: 20px"><i class="fa fa-flag-checkered"></i></div>
       <div style="margin: 10px">
       <p>
         ${_('There is one or more tours available for this page. These tours were created to guide you around.')}
       </p>
       <p>
-        ${_('You can see the list of the tours by clicking on the checkered flag icon on top right of this page.')} <span class="badge badge-info"><i class="icon-flag-checkered"></i></span>
+        ${_('You can see the list of the tours by clicking on the checkered flag icon on top right of this page.')} <span class="badge badge-info"><i class="fa fa-flag-checkered"></i></span>
       </p>
         </div>
     </div>

+ 8 - 8
desktop/core/src/desktop/templates/common_header.mako

@@ -243,29 +243,29 @@ from django.utils.translation import ugettext as _
   <ul class="nav nav-pills">
     <li class="divider-vertical"></li>
     % if 'filebrowser' in apps:
-    <li><a title="${_('Manage HDFS')}" rel="navigator-tooltip" href="/${apps['filebrowser'].display_name}"><i class="icon-file"></i>&nbsp;${_('File Browser')}&nbsp;</a></li>
+    <li><a title="${_('Manage HDFS')}" rel="navigator-tooltip" href="/${apps['filebrowser'].display_name}"><i class="fa fa-file"></i>&nbsp;${_('File Browser')}&nbsp;</a></li>
     % endif
     % if 'jobbrowser' in apps:
-    <li><a title="${_('Manage jobs')}" rel="navigator-tooltip" href="/${apps['jobbrowser'].display_name}"><i class="icon-list-alt"></i>&nbsp;${_('Job Browser')}&nbsp;<span id="jobBrowserCount" class="badge badge-warning hide" style="padding-top:0;padding-bottom: 0"></span></a></li>
+    <li><a title="${_('Manage jobs')}" rel="navigator-tooltip" href="/${apps['jobbrowser'].display_name}"><i class="fa fa-list-alt"></i>&nbsp;${_('Job Browser')}&nbsp;<span id="jobBrowserCount" class="badge badge-warning hide" style="padding-top:0;padding-bottom: 0"></span></a></li>
     % endif
     <li class="dropdown">
-      <a title="${ _('Administration') }" rel="navigator-tooltip" href="index.html#" data-toggle="dropdown" class="dropdown-toggle"><i class="icon-cogs"></i>&nbsp;&nbsp;${user.username}<b class="caret"></b></a>
+      <a title="${ _('Administration') }" rel="navigator-tooltip" href="index.html#" data-toggle="dropdown" class="dropdown-toggle"><i class="fa fa-cogs"></i>&nbsp;&nbsp;${user.username}<b class="caret"></b></a>
       <ul class="dropdown-menu">
-        <li><a href="${ url('useradmin.views.edit_user', username=urllib.quote(user.username)) }"><i class="icon-key"></i>&nbsp;&nbsp;${_('Edit Profile')}</a></li>
+        <li><a href="${ url('useradmin.views.edit_user', username=urllib.quote(user.username)) }"><i class="fa fa-key"></i>&nbsp;&nbsp;${_('Edit Profile')}</a></li>
         %if user.is_superuser:
-        <li><a href="${ url('useradmin.views.list_users') }"><i class="icon-group"></i>&nbsp;&nbsp;${_('Manage users')}</a></li>
+        <li><a href="${ url('useradmin.views.list_users') }"><i class="fa fa-group"></i>&nbsp;&nbsp;${_('Manage users')}</a></li>
         %endif
       </ul>
     </li>
-    <li><a title="${_('Documentation')}" rel="navigator-tooltip" href="/help"><i class="icon-question-sign"></i></a></li>
+    <li><a title="${_('Documentation')}" rel="navigator-tooltip" href="/help"><i class="fa fa-question-circle"></i></a></li>
     <li id="jHueTourFlagPlaceholder"></li>
-    <li><a title="${_('Sign out')}" rel="navigator-tooltip" href="/accounts/logout/"><i class="icon-signout"></i></a></li>
+    <li><a title="${_('Sign out')}" rel="navigator-tooltip" href="/accounts/logout/"><i class="fa fa-sign-out"></i></a></li>
   </ul>
       % endif
   </div>
     <a class="brand nav-tooltip pull-left" title="${_('About Hue')}" rel="navigator-tooltip" href="/about"><img src="/static/art/hue-logo-mini-white.png" data-orig="/static/art/hue-logo-mini-white.png" data-hover="/static/art/hue-logo-mini-white-hover.png"/></a>
      <ul class="nav nav-pills pull-left">
-       <li><a title="${_('My documents')}" rel="navigator-tooltip" href="/home" style="padding-bottom:2px!important"><i class="icon-home" style="font-size: 19px"></i></a></li>
+       <li><a title="${_('My documents')}" rel="navigator-tooltip" href="/home" style="padding-bottom:2px!important"><i class="fa fa-home" style="font-size: 19px"></i></a></li>
        <li class="dropdown">
          <a title="${_('Query data')}" rel="navigator-tooltip" href="#" data-toggle="dropdown" class="dropdown-toggle">${_('Query Editors')} <b class="caret"></b></a>
          <ul role="menu" class="dropdown-menu">

+ 1 - 1
desktop/core/src/desktop/templates/config_alert_dock.mako

@@ -19,6 +19,6 @@ from django.utils.translation import ugettext as _
 
 % if error_list:
   <a href="${url('about:index')}" title="${_('Misconfiguration detected')}" alt="${_('Misconfiguration detected')}">
-    <i class="icon-warning-sign" style="color:#B94A48"></i>
+    <i class="fa fa-exclamation-triangle" style="color:#B94A48"></i>
   </a>
 % endif

+ 18 - 18
desktop/core/src/desktop/templates/home.mako

@@ -91,7 +91,7 @@ ${ commonheader(_('Welcome Home'), "home", user) | n,unicode }
          <ul class="nav nav-list">
           <li class="nav-header">${_('Actions')}</li>
            <li class="dropdown">
-              <a href="#" data-toggle="dropdown"><i class="icon-plus-sign"></i> ${_('New document')}</a>
+              <a href="#" data-toggle="dropdown"><i class="fa fa-plus-circle"></i> ${_('New document')}</a>
               <ul class="dropdown-menu" role="menu">
                 % if 'beeswax' in apps:
                 <li><a href="${ url('beeswax:index') }"><img src="${ apps['beeswax'].icon_path }"/> ${_('Hive Query')}</a></li>
@@ -115,12 +115,12 @@ ${ commonheader(_('Welcome Home'), "home", user) | n,unicode }
               </ul>
            </li>
            <li class="view-trash toggable-section">
-             <a href="javascript:void(0)"><i class="icon-trash"></i> ${_('Trash')} <span id="trashCounter" class="badge pull-right">0</span></a>
+             <a href="javascript:void(0)"><i class="fa fa-trash-o"></i> ${_('Trash')} <span id="trashCounter" class="badge pull-right">0</span></a>
            </li>
            <li class="viewHistory toggable-section">
-             <a href="javascript:void(0)"><i class="icon-time"></i> ${_('History')} <span id="historyCounter" class="badge pull-right">0</span></a>
+             <a href="javascript:void(0)"><i class="fa fa-clock-o"></i> ${_('History')} <span id="historyCounter" class="badge pull-right">0</span></a>
            </li>
-          <li class="nav-header tag-header">${_('Projects')} <div class="edit-tags" style="display: inline;cursor: pointer;margin-left: 6px" title="${ _('Edit projects') }"><i class="icon-tags"></i></div> </li>
+          <li class="nav-header tag-header">${_('Projects')} <div class="edit-tags" style="display: inline;cursor: pointer;margin-left: 6px" title="${ _('Edit projects') }"><i class="fa fa-tags"></i></div> </li>
           % if len(tags) > 2:
             % for tag in tags:
               % if tag.tag not in ('trash', 'history'):
@@ -128,7 +128,7 @@ ${ commonheader(_('Welcome Home'), "home", user) | n,unicode }
               % endif
             % endfor
           % else:
-            <li><a href="javascript:void(0)" class="edit-tags" style="line-height:24px"><i class="icon-plus-sign"></i> ${_('There are currently no projects. Click here to add one now!')}</a></li>
+            <li><a href="javascript:void(0)" class="edit-tags" style="line-height:24px"><i class="fa fa-plus-circle"></i> ${_('There are currently no projects. Click here to add one now!')}</a></li>
           % endif
         </ul>
       </div>
@@ -175,7 +175,7 @@ ${ commonheader(_('Welcome Home'), "home", user) | n,unicode }
       <div style="margin-top: 20px">
         <div class="input-append">
           <input id="documentTagsNew" type="text">
-          <a id="documentTagsNewBtn" class="btn" type="button"><i class="icon-plus-sign"></i> ${_('Add')}</a>
+          <a id="documentTagsNewBtn" class="btn" type="button"><i class="fa fa-plus-circle"></i> ${_('Add')}</a>
         </div>
       </div>
     </p>
@@ -198,7 +198,7 @@ ${ commonheader(_('Welcome Home'), "home", user) | n,unicode }
       <div style="margin-top: 20px">
         <div class="input-append">
           <input id="tagsNew" type="text">
-          <a id="tagsNewBtn" class="btn" type="button"><i class="icon-plus-sign"></i> ${_('Add')}</a>
+          <a id="tagsNewBtn" class="btn" type="button"><i class="fa fa-plus-circle"></i> ${_('Add')}</a>
         </div>
       </div>
     </p>
@@ -223,7 +223,7 @@ ${ commonheader(_('Welcome Home'), "home", user) | n,unicode }
       <div style="margin-top: 20px">
         <div class="input-append">
           <input id="documentShareAdd" type="text" class="input-large" placeholder="${_('You can type a username or a group')}">
-          <a id="documentShareAddBtn" class="btn" type="button"><i class="icon-plus-sign"></i> ${_('Add')}</a>
+          <a id="documentShareAddBtn" class="btn" type="button"><i class="fa fa-plus-circle"></i> ${_('Add')}</a>
         </div>
       </div>
     </p>
@@ -271,7 +271,7 @@ $(document).ready(function () {
         return items.sort();
       },
       highlighter: function (item) {
-        var _icon = map[item].username ? "icon-user" : "icon-group";
+        var _icon = map[item].username ? "fa fa-user" : "fa fa-group";
         var regex = new RegExp('(' + this.query + ')', 'gi');
         return "<i class='" + _icon + "'></i> " + item.replace(regex, "<strong>$1</strong>");
       },
@@ -439,7 +439,7 @@ $(document).ready(function () {
     var _tags = "";
     for (var i = 0; i < JSON_TAGS.length; i++) {
       if (!JSON_TAGS[i].isTrash && !JSON_TAGS[i].isHistory && !JSON_TAGS[i].isExample) {
-        _tags += '<div style="margin-right:10px;margin-bottom: 6px;float:left;"><span class="tags-modal-checkbox badge" data-value="' + JSON_TAGS[i].id + '"><i class="icon-trash hide"></i> ' + JSON_TAGS[i].name + '</span></div>';
+        _tags += '<div style="margin-right:10px;margin-bottom: 6px;float:left;"><span class="tags-modal-checkbox badge" data-value="' + JSON_TAGS[i].id + '"><i class="fa fa-trash-o hide"></i> ' + JSON_TAGS[i].name + '</span></div>';
       }
     }
     $("#tagsModalList").html(_tags);
@@ -454,7 +454,7 @@ $(document).ready(function () {
       for (var i = 0; i < JSON_TAGS.length; i++) {
         if (!JSON_TAGS[i].isTrash && !JSON_TAGS[i].isHistory && !JSON_TAGS[i].isExample) {
           var _inTags = isInTags(_doc, JSON_TAGS[i].name);
-          _tags += '<div style="margin-right:10px;margin-bottom: 6px;float:left;"><span class="document-tags-modal-checkbox badge' + (_inTags ? ' badge-info selected' : '') + '" data-value="' + JSON_TAGS[i].id + '"><i class="icon-ok-sign' + (_inTags ? '' : ' hide') + '"></i> ' + JSON_TAGS[i].name + '</span></div>';
+          _tags += '<div style="margin-right:10px;margin-bottom: 6px;float:left;"><span class="document-tags-modal-checkbox badge' + (_inTags ? ' badge-info selected' : '') + '" data-value="' + JSON_TAGS[i].id + '"><i class="fa fa-check-circle' + (_inTags ? '' : ' hide') + '"></i> ' + JSON_TAGS[i].name + '</span></div>';
         }
       }
       $("#documentTagsModalList").html(_tags);
@@ -506,11 +506,11 @@ $(document).ready(function () {
     var _this = $(this);
     if (_this.hasClass("selected")) {
       _this.removeClass("selected").removeClass("badge-info");
-      _this.find(".icon-ok-sign").addClass("hide");
+      _this.find(".fa-check-circle").addClass("hide");
     }
     else {
       _this.addClass("selected").addClass("badge-info");
-      _this.find(".icon-ok-sign").removeClass("hide");
+      _this.find(".fa-check-circle").removeClass("hide");
     }
   });
 
@@ -524,11 +524,11 @@ $(document).ready(function () {
     var _this = $(this);
     if (_this.hasClass("selected")) {
       _this.removeClass("selected").removeClass("badge-important");
-      _this.find(".icon-trash").addClass("hide");
+      _this.find(".fa-trash-o").addClass("hide");
     }
     else {
       _this.addClass("selected").addClass("badge-important");
-      _this.find(".icon-trash").removeClass("hide");
+      _this.find(".fa-trash-o").removeClass("hide");
     }
   });
 
@@ -646,9 +646,9 @@ $(document).ready(function () {
     for (var id in shareList) {
       if (shareList.hasOwnProperty(id)) {
         var _obj = shareList[id];
-        var _icon = _obj.username != null ? "icon-user" : "icon-group";
+        var _icon = _obj.username != null ? "fa fa-user" : "fa fa-group";
         var _label = _obj.username != null ? _obj.username : _obj.name;
-        _html += '<li data-object-id="' + _obj.id + '"><span class="badge badge-left"><i class="' + _icon + '"></i> ' + _label + '</span><span class="badge badge-important badge-right trash-share"><i class="icon-trash"></i></span></li>';
+        _html += '<li data-object-id="' + _obj.id + '"><span class="badge badge-left"><i class="' + _icon + '"></i> ' + _label + '</span><span class="badge badge-important badge-right trash-share"><i class="fa fa-trash-o"></i></span></li>';
       }
     }
     if (_html != "") {
@@ -771,7 +771,7 @@ function addRow(doc) {
       '<div class="documentTags" data-document-id="' + doc.id + '">' + _tags + '</div>',
       emptyStringIfNull(doc.owner),
       emptyStringIfNull(doc.lastModified),
-      '<a href="#" class="shareDocument" data-document-id="' + doc.id + '" rel="tooltip" title="${_('Share')} ' + doc.name + '" data-placement="left" style="padding-left:10px"><i class="icon-share-sign"></i></a>',
+      '<a href="#" class="shareDocument" data-document-id="' + doc.id + '" rel="tooltip" title="${_('Share')} ' + doc.name + '" data-placement="left" style="padding-left:10px"><i class="fa fa-share-square-o"></i></a>',
     ], false);
     $("td", documentsTable.fnGetNodes(_addedRow[0]))[5].setAttribute("data-sort-value", doc.lastModifiedInMillis); // a bit of black magic.
   }

+ 5 - 5
desktop/core/src/desktop/templates/login.mako

@@ -116,7 +116,7 @@ from django.utils.translation import ugettext as _
                                                        data-orig="/static/art/hue-logo-mini-white.png"
                                                        data-hover="/static/art/hue-logo-mini-white-hover.png"/></a>
   <ul class="nav nav-pills pull-left hide" id="visit">
-    <li><a title="${_('Visit gethue.com')}" href="http://gethue.com">${_('Fell asleep? Visit us on gethue.com instead!')} <i class="icon-external-link-sign"></i></a></li>
+    <li><a title="${_('Visit gethue.com')}" href="http://gethue.com">${_('Fell asleep? Visit us on gethue.com instead!')} <i class="fa fa-external-link-circle"></i></a></li>
   </ul>
 </div>
 
@@ -131,7 +131,7 @@ from django.utils.translation import ugettext as _
           % if backend_name == 'OAuthBackend':
             class="hide"
           % endif
-            ><i class="icon-user"></i> ${_('Username')}
+            ><i class="fa fa-user"></i> ${_('Username')}
           ${ form['username'] | n,unicode }
           ${ form['username'].errors | n,unicode }
         </label>
@@ -139,20 +139,20 @@ from django.utils.translation import ugettext as _
           % if backend_name in ('AllowAllBackend', 'OAuthBackend'):
             class="hide"
           % endif
-            ><i class="icon-lock"></i> ${_('Password')}
+            ><i class="fa fa-lock"></i> ${_('Password')}
           ${ form['password'] | n,unicode }
           ${ form['password'].errors | n,unicode }
         </label>
 
         %if login_errors:
             <div class="alert alert-error" style="text-align: center">
-              <strong><i class="icon-warning-sign"></i> ${_('Error!')}</strong> ${_('Invalid username or password.')}
+              <strong><i class="fa fa-exclamation-triangle"></i> ${_('Error!')}</strong> ${_('Invalid username or password.')}
             </div>
         %endif
 
         %if first_login_ever:
             <div class="alert alert-block">
-              <i class="icon-warning-sign"></i>
+              <i class="fa fa-exclamation-triangle"></i>
             ${_('Since this is your first time logging in, pick any username and password. Be sure to remember these, as')}
               <strong>${_('they will become your Hue superuser credentials.')}</strong>.
             </div>

+ 1 - 1
desktop/core/src/desktop/templates/logs.mako

@@ -69,7 +69,7 @@ ${layout.menubar(section='log_view')}
       </%def>
       <%def name="creation()">
         <label class="checkbox" style="display: inline-block; margin-right: 10px"><input id="wrapLogs" type="checkbox" checked="checked">${_('Wrap logs')}</label>
-        <a href="/download_logs" class="btn"><i class="icon-download-alt"></i> ${_('Download entire log as zip')}</a>
+        <a href="/download_logs" class="btn"><i class="fa fa-download"></i> ${_('Download entire log as zip')}</a>
       </%def>
     </%actionbar:render>
 

+ 1 - 1
desktop/core/src/desktop/templates/popup_error.mako

@@ -41,7 +41,7 @@ ${ commonheader(title, "", user, "40px") | n,unicode }
 
               <div class="details">
       % if traceback:
-        <a href="javascript:toggleDisplay('#traceback');"><i class="icon-share-alt"></i> ${_('More Info')}</a>
+        <a href="javascript:toggleDisplay('#traceback');"><i class="fa fa-share"></i> ${_('More Info')}</a>
         &nbsp;
         <a href="/logs" target="_new">${_('View Logs')}</a>
         <br />

+ 395 - 402
desktop/core/static/ext/css/font-awesome.min.css

@@ -1,402 +1,395 @@
-@font-face{font-family:'FontAwesome';src:url('../font/fontawesome-webfont.eot?v=3.2.0');src:url('../font/fontawesome-webfont.eot?#iefix&v=3.2.0') format('embedded-opentype'),url('../font/fontawesome-webfont.woff?v=3.2.0') format('woff'),url('../font/fontawesome-webfont.ttf?v=3.2.0') format('truetype'),url('../font/fontawesome-webfont.svg#fontawesomeregular?v=3.2.0') format('svg');font-weight:normal;font-style:normal;}[class^="icon-"],[class*=" icon-"]{font-family:FontAwesome;font-weight:normal;font-style:normal;text-decoration:inherit;-webkit-font-smoothing:antialiased;*margin-right:.3em;}
-[class^="icon-"]:before,[class*=" icon-"]:before{text-decoration:inherit;display:inline-block;cursor:default;speak:none;}
-.icon-large:before{vertical-align:-10%;font-size:1.3333333333333333em;}
-a [class^="icon-"],a [class*=" icon-"]{display:inline;}
-[class^="icon-"].icon-fixed-width,[class*=" icon-"].icon-fixed-width{display:inline-block;width:1.1428571428571428em;text-align:right;padding-right:0.2857142857142857em;}[class^="icon-"].icon-fixed-width.icon-large,[class*=" icon-"].icon-fixed-width.icon-large{width:1.4285714285714286em;}
-.icons-ul{margin-left:2.142857142857143em;list-style-type:none;}.icons-ul>li{position:relative;}
-.icons-ul .icon-li{position:absolute;left:-2.142857142857143em;width:2.142857142857143em;text-align:center;line-height:inherit;}
-[class^="icon-"].hide,[class*=" icon-"].hide{display:none;}
-.icon-muted{color:#eeeeee;}
-.icon-light{color:#ffffff;}
-.icon-dark{color:#333333;}
-.icon-border{border:solid 1px #eeeeee;padding:.2em .25em .15em;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;}
-.icon-2x{font-size:2em;}.icon-2x.icon-border{border-width:2px;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;}
-.icon-3x{font-size:3em;}.icon-3x.icon-border{border-width:3px;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px;}
-.icon-4x{font-size:4em;}.icon-4x.icon-border{border-width:4px;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px;}
-.icon-5x{font-size:5em;}.icon-5x.icon-border{border-width:5px;-webkit-border-radius:7px;-moz-border-radius:7px;border-radius:7px;}
-.pull-right{float:right;}
-.pull-left{float:left;}
-[class^="icon-"].pull-left,[class*=" icon-"].pull-left{margin-right:.3em;}
-[class^="icon-"].pull-right,[class*=" icon-"].pull-right{margin-left:.3em;}
-[class^="icon-"],[class*=" icon-"]{display:inline;width:auto;height:auto;line-height:normal;vertical-align:baseline;background-image:none;background-position:0% 0%;background-repeat:repeat;margin-top:0;}
-.icon-white,.nav-pills>.active>a>[class^="icon-"],.nav-pills>.active>a>[class*=" icon-"],.nav-list>.active>a>[class^="icon-"],.nav-list>.active>a>[class*=" icon-"],.navbar-inverse .nav>.active>a>[class^="icon-"],.navbar-inverse .nav>.active>a>[class*=" icon-"],.dropdown-menu>li>a:hover>[class^="icon-"],.dropdown-menu>li>a:hover>[class*=" icon-"],.dropdown-menu>.active>a>[class^="icon-"],.dropdown-menu>.active>a>[class*=" icon-"],.dropdown-submenu:hover>a>[class^="icon-"],.dropdown-submenu:hover>a>[class*=" icon-"]{background-image:none;}
-.btn [class^="icon-"].icon-large,.nav [class^="icon-"].icon-large,.btn [class*=" icon-"].icon-large,.nav [class*=" icon-"].icon-large{line-height:.9em;}
-.btn [class^="icon-"].icon-spin,.nav [class^="icon-"].icon-spin,.btn [class*=" icon-"].icon-spin,.nav [class*=" icon-"].icon-spin{display:inline-block;}
-.nav-tabs [class^="icon-"],.nav-pills [class^="icon-"],.nav-tabs [class*=" icon-"],.nav-pills [class*=" icon-"],.nav-tabs [class^="icon-"].icon-large,.nav-pills [class^="icon-"].icon-large,.nav-tabs [class*=" icon-"].icon-large,.nav-pills [class*=" icon-"].icon-large{line-height:.9em;}
-.btn [class^="icon-"].pull-left.icon-2x,.btn [class*=" icon-"].pull-left.icon-2x,.btn [class^="icon-"].pull-right.icon-2x,.btn [class*=" icon-"].pull-right.icon-2x{margin-top:.18em;}
-.btn [class^="icon-"].icon-spin.icon-large,.btn [class*=" icon-"].icon-spin.icon-large{line-height:.8em;}
-.btn.btn-small [class^="icon-"].pull-left.icon-2x,.btn.btn-small [class*=" icon-"].pull-left.icon-2x,.btn.btn-small [class^="icon-"].pull-right.icon-2x,.btn.btn-small [class*=" icon-"].pull-right.icon-2x{margin-top:.25em;}
-.btn.btn-large [class^="icon-"],.btn.btn-large [class*=" icon-"]{margin-top:0;}.btn.btn-large [class^="icon-"].pull-left.icon-2x,.btn.btn-large [class*=" icon-"].pull-left.icon-2x,.btn.btn-large [class^="icon-"].pull-right.icon-2x,.btn.btn-large [class*=" icon-"].pull-right.icon-2x{margin-top:.05em;}
-.btn.btn-large [class^="icon-"].pull-left.icon-2x,.btn.btn-large [class*=" icon-"].pull-left.icon-2x{margin-right:.2em;}
-.btn.btn-large [class^="icon-"].pull-right.icon-2x,.btn.btn-large [class*=" icon-"].pull-right.icon-2x{margin-left:.2em;}
-.icon-stack{position:relative;display:inline-block;width:2em;height:2em;line-height:2em;vertical-align:-35%;}.icon-stack [class^="icon-"],.icon-stack [class*=" icon-"]{display:block;text-align:center;position:absolute;width:100%;height:100%;font-size:1em;line-height:inherit;*line-height:2em;}
-.icon-stack .icon-stack-base{font-size:2em;*line-height:1em;}
-.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;}
-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-rotate-90:before{-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);}
-.icon-rotate-180:before{-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);}
-.icon-rotate-270:before{-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);}
-.icon-flip-horizontal:before{-webkit-transform:scale(-1, 1);-moz-transform:scale(-1, 1);-ms-transform:scale(-1, 1);-o-transform:scale(-1, 1);transform:scale(-1, 1);}
-.icon-flip-vertical:before{-webkit-transform:scale(1, -1);-moz-transform:scale(1, -1);-ms-transform:scale(1, -1);-o-transform:scale(1, -1);transform:scale(1, -1);}
-a .icon-rotate-90:before,a .icon-rotate-180:before,a .icon-rotate-270:before,a .icon-flip-horizontal:before,a .icon-flip-vertical:before{display:inline-block;}
-.icon-glass:before{content:"\f000";}
-.icon-music:before{content:"\f001";}
-.icon-search:before{content:"\f002";}
-.icon-envelope-alt:before{content:"\f003";}
-.icon-heart:before{content:"\f004";}
-.icon-star:before{content:"\f005";}
-.icon-star-empty:before{content:"\f006";}
-.icon-user:before{content:"\f007";}
-.icon-film:before{content:"\f008";}
-.icon-th-large:before{content:"\f009";}
-.icon-th:before{content:"\f00a";}
-.icon-th-list:before{content:"\f00b";}
-.icon-ok:before{content:"\f00c";}
-.icon-remove:before{content:"\f00d";}
-.icon-zoom-in:before{content:"\f00e";}
-.icon-zoom-out:before{content:"\f010";}
-.icon-power-off:before,.icon-off:before{content:"\f011";}
-.icon-signal:before{content:"\f012";}
-.icon-cog:before{content:"\f013";}
-.icon-trash:before{content:"\f014";}
-.icon-home:before{content:"\f015";}
-.icon-file-alt:before{content:"\f016";}
-.icon-time:before{content:"\f017";}
-.icon-road:before{content:"\f018";}
-.icon-download-alt:before{content:"\f019";}
-.icon-download:before{content:"\f01a";}
-.icon-upload:before{content:"\f01b";}
-.icon-inbox:before{content:"\f01c";}
-.icon-play-circle:before{content:"\f01d";}
-.icon-rotate-right:before,.icon-repeat:before{content:"\f01e";}
-.icon-refresh:before{content:"\f021";}
-.icon-list-alt:before{content:"\f022";}
-.icon-lock:before{content:"\f023";}
-.icon-flag:before{content:"\f024";}
-.icon-headphones:before{content:"\f025";}
-.icon-volume-off:before{content:"\f026";}
-.icon-volume-down:before{content:"\f027";}
-.icon-volume-up:before{content:"\f028";}
-.icon-qrcode:before{content:"\f029";}
-.icon-barcode:before{content:"\f02a";}
-.icon-tag:before{content:"\f02b";}
-.icon-tags:before{content:"\f02c";}
-.icon-book:before{content:"\f02d";}
-.icon-bookmark:before{content:"\f02e";}
-.icon-print:before{content:"\f02f";}
-.icon-camera:before{content:"\f030";}
-.icon-font:before{content:"\f031";}
-.icon-bold:before{content:"\f032";}
-.icon-italic:before{content:"\f033";}
-.icon-text-height:before{content:"\f034";}
-.icon-text-width:before{content:"\f035";}
-.icon-align-left:before{content:"\f036";}
-.icon-align-center:before{content:"\f037";}
-.icon-align-right:before{content:"\f038";}
-.icon-align-justify:before{content:"\f039";}
-.icon-list:before{content:"\f03a";}
-.icon-indent-left:before{content:"\f03b";}
-.icon-indent-right:before{content:"\f03c";}
-.icon-facetime-video:before{content:"\f03d";}
-.icon-picture:before{content:"\f03e";}
-.icon-pencil:before{content:"\f040";}
-.icon-map-marker:before{content:"\f041";}
-.icon-adjust:before{content:"\f042";}
-.icon-tint:before{content:"\f043";}
-.icon-edit:before{content:"\f044";}
-.icon-share:before{content:"\f045";}
-.icon-check:before{content:"\f046";}
-.icon-move:before{content:"\f047";}
-.icon-step-backward:before{content:"\f048";}
-.icon-fast-backward:before{content:"\f049";}
-.icon-backward:before{content:"\f04a";}
-.icon-play:before{content:"\f04b";}
-.icon-pause:before{content:"\f04c";}
-.icon-stop:before{content:"\f04d";}
-.icon-forward:before{content:"\f04e";}
-.icon-fast-forward:before{content:"\f050";}
-.icon-step-forward:before{content:"\f051";}
-.icon-eject:before{content:"\f052";}
-.icon-chevron-left:before{content:"\f053";}
-.icon-chevron-right:before{content:"\f054";}
-.icon-plus-sign:before{content:"\f055";}
-.icon-minus-sign:before{content:"\f056";}
-.icon-remove-sign:before{content:"\f057";}
-.icon-ok-sign:before{content:"\f058";}
-.icon-question-sign:before{content:"\f059";}
-.icon-info-sign:before{content:"\f05a";}
-.icon-screenshot:before{content:"\f05b";}
-.icon-remove-circle:before{content:"\f05c";}
-.icon-ok-circle:before{content:"\f05d";}
-.icon-ban-circle:before{content:"\f05e";}
-.icon-arrow-left:before{content:"\f060";}
-.icon-arrow-right:before{content:"\f061";}
-.icon-arrow-up:before{content:"\f062";}
-.icon-arrow-down:before{content:"\f063";}
-.icon-mail-forward:before,.icon-share-alt:before{content:"\f064";}
-.icon-resize-full:before{content:"\f065";}
-.icon-resize-small:before{content:"\f066";}
-.icon-plus:before{content:"\f067";}
-.icon-minus:before{content:"\f068";}
-.icon-asterisk:before{content:"\f069";}
-.icon-exclamation-sign:before{content:"\f06a";}
-.icon-gift:before{content:"\f06b";}
-.icon-leaf:before{content:"\f06c";}
-.icon-fire:before{content:"\f06d";}
-.icon-eye-open:before{content:"\f06e";}
-.icon-eye-close:before{content:"\f070";}
-.icon-warning-sign:before{content:"\f071";}
-.icon-plane:before{content:"\f072";}
-.icon-calendar:before{content:"\f073";}
-.icon-random:before{content:"\f074";}
-.icon-comment:before{content:"\f075";}
-.icon-magnet:before{content:"\f076";}
-.icon-chevron-up:before{content:"\f077";}
-.icon-chevron-down:before{content:"\f078";}
-.icon-retweet:before{content:"\f079";}
-.icon-shopping-cart:before{content:"\f07a";}
-.icon-folder-close:before{content:"\f07b";}
-.icon-folder-open:before{content:"\f07c";}
-.icon-resize-vertical:before{content:"\f07d";}
-.icon-resize-horizontal:before{content:"\f07e";}
-.icon-bar-chart:before{content:"\f080";}
-.icon-twitter-sign:before{content:"\f081";}
-.icon-facebook-sign:before{content:"\f082";}
-.icon-camera-retro:before{content:"\f083";}
-.icon-key:before{content:"\f084";}
-.icon-cogs:before{content:"\f085";}
-.icon-comments:before{content:"\f086";}
-.icon-thumbs-up-alt:before{content:"\f087";}
-.icon-thumbs-down-alt:before{content:"\f088";}
-.icon-star-half:before{content:"\f089";}
-.icon-heart-empty:before{content:"\f08a";}
-.icon-signout:before{content:"\f08b";}
-.icon-linkedin-sign:before{content:"\f08c";}
-.icon-pushpin:before{content:"\f08d";}
-.icon-external-link:before{content:"\f08e";}
-.icon-signin:before{content:"\f090";}
-.icon-trophy:before{content:"\f091";}
-.icon-github-sign:before{content:"\f092";}
-.icon-upload-alt:before{content:"\f093";}
-.icon-lemon:before{content:"\f094";}
-.icon-phone:before{content:"\f095";}
-.icon-unchecked:before,.icon-check-empty:before{content:"\f096";}
-.icon-bookmark-empty:before{content:"\f097";}
-.icon-phone-sign:before{content:"\f098";}
-.icon-twitter:before{content:"\f099";}
-.icon-facebook:before{content:"\f09a";}
-.icon-github:before{content:"\f09b";}
-.icon-unlock:before{content:"\f09c";}
-.icon-credit-card:before{content:"\f09d";}
-.icon-rss:before{content:"\f09e";}
-.icon-hdd:before{content:"\f0a0";}
-.icon-bullhorn:before{content:"\f0a1";}
-.icon-bell:before{content:"\f0a2";}
-.icon-certificate:before{content:"\f0a3";}
-.icon-hand-right:before{content:"\f0a4";}
-.icon-hand-left:before{content:"\f0a5";}
-.icon-hand-up:before{content:"\f0a6";}
-.icon-hand-down:before{content:"\f0a7";}
-.icon-circle-arrow-left:before{content:"\f0a8";}
-.icon-circle-arrow-right:before{content:"\f0a9";}
-.icon-circle-arrow-up:before{content:"\f0aa";}
-.icon-circle-arrow-down:before{content:"\f0ab";}
-.icon-globe:before{content:"\f0ac";}
-.icon-wrench:before{content:"\f0ad";}
-.icon-tasks:before{content:"\f0ae";}
-.icon-filter:before{content:"\f0b0";}
-.icon-briefcase:before{content:"\f0b1";}
-.icon-fullscreen:before{content:"\f0b2";}
-.icon-group:before{content:"\f0c0";}
-.icon-link:before{content:"\f0c1";}
-.icon-cloud:before{content:"\f0c2";}
-.icon-beaker:before{content:"\f0c3";}
-.icon-cut:before{content:"\f0c4";}
-.icon-copy:before{content:"\f0c5";}
-.icon-paperclip:before,.icon-paper-clip:before{content:"\f0c6";}
-.icon-save:before{content:"\f0c7";}
-.icon-sign-blank:before{content:"\f0c8";}
-.icon-reorder:before{content:"\f0c9";}
-.icon-list-ul:before{content:"\f0ca";}
-.icon-list-ol:before{content:"\f0cb";}
-.icon-strikethrough:before{content:"\f0cc";}
-.icon-underline:before{content:"\f0cd";}
-.icon-table:before{content:"\f0ce";}
-.icon-magic:before{content:"\f0d0";}
-.icon-truck:before{content:"\f0d1";}
-.icon-pinterest:before{content:"\f0d2";}
-.icon-pinterest-sign:before{content:"\f0d3";}
-.icon-google-plus-sign:before{content:"\f0d4";}
-.icon-google-plus:before{content:"\f0d5";}
-.icon-money:before{content:"\f0d6";}
-.icon-caret-down:before{content:"\f0d7";}
-.icon-caret-up:before{content:"\f0d8";}
-.icon-caret-left:before{content:"\f0d9";}
-.icon-caret-right:before{content:"\f0da";}
-.icon-columns:before{content:"\f0db";}
-.icon-sort:before{content:"\f0dc";}
-.icon-sort-down:before{content:"\f0dd";}
-.icon-sort-up:before{content:"\f0de";}
-.icon-envelope:before{content:"\f0e0";}
-.icon-linkedin:before{content:"\f0e1";}
-.icon-rotate-left:before,.icon-undo:before{content:"\f0e2";}
-.icon-legal:before{content:"\f0e3";}
-.icon-dashboard:before{content:"\f0e4";}
-.icon-comment-alt:before{content:"\f0e5";}
-.icon-comments-alt:before{content:"\f0e6";}
-.icon-bolt:before{content:"\f0e7";}
-.icon-sitemap:before{content:"\f0e8";}
-.icon-umbrella:before{content:"\f0e9";}
-.icon-paste:before{content:"\f0ea";}
-.icon-lightbulb:before{content:"\f0eb";}
-.icon-exchange:before{content:"\f0ec";}
-.icon-cloud-download:before{content:"\f0ed";}
-.icon-cloud-upload:before{content:"\f0ee";}
-.icon-user-md:before{content:"\f0f0";}
-.icon-stethoscope:before{content:"\f0f1";}
-.icon-suitcase:before{content:"\f0f2";}
-.icon-bell-alt:before{content:"\f0f3";}
-.icon-coffee:before{content:"\f0f4";}
-.icon-food:before{content:"\f0f5";}
-.icon-file-text-alt:before{content:"\f0f6";}
-.icon-building:before{content:"\f0f7";}
-.icon-hospital:before{content:"\f0f8";}
-.icon-ambulance:before{content:"\f0f9";}
-.icon-medkit:before{content:"\f0fa";}
-.icon-fighter-jet:before{content:"\f0fb";}
-.icon-beer:before{content:"\f0fc";}
-.icon-h-sign:before{content:"\f0fd";}
-.icon-plus-sign-alt:before{content:"\f0fe";}
-.icon-double-angle-left:before{content:"\f100";}
-.icon-double-angle-right:before{content:"\f101";}
-.icon-double-angle-up:before{content:"\f102";}
-.icon-double-angle-down:before{content:"\f103";}
-.icon-angle-left:before{content:"\f104";}
-.icon-angle-right:before{content:"\f105";}
-.icon-angle-up:before{content:"\f106";}
-.icon-angle-down:before{content:"\f107";}
-.icon-desktop:before{content:"\f108";}
-.icon-laptop:before{content:"\f109";}
-.icon-tablet:before{content:"\f10a";}
-.icon-mobile-phone:before{content:"\f10b";}
-.icon-circle-blank:before{content:"\f10c";}
-.icon-quote-left:before{content:"\f10d";}
-.icon-quote-right:before{content:"\f10e";}
-.icon-spinner:before{content:"\f110";}
-.icon-circle:before{content:"\f111";}
-.icon-mail-reply:before,.icon-reply:before{content:"\f112";}
-.icon-github-alt:before{content:"\f113";}
-.icon-folder-close-alt:before{content:"\f114";}
-.icon-folder-open-alt:before{content:"\f115";}
-.icon-expand-alt:before{content:"\f116";}
-.icon-collapse-alt:before{content:"\f117";}
-.icon-smile:before{content:"\f118";}
-.icon-frown:before{content:"\f119";}
-.icon-meh:before{content:"\f11a";}
-.icon-gamepad:before{content:"\f11b";}
-.icon-keyboard:before{content:"\f11c";}
-.icon-flag-alt:before{content:"\f11d";}
-.icon-flag-checkered:before{content:"\f11e";}
-.icon-terminal:before{content:"\f120";}
-.icon-code:before{content:"\f121";}
-.icon-reply-all:before{content:"\f122";}
-.icon-mail-reply-all:before{content:"\f122";}
-.icon-star-half-full:before,.icon-star-half-empty:before{content:"\f123";}
-.icon-location-arrow:before{content:"\f124";}
-.icon-crop:before{content:"\f125";}
-.icon-code-fork:before{content:"\f126";}
-.icon-unlink:before{content:"\f127";}
-.icon-question:before{content:"\f128";}
-.icon-info:before{content:"\f129";}
-.icon-exclamation:before{content:"\f12a";}
-.icon-superscript:before{content:"\f12b";}
-.icon-subscript:before{content:"\f12c";}
-.icon-eraser:before{content:"\f12d";}
-.icon-puzzle-piece:before{content:"\f12e";}
-.icon-microphone:before{content:"\f130";}
-.icon-microphone-off:before{content:"\f131";}
-.icon-shield:before{content:"\f132";}
-.icon-calendar-empty:before{content:"\f133";}
-.icon-fire-extinguisher:before{content:"\f134";}
-.icon-rocket:before{content:"\f135";}
-.icon-maxcdn:before{content:"\f136";}
-.icon-chevron-sign-left:before{content:"\f137";}
-.icon-chevron-sign-right:before{content:"\f138";}
-.icon-chevron-sign-up:before{content:"\f139";}
-.icon-chevron-sign-down:before{content:"\f13a";}
-.icon-html5:before{content:"\f13b";}
-.icon-css3:before{content:"\f13c";}
-.icon-anchor:before{content:"\f13d";}
-.icon-unlock-alt:before{content:"\f13e";}
-.icon-bullseye:before{content:"\f140";}
-.icon-ellipsis-horizontal:before{content:"\f141";}
-.icon-ellipsis-vertical:before{content:"\f142";}
-.icon-rss-sign:before{content:"\f143";}
-.icon-play-sign:before{content:"\f144";}
-.icon-ticket:before{content:"\f145";}
-.icon-minus-sign-alt:before{content:"\f146";}
-.icon-check-minus:before{content:"\f147";}
-.icon-level-up:before{content:"\f148";}
-.icon-level-down:before{content:"\f149";}
-.icon-check-sign:before{content:"\f14a";}
-.icon-edit-sign:before{content:"\f14b";}
-.icon-external-link-sign:before{content:"\f14c";}
-.icon-share-sign:before{content:"\f14d";}
-.icon-compass:before{content:"\f14e";}
-.icon-collapse:before{content:"\f150";}
-.icon-collapse-top:before{content:"\f151";}
-.icon-expand:before{content:"\f152";}
-.icon-euro:before,.icon-eur:before{content:"\f153";}
-.icon-gbp:before{content:"\f154";}
-.icon-dollar:before,.icon-usd:before{content:"\f155";}
-.icon-rupee:before,.icon-inr:before{content:"\f156";}
-.icon-yen:before,.icon-jpy:before{content:"\f157";}
-.icon-renminbi:before,.icon-cny:before{content:"\f158";}
-.icon-won:before,.icon-krw:before{content:"\f159";}
-.icon-bitcoin:before,.icon-btc:before{content:"\f15a";}
-.icon-file:before{content:"\f15b";}
-.icon-file-text:before{content:"\f15c";}
-.icon-sort-by-alphabet:before{content:"\f15d";}
-.icon-sort-by-alphabet-alt:before{content:"\f15e";}
-.icon-sort-by-attributes:before{content:"\f160";}
-.icon-sort-by-attributes-alt:before{content:"\f161";}
-.icon-sort-by-order:before{content:"\f162";}
-.icon-sort-by-order-alt:before{content:"\f163";}
-.icon-thumbs-up:before{content:"\f164";}
-.icon-thumbs-down:before{content:"\f165";}
-.icon-youtube-sign:before{content:"\f166";}
-.icon-youtube:before{content:"\f167";}
-.icon-xing:before{content:"\f168";}
-.icon-xing-sign:before{content:"\f169";}
-.icon-youtube-play:before{content:"\f16a";}
-.icon-dropbox:before{content:"\f16b";}
-.icon-stackexchange:before{content:"\f16c";}
-.icon-instagram:before{content:"\f16d";}
-.icon-flickr:before{content:"\f16e";}
-.icon-adn:before{content:"\f170";}
-.icon-bitbucket:before{content:"\f171";}
-.icon-bitbucket-sign:before{content:"\f172";}
-.icon-tumblr:before{content:"\f173";}
-.icon-tumblr-sign:before{content:"\f174";}
-.icon-long-arrow-down:before{content:"\f175";}
-.icon-long-arrow-up:before{content:"\f176";}
-.icon-long-arrow-left:before{content:"\f177";}
-.icon-long-arrow-right:before{content:"\f178";}
-.icon-apple:before{content:"\f179";}
-.icon-windows:before{content:"\f17a";}
-.icon-android:before{content:"\f17b";}
-.icon-linux:before{content:"\f17c";}
-.icon-dribble:before{content:"\f17d";}
-.icon-skype:before{content:"\f17e";}
-.icon-foursquare:before{content:"\f180";}
-.icon-trello:before{content:"\f181";}
-.icon-female:before{content:"\f182";}
-.icon-male:before{content:"\f183";}
-.icon-gittip:before{content:"\f184";}
-.icon-sun:before{content:"\f185";}
-.icon-moon:before{content:"\f186";}
-.icon-archive:before{content:"\f187";}
-.icon-bug:before{content:"\f188";}
-.icon-vk:before{content:"\f189";}
-.icon-weibo:before{content:"\f18a";}
-.icon-renren:before{content:"\f18b";}
+@font-face{font-family:'FontAwesome';src:url('../fonts/fontawesome-webfont.eot?v=4.0.1');src:url('../fonts/fontawesome-webfont.eot?#iefix&v=4.0.1') format('embedded-opentype'),url('../fonts/fontawesome-webfont.woff?v=4.0.1') format('woff'),url('../fonts/fontawesome-webfont.ttf?v=4.0.1') format('truetype'),url('../fonts/fontawesome-webfont.svg?v=4.0.1#fontawesomeregular') format('svg');font-weight:normal;font-style:normal}.fa{display:inline-block;font-family:FontAwesome;font-style:normal;font-weight:normal;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
+.fa-lg{font-size:1.3333333333333333em;line-height:.75em;vertical-align:-15%}
+.fa-2x{font-size:2em}
+.fa-3x{font-size:3em}
+.fa-4x{font-size:4em}
+.fa-5x{font-size:5em}
+.fa-fw{width:1.2857142857142858em;text-align:center}
+.fa-ul{padding-left:0;margin-left:2.142857142857143em;list-style-type:none}.fa-ul>li{position:relative}
+.fa-li{position:absolute;left:-2.142857142857143em;width:2.142857142857143em;top:.14285714285714285em;text-align:center}.fa-li.fa-lg{left:-1.8571428571428572em}
+.fa-border{padding:.2em .25em .15em;border:solid .08em #eee;border-radius:.1em}
+.pull-right{float:right}
+.pull-left{float:left}
+.fa.pull-left{margin-right:.3em}
+.fa.pull-right{margin-left:.3em}
+.fa-spin{-webkit-animation:spin 2s infinite linear;-moz-animation:spin 2s infinite linear;-o-animation:spin 2s infinite linear;animation:spin 2s infinite linear}
+@-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)}}.fa-rotate-90{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=1);-webkit-transform:rotate(90deg);-moz-transform:rotate(90deg);-ms-transform:rotate(90deg);-o-transform:rotate(90deg);transform:rotate(90deg)}
+.fa-rotate-180{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=2);-webkit-transform:rotate(180deg);-moz-transform:rotate(180deg);-ms-transform:rotate(180deg);-o-transform:rotate(180deg);transform:rotate(180deg)}
+.fa-rotate-270{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=3);-webkit-transform:rotate(270deg);-moz-transform:rotate(270deg);-ms-transform:rotate(270deg);-o-transform:rotate(270deg);transform:rotate(270deg)}
+.fa-flip-horizontal{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1);-webkit-transform:scale(-1, 1);-moz-transform:scale(-1, 1);-ms-transform:scale(-1, 1);-o-transform:scale(-1, 1);transform:scale(-1, 1)}
+.fa-flip-vertical{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1);-webkit-transform:scale(1, -1);-moz-transform:scale(1, -1);-ms-transform:scale(1, -1);-o-transform:scale(1, -1);transform:scale(1, -1)}
+.fa-stack{position:relative;display:inline-block;width:2em;height:2em;line-height:2em;vertical-align:middle}
+.fa-stack-1x,.fa-stack-2x{position:absolute;left:0;width:100%;text-align:center}
+.fa-stack-1x{line-height:inherit}
+.fa-stack-2x{font-size:2em}
+.fa-inverse{color:#fff}
+.fa-glass:before{content:"\f000"}
+.fa-music:before{content:"\f001"}
+.fa-search:before{content:"\f002"}
+.fa-envelope-o:before{content:"\f003"}
+.fa-heart:before{content:"\f004"}
+.fa-star:before{content:"\f005"}
+.fa-star-o:before{content:"\f006"}
+.fa-user:before{content:"\f007"}
+.fa-film:before{content:"\f008"}
+.fa-th-large:before{content:"\f009"}
+.fa-th:before{content:"\f00a"}
+.fa-th-list:before{content:"\f00b"}
+.fa-check:before{content:"\f00c"}
+.fa-times:before{content:"\f00d"}
+.fa-search-plus:before{content:"\f00e"}
+.fa-search-minus:before{content:"\f010"}
+.fa-power-off:before{content:"\f011"}
+.fa-signal:before{content:"\f012"}
+.fa-gear:before,.fa-cog:before{content:"\f013"}
+.fa-trash-o:before{content:"\f014"}
+.fa-home:before{content:"\f015"}
+.fa-file-o:before{content:"\f016"}
+.fa-clock-o:before{content:"\f017"}
+.fa-road:before{content:"\f018"}
+.fa-download:before{content:"\f019"}
+.fa-arrow-circle-o-down:before{content:"\f01a"}
+.fa-arrow-circle-o-up:before{content:"\f01b"}
+.fa-inbox:before{content:"\f01c"}
+.fa-play-circle-o:before{content:"\f01d"}
+.fa-rotate-right:before,.fa-repeat:before{content:"\f01e"}
+.fa-refresh:before{content:"\f021"}
+.fa-list-alt:before{content:"\f022"}
+.fa-lock:before{content:"\f023"}
+.fa-flag:before{content:"\f024"}
+.fa-headphones:before{content:"\f025"}
+.fa-volume-off:before{content:"\f026"}
+.fa-volume-down:before{content:"\f027"}
+.fa-volume-up:before{content:"\f028"}
+.fa-qrcode:before{content:"\f029"}
+.fa-barcode:before{content:"\f02a"}
+.fa-tag:before{content:"\f02b"}
+.fa-tags:before{content:"\f02c"}
+.fa-book:before{content:"\f02d"}
+.fa-bookmark:before{content:"\f02e"}
+.fa-print:before{content:"\f02f"}
+.fa-camera:before{content:"\f030"}
+.fa-font:before{content:"\f031"}
+.fa-bold:before{content:"\f032"}
+.fa-italic:before{content:"\f033"}
+.fa-text-height:before{content:"\f034"}
+.fa-text-width:before{content:"\f035"}
+.fa-align-left:before{content:"\f036"}
+.fa-align-center:before{content:"\f037"}
+.fa-align-right:before{content:"\f038"}
+.fa-align-justify:before{content:"\f039"}
+.fa-list:before{content:"\f03a"}
+.fa-dedent:before,.fa-outdent:before{content:"\f03b"}
+.fa-indent:before{content:"\f03c"}
+.fa-video-camera:before{content:"\f03d"}
+.fa-picture-o:before{content:"\f03e"}
+.fa-pencil:before{content:"\f040"}
+.fa-map-marker:before{content:"\f041"}
+.fa-adjust:before{content:"\f042"}
+.fa-tint:before{content:"\f043"}
+.fa-edit:before,.fa-pencil-square-o:before{content:"\f044"}
+.fa-share-square-o:before{content:"\f045"}
+.fa-check-square-o:before{content:"\f046"}
+.fa-move:before{content:"\f047"}
+.fa-step-backward:before{content:"\f048"}
+.fa-fast-backward:before{content:"\f049"}
+.fa-backward:before{content:"\f04a"}
+.fa-play:before{content:"\f04b"}
+.fa-pause:before{content:"\f04c"}
+.fa-stop:before{content:"\f04d"}
+.fa-forward:before{content:"\f04e"}
+.fa-fast-forward:before{content:"\f050"}
+.fa-step-forward:before{content:"\f051"}
+.fa-eject:before{content:"\f052"}
+.fa-chevron-left:before{content:"\f053"}
+.fa-chevron-right:before{content:"\f054"}
+.fa-plus-circle:before{content:"\f055"}
+.fa-minus-circle:before{content:"\f056"}
+.fa-times-circle:before{content:"\f057"}
+.fa-check-circle:before{content:"\f058"}
+.fa-question-circle:before{content:"\f059"}
+.fa-info-circle:before{content:"\f05a"}
+.fa-crosshairs:before{content:"\f05b"}
+.fa-times-circle-o:before{content:"\f05c"}
+.fa-check-circle-o:before{content:"\f05d"}
+.fa-ban:before{content:"\f05e"}
+.fa-arrow-left:before{content:"\f060"}
+.fa-arrow-right:before{content:"\f061"}
+.fa-arrow-up:before{content:"\f062"}
+.fa-arrow-down:before{content:"\f063"}
+.fa-mail-forward:before,.fa-share:before{content:"\f064"}
+.fa-resize-full:before{content:"\f065"}
+.fa-resize-small:before{content:"\f066"}
+.fa-plus:before{content:"\f067"}
+.fa-minus:before{content:"\f068"}
+.fa-asterisk:before{content:"\f069"}
+.fa-exclamation-circle:before{content:"\f06a"}
+.fa-gift:before{content:"\f06b"}
+.fa-leaf:before{content:"\f06c"}
+.fa-fire:before{content:"\f06d"}
+.fa-eye:before{content:"\f06e"}
+.fa-eye-slash:before{content:"\f070"}
+.fa-warning:before,.fa-exclamation-triangle:before{content:"\f071"}
+.fa-plane:before{content:"\f072"}
+.fa-calendar:before{content:"\f073"}
+.fa-random:before{content:"\f074"}
+.fa-comment:before{content:"\f075"}
+.fa-magnet:before{content:"\f076"}
+.fa-chevron-up:before{content:"\f077"}
+.fa-chevron-down:before{content:"\f078"}
+.fa-retweet:before{content:"\f079"}
+.fa-shopping-cart:before{content:"\f07a"}
+.fa-folder:before{content:"\f07b"}
+.fa-folder-open:before{content:"\f07c"}
+.fa-resize-vertical:before{content:"\f07d"}
+.fa-resize-horizontal:before{content:"\f07e"}
+.fa-bar-chart-o:before{content:"\f080"}
+.fa-twitter-square:before{content:"\f081"}
+.fa-facebook-square:before{content:"\f082"}
+.fa-camera-retro:before{content:"\f083"}
+.fa-key:before{content:"\f084"}
+.fa-gears:before,.fa-cogs:before{content:"\f085"}
+.fa-comments:before{content:"\f086"}
+.fa-thumbs-o-up:before{content:"\f087"}
+.fa-thumbs-o-down:before{content:"\f088"}
+.fa-star-half:before{content:"\f089"}
+.fa-heart-o:before{content:"\f08a"}
+.fa-sign-out:before{content:"\f08b"}
+.fa-linkedin-square:before{content:"\f08c"}
+.fa-thumb-tack:before{content:"\f08d"}
+.fa-external-link:before{content:"\f08e"}
+.fa-sign-in:before{content:"\f090"}
+.fa-trophy:before{content:"\f091"}
+.fa-github-square:before{content:"\f092"}
+.fa-upload:before{content:"\f093"}
+.fa-lemon-o:before{content:"\f094"}
+.fa-phone:before{content:"\f095"}
+.fa-square-o:before{content:"\f096"}
+.fa-bookmark-o:before{content:"\f097"}
+.fa-phone-square:before{content:"\f098"}
+.fa-twitter:before{content:"\f099"}
+.fa-facebook:before{content:"\f09a"}
+.fa-github:before{content:"\f09b"}
+.fa-unlock:before{content:"\f09c"}
+.fa-credit-card:before{content:"\f09d"}
+.fa-rss:before{content:"\f09e"}
+.fa-hdd-o:before{content:"\f0a0"}
+.fa-bullhorn:before{content:"\f0a1"}
+.fa-bell:before{content:"\f0f3"}
+.fa-certificate:before{content:"\f0a3"}
+.fa-hand-o-right:before{content:"\f0a4"}
+.fa-hand-o-left:before{content:"\f0a5"}
+.fa-hand-o-up:before{content:"\f0a6"}
+.fa-hand-o-down:before{content:"\f0a7"}
+.fa-arrow-circle-left:before{content:"\f0a8"}
+.fa-arrow-circle-right:before{content:"\f0a9"}
+.fa-arrow-circle-up:before{content:"\f0aa"}
+.fa-arrow-circle-down:before{content:"\f0ab"}
+.fa-globe:before{content:"\f0ac"}
+.fa-wrench:before{content:"\f0ad"}
+.fa-tasks:before{content:"\f0ae"}
+.fa-filter:before{content:"\f0b0"}
+.fa-briefcase:before{content:"\f0b1"}
+.fa-fullscreen:before{content:"\f0b2"}
+.fa-group:before{content:"\f0c0"}
+.fa-chain:before,.fa-link:before{content:"\f0c1"}
+.fa-cloud:before{content:"\f0c2"}
+.fa-flask:before{content:"\f0c3"}
+.fa-cut:before,.fa-scissors:before{content:"\f0c4"}
+.fa-copy:before,.fa-files-o:before{content:"\f0c5"}
+.fa-paperclip:before{content:"\f0c6"}
+.fa-save:before,.fa-floppy-o:before{content:"\f0c7"}
+.fa-square:before{content:"\f0c8"}
+.fa-reorder:before{content:"\f0c9"}
+.fa-list-ul:before{content:"\f0ca"}
+.fa-list-ol:before{content:"\f0cb"}
+.fa-strikethrough:before{content:"\f0cc"}
+.fa-underline:before{content:"\f0cd"}
+.fa-table:before{content:"\f0ce"}
+.fa-magic:before{content:"\f0d0"}
+.fa-truck:before{content:"\f0d1"}
+.fa-pinterest:before{content:"\f0d2"}
+.fa-pinterest-square:before{content:"\f0d3"}
+.fa-google-plus-square:before{content:"\f0d4"}
+.fa-google-plus:before{content:"\f0d5"}
+.fa-money:before{content:"\f0d6"}
+.fa-caret-down:before{content:"\f0d7"}
+.fa-caret-up:before{content:"\f0d8"}
+.fa-caret-left:before{content:"\f0d9"}
+.fa-caret-right:before{content:"\f0da"}
+.fa-columns:before{content:"\f0db"}
+.fa-unsorted:before,.fa-sort:before{content:"\f0dc"}
+.fa-sort-down:before,.fa-sort-asc:before{content:"\f0dd"}
+.fa-sort-up:before,.fa-sort-desc:before{content:"\f0de"}
+.fa-envelope:before{content:"\f0e0"}
+.fa-linkedin:before{content:"\f0e1"}
+.fa-rotate-left:before,.fa-undo:before{content:"\f0e2"}
+.fa-legal:before,.fa-gavel:before{content:"\f0e3"}
+.fa-dashboard:before,.fa-tachometer:before{content:"\f0e4"}
+.fa-comment-o:before{content:"\f0e5"}
+.fa-comments-o:before{content:"\f0e6"}
+.fa-flash:before,.fa-bolt:before{content:"\f0e7"}
+.fa-sitemap:before{content:"\f0e8"}
+.fa-umbrella:before{content:"\f0e9"}
+.fa-paste:before,.fa-clipboard:before{content:"\f0ea"}
+.fa-lightbulb-o:before{content:"\f0eb"}
+.fa-exchange:before{content:"\f0ec"}
+.fa-cloud-download:before{content:"\f0ed"}
+.fa-cloud-upload:before{content:"\f0ee"}
+.fa-user-md:before{content:"\f0f0"}
+.fa-stethoscope:before{content:"\f0f1"}
+.fa-suitcase:before{content:"\f0f2"}
+.fa-bell-o:before{content:"\f0a2"}
+.fa-coffee:before{content:"\f0f4"}
+.fa-cutlery:before{content:"\f0f5"}
+.fa-file-text-o:before{content:"\f0f6"}
+.fa-building:before{content:"\f0f7"}
+.fa-hospital:before{content:"\f0f8"}
+.fa-ambulance:before{content:"\f0f9"}
+.fa-medkit:before{content:"\f0fa"}
+.fa-fighter-jet:before{content:"\f0fb"}
+.fa-beer:before{content:"\f0fc"}
+.fa-h-square:before{content:"\f0fd"}
+.fa-plus-square:before{content:"\f0fe"}
+.fa-angle-double-left:before{content:"\f100"}
+.fa-angle-double-right:before{content:"\f101"}
+.fa-angle-double-up:before{content:"\f102"}
+.fa-angle-double-down:before{content:"\f103"}
+.fa-angle-left:before{content:"\f104"}
+.fa-angle-right:before{content:"\f105"}
+.fa-angle-up:before{content:"\f106"}
+.fa-angle-down:before{content:"\f107"}
+.fa-desktop:before{content:"\f108"}
+.fa-laptop:before{content:"\f109"}
+.fa-tablet:before{content:"\f10a"}
+.fa-mobile-phone:before,.fa-mobile:before{content:"\f10b"}
+.fa-circle-o:before{content:"\f10c"}
+.fa-quote-left:before{content:"\f10d"}
+.fa-quote-right:before{content:"\f10e"}
+.fa-spinner:before{content:"\f110"}
+.fa-circle:before{content:"\f111"}
+.fa-mail-reply:before,.fa-reply:before{content:"\f112"}
+.fa-github-alt:before{content:"\f113"}
+.fa-folder-o:before{content:"\f114"}
+.fa-folder-open-o:before{content:"\f115"}
+.fa-expand-o:before{content:"\f116"}
+.fa-collapse-o:before{content:"\f117"}
+.fa-smile-o:before{content:"\f118"}
+.fa-frown-o:before{content:"\f119"}
+.fa-meh-o:before{content:"\f11a"}
+.fa-gamepad:before{content:"\f11b"}
+.fa-keyboard-o:before{content:"\f11c"}
+.fa-flag-o:before{content:"\f11d"}
+.fa-flag-checkered:before{content:"\f11e"}
+.fa-terminal:before{content:"\f120"}
+.fa-code:before{content:"\f121"}
+.fa-reply-all:before{content:"\f122"}
+.fa-mail-reply-all:before{content:"\f122"}
+.fa-star-half-empty:before,.fa-star-half-full:before,.fa-star-half-o:before{content:"\f123"}
+.fa-location-arrow:before{content:"\f124"}
+.fa-crop:before{content:"\f125"}
+.fa-code-fork:before{content:"\f126"}
+.fa-unlink:before,.fa-chain-broken:before{content:"\f127"}
+.fa-question:before{content:"\f128"}
+.fa-info:before{content:"\f129"}
+.fa-exclamation:before{content:"\f12a"}
+.fa-superscript:before{content:"\f12b"}
+.fa-subscript:before{content:"\f12c"}
+.fa-eraser:before{content:"\f12d"}
+.fa-puzzle-piece:before{content:"\f12e"}
+.fa-microphone:before{content:"\f130"}
+.fa-microphone-slash:before{content:"\f131"}
+.fa-shield:before{content:"\f132"}
+.fa-calendar-o:before{content:"\f133"}
+.fa-fire-extinguisher:before{content:"\f134"}
+.fa-rocket:before{content:"\f135"}
+.fa-maxcdn:before{content:"\f136"}
+.fa-chevron-circle-left:before{content:"\f137"}
+.fa-chevron-circle-right:before{content:"\f138"}
+.fa-chevron-circle-up:before{content:"\f139"}
+.fa-chevron-circle-down:before{content:"\f13a"}
+.fa-html5:before{content:"\f13b"}
+.fa-css3:before{content:"\f13c"}
+.fa-anchor:before{content:"\f13d"}
+.fa-unlock-o:before{content:"\f13e"}
+.fa-bullseye:before{content:"\f140"}
+.fa-ellipsis-horizontal:before{content:"\f141"}
+.fa-ellipsis-vertical:before{content:"\f142"}
+.fa-rss-square:before{content:"\f143"}
+.fa-play-circle:before{content:"\f144"}
+.fa-ticket:before{content:"\f145"}
+.fa-minus-square:before{content:"\f146"}
+.fa-minus-square-o:before{content:"\f147"}
+.fa-level-up:before{content:"\f148"}
+.fa-level-down:before{content:"\f149"}
+.fa-check-square:before{content:"\f14a"}
+.fa-pencil-square:before{content:"\f14b"}
+.fa-external-link-square:before{content:"\f14c"}
+.fa-share-square:before{content:"\f14d"}
+.fa-compass:before{content:"\f14e"}
+.fa-toggle-down:before,.fa-caret-square-o-down:before{content:"\f150"}
+.fa-toggle-up:before,.fa-caret-square-o-up:before{content:"\f151"}
+.fa-toggle-right:before,.fa-caret-square-o-right:before{content:"\f152"}
+.fa-euro:before,.fa-eur:before{content:"\f153"}
+.fa-gbp:before{content:"\f154"}
+.fa-dollar:before,.fa-usd:before{content:"\f155"}
+.fa-rupee:before,.fa-inr:before{content:"\f156"}
+.fa-cny:before,.fa-rmb:before,.fa-yen:before,.fa-jpy:before{content:"\f157"}
+.fa-ruble:before,.fa-rouble:before,.fa-rub:before{content:"\f158"}
+.fa-won:before,.fa-krw:before{content:"\f159"}
+.fa-bitcoin:before,.fa-btc:before{content:"\f15a"}
+.fa-file:before{content:"\f15b"}
+.fa-file-text:before{content:"\f15c"}
+.fa-sort-alpha-asc:before{content:"\f15d"}
+.fa-sort-alpha-desc:before{content:"\f15e"}
+.fa-sort-amount-asc:before{content:"\f160"}
+.fa-sort-amount-desc:before{content:"\f161"}
+.fa-sort-numeric-asc:before{content:"\f162"}
+.fa-sort-numeric-desc:before{content:"\f163"}
+.fa-thumbs-up:before{content:"\f164"}
+.fa-thumbs-down:before{content:"\f165"}
+.fa-youtube-square:before{content:"\f166"}
+.fa-youtube:before{content:"\f167"}
+.fa-xing:before{content:"\f168"}
+.fa-xing-square:before{content:"\f169"}
+.fa-youtube-play:before{content:"\f16a"}
+.fa-dropbox:before{content:"\f16b"}
+.fa-stack-overflow:before{content:"\f16c"}
+.fa-instagram:before{content:"\f16d"}
+.fa-flickr:before{content:"\f16e"}
+.fa-adn:before{content:"\f170"}
+.fa-bitbucket:before{content:"\f171"}
+.fa-bitbucket-square:before{content:"\f172"}
+.fa-tumblr:before{content:"\f173"}
+.fa-tumblr-square:before{content:"\f174"}
+.fa-long-arrow-down:before{content:"\f175"}
+.fa-long-arrow-up:before{content:"\f176"}
+.fa-long-arrow-left:before{content:"\f177"}
+.fa-long-arrow-right:before{content:"\f178"}
+.fa-apple:before{content:"\f179"}
+.fa-windows:before{content:"\f17a"}
+.fa-android:before{content:"\f17b"}
+.fa-linux:before{content:"\f17c"}
+.fa-dribbble:before{content:"\f17d"}
+.fa-skype:before{content:"\f17e"}
+.fa-foursquare:before{content:"\f180"}
+.fa-trello:before{content:"\f181"}
+.fa-female:before{content:"\f182"}
+.fa-male:before{content:"\f183"}
+.fa-gittip:before{content:"\f184"}
+.fa-sun-o:before{content:"\f185"}
+.fa-moon-o:before{content:"\f186"}
+.fa-archive:before{content:"\f187"}
+.fa-bug:before{content:"\f188"}
+.fa-vk:before{content:"\f189"}
+.fa-weibo:before{content:"\f18a"}
+.fa-renren:before{content:"\f18b"}
+.fa-pagelines:before{content:"\f18c"}
+.fa-stack-exchange:before{content:"\f18d"}
+.fa-arrow-circle-o-right:before{content:"\f18e"}
+.fa-arrow-circle-o-left:before{content:"\f190"}
+.fa-toggle-left:before,.fa-caret-square-o-left:before{content:"\f191"}
+.fa-dot-circle-o:before{content:"\f192"}
+.fa-wheelchair:before{content:"\f193"}
+.fa-vimeo-square:before{content:"\f194"}
+.fa-turkish-lira:before,.fa-try:before{content:"\f195"}

binární
desktop/core/static/ext/font/FontAwesome.otf


binární
desktop/core/static/ext/font/fontawesome-webfont.eot


binární
desktop/core/static/ext/font/fontawesome-webfont.woff


binární
desktop/core/static/ext/fonts/FontAwesome.otf


binární
desktop/core/static/ext/fonts/fontawesome-webfont.eot


+ 21 - 6
desktop/core/static/ext/font/fontawesome-webfont.svg → desktop/core/static/ext/fonts/fontawesome-webfont.svg

@@ -310,7 +310,7 @@
 <glyph unicode="&#xf133;" horiz-adv-x="1664" d="M128 -128h1408v1024h-1408v-1024zM512 1088v288q0 14 -9 23t-23 9h-64q-14 0 -23 -9t-9 -23v-288q0 -14 9 -23t23 -9h64q14 0 23 9t9 23zM1280 1088v288q0 14 -9 23t-23 9h-64q-14 0 -23 -9t-9 -23v-288q0 -14 9 -23t23 -9h64q14 0 23 9t9 23zM1664 1152v-1280 q0 -52 -38 -90t-90 -38h-1408q-52 0 -90 38t-38 90v1280q0 52 38 90t90 38h128v96q0 66 47 113t113 47h64q66 0 113 -47t47 -113v-96h384v96q0 66 47 113t113 47h64q66 0 113 -47t47 -113v-96h128q52 0 90 -38t38 -90z" />
 <glyph unicode="&#xf134;" horiz-adv-x="1408" d="M512 1344q0 26 -19 45t-45 19t-45 -19t-19 -45t19 -45t45 -19t45 19t19 45zM1408 1376v-320q0 -16 -12 -25q-8 -7 -20 -7q-4 0 -7 1l-448 96q-11 2 -18 11t-7 20h-256v-102q111 -23 183.5 -111t72.5 -203v-800q0 -26 -19 -45t-45 -19h-512q-26 0 -45 19t-19 45v800 q0 106 62.5 190.5t161.5 114.5v111h-32q-59 0 -115 -23.5t-91.5 -53t-66 -66.5t-40.5 -53.5t-14 -24.5q-17 -35 -57 -35q-16 0 -29 7q-23 12 -31.5 37t3.5 49q5 10 14.5 26t37.5 53.5t60.5 70t85 67t108.5 52.5q-25 42 -25 86q0 66 47 113t113 47t113 -47t47 -113 q0 -33 -14 -64h302q0 11 7 20t18 11l448 96q3 1 7 1q12 0 20 -7q12 -9 12 -25z" />
 <glyph unicode="&#xf135;" horiz-adv-x="1664" d="M1440 1088q0 40 -28 68t-68 28t-68 -28t-28 -68t28 -68t68 -28t68 28t28 68zM1664 1376q0 -249 -75.5 -430.5t-253.5 -360.5q-81 -80 -195 -176l-20 -379q-2 -16 -16 -26l-384 -224q-7 -4 -16 -4q-12 0 -23 9l-64 64q-13 14 -8 32l85 276l-281 281l-276 -85q-3 -1 -9 -1 q-14 0 -23 9l-64 64q-17 19 -5 39l224 384q10 14 26 16l379 20q96 114 176 195q188 187 358 258t431 71q14 0 24 -9.5t10 -22.5z" />
-<glyph unicode="&#xf136;" horiz-adv-x="1792" d="M1708 881l-188 -881h-304l181 849q4 21 1 43q-4 20 -16 35q-10 14 -28 24q-18 9 -40 9h-197l-205 -960h-303l204 960h-304l-205 -960h-304l272 1280h1139q157 0 245 -118q86 -116 52 -281z" />
+<glyph unicode="&#xf136;" horiz-adv-x="1792" d="M1745 763l-164 -763h-334l178 832q13 56 -15 88q-27 33 -83 33h-169l-204 -953h-334l204 953h-286l-204 -953h-334l204 953l-153 327h1276q101 0 189.5 -40.5t147.5 -113.5q60 -73 81 -168.5t0 -194.5z" />
 <glyph unicode="&#xf137;" d="M909 141l102 102q19 19 19 45t-19 45l-307 307l307 307q19 19 19 45t-19 45l-102 102q-19 19 -45 19t-45 -19l-454 -454q-19 -19 -19 -45t19 -45l454 -454q19 -19 45 -19t45 19zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5 t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" />
 <glyph unicode="&#xf138;" d="M717 141l454 454q19 19 19 45t-19 45l-454 454q-19 19 -45 19t-45 -19l-102 -102q-19 -19 -19 -45t19 -45l307 -307l-307 -307q-19 -19 -19 -45t19 -45l102 -102q19 -19 45 -19t45 19zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5 t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" />
 <glyph unicode="&#xf139;" d="M1165 397l102 102q19 19 19 45t-19 45l-454 454q-19 19 -45 19t-45 -19l-454 -454q-19 -19 -19 -45t19 -45l102 -102q19 -19 45 -19t45 19l307 307l307 -307q19 -19 45 -19t45 19zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5 t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" />
@@ -342,7 +342,7 @@
 <glyph unicode="&#xf155;" horiz-adv-x="1024" d="M978 351q0 -153 -99.5 -263.5t-258.5 -136.5v-175q0 -14 -9 -23t-23 -9h-135q-13 0 -22.5 9.5t-9.5 22.5v175q-66 9 -127.5 31t-101.5 44.5t-74 48t-46.5 37.5t-17.5 18q-17 21 -2 41l103 135q7 10 23 12q15 2 24 -9l2 -2q113 -99 243 -125q37 -8 74 -8q81 0 142.5 43 t61.5 122q0 28 -15 53t-33.5 42t-58.5 37.5t-66 32t-80 32.5q-39 16 -61.5 25t-61.5 26.5t-62.5 31t-56.5 35.5t-53.5 42.5t-43.5 49t-35.5 58t-21 66.5t-8.5 78q0 138 98 242t255 134v180q0 13 9.5 22.5t22.5 9.5h135q14 0 23 -9t9 -23v-176q57 -6 110.5 -23t87 -33.5 t63.5 -37.5t39 -29t15 -14q17 -18 5 -38l-81 -146q-8 -15 -23 -16q-14 -3 -27 7q-3 3 -14.5 12t-39 26.5t-58.5 32t-74.5 26t-85.5 11.5q-95 0 -155 -43t-60 -111q0 -26 8.5 -48t29.5 -41.5t39.5 -33t56 -31t60.5 -27t70 -27.5q53 -20 81 -31.5t76 -35t75.5 -42.5t62 -50 t53 -63.5t31.5 -76.5t13 -94z" />
 <glyph unicode="&#xf156;" horiz-adv-x="898" d="M898 1066v-102q0 -14 -9 -23t-23 -9h-168q-23 -144 -129 -234t-276 -110q167 -178 459 -536q14 -16 4 -34q-8 -18 -29 -18h-195q-16 0 -25 12q-306 367 -498 571q-9 9 -9 22v127q0 13 9.5 22.5t22.5 9.5h112q132 0 212.5 43t102.5 125h-427q-14 0 -23 9t-9 23v102 q0 14 9 23t23 9h413q-57 113 -268 113h-145q-13 0 -22.5 9.5t-9.5 22.5v133q0 14 9 23t23 9h832q14 0 23 -9t9 -23v-102q0 -14 -9 -23t-23 -9h-233q47 -61 64 -144h171q14 0 23 -9t9 -23z" />
 <glyph unicode="&#xf157;" horiz-adv-x="1027" d="M603 0h-172q-13 0 -22.5 9t-9.5 23v330h-288q-13 0 -22.5 9t-9.5 23v103q0 13 9.5 22.5t22.5 9.5h288v85h-288q-13 0 -22.5 9t-9.5 23v104q0 13 9.5 22.5t22.5 9.5h214l-321 578q-8 16 0 32q10 16 28 16h194q19 0 29 -18l215 -425q19 -38 56 -125q10 24 30.5 68t27.5 61 l191 420q8 19 29 19h191q17 0 27 -16q9 -14 1 -31l-313 -579h215q13 0 22.5 -9.5t9.5 -22.5v-104q0 -14 -9.5 -23t-22.5 -9h-290v-85h290q13 0 22.5 -9.5t9.5 -22.5v-103q0 -14 -9.5 -23t-22.5 -9h-290v-330q0 -13 -9.5 -22.5t-22.5 -9.5z" />
-<glyph unicode="&#xf158;" horiz-adv-x="1664" d="M1664 352v-32q0 -132 -94 -226t-226 -94h-128q-132 0 -226 94t-94 226v480h-224q-2 -102 -14.5 -190.5t-30.5 -156t-48.5 -126.5t-57 -99.5t-67.5 -77.5t-69.5 -58.5t-74 -44t-69 -32t-65.5 -25.5q-4 -2 -32 -13q-8 -2 -12 -2q-22 0 -30 20l-71 178q-5 13 0 25t17 17 q7 3 20 7.5t18 6.5q31 12 46.5 18.5t44.5 20t45.5 26t42 32.5t40.5 42.5t34.5 53.5t30.5 68.5t22.5 83.5t17 103t6.5 123h-256q-14 0 -23 9t-9 23v160q0 14 9 23t23 9h1216q14 0 23 -9t9 -23v-160q0 -14 -9 -23t-23 -9h-224v-512q0 -26 19 -45t45 -19h128q26 0 45 19t19 45 v64q0 14 9 23t23 9h192q14 0 23 -9t9 -23zM1280 1376v-160q0 -14 -9 -23t-23 -9h-960q-14 0 -23 9t-9 23v160q0 14 9 23t23 9h960q14 0 23 -9t9 -23z" />
+<glyph unicode="&#xf158;" horiz-adv-x="1280" d="M1043 971q0 100 -65 162t-171 62h-320v-448h320q106 0 171 62t65 162zM1280 971q0 -193 -126.5 -315t-326.5 -122h-340v-118h505q14 0 23 -9t9 -23v-128q0 -14 -9 -23t-23 -9h-505v-192q0 -14 -9.5 -23t-22.5 -9h-167q-14 0 -23 9t-9 23v192h-224q-14 0 -23 9t-9 23v128 q0 14 9 23t23 9h224v118h-224q-14 0 -23 9t-9 23v149q0 13 9 22.5t23 9.5h224v629q0 14 9 23t23 9h539q200 0 326.5 -122t126.5 -315z" />
 <glyph unicode="&#xf159;" horiz-adv-x="1792" d="M514 341l81 299h-159l75 -300q1 -1 1 -3t1 -3q0 1 0.5 3.5t0.5 3.5zM630 768l35 128h-292l32 -128h225zM822 768h139l-35 128h-70zM1271 340l78 300h-162l81 -299q0 -1 0.5 -3.5t1.5 -3.5q0 1 0.5 3t0.5 3zM1382 768l33 128h-297l34 -128h230zM1792 736v-64q0 -14 -9 -23 t-23 -9h-213l-164 -616q-7 -24 -31 -24h-159q-24 0 -31 24l-166 616h-209l-167 -616q-7 -24 -31 -24h-159q-11 0 -19.5 7t-10.5 17l-160 616h-208q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h175l-33 128h-142q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h109l-89 344q-5 15 5 28 q10 12 26 12h137q26 0 31 -24l90 -360h359l97 360q7 24 31 24h126q24 0 31 -24l98 -360h365l93 360q5 24 31 24h137q16 0 26 -12q10 -13 5 -28l-91 -344h111q14 0 23 -9t9 -23v-64q0 -14 -9 -23t-23 -9h-145l-34 -128h179q14 0 23 -9t9 -23z" />
 <glyph unicode="&#xf15a;" horiz-adv-x="1280" d="M1167 896q18 -182 -131 -258q117 -28 175 -103t45 -214q-7 -71 -32.5 -125t-64.5 -89t-97 -58.5t-121.5 -34.5t-145.5 -15v-255h-154v251q-80 0 -122 1v-252h-154v255q-18 0 -54 0.5t-55 0.5h-200l31 183h111q50 0 58 51v402h16q-6 1 -16 1v287q-13 68 -89 68h-111v164 l212 -1q64 0 97 1v252h154v-247q82 2 122 2v245h154v-252q79 -7 140 -22.5t113 -45t82.5 -78t36.5 -114.5zM952 351q0 36 -15 64t-37 46t-57.5 30.5t-65.5 18.5t-74 9t-69 3t-64.5 -1t-47.5 -1v-338q8 0 37 -0.5t48 -0.5t53 1.5t58.5 4t57 8.5t55.5 14t47.5 21t39.5 30 t24.5 40t9.5 51zM881 827q0 33 -12.5 58.5t-30.5 42t-48 28t-55 16.5t-61.5 8t-58 2.5t-54 -1t-39.5 -0.5v-307q5 0 34.5 -0.5t46.5 0t50 2t55 5.5t51.5 11t48.5 18.5t37 27t27 38.5t9 51z" />
 <glyph unicode="&#xf15b;" horiz-adv-x="1280" d="M1280 768v-800q0 -40 -28 -68t-68 -28h-1088q-40 0 -68 28t-28 68v1344q0 40 28 68t68 28h544v-544q0 -40 28 -68t68 -28h544zM1277 896h-509v509q82 -15 132 -65l312 -312q50 -50 65 -132z" />
@@ -390,10 +390,25 @@
 <glyph unicode="&#xf188;" horiz-adv-x="1664" d="M1632 576q0 -26 -19 -45t-45 -19h-224q0 -171 -67 -290l208 -209q19 -19 19 -45t-19 -45q-18 -19 -45 -19t-45 19l-198 197q-5 -5 -15 -13t-42 -28.5t-65 -36.5t-82 -29t-97 -13v896h-128v-896q-51 0 -101.5 13.5t-87 33t-66 39t-43.5 32.5l-15 14l-183 -207 q-20 -21 -48 -21q-24 0 -43 16q-19 18 -20.5 44.5t15.5 46.5l202 227q-58 114 -58 274h-224q-26 0 -45 19t-19 45t19 45t45 19h224v294l-173 173q-19 19 -19 45t19 45t45 19t45 -19l173 -173h844l173 173q19 19 45 19t45 -19t19 -45t-19 -45l-173 -173v-294h224q26 0 45 -19 t19 -45zM1152 1152h-640q0 133 93.5 226.5t226.5 93.5t226.5 -93.5t93.5 -226.5z" />
 <glyph unicode="&#xf189;" horiz-adv-x="1920" d="M1917 1016q23 -64 -150 -294q-24 -32 -65 -85q-78 -100 -90 -131q-17 -41 14 -81q17 -21 81 -82h1l1 -1l1 -1l2 -2q141 -131 191 -221q3 -5 6.5 -12.5t7 -26.5t-0.5 -34t-25 -27.5t-59 -12.5l-256 -4q-24 -5 -56 5t-52 22l-20 12q-30 21 -70 64t-68.5 77.5t-61 58 t-56.5 15.5q-3 -1 -8 -3.5t-17 -14.5t-21.5 -29.5t-17 -52t-6.5 -77.5q0 -15 -3.5 -27.5t-7.5 -18.5l-4 -5q-18 -19 -53 -22h-115q-71 -4 -146 16.5t-131.5 53t-103 66t-70.5 57.5l-25 24q-10 10 -27.5 30t-71.5 91t-106 151t-122.5 211t-130.5 272q-6 16 -6 27t3 16l4 6 q15 19 57 19l274 2q12 -2 23 -6.5t16 -8.5l5 -3q16 -11 24 -32q20 -50 46 -103.5t41 -81.5l16 -29q29 -60 56 -104t48.5 -68.5t41.5 -38.5t34 -14t27 5q2 1 5 5t12 22t13.5 47t9.5 81t0 125q-2 40 -9 73t-14 46l-6 12q-25 34 -85 43q-13 2 5 24q17 19 38 30q53 26 239 24 q82 -1 135 -13q20 -5 33.5 -13.5t20.5 -24t10.5 -32t3.5 -45.5t-1 -55t-2.5 -70.5t-1.5 -82.5q0 -11 -1 -42t-0.5 -48t3.5 -40.5t11.5 -39t22.5 -24.5q8 -2 17 -4t26 11t38 34.5t52 67t68 107.5q60 104 107 225q4 10 10 17.5t11 10.5l4 3l5 2.5t13 3t20 0.5l288 2 q39 5 64 -2.5t31 -16.5z" />
 <glyph unicode="&#xf18a;" horiz-adv-x="1792" d="M675 252q21 34 11 69t-45 50q-34 14 -73 1t-60 -46q-22 -34 -13 -68.5t43 -50.5t74.5 -2.5t62.5 47.5zM769 373q8 13 3.5 26.5t-17.5 18.5q-14 5 -28.5 -0.5t-21.5 -18.5q-17 -31 13 -45q14 -5 29 0.5t22 18.5zM943 266q-45 -102 -158 -150t-224 -12 q-107 34 -147.5 126.5t6.5 187.5q47 93 151.5 139t210.5 19q111 -29 158.5 -119.5t2.5 -190.5zM1255 426q-9 96 -89 170t-208.5 109t-274.5 21q-223 -23 -369.5 -141.5t-132.5 -264.5q9 -96 89 -170t208.5 -109t274.5 -21q223 23 369.5 141.5t132.5 264.5zM1563 422 q0 -68 -37 -139.5t-109 -137t-168.5 -117.5t-226 -83t-270.5 -31t-275 33.5t-240.5 93t-171.5 151t-65 199.5q0 115 69.5 245t197.5 258q169 169 341.5 236t246.5 -7q65 -64 20 -209q-4 -14 -1 -20t10 -7t14.5 0.5t13.5 3.5l6 2q139 59 246 59t153 -61q45 -63 0 -178 q-2 -13 -4.5 -20t4.5 -12.5t12 -7.5t17 -6q57 -18 103 -47t80 -81.5t34 -116.5zM1489 1046q42 -47 54.5 -108.5t-6.5 -117.5q-8 -23 -29.5 -34t-44.5 -4q-23 8 -34 29.5t-4 44.5q20 63 -24 111t-107 35q-24 -5 -45 8t-25 37q-5 24 8 44.5t37 25.5q60 13 119 -5.5t101 -65.5z M1670 1209q87 -96 112.5 -222.5t-13.5 -241.5q-9 -27 -34 -40t-52 -4t-40 34t-5 52q28 82 10 172t-80 158q-62 69 -148 95.5t-173 8.5q-28 -6 -52 9.5t-30 43.5t9.5 51.5t43.5 29.5q123 26 244 -11.5t208 -134.5z" />
-<glyph unicode="&#xf18b;" horiz-adv-x="1920" d="M805 163q-122 -67 -261 -67q-141 0 -261 67q98 61 167 149t94 191q25 -103 94 -191t167 -149zM453 1176v-344q0 -179 -89.5 -326t-234.5 -217q-129 152 -129 351q0 200 129.5 352t323.5 184zM958 991q-128 -152 -128 -351q0 -201 128 -351q-145 70 -234.5 218t-89.5 328 v341q196 -33 324 -185zM1638 163q-122 -67 -261 -67q-141 0 -261 67q98 61 167 149t94 191q25 -103 94 -191t167 -149zM1286 1176v-344q0 -179 -91 -326t-237 -217v0q133 154 133 351q0 195 -133 351q129 151 328 185zM1920 640q0 -201 -129 -351q-145 70 -234.5 218 t-89.5 328v341q194 -32 323.5 -184t129.5 -352z" />
-<glyph unicode="&#xf18c;" horiz-adv-x="1792" />
-<glyph unicode="&#xf18d;" horiz-adv-x="1792" />
-<glyph unicode="&#xf18e;" horiz-adv-x="1792" />
+<glyph unicode="&#xf18b;" d="M1133 -34q-171 -94 -368 -94q-196 0 -367 94q138 87 235.5 211t131.5 268q35 -144 132.5 -268t235.5 -211zM638 1394v-485q0 -252 -126.5 -459.5t-330.5 -306.5q-181 215 -181 495q0 187 83.5 349.5t229.5 269.5t325 137zM1536 638q0 -280 -181 -495 q-204 99 -330.5 306.5t-126.5 459.5v485q179 -30 325 -137t229.5 -269.5t83.5 -349.5z" />
+<glyph unicode="&#xf18c;" horiz-adv-x="1408" d="M1402 433q-32 -80 -76 -138t-91 -88.5t-99 -46.5t-101.5 -14.5t-96.5 8.5t-86.5 22t-69.5 27.5t-46 22.5l-17 10q-113 -228 -289.5 -359.5t-384.5 -132.5q-19 0 -32 13t-13 32t13 31.5t32 12.5q173 1 322.5 107.5t251.5 294.5q-36 -14 -72 -23t-83 -13t-91 2.5t-93 28.5 t-92 59t-84.5 100t-74.5 146q114 47 214 57t167.5 -7.5t124.5 -56.5t88.5 -77t56.5 -82q53 131 79 291q-7 -1 -18 -2.5t-46.5 -2.5t-69.5 0.5t-81.5 10t-88.5 23t-84 42.5t-75 65t-54.5 94.5t-28.5 127.5q70 28 133.5 36.5t112.5 -1t92 -30t73.5 -50t56 -61t42 -63t27.5 -56 t16 -39.5l4 -16q12 122 12 195q-8 6 -21.5 16t-49 44.5t-63.5 71.5t-54 93t-33 112.5t12 127t70 138.5q73 -25 127.5 -61.5t84.5 -76.5t48 -85t20.5 -89t-0.5 -85.5t-13 -76.5t-19 -62t-17 -42l-7 -15q1 -5 1 -50.5t-1 -71.5q3 7 10 18.5t30.5 43t50.5 58t71 55.5t91.5 44.5 t112 14.5t132.5 -24q-2 -78 -21.5 -141.5t-50 -104.5t-69.5 -71.5t-81.5 -45.5t-84.5 -24t-80 -9.5t-67.5 1t-46.5 4.5l-17 3q-23 -147 -73 -283q6 7 18 18.5t49.5 41t77.5 52.5t99.5 42t117.5 20t129 -23.5t137 -77.5z" />
+<glyph unicode="&#xf18d;" horiz-adv-x="1280" d="M1259 283v-66q0 -85 -57.5 -144.5t-138.5 -59.5h-57l-260 -269v269h-529q-81 0 -138.5 59.5t-57.5 144.5v66h1238zM1259 609v-255h-1238v255h1238zM1259 937v-255h-1238v255h1238zM1259 1077v-67h-1238v67q0 84 57.5 143.5t138.5 59.5h846q81 0 138.5 -59.5t57.5 -143.5z " />
+<glyph unicode="&#xf18e;" d="M1152 640q0 -14 -9 -23l-320 -320q-9 -9 -23 -9q-13 0 -22.5 9.5t-9.5 22.5v192h-352q-13 0 -22.5 9.5t-9.5 22.5v192q0 13 9.5 22.5t22.5 9.5h352v192q0 14 9 23t23 9q12 0 24 -10l319 -319q9 -9 9 -23zM1312 640q0 148 -73 273t-198 198t-273 73t-273 -73t-198 -198 t-73 -273t73 -273t198 -198t273 -73t273 73t198 198t73 273zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" />
+<glyph unicode="&#xf190;" d="M1152 736v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-352v-192q0 -14 -9 -23t-23 -9q-12 0 -24 10l-319 319q-9 9 -9 23t9 23l320 320q9 9 23 9q13 0 22.5 -9.5t9.5 -22.5v-192h352q13 0 22.5 -9.5t9.5 -22.5zM1312 640q0 148 -73 273t-198 198t-273 73t-273 -73t-198 -198 t-73 -273t73 -273t198 -198t273 -73t273 73t198 198t73 273zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" />
+<glyph unicode="&#xf191;" d="M1024 960v-640q0 -26 -19 -45t-45 -19q-20 0 -37 12l-448 320q-27 19 -27 52t27 52l448 320q17 12 37 12q26 0 45 -19t19 -45zM1280 160v960q0 13 -9.5 22.5t-22.5 9.5h-960q-13 0 -22.5 -9.5t-9.5 -22.5v-960q0 -13 9.5 -22.5t22.5 -9.5h960q13 0 22.5 9.5t9.5 22.5z M1536 1120v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" />
+<glyph unicode="&#xf192;" d="M1024 640q0 -106 -75 -181t-181 -75t-181 75t-75 181t75 181t181 75t181 -75t75 -181zM768 1184q-148 0 -273 -73t-198 -198t-73 -273t73 -273t198 -198t273 -73t273 73t198 198t73 273t-73 273t-198 198t-273 73zM1536 640q0 -209 -103 -385.5t-279.5 -279.5 t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" />
+<glyph unicode="&#xf193;" horiz-adv-x="1664" d="M1023 349l102 -204q-58 -179 -210 -290t-339 -111q-156 0 -288.5 77.5t-210 210t-77.5 288.5q0 181 104.5 330t274.5 211l17 -131q-122 -54 -195 -165.5t-73 -244.5q0 -185 131.5 -316.5t316.5 -131.5q126 0 232.5 65t165 175.5t49.5 236.5zM1571 249l58 -114l-256 -128 q-13 -7 -29 -7q-40 0 -57 35l-239 477h-472q-24 0 -42.5 16.5t-21.5 40.5l-96 779q-2 16 6 42q14 51 57 82.5t97 31.5q66 0 113 -47t47 -113q0 -69 -52 -117.5t-120 -41.5l37 -289h423v-128h-407l16 -128h455q40 0 57 -35l228 -455z" />
+<glyph unicode="&#xf194;" d="M1254 899q16 85 -21 132q-52 65 -187 45q-17 -3 -41 -12.5t-57.5 -30.5t-64.5 -48.5t-59.5 -70t-44.5 -91.5q80 7 113.5 -16t26.5 -99q-5 -52 -52 -143q-43 -78 -71 -99q-44 -32 -87 14q-23 24 -37.5 64.5t-19 73t-10 84t-8.5 71.5q-23 129 -34 164q-12 37 -35.5 69 t-50.5 40q-57 16 -127 -25q-54 -32 -136.5 -106t-122.5 -102v-7q16 -8 25.5 -26t21.5 -20q21 -3 54.5 8.5t58 10.5t41.5 -30q11 -18 18.5 -38.5t15 -48t12.5 -40.5q17 -46 53 -187q36 -146 57 -197q42 -99 103 -125q43 -12 85 -1.5t76 31.5q131 77 250 237 q104 139 172.5 292.5t82.5 226.5zM1536 1120v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" />
+<glyph unicode="&#xf195;" horiz-adv-x="1152" d="M1152 704q0 -191 -94.5 -353t-256.5 -256.5t-353 -94.5h-160q-14 0 -23 9t-9 23v611l-215 -66q-3 -1 -9 -1q-10 0 -19 6q-13 10 -13 26v128q0 23 23 31l233 71v93l-215 -66q-3 -1 -9 -1q-10 0 -19 6q-13 10 -13 26v128q0 23 23 31l233 71v250q0 14 9 23t23 9h160 q14 0 23 -9t9 -23v-181l375 116q15 5 28 -5t13 -26v-128q0 -23 -23 -31l-393 -121v-93l375 116q15 5 28 -5t13 -26v-128q0 -23 -23 -31l-393 -121v-487q188 13 318 151t130 328q0 14 9 23t23 9h160q14 0 23 -9t9 -23z" />
+<glyph unicode="&#xf196;" horiz-adv-x="1792" />
+<glyph unicode="&#xf197;" horiz-adv-x="1792" />
+<glyph unicode="&#xf198;" horiz-adv-x="1792" />
+<glyph unicode="&#xf199;" horiz-adv-x="1792" />
+<glyph unicode="&#xf19a;" horiz-adv-x="1792" />
+<glyph unicode="&#xf19b;" horiz-adv-x="1792" />
+<glyph unicode="&#xf19c;" horiz-adv-x="1792" />
+<glyph unicode="&#xf19d;" horiz-adv-x="1792" />
+<glyph unicode="&#xf19e;" horiz-adv-x="1792" />
 <glyph unicode="&#xf500;" horiz-adv-x="1792" />
 </font>
 </defs></svg> 

binární
desktop/core/static/ext/font/fontawesome-webfont.ttf → desktop/core/static/ext/fonts/fontawesome-webfont.ttf


binární
desktop/core/static/ext/fonts/fontawesome-webfont.woff


Rozdílová data souboru nebyla zobrazena, protože soubor je příliš velký
+ 0 - 0
desktop/core/static/ext/js/bootstrap-editable.min.js


Rozdílová data souboru nebyla zobrazena, protože soubor je příliš velký
+ 0 - 0
desktop/core/static/ext/js/bootstrap-timepicker.min.js


+ 9 - 9
desktop/core/static/ext/js/freshereditor.min.js

@@ -52,7 +52,7 @@
             classname: 'toolbar_strikethrough'
           }, {
             name: 'removeFormat',
-            label: "<i class='icon-minus'></i>",
+            label: "<i class='fa fa-minus'></i>",
             title: 'Remove Formating (Ctrl+M)',
             classname: 'toolbar_remove'
           }
@@ -91,22 +91,22 @@
           ], [
             {
               name: 'justifyleft',
-              label: "<i class='icon-align-left' style='margin-top:2px;'></i>",
+              label: "<i class='fa fa-align-left' style='margin-top:2px;'></i>",
               title: 'Left justify',
               classname: 'toolbar_justifyleft'
             }, {
               name: 'justifycenter',
-              label: "<i class='icon-align-center' style='margin-top:2px;'></i>",
+              label: "<i class='fa fa-align-center' style='margin-top:2px;'></i>",
               title: 'Center justify',
               classname: 'toolbar_justifycenter'
             }, {
               name: 'justifyright',
-              label: "<i class='icon-align-right' style='margin-top:2px;'></i>",
+              label: "<i class='fa fa-align-right' style='margin-top:2px;'></i>",
               title: 'Right justify',
               classname: 'toolbar_justifyright'
             }, {
               name: 'justifyfull',
-              label: "<i class='icon-align-justify' style='margin-top:2px;'></i>",
+              label: "<i class='fa fa-align-justify' style='margin-top:2px;'></i>",
               title: 'Full justify',
               classname: 'toolbar_justifyfull'
             }
@@ -119,18 +119,18 @@
               classname: 'toolbar_link'
             }, {
               name: 'insertimage',
-              label: "<i style='margin-top:2px;' class='icon-picture'></i>",
+              label: "<i style='margin-top:2px;' class='fa fa-picture-o'></i>",
               title: 'Insert an image (Ctrl+G)',
               userinput: "yes",
               classname: 'toolbar_image'
             }, {
               name: 'insertorderedlist',
-              label: "<i class='icon-list-alt' style='margin-top:2px;'></i>",
+              label: "<i class='fa fa-list-alt' style='margin-top:2px;'></i>",
               title: 'Insert ordered list',
               classname: 'toolbar_ol'
             }, {
               name: 'insertunorderedlist',
-              label: "<i class='icon-list' style='margin-top:2px;'></i>",
+              label: "<i class='fa fa-list' style='margin-top:2px;'></i>",
               title: 'Insert unordered list',
               classname: 'toolbar_ul'
             }
@@ -169,7 +169,7 @@
           ], [
             {
               name: 'blockquote',
-              label: "<i style='margin-top:2px;' class='icon-comment'></i>",
+              label: "<i style='margin-top:2px;' class='fa fa-comment'></i>",
               title: 'Blockquote (Ctrl+Q)',
               classname: 'toolbar_blockquote',
               block: 'blockquote'

+ 2 - 2
desktop/core/static/js/codemirror-hql-hint.js

@@ -96,7 +96,7 @@
 
     function maybeAddToExtra(str) {
       var _match = str;
-      if (_match.indexOf("icon-magic") > -1) {
+      if (_match.indexOf("fa-magic") > -1) {
         _match = _match.substring(32);
       }
       if (_match.indexOf(start) == 0 && !arrayContains(found, str)) extraFound.push(str);
@@ -111,7 +111,7 @@
           if (CodeMirror.tableFieldMagic) {
             var _specialCatalogTablesL = CodeMirror.catalogTables.toLowerCase().split(" ");
             for (var i = 0; i < _specialCatalogTablesL.length; i++) {
-              _specialCatalogTablesL[i] = "<i class='icon-magic'></i> FROM " + _specialCatalogTablesL[i];
+              _specialCatalogTablesL[i] = "<i class='fa fa-magic'></i> FROM " + _specialCatalogTablesL[i];
             }
             forEach(_specialCatalogTablesL, maybeAddToExtra);
           }

+ 2 - 2
desktop/core/static/js/codemirror-isql-hint.js

@@ -96,7 +96,7 @@
 
     function maybeAddToExtra(str) {
       var _match = str;
-      if (_match.indexOf("icon-magic") > -1) {
+      if (_match.indexOf("fa-magic") > -1) {
         _match = _match.substring(32);
       }
       if (_match.indexOf(start) == 0 && !arrayContains(found, str)) extraFound.push(str);
@@ -111,7 +111,7 @@
           if (CodeMirror.tableFieldMagic) {
             var _specialCatalogTablesL = CodeMirror.catalogTables.toLowerCase().split(" ");
             for (var i = 0; i < _specialCatalogTablesL.length; i++) {
-              _specialCatalogTablesL[i] = "<i class='icon-magic'></i> FROM " + _specialCatalogTablesL[i];
+              _specialCatalogTablesL[i] = "<i class='fa fa-magic'></i> FROM " + _specialCatalogTablesL[i];
             }
             forEach(_specialCatalogTablesL, maybeAddToExtra);
           }

Některé soubory nejsou zobrazeny, neboť je v těchto rozdílových datech změněno mnoho souborů