fixed merge conflict with layout css

This commit is contained in:
John Mitchell 2015-11-06 13:34:38 -05:00
commit a5e938e9ab
34 changed files with 763 additions and 679 deletions

View File

@ -141,11 +141,11 @@
@font-face {
font-family: "fontcustom";
src: url("./fontcustom_037607f2fd8b86abb9de4b13a05fde60.eot");
src: url("./fontcustom_037607f2fd8b86abb9de4b13a05fde60.eot?#iefix") format("embedded-opentype"),
url("./fontcustom_037607f2fd8b86abb9de4b13a05fde60.woff") format("woff"),
url("./fontcustom_037607f2fd8b86abb9de4b13a05fde60.ttf") format("truetype"),
url("./fontcustom_037607f2fd8b86abb9de4b13a05fde60.svg#fontcustom") format("svg");
src: url("./fontcustom_fbf6cfce71d2c35351b84596defbfd01.eot");
src: url("./fontcustom_fbf6cfce71d2c35351b84596defbfd01.eot?#iefix") format("embedded-opentype"),
url("./fontcustom_fbf6cfce71d2c35351b84596defbfd01.woff") format("woff"),
url("./fontcustom_fbf6cfce71d2c35351b84596defbfd01.ttf") format("truetype"),
url("./fontcustom_fbf6cfce71d2c35351b84596defbfd01.svg#fontcustom") format("svg");
font-weight: normal;
font-style: normal;
}
@ -153,15 +153,18 @@
@media screen and (-webkit-min-device-pixel-ratio:0) {
@font-face {
font-family: "fontcustom";
src: url("./fontcustom_037607f2fd8b86abb9de4b13a05fde60.svg#fontcustom") format("svg");
src: url("./fontcustom_fbf6cfce71d2c35351b84596defbfd01.svg#fontcustom") format("svg");
}
}
[data-icon]:before { content: attr(data-icon); }
[data-icon]:before,
.icon-google:before,
.icon-saml-02:before {
.icon-activity-stream:before,
.icon-google:before,
.icon-launch:before,
.icon-saml-02:before,
.icon-user:before {
display: inline-block;
font-family: "fontcustom";
font-style: normal;
@ -176,8 +179,11 @@
font-smoothing: antialiased;
}
.icon-google:before { content: "\f100"; }
.icon-activity-stream:before { content: "\f102"; }
.icon-google:before { content: "\f100"; }
.icon-launch:before { content: "\f103"; }
.icon-saml-02:before { content: "\f101"; }
.icon-user:before { content: "\f104"; }
</style>
<!--[if lte IE 8]><script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script><![endif]-->
@ -193,11 +199,24 @@
<body class="characters-off">
<div id="page" class="container">
<header>
<h1>fontcustom contains 2 glyphs:</h1>
<h1>fontcustom contains 5 glyphs:</h1>
<a onclick="toggleCharacters(); return false;" href="#">Toggle Preview Characters</a>
</header>
<div class="glyph">
<div class="preview-glyphs">
<span class="step size-12"><span class="letters">Pp</span><i id="icon-activity-stream" class="icon-activity-stream"></i></span><span class="step size-14"><span class="letters">Pp</span><i id="icon-activity-stream" class="icon-activity-stream"></i></span><span class="step size-16"><span class="letters">Pp</span><i id="icon-activity-stream" class="icon-activity-stream"></i></span><span class="step size-18"><span class="letters">Pp</span><i id="icon-activity-stream" class="icon-activity-stream"></i></span><span class="step size-21"><span class="letters">Pp</span><i id="icon-activity-stream" class="icon-activity-stream"></i></span><span class="step size-24"><span class="letters">Pp</span><i id="icon-activity-stream" class="icon-activity-stream"></i></span><span class="step size-36"><span class="letters">Pp</span><i id="icon-activity-stream" class="icon-activity-stream"></i></span><span class="step size-48"><span class="letters">Pp</span><i id="icon-activity-stream" class="icon-activity-stream"></i></span><span class="step size-60"><span class="letters">Pp</span><i id="icon-activity-stream" class="icon-activity-stream"></i></span><span class="step size-72"><span class="letters">Pp</span><i id="icon-activity-stream" class="icon-activity-stream"></i></span>
</div>
<div class="preview-scale">
<span class="step">12</span><span class="step">14</span><span class="step">16</span><span class="step">18</span><span class="step">21</span><span class="step">24</span><span class="step">36</span><span class="step">48</span><span class="step">60</span><span class="step">72</span>
</div>
<div class="usage">
<input class="class" type="text" readonly="readonly" onClick="this.select();" value=".icon-activity-stream" />
<input class="point" type="text" readonly="readonly" onClick="this.select();" value="&amp;#xf102;" />
</div>
</div>
<div class="glyph">
<div class="preview-glyphs">
<span class="step size-12"><span class="letters">Pp</span><i id="icon-google" class="icon-google"></i></span><span class="step size-14"><span class="letters">Pp</span><i id="icon-google" class="icon-google"></i></span><span class="step size-16"><span class="letters">Pp</span><i id="icon-google" class="icon-google"></i></span><span class="step size-18"><span class="letters">Pp</span><i id="icon-google" class="icon-google"></i></span><span class="step size-21"><span class="letters">Pp</span><i id="icon-google" class="icon-google"></i></span><span class="step size-24"><span class="letters">Pp</span><i id="icon-google" class="icon-google"></i></span><span class="step size-36"><span class="letters">Pp</span><i id="icon-google" class="icon-google"></i></span><span class="step size-48"><span class="letters">Pp</span><i id="icon-google" class="icon-google"></i></span><span class="step size-60"><span class="letters">Pp</span><i id="icon-google" class="icon-google"></i></span><span class="step size-72"><span class="letters">Pp</span><i id="icon-google" class="icon-google"></i></span>
@ -211,6 +230,19 @@
</div>
</div>
<div class="glyph">
<div class="preview-glyphs">
<span class="step size-12"><span class="letters">Pp</span><i id="icon-launch" class="icon-launch"></i></span><span class="step size-14"><span class="letters">Pp</span><i id="icon-launch" class="icon-launch"></i></span><span class="step size-16"><span class="letters">Pp</span><i id="icon-launch" class="icon-launch"></i></span><span class="step size-18"><span class="letters">Pp</span><i id="icon-launch" class="icon-launch"></i></span><span class="step size-21"><span class="letters">Pp</span><i id="icon-launch" class="icon-launch"></i></span><span class="step size-24"><span class="letters">Pp</span><i id="icon-launch" class="icon-launch"></i></span><span class="step size-36"><span class="letters">Pp</span><i id="icon-launch" class="icon-launch"></i></span><span class="step size-48"><span class="letters">Pp</span><i id="icon-launch" class="icon-launch"></i></span><span class="step size-60"><span class="letters">Pp</span><i id="icon-launch" class="icon-launch"></i></span><span class="step size-72"><span class="letters">Pp</span><i id="icon-launch" class="icon-launch"></i></span>
</div>
<div class="preview-scale">
<span class="step">12</span><span class="step">14</span><span class="step">16</span><span class="step">18</span><span class="step">21</span><span class="step">24</span><span class="step">36</span><span class="step">48</span><span class="step">60</span><span class="step">72</span>
</div>
<div class="usage">
<input class="class" type="text" readonly="readonly" onClick="this.select();" value=".icon-launch" />
<input class="point" type="text" readonly="readonly" onClick="this.select();" value="&amp;#xf103;" />
</div>
</div>
<div class="glyph">
<div class="preview-glyphs">
<span class="step size-12"><span class="letters">Pp</span><i id="icon-saml-02" class="icon-saml-02"></i></span><span class="step size-14"><span class="letters">Pp</span><i id="icon-saml-02" class="icon-saml-02"></i></span><span class="step size-16"><span class="letters">Pp</span><i id="icon-saml-02" class="icon-saml-02"></i></span><span class="step size-18"><span class="letters">Pp</span><i id="icon-saml-02" class="icon-saml-02"></i></span><span class="step size-21"><span class="letters">Pp</span><i id="icon-saml-02" class="icon-saml-02"></i></span><span class="step size-24"><span class="letters">Pp</span><i id="icon-saml-02" class="icon-saml-02"></i></span><span class="step size-36"><span class="letters">Pp</span><i id="icon-saml-02" class="icon-saml-02"></i></span><span class="step size-48"><span class="letters">Pp</span><i id="icon-saml-02" class="icon-saml-02"></i></span><span class="step size-60"><span class="letters">Pp</span><i id="icon-saml-02" class="icon-saml-02"></i></span><span class="step size-72"><span class="letters">Pp</span><i id="icon-saml-02" class="icon-saml-02"></i></span>
@ -224,6 +256,19 @@
</div>
</div>
<div class="glyph">
<div class="preview-glyphs">
<span class="step size-12"><span class="letters">Pp</span><i id="icon-user" class="icon-user"></i></span><span class="step size-14"><span class="letters">Pp</span><i id="icon-user" class="icon-user"></i></span><span class="step size-16"><span class="letters">Pp</span><i id="icon-user" class="icon-user"></i></span><span class="step size-18"><span class="letters">Pp</span><i id="icon-user" class="icon-user"></i></span><span class="step size-21"><span class="letters">Pp</span><i id="icon-user" class="icon-user"></i></span><span class="step size-24"><span class="letters">Pp</span><i id="icon-user" class="icon-user"></i></span><span class="step size-36"><span class="letters">Pp</span><i id="icon-user" class="icon-user"></i></span><span class="step size-48"><span class="letters">Pp</span><i id="icon-user" class="icon-user"></i></span><span class="step size-60"><span class="letters">Pp</span><i id="icon-user" class="icon-user"></i></span><span class="step size-72"><span class="letters">Pp</span><i id="icon-user" class="icon-user"></i></span>
</div>
<div class="preview-scale">
<span class="step">12</span><span class="step">14</span><span class="step">16</span><span class="step">18</span><span class="step">21</span><span class="step">24</span><span class="step">36</span><span class="step">48</span><span class="step">60</span><span class="step">72</span>
</div>
<div class="usage">
<input class="class" type="text" readonly="readonly" onClick="this.select();" value=".icon-user" />
<input class="point" type="text" readonly="readonly" onClick="this.select();" value="&amp;#xf104;" />
</div>
</div>
<footer>
Made with love using <a href="http://fontcustom.com">Font Custom</a>.

View File

@ -4,11 +4,11 @@
@font-face {
font-family: "fontcustom";
src: url("./fontcustom_037607f2fd8b86abb9de4b13a05fde60.eot");
src: url("./fontcustom_037607f2fd8b86abb9de4b13a05fde60.eot?#iefix") format("embedded-opentype"),
url("./fontcustom_037607f2fd8b86abb9de4b13a05fde60.woff") format("woff"),
url("./fontcustom_037607f2fd8b86abb9de4b13a05fde60.ttf") format("truetype"),
url("./fontcustom_037607f2fd8b86abb9de4b13a05fde60.svg#fontcustom") format("svg");
src: url("./fontcustom_fbf6cfce71d2c35351b84596defbfd01.eot");
src: url("./fontcustom_fbf6cfce71d2c35351b84596defbfd01.eot?#iefix") format("embedded-opentype"),
url("./fontcustom_fbf6cfce71d2c35351b84596defbfd01.woff") format("woff"),
url("./fontcustom_fbf6cfce71d2c35351b84596defbfd01.ttf") format("truetype"),
url("./fontcustom_fbf6cfce71d2c35351b84596defbfd01.svg#fontcustom") format("svg");
font-weight: normal;
font-style: normal;
}
@ -16,15 +16,18 @@
@media screen and (-webkit-min-device-pixel-ratio:0) {
@font-face {
font-family: "fontcustom";
src: url("./fontcustom_037607f2fd8b86abb9de4b13a05fde60.svg#fontcustom") format("svg");
src: url("./fontcustom_fbf6cfce71d2c35351b84596defbfd01.svg#fontcustom") format("svg");
}
}
[data-icon]:before { content: attr(data-icon); }
[data-icon]:before,
.icon-activity-stream:before,
.icon-google:before,
.icon-saml-02:before {
.icon-launch:before,
.icon-saml-02:before,
.icon-user:before {
display: inline-block;
font-family: "fontcustom";
font-style: normal;
@ -39,5 +42,8 @@
font-smoothing: antialiased;
}
.icon-activity-stream:before { content: "\f102"; }
.icon-google:before { content: "\f100"; }
.icon-launch:before { content: "\f103"; }
.icon-saml-02:before { content: "\f101"; }
.icon-user:before { content: "\f104"; }

View File

@ -1,47 +0,0 @@
<?xml version="1.0" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" >
<!--
2015-9-25: Created with FontForge (http://fontforge.org)
-->
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1">
<metadata>
Created by FontForge 20150401 at Fri Sep 25 14:52:01 2015
By John Mitchell
Copyright (c) 2015, John Mitchell
</metadata>
<defs>
<font id="fontcustom" horiz-adv-x="512" >
<font-face
font-family="fontcustom"
font-weight="400"
font-stretch="normal"
units-per-em="512"
panose-1="2 0 5 3 0 0 0 0 0 0"
ascent="448"
descent="-64"
bbox="0 -64 512 448"
underline-thickness="25.6"
underline-position="-51.2"
unicode-range="U+0020-F101"
/>
<missing-glyph />
<glyph glyph-name="space" unicode=" " horiz-adv-x="200"
/>
<glyph glyph-name="uniF101" unicode="&#xf101;"
d="M512 192c0 -141.312 -114.688 -256 -256 -256s-256 114.688 -256 256s114.688 256 256 256s256 -114.688 256 -256zM356.608 170.496c-12.5439 16.3838 -36.0967 32.7676 -70.1445 49.1523c-25.8555 12.2871 -42.2402 20.9912 -49.1523 25.5996
c-6.91113 4.86426 -12.0312 9.72754 -15.1035 14.8477s-4.86426 11.0078 -4.86426 17.9199c0 11.0088 3.83984 19.9688 11.7764 26.624c7.93555 6.91211 19.2002 10.2402 33.792 10.2402c12.2881 0 24.832 -1.53613 37.6318 -4.86426
c12.7998 -3.07129 28.9277 -8.7041 48.3838 -16.6396l25.0879 60.1602c-18.9434 8.19141 -36.8633 14.5918 -54.0156 18.9443c-17.1523 4.35156 -35.3281 6.65527 -54.2725 6.65527c-38.6553 0 -68.8633 -9.21582 -90.8799 -27.6475
c-22.0156 -18.4326 -32.7676 -44.0322 -32.7676 -76.2881c0 -17.1523 3.32812 -32.2559 9.98438 -45.0566c6.65527 -12.7998 15.6152 -24.0635 26.624 -33.792c11.2637 -9.72754 27.9033 -19.7119 50.1758 -30.208c23.8076 -11.2637 39.6797 -19.7119 47.3594 -24.832
c7.68066 -5.11914 13.5684 -10.4951 17.6641 -16.1279c4.09668 -5.63184 5.88867 -12.0312 5.88867 -19.1992c0 -12.8008 -4.6084 -22.5283 -13.5684 -28.9287c-8.95996 -6.39941 -22.0156 -9.72754 -39.168 -9.72754c-14.0801 0 -29.6963 2.30371 -46.8477 6.65625
c-17.1523 4.60742 -37.8887 12.2881 -62.7207 23.2959v-71.6807c29.9521 -14.5918 64.5127 -22.0156 103.425 -22.0156c42.2393 0 75.2637 9.47168 99.0713 28.416c23.8086 18.9443 35.584 45.0557 35.584 78.0801c0 23.8076 -6.39941 43.7764 -18.9434 60.416z" />
<glyph glyph-name="uniF100" unicode="&#xf100;"
d="M512 192c0 -141.312 -114.688 -256 -256 -256s-256 114.688 -256 256s114.688 256 256 256s256 -114.688 256 -256zM104.96 269.568c20.7363 41.2158 57.8564 73.7275 100.864 88.832c38.6562 13.3115 81.9199 13.0557 120.319 -1.02441
c21.5049 -7.93555 40.96 -20.2236 57.6006 -35.584c-5.63184 -6.14355 -11.7764 -11.7764 -17.4082 -17.6641c-10.752 -11.0078 -21.7598 -21.7598 -32.7676 -32.7676c-10.752 10.2393 -24.0645 18.1758 -38.4004 22.5273
c-16.8955 5.12012 -35.0723 5.88867 -52.4795 2.04785c-19.9688 -4.35156 -38.6562 -14.8477 -53.248 -29.6953c-11.5205 -11.7764 -20.4805 -26.3682 -25.8564 -41.9844c-19.4561 15.1045 -38.9121 30.208 -58.624 45.3125zM105.216 109.568
c19.4561 15.1035 38.9121 30.208 58.3682 45.3115c-7.67969 22.2725 -7.67969 47.1045 0 69.6318c-19.7119 15.1045 -39.168 30.208 -58.624 45.3125c-7.16797 -14.3359 -12.2881 -29.4404 -15.6162 -45.0566c-7.67969 -38.6553 -2.04785 -80.1279 15.8721 -115.199z
M264.448 153.344c0.255859 23.2959 0.255859 46.3359 0.255859 69.8887h167.936c5.37598 -31.4883 4.35254 -64.2568 -4.60742 -94.9766c-8.19238 -28.1602 -23.8086 -54.2715 -45.3125 -74.2402c-18.9434 14.5928 -37.8877 29.4404 -56.832 44.0322
c18.9443 12.7998 32 33.0244 35.8398 55.2959h-97.2793zM153.344 49.9199c19.2002 -15.3604 41.2158 -26.624 64.7686 -32.7676c29.6953 -7.93652 61.4395 -7.68066 91.3916 -1.02441c27.1357 6.14453 52.7363 19.2002 73.2158 38.1445
c-18.9434 14.5918 -37.8877 29.4395 -56.832 44.0312c-11.7754 -7.93555 -25.3438 -13.0557 -39.4238 -15.6152c-14.0801 -2.30469 -28.6719 -2.81641 -42.4961 0c-14.0801 2.81543 -27.9033 8.70312 -39.6797 17.1514c-18.9443 13.3125 -33.2803 32.7686 -40.96 54.7842
c-19.4561 -15.1045 -38.9121 -30.208 -58.3682 -45.3125c11.7764 -23.0391 28.416 -43.5195 48.3838 -59.3916z" />
</font>
</defs></svg>

Before

Width:  |  Height:  |  Size: 4.0 KiB

View File

@ -0,0 +1,72 @@
<?xml version="1.0" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" >
<!--
2015-11-4: Created with FontForge (http://fontforge.org)
-->
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1">
<metadata>
Created by FontForge 20150401 at Wed Nov 4 19:00:26 2015
By John Mitchell
Copyright (c) 2015, John Mitchell
</metadata>
<defs>
<font id="fontcustom" horiz-adv-x="512" >
<font-face
font-family="fontcustom"
font-weight="400"
font-stretch="normal"
units-per-em="512"
panose-1="2 0 5 3 0 0 0 0 0 0"
ascent="448"
descent="-64"
bbox="-125.44 -194.56 512 448"
underline-thickness="25.6"
underline-position="-51.2"
unicode-range="U+0020-F104"
/>
<missing-glyph />
<glyph glyph-name="space" unicode=" " horiz-adv-x="200"
/>
<glyph glyph-name="uniF103" unicode="&#xf103;"
d="M384 305.664v0c0 -5.12012 -2.55957 -121.6 -77.5684 -196.608l-94.9756 -94.9756c7.93555 -22.0156 22.5283 -97.0244 -82.9443 -202.752l-0.511719 -0.511719c-3.58398 -3.84082 -9.47168 -3.84082 -13.0557 -0.256836l-0.255859 0.256836
c-2.81641 2.81543 -3.58496 7.16797 -1.79199 10.752c0.255859 0.767578 33.0234 68.3516 9.9834 104.191l-23.5518 -23.5518c-0.511719 -0.511719 -1.02441 -1.02441 -1.79199 -1.53613c-1.79199 -1.02344 -42.752 -23.5518 -97.0244 30.7197
c-54.5273 54.5283 -31.7441 95.2324 -30.7197 97.0244c0.511719 0.511719 1.02441 1.28027 1.53613 1.79199l23.5518 23.5518c-35.8398 23.04 -103.424 -9.72754 -104.191 -9.9834c-3.58496 -1.79199 -7.93652 -1.02441 -10.7529 1.79199
c-0.511719 0.511719 -0.767578 0.767578 -1.02344 1.2793c-2.56055 3.84082 -2.30371 8.7041 1.02344 12.0322c105.984 105.729 181.248 91.1357 203.265 83.4561l94.9756 94.9756c75.0078 75.0088 191.488 77.8242 196.353 77.8242
c2.55957 0 4.86328 -1.02344 6.65527 -2.81543s2.81641 -4.09668 2.81641 -6.65625zM263.424 120.064v0c20.4805 20.4795 20.4805 53.7598 0 74.2393c-20.4795 20.4805 -53.7598 20.4805 -74.2402 0c-20.4795 -20.4795 -20.4795 -53.7598 0 -74.2393
c20.4805 -20.4805 53.7607 -20.4805 74.2402 0zM263.424 120.064zM-0.511719 -124.672v0c7.67969 1.28027 15.1035 2.81543 22.5273 4.60742c8.7041 2.30469 16.8965 5.88867 25.3447 8.96094c-3.32812 -8.19238 -8.44824 -15.1045 -14.3359 -21.5049
c-23.8086 -25.0879 -59.6484 -36.6074 -93.4404 -38.9111c-7.42383 -0.512695 -14.8477 -0.512695 -22.2725 0c-8.19141 0.511719 -15.6152 5.63184 -18.4316 13.5674c-2.04785 5.37598 -1.53613 12.5439 -1.53613 18.1758
c0.255859 10.4961 1.02441 20.7363 3.07227 30.9766c3.32812 17.4082 9.21582 34.3037 18.1758 49.4082c9.21582 15.6152 22.5283 30.208 39.4238 37.376c-0.767578 -2.04883 -1.79199 -4.09668 -2.55957 -6.14453c-5.8877 -15.3594 -9.72852 -31.2314 -12.0322 -47.3594
c-1.28027 -9.2168 -2.04785 -18.4326 -2.55957 -27.9043c-0.255859 -4.0957 -0.512695 -8.19238 -0.512695 -12.2881c-0.255859 -2.81641 -0.255859 -6.91211 -0.255859 -9.72852c0 -1.2793 1.79199 -3.32715 3.32812 -3.32715
c18.6885 -0.512695 37.6318 0.767578 56.0645 4.0957zM-0.511719 -124.672z" />
<glyph glyph-name="uniF101" unicode="&#xf101;"
d="M512 192c0 -141.312 -114.688 -256 -256 -256s-256 114.688 -256 256s114.688 256 256 256s256 -114.688 256 -256zM356.608 170.496c-12.5439 16.3838 -36.0967 32.7676 -70.1445 49.1523c-25.8555 12.2871 -42.2402 20.9912 -49.1523 25.5996
c-6.91113 4.86426 -12.0312 9.72754 -15.1035 14.8477s-4.86426 11.0078 -4.86426 17.9199c0 11.0088 3.83984 19.9688 11.7764 26.624c7.93555 6.91211 19.2002 10.2402 33.792 10.2402c12.2881 0 24.832 -1.53613 37.6318 -4.86426
c12.7998 -3.07129 28.9277 -8.7041 48.3838 -16.6396l25.0879 60.1602c-18.9434 8.19141 -36.8633 14.5918 -54.0156 18.9443c-17.1523 4.35156 -35.3281 6.65527 -54.2725 6.65527c-38.6553 0 -68.8633 -9.21582 -90.8799 -27.6475
c-22.0156 -18.4326 -32.7676 -44.0322 -32.7676 -76.2881c0 -17.1523 3.32812 -32.2559 9.98438 -45.0566c6.65527 -12.7998 15.6152 -24.0635 26.624 -33.792c11.2637 -9.72754 27.9033 -19.7119 50.1758 -30.208c23.8076 -11.2637 39.6797 -19.7119 47.3594 -24.832
c7.68066 -5.11914 13.5684 -10.4951 17.6641 -16.1279c4.09668 -5.63184 5.88867 -12.0312 5.88867 -19.1992c0 -12.8008 -4.6084 -22.5283 -13.5684 -28.9287c-8.95996 -6.39941 -22.0156 -9.72754 -39.168 -9.72754c-14.0801 0 -29.6963 2.30371 -46.8477 6.65625
c-17.1523 4.60742 -37.8887 12.2881 -62.7207 23.2959v-71.6807c29.9521 -14.5918 64.5127 -22.0156 103.425 -22.0156c42.2393 0 75.2637 9.47168 99.0713 28.416c23.8086 18.9443 35.584 45.0557 35.584 78.0801c0 23.8076 -6.39941 43.7764 -18.9434 60.416z" />
<glyph glyph-name="uniF100" unicode="&#xf100;"
d="M512 192c0 -141.312 -114.688 -256 -256 -256s-256 114.688 -256 256s114.688 256 256 256s256 -114.688 256 -256zM104.96 269.568c20.7363 41.2158 57.8564 73.7275 100.864 88.832c38.6562 13.3115 81.9199 13.0557 120.319 -1.02441
c21.5049 -7.93555 40.96 -20.2236 57.6006 -35.584c-5.63184 -6.14355 -11.7764 -11.7764 -17.4082 -17.6641c-10.752 -11.0078 -21.7598 -21.7598 -32.7676 -32.7676c-10.752 10.2393 -24.0645 18.1758 -38.4004 22.5273
c-16.8955 5.12012 -35.0723 5.88867 -52.4795 2.04785c-19.9688 -4.35156 -38.6562 -14.8477 -53.248 -29.6953c-11.5205 -11.7764 -20.4805 -26.3682 -25.8564 -41.9844c-19.4561 15.1045 -38.9121 30.208 -58.624 45.3125zM105.216 109.568
c19.4561 15.1035 38.9121 30.208 58.3682 45.3115c-7.67969 22.2725 -7.67969 47.1045 0 69.6318c-19.7119 15.1045 -39.168 30.208 -58.624 45.3125c-7.16797 -14.3359 -12.2881 -29.4404 -15.6162 -45.0566c-7.67969 -38.6553 -2.04785 -80.1279 15.8721 -115.199z
M264.448 153.344c0.255859 23.2959 0.255859 46.3359 0.255859 69.8887h167.936c5.37598 -31.4883 4.35254 -64.2568 -4.60742 -94.9766c-8.19238 -28.1602 -23.8086 -54.2715 -45.3125 -74.2402c-18.9434 14.5928 -37.8877 29.4404 -56.832 44.0322
c18.9443 12.7998 32 33.0244 35.8398 55.2959h-97.2793zM153.344 49.9199c19.2002 -15.3604 41.2158 -26.624 64.7686 -32.7676c29.6953 -7.93652 61.4395 -7.68066 91.3916 -1.02441c27.1357 6.14453 52.7363 19.2002 73.2158 38.1445
c-18.9434 14.5918 -37.8877 29.4395 -56.832 44.0312c-11.7754 -7.93555 -25.3438 -13.0557 -39.4238 -15.6152c-14.0801 -2.30469 -28.6719 -2.81641 -42.4961 0c-14.0801 2.81543 -27.9033 8.70312 -39.6797 17.1514c-18.9443 13.3125 -33.2803 32.7686 -40.96 54.7842
c-19.4561 -15.1045 -38.9121 -30.208 -58.3682 -45.3125c11.7764 -23.0391 28.416 -43.5195 48.3838 -59.3916z" />
<glyph glyph-name="uniF104" unicode="&#xf104;"
d="M130.56 314.88c140.032 0 253.44 -113.408 253.44 -253.439c0 -140.032 -113.408 -253.44 -253.44 -253.44c-140.031 0 -253.439 113.408 -253.439 253.44c0 140.031 113.408 253.439 253.439 253.439zM297.728 -73.2158
c29.6963 36.8643 47.6162 83.7119 47.6162 134.656c0 118.527 -96.2559 214.783 -214.784 214.783c-118.527 0 -214.783 -96.2559 -214.783 -214.783c0 -49.6641 16.8955 -95.2324 45.0557 -131.584c25.3438 46.8477 60.416 56.5752 60.416 56.5752h21.7598
c23.5518 0 42.752 19.2002 42.752 42.752v14.3359c-8.44824 10.2402 -15.1035 22.0166 -19.2002 34.5605c-0.767578 2.55957 -1.2793 5.63184 -3.58398 7.16797c-9.47168 7.67969 -12.0312 22.0156 -6.14355 32.5117c1.02441 2.04785 3.07227 3.83984 2.81641 6.40039
c0 12.7998 -0.256836 25.5996 0 38.3994c0.511719 12.0322 3.32715 24.0645 10.2393 34.0488c7.68066 11.5195 19.9688 19.1992 33.2803 22.5273c15.1045 3.83984 31.2324 3.83984 46.5918 1.02441c12.0322 -2.30371 23.8086 -7.93652 32.5127 -16.8965
c10.752 -11.2637 15.1035 -27.1357 15.3594 -42.2393v-37.6328c0 -1.79199 1.53613 -3.07129 2.30371 -4.60742c6.14453 -9.98438 4.6084 -23.8086 -3.58398 -32c-1.53516 -1.53613 -3.83984 -2.81641 -4.35156 -5.12012
c-4.0957 -14.0801 -11.0078 -27.3916 -20.4805 -38.6562v-13.8242c0 -23.5518 19.2002 -42.752 42.7529 -42.752h21.5039s36.6074 -10.2393 61.9512 -59.6475z" />
<glyph glyph-name="uniF102" unicode="&#xf102;"
d="M348.416 2.55957h31.2324c-26.624 -113.151 -128 -197.119 -249.089 -197.119c-119.04 0 -218.88 81.1514 -247.552 190.976h84.9922c7.42383 0 13.8242 4.0957 15.6162 9.72754l23.8076 71.168l33.792 -155.903c1.53613 -6.91211 8.95996 -11.5205 17.1523 -11.0078
c8.19141 0.767578 14.8477 6.65527 14.8477 13.3115v72.7041h45.3125c8.19141 0 14.8477 4.86426 16.1279 11.5195l25.3438 144.385l55.04 -251.393c1.28027 -6.39941 8.19238 -11.0078 15.6162 -11.0078h0.255859c7.67969 0 14.3359 4.6084 15.6162 10.752l24.832 104.704
h12.2881l18.6875 -25.8564c3.07227 -4.0957 8.19238 -6.65527 13.5684 -6.65527s10.752 2.30371 13.8232 6.14355zM-44.2881 23.04h-78.3359c-1.79199 12.5439 -2.81641 25.3438 -2.81641 38.4004c0 141.312 114.433 256.256 255.744 256.256
c141.312 0 256 -114.688 256 -256c0 -11.0078 -0.767578 -21.7607 -2.04785 -32.2559h-44.7998c-5.37598 0 -10.4961 -2.56055 -13.5684 -6.14453l-8.95996 -11.7764l-10.2393 14.0801c-2.81641 3.84082 -8.19238 6.40039 -13.8242 6.40039h-34.8164
c-7.93555 0 -14.5918 -4.6084 -15.8721 -10.752l-10.752 -45.8242l-57.0879 261.888c-1.28027 6.40039 -8.44824 11.5205 -16.1279 11.0088c-7.93555 -0.255859 -14.5918 -4.86426 -15.6162 -11.5205l-37.6318 -213.76h-48.1279c-1.53613 0 -3.32812 0 -4.86426 -0.511719
l-25.3438 116.991c-1.53613 6.14453 -7.93555 10.4961 -15.3604 11.0088c-8.19141 0.767578 -14.0801 -3.83984 -16.1279 -9.98438z" />
</font>
</defs></svg>

After

Width:  |  Height:  |  Size: 8.8 KiB

View File

@ -1,27 +1,39 @@
{
"checksum": {
"previous": "037607f2fd8b86abb9de4b13a05fde6090c547d09c5428dac65a185505077e6a",
"current": "037607f2fd8b86abb9de4b13a05fde6090c547d09c5428dac65a185505077e6a"
"previous": "fbf6cfce71d2c35351b84596defbfd01ac87f29865d8f21d344cf5021e1345b0",
"current": "fbf6cfce71d2c35351b84596defbfd01ac87f29865d8f21d344cf5021e1345b0"
},
"fonts": [
"..//fontcustom_037607f2fd8b86abb9de4b13a05fde60.ttf",
"..//fontcustom_037607f2fd8b86abb9de4b13a05fde60.svg",
"..//fontcustom_037607f2fd8b86abb9de4b13a05fde60.woff",
"..//fontcustom_037607f2fd8b86abb9de4b13a05fde60.eot"
"..//fontcustom_fbf6cfce71d2c35351b84596defbfd01.ttf",
"..//fontcustom_fbf6cfce71d2c35351b84596defbfd01.svg",
"..//fontcustom_fbf6cfce71d2c35351b84596defbfd01.woff",
"..//fontcustom_fbf6cfce71d2c35351b84596defbfd01.eot"
],
"glyphs": {
"activity-stream": {
"codepoint": 61698,
"source": "./activity-stream.svg"
},
"google": {
"codepoint": 61696,
"source": "./google.svg"
},
"launch": {
"codepoint": 61699,
"source": "./launch.svg"
},
"saml-02": {
"codepoint": 61697,
"source": "./saml-02.svg"
},
"user": {
"codepoint": 61700,
"source": "./user.svg"
}
},
"options": {
"autowidth": false,
"config": "fontcustom.yml",
"config": false,
"css_selector": ".icon-{{glyph}}",
"debug": false,
"font_ascent": 448,
@ -29,7 +41,7 @@
"font_design_size": 16,
"font_em": 512,
"font_name": "fontcustom",
"force": false,
"force": true,
"input": {
"templates": ".",
"vectors": "."

View File

@ -0,0 +1,15 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 19.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
viewBox="-49 51 200 200" style="enable-background:new -49 51 200 200;" xml:space="preserve">
<g>
<path d="M136.1,174l-7.3,9.2c-1.2,1.5-3.3,2.4-5.4,2.4c-2.1,0-4.1-1-5.3-2.6l-7.3-10.1h-4.8l-9.7,40.9c-0.5,2.4-3.1,4.2-6.1,4.2
h-0.1c-2.9,0-5.6-1.8-6.1-4.3l-21.5-98.2l-9.9,56.4c-0.5,2.6-3.1,4.5-6.3,4.5H28.6v28.4c0,2.6-2.6,4.9-5.8,5.2
c-3.2,0.2-6.1-1.6-6.7-4.3L2.9,144.8l-9.3,27.8c-0.7,2.2-3.2,3.8-6.1,3.8h-33.2C-34.5,219.3,4.5,251,51,251
c47.3,0,86.9-32.8,97.3-77H136.1z"/>
<path d="M-17.3,166l15.4-45.9c0.8-2.4,3.1-4.2,6.3-3.9c2.9,0.2,5.4,1.9,6,4.3l9.9,45.7c0.6-0.2,1.3-0.2,1.9-0.2H41l14.7-83.5
c0.4-2.6,3-4.4,6.1-4.5c3-0.2,5.8,1.8,6.3,4.3l22.3,102.3l4.2-17.9c0.5-2.4,3.1-4.2,6.2-4.2h13.6c2.2,0,4.3,1,5.4,2.5l4,5.5
l3.5-4.6c1.2-1.4,3.2-2.4,5.3-2.4h17.5c0.5-4.1,0.8-8.3,0.8-12.6c0-55.2-44.8-100-100-100S-49,95.8-49,151c0,5.1,0.4,10.1,1.1,15
H-17.3z"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 1.1 KiB

View File

@ -1,96 +0,0 @@
# =============================================================================
# Font Custom Configuration
# This file should live in the directory where you run `fontcustom compile`.
# For more info, visit <https://github.com/FontCustom/fontcustom>.
# =============================================================================
# -----------------------------------------------------------------------------
# Project Info
# -----------------------------------------------------------------------------
# The font's name. Also determines the file names of generated templates.
#font_name: icons
# Format of CSS selectors. {{glyph}} is substituted for the glyph name.
#css_selector: .i-{{glyph}}
# Generate fonts without asset-busting hashes.
#no_hash: true
# Encode WOFF fonts into the generated CSS.
#base64: true
# Forces compilation, even if inputs have not changed
#force: true
# Display (possibly useful) debugging messages.
#debug: true
# Hide status messages.
#quiet: true
# -----------------------------------------------------------------------------
# Input / Output Locations
# You can save generated fonts, CSS, and other files to different locations
# here. Font Custom can also read input vectors and templates from different
# places.
#
# NOTE:
# - Be sure to preserve the whitespace in these YAML hashes.
# - INPUT[:vectors] and OUTPUT[:fonts] are required. Everything else is
# optional.
# - Specify output locations for custom templates by including their file
# names as the key.
# -----------------------------------------------------------------------------
#input:
# vectors: my/vectors
# templates: my/templates
#output:
# fonts: app/assets/fonts
# css: app/assets/stylesheets
# preview: app/views/styleguide
# my-custom-template.yml: path/to/template/output
# -----------------------------------------------------------------------------
# Templates
# A YAML array of templates and files to generate alongside fonts. Custom
# templates should be saved in the INPUT[:templates] directory and referenced
# by their base file name.
#
# For Rails and Compass templates, set `preprocessor_path` as the relative
# path from OUTPUT[:css] to OUTPUT[:fonts]. By default, these are the same
# directory.
#
# Included in Font Custom: preview, css, scss, scss-rails
# Default: css, preview
# -----------------------------------------------------------------------------
#templates:
#- scss-rails
#- preview
#- my-custom-template.yml
#preprocessor_path: ../fonts/
# -----------------------------------------------------------------------------
# Font Settings (defaults shown)
# -----------------------------------------------------------------------------
# Size (in pica points) for which your font is designed.
#font_design_size: 16
# The em size. Setting this will scale the entire font to the given size.
#font_em: 512
# The font's ascent and descent. Used to calculate the baseline.
#font_ascent: 448
#font_descent: 64
# Horizontally fit glyphs to their individual vector widths.
#autowidth: false

View File

@ -0,0 +1,28 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 19.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
viewBox="-49 51 200 200" style="enable-background:new -49 51 200 200;" xml:space="preserve">
<style type="text/css">
.st0{clip-path:url(#SVGID_2_);}
</style>
<g>
<g>
<defs>
<rect id="SVGID_1_" x="-48" y="52" width="198" height="198"/>
</defs>
<clipPath id="SVGID_2_">
<use xlink:href="#SVGID_1_" style="overflow:visible;"/>
</clipPath>
<path class="st0" d="M150,55.6c0-1-0.4-1.9-1.1-2.6c-0.7-0.7-1.6-1.1-2.6-1.1c-1.9,0-47.4,1.1-76.7,30.4l-37.1,37.1
c-8.6-3-38-8.7-79.4,32.6c-1.3,1.3-1.4,3.2-0.4,4.7c0.1,0.2,0.2,0.3,0.4,0.5c1.1,1.1,2.8,1.4,4.2,0.7c0.3-0.1,26.7-12.9,40.7-3.9
l-9.2,9.2c-0.2,0.2-0.4,0.5-0.6,0.7c-0.4,0.7-9.3,16.6,12,37.9c21.2,21.2,37.2,12.4,37.9,12c0.3-0.2,0.5-0.4,0.7-0.6L48,204
c9,14-3.8,40.4-3.9,40.7c-0.7,1.4-0.4,3.1,0.7,4.2c0,0,0,0,0.1,0.1c1.4,1.4,3.7,1.4,5.1-0.1c0.1-0.1,0.1-0.1,0.2-0.2
c41.2-41.3,35.5-70.6,32.4-79.2l37.1-37.1C149,103.1,150,57.6,150,55.6L150,55.6z M102.9,128.1c-8,8-21,8-29,0c-8-8-8-21,0-29
c8-8,21-8,29,0C110.9,107.1,110.9,120.1,102.9,128.1L102.9,128.1z M102.9,128.1"/>
</g>
<path d="M-0.2,223.7c-7.2,1.3-14.6,1.8-21.9,1.6c-0.6,0-1.3-0.8-1.3-1.3c0-1.1,0-2.7,0.1-3.8c0-1.6,0.1-3.2,0.2-4.8
c0.2-3.7,0.5-7.3,1-10.9c0.9-6.3,2.4-12.5,4.7-18.5c0.3-0.8,0.7-1.6,1-2.4c-6.6,2.8-11.8,8.5-15.4,14.6c-3.5,5.9-5.8,12.5-7.1,19.3
c-0.8,4-1.1,8-1.2,12.1c0,2.2-0.2,5,0.6,7.1c1.1,3.1,4,5.1,7.2,5.3c2.9,0.2,5.8,0.2,8.7,0c13.2-0.9,27.2-5.4,36.5-15.2
c2.3-2.5,4.3-5.2,5.6-8.4c-3.3,1.2-6.5,2.6-9.9,3.5C5.7,222.6,2.8,223.2-0.2,223.7L-0.2,223.7z M-0.2,223.7"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 1.8 KiB

View File

@ -0,0 +1,11 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 19.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
viewBox="-49 51 200 200" style="enable-background:new -49 51 200 200;" xml:space="preserve">
<path d="M51,52c-54.7,0-99,44.3-99,99s44.3,99,99,99s99-44.3,99-99S105.7,52,51,52z M116.3,203.6c-9.9-19.3-24.2-23.3-24.2-23.3
h-8.4c-9.2,0-16.7-7.5-16.7-16.7v-5.4c3.7-4.4,6.4-9.6,8-15.1c0.2-0.9,1.1-1.4,1.7-2c3.2-3.2,3.8-8.6,1.4-12.5
c-0.3-0.6-0.9-1.1-0.9-1.8c0-4.9,0-9.8,0-14.7c-0.1-5.9-1.8-12.1-6-16.5c-3.4-3.5-8-5.7-12.7-6.6c-6-1.1-12.3-1.1-18.2,0.4
c-5.2,1.3-10,4.3-13,8.8c-2.7,3.9-3.8,8.6-4,13.3c-0.1,5,0,10,0,15c0.1,1-0.7,1.7-1.1,2.5c-2.3,4.1-1.3,9.7,2.4,12.7
c0.9,0.6,1.1,1.8,1.4,2.8c1.6,4.9,4.2,9.5,7.5,13.5v5.6c0,9.2-7.5,16.7-16.7,16.7H8.3c0,0-13.7,3.8-23.6,22.1
c-11-14.2-17.6-32-17.6-51.4c0-46.3,37.6-83.9,83.9-83.9s83.9,37.6,83.9,83.9C134.9,170.9,127.9,189.2,116.3,203.6z"/>
</svg>

After

Width:  |  Height:  |  Size: 1.0 KiB

View File

@ -2013,3 +2013,20 @@ button.dropdown-toggle,
#login-modal-body {
padding-bottom: 5px;
}
.tooltip.bottom .tooltip-arrow {
border-bottom-color: #848992;
}
.tooltip.Tooltip.fade.bottom.in {
opacity: 1;
padding-top: 4px;
}
.tooltip-inner {
background-color: #848992;
}
.tooltip-inner--logOut {
margin-left: -15px !important;
}

View File

@ -13,7 +13,7 @@ body {
font-family: 'Open Sans', sans-serif;
font-weight: 400;
color: @black;
padding-top: 58px;
padding-top: 50px;
min-height: 100%;
padding-bottom: 40px;
position: relative;

View File

@ -1,18 +0,0 @@
export default
[ 'templateUrl',
function(templateUrl) {
return {
restrict: 'E',
templateUrl: templateUrl('main-menu/menu-default'),
link: function(scope, element) {
var contents = element.contents();
contents.unwrap();
scope.$on('$destroy', function() {
contents.remove();
$(".MenuItem--socketStatus").remove();
});
}
};
}
];

View File

@ -1,57 +1,268 @@
/** @define MainMenu */
.MainMenu {
@menu-breakpoint: 871px;
display: flex;
background-color: white;
margin: 0;
@media screen and (max-width: @menu-breakpoint) {
position: relative;
transition: height 0.5s ease-out;
justify-content: flex-start;
flex-direction: column;
height: 58px;
overflow: hidden;
&.Menu--open {
height: 523px !important;
// border-bottom: solid thin black;
}
&--portal.Menu--open {
height: 290px !important;
}
}
@media screen and (min-width: (@menu-breakpoint + 1px)) {
padding: 0 20px;
padding-right: 23px;
}
&-menuContainer {
display: flex;
}
&-toggle {
padding: 0;
display: flex;
@media screen and (min-width: (@menu-breakpoint + 1px)) {
display: none;
}
margin-left: auto;
}
&--fixedTop {
width: 100%;
z-index: 1040;
position: fixed;
right: 0;
left: 0;
top: 0;
}
background-color: #167ec4;
width: 100%;
z-index: 1040;
position: fixed;
right: 0;
left: 0;
top: 0;
}
.MainMenu-logo,
.MainMenu-item {
color: #fff;
background-color: #167ec4;
}
.MainMenu-logoImage {
max-width: 147px;
max-height: 50px;
}
.MainMenu-item {
padding: 0 20px;
}
.MainMenu-itemText,
.MainMenu-itemImage {
flex: initial;
}
.MainMenu-socket {
transition: background-color 0.2s, color 0.2s, border-bottom 0.1s, padding-top 0.1s;
color: #fff;
background: url(assets/socket_background.png) #167ec4;
background-size: 55px 52px;
background-repeat: no-repeat;
order: 0;
flex: initial;
padding-top: 0px;
padding-left: 20px;
padding-right: 20px;
display: flex;
align-items: center;
border: 0;
border-left: 1px solid #509ad3;
cursor: default;
}
.MainMenu-socketImage {
font-size: 18px;
text-shadow:
-1px -1px 0 #fff,
1px -1px 0 #fff,
-1px 1px 0 #fff,
1px 1px 0 #fff;
z-index: 1042;
}
@menu-breakpoint: 886px;
@media screen and (min-width: (@menu-breakpoint + 1px)) {
.MainMenu-mobileItems,
.MainMenu-toggle {
display: none;
}
.MainMenu {
height: 50px;
align-items: stretch;
}
.MainMenu-logo {
flex: initial;
padding: 0;
display: flex;
align-items: center;
border: 0;
border-bottom: 0px solid #fff;
border-right: 1px solid #509ad3;
}
.MainMenu-item {
transition: background-color 0.2s, color 0.2s, border-bottom 0.1s, padding-top 0.1s;
flex: initial;
padding-top: 0px;
border: 0;
border-bottom: 0px solid #fff;
display: flex;
align-items: center;
}
// Set up elements based on if their layout in the menu bar
.MainMenu-item--left {
border-right: 1px solid #509ad3;
}
.MainMenu-item--left:hover,
.MainMenu-item--left.is-currentRoute {
margin-left: -1px;
padding-left: 21px;
padding-right: 21px;
border-right: 0px;
}
.MainMenu-item--lastLeft {
margin-right: auto;
}
.MainMenu-item--right {
border-left: 1px solid #509ad3;
order: 1;
}
.MainMenu-item--right:hover,
.MainMenu-item--right.is-currentRoute {
border-left: 0px;
padding-left: 21px;
padding-right: 21px;
margin-right: -1px;
}
// the user item is a little different based on the icon being
// strangely positioned
.MainMenu-item--user {
margin-top: -3px;
padding-left: 25px;
}
.MainMenu-item--user:hover,
.MainMenu-item--user.is-currentRoute {
padding-left: 26px;
}
.MainMenu-item:hover,
.MainMenu-item.is-currentRoute {
padding-top: 5px;
border-bottom: 5px solid #fff;
}
.MainMenu-itemText--username {
padding-left: 13px;
}
.MainMenu-itemImage {
font-size: 20px;
}
.MainMenu-itemImage--user {
font-size: 21px;
margin-top: -9px;
margin-right: -9px;
}
.MainMenu-itemImage--docs {
font-size: 21px;
margin-top: -2px;
}
}
@media screen and (max-width: @menu-breakpoint) {
.MainMenu-item--notMobile {
display: none;
}
.MainMenu {
flex-direction: row;
flex-wrap: wrap;
}
.MainMenu-logo {
flex: 1;
border-bottom: 1px solid #509ad3;
order: 0;
}
.MainMenu-mobileItems {
display: flex;
order: 2;
flex-direction: row;
flex-wrap: wrap;
font-size: 15px;
width: 100%;
visibility: visible;
opacity: 1;
height: 416px;
transition: 0s visibility, 0.1s height, 0.3s opacity;
}
.MainMenu-mobileItems.is-hiddenOnMobile,
.MainMenu-mobileItems.is-loggedOut {
visibility: hidden;
opacity: 0;
height: 0;
}
.MainMenu-item {
flex: 0 0 100%;
padding-top: 15px;
padding-bottom: 15px;
order: 1;
border-bottom: 1px solid #509ad3;
}
.MainMenu-toggle {
transition: background-color 0.2s;
color: #fff;
background-color: #167ec4;
order: 0;
flex: initial;
padding-top: 3px;
padding-left: 15px;
padding-right: 15px;
font-size: 34px;
display: flex;
align-items: center;
border: 0;
border-left: 1px solid #509ad3;
border-bottom: 1px solid #509ad3;
}
.MainMenu-socket {
border-bottom: 1px solid #509ad3;
}
.MainMenu-toggleImage {
width: 36px;
}
}
.MainMenu-toggle:focus,
.MainMenu-item:focus,
.MainMenu-logo:focus,
.MainMenu-toggle:hover,
.MainMenu-item:hover,
.MainMenu-logo:hover,
.MainMenu-item.is-currentRoute {
color: #fff;
}
.MainMenu-item.is-currentRoute {
background-color: #509ad3;
}
.MainMenu-toggle:hover,
.MainMenu-item:hover,
.MainMenu-logo:hover {
background-color: #5bbdbf;
}
// item on
.MainMenu-logo,
.MainMenu-item,
.MainMenu-socket,
.MainMenu-toggle {
opacity: 1;
transition: opacity .5s, background-color .2s, border-bottom .1s, padding-top .1s;
}
.MainMenu-logo.is-loggedOut,
.MainMenu-item.is-loggedOut,
.MainMenu-socket.is-loggedOut,
.MainMenu-toggle.is-loggedOut {
opacity: 0;
}

View File

@ -1,48 +1,76 @@
/* jshint unused: vars */
export default
[ 'templateUrl',
function(templateUrl) {
return {
restrict: 'E',
controllerAs: 'mainMenu',
templateUrl: templateUrl('main-menu/main-menu'),
controller: ['$scope', function($scope) {
this.open = function() {
$scope.isOpen = true;
};
[ '$location', 'templateUrl', '$rootScope', function($location, templateUrl, $rootScope) {
return {
restrict: 'E',
templateUrl: templateUrl('main-menu/main-menu'),
link: function(scope, element, attrs) {
// check to see if this is the current route
scope.isCurrentRoute = function(route) {
if ($location.url().split('/')[1] === route) {
return true;
} else {
return false;
}
};
this.close = function() {
$scope.isOpen = false;
};
this.toggle = function() {
$scope.isOpen = !$scope.isOpen;
};
$scope.isOpen = false;
}],
scope: {
menuStyle: '&menuStyle',
currentUser: '='
},
link: function(scope, element, attrs) {
scope.menuStyleClassName = 'blah';
scope.$watch(function() {
return scope.$eval(scope.menuStyle);
}, function(newValue) {
scope.menuStyleClassName = 'MainMenu--' + newValue;
});
scope.$watch('isOpen', function(isOpen) {
if (isOpen) {
element.find('.MainMenu').addClass("Menu--open");
element.find('menu-toggle-button').addClass("MenuToggle--open");
// check to see if the current route is the currently
// logged in user
scope.isCurrentRouteUser = function() {
if ($rootScope && $rootScope.current_user) {
if ($location.url().split('/')[1] === 'users') {
if ($location.url().split('/')[2] === ($rootScope.current_user.id + "")) {
return true;
} else {
return false;
}
} else {
element.find('.MainMenu').removeClass("Menu--open");
element.find('menu-toggle-button').removeClass("MenuToggle--open");
return false;
}
});
}
};
}
];
} else {
return false;
}
};
// set up the user tooltip
$rootScope.$on('current_user', function(user) {
scope.currentUserTip = "Logged in as " + user.un;
});
// set up things for the socket notification
scope.socketHelp = $rootScope.socketHelp;
scope.socketTip = $rootScope.socketTip;
$rootScope.$watch('socketStatus', function(newStatus) {
scope.socketStatus = newStatus;
scope.socketIconClass = "icon-socket-" + scope.socketStatus;
});
$rootScope.$watch('socketTip', function(newTip) {
scope.socketTip = newTip;
});
// default the mobile menu as hidden
scope.isHiddenOnMobile = true;
// set up the click function to toggle mobile menu
scope.toggleMenu = function() {
if (scope.isHiddenOnMobile) {
scope.isHiddenOnMobile = false;
} else {
scope.isHiddenOnMobile = true;
}
};
// if the user clicks outside of the mobile menu,
// close it if it's open
$("body").on('click', function(e) {
e.stopPropagation();
if ($(e.target).parents(".MainMenu").length === 0) {
scope.isHiddenOnMobile = true;
}
});
// close the menu when the user clicks a link to a different route
scope.$on('$locationChangeStart', function(event) {
scope.isHiddenOnMobile = true;
});
}
};
}];

View File

@ -1,8 +1,191 @@
<nav class="MainMenu MainMenu--fixedTop" ng-class="menuStyleClassName" ng-switch="$eval(menuStyle)">
<a link-to="dashboard" menu-item class="MenuItem MenuItem--logo">
<img id="ansible-brand-logo" alt="Ansible Tower" class="MenuItem-logo" src="/static/assets/TowerLogo.svg">
<menu-toggle-button width="15" height="15" bar-height="2" class="MainMenu-toggle"></menu-toggle-button>
<nav id="main_menu" class="MainMenu">
<!-- Menu logo item -->
<a id="main_menu_logo"
href="/#/"
class="MainMenu-logo"
ng-class="{'is-loggedOut' : !$root.current_user.username}">
<img class="MainMenu-logoImage"
ng-src="/static/assets/main_menu_logo.png">
</a>
<default-menu ng-switch-when="default" class="MainMenu-menuContainer"></default-menu>
<portal-menu ng-switch-when="portal" class="MainMenu-menuContainer"></portal-menu>
<!-- Mobile menu items -->
<span id="main_menu_mobile_items" class="MainMenu-mobileItems" ng-class="{'is-hiddenOnMobile': isHiddenOnMobile, 'is-loggedOut' : !$root.current_user.username}">
<a class="MainMenu-item"
id="main_menu_projects_mobile_link"
href="/#/projects"
ng-class="{'is-currentRoute' : isCurrentRoute('projects')}">
<span class="MainMenu-itemText">
PROJECTS
</span>
</a>
<a class="MainMenu-item"
id="main_menu_inventories_mobile_link"
href="/#/inventories"
ng-class="{'is-currentRoute' : isCurrentRoute('inventories')}">
<span class="MainMenu-itemText">
INVENTORIES
</span>
</a>
<a class="MainMenu-item"
id="main_menu_job_templates_mobile_link"
href="/#/job_templates"
ng-class="{'is-currentRoute' : isCurrentRoute('job_templates')}">
<span class="MainMenu-itemText">
JOB TEMPLATES
</span>
</a>
<a class="MainMenu-item"
id="main_menu_jobs_mobile_link"
href="/#/jobs"
ng-class="{'is-currentRoute' : isCurrentRoute('jobs')}">
<span class="MainMenu-itemText">
JOBS
</span>
</a>
<a class="MainMenu-item"
id="main_menu_current_user_mobile_link"
ng-href="/#/users/{{ $root.current_user.id }}"
ng-class="{'is-currentRoute' : isCurrentRouteUser()}">
<span class="MainMenu-itemText">
VIEW USER PAGE FOR {{ $root.current_user.username | uppercase }}
</span>
</a>
<a class="MainMenu-item"
id="main_menu_setup_mobile_link"
ng-href="/#/setup"
ng-class="{'is-currentRoute' : isCurrentRoute('setup')}">
<span class="MainMenu-itemText">
SETTINGS
</span>
</a>
<a class="MainMenu-item"
id="main_menu_docs_mobile_link"
ng-href="http://docs.ansible.com/ansible-tower/"
target="_blank">
<span class="MainMenu-itemText">
VIEW DOCUMENTATION
</span>
</a>
<a class="MainMenu-item"
id="main_menu_logout_mobile_link"
ng-href="/#/logout"
ng-class="{'is-currentRoute' : isCurrentRoute('logout')}">
<span class="MainMenu-itemText">
LOG OUT
</span>
</a>
</span>
<!-- Non-mobile menu items -->
<a class="MainMenu-item MainMenu-item--notMobile MainMenu-item--left"
id="main_menu_projects_link"
href="/#/projects"
ng-class="{'is-currentRoute' : isCurrentRoute('projects'), 'is-loggedOut' : !$root.current_user.username}">
<span class="MainMenu-itemText">
PROJECTS
</span>
</a>
<a class="MainMenu-item MainMenu-item--notMobile MainMenu-item--left"
id="main_menu_inventories_link"
href="/#/inventories"
ng-class="{'is-currentRoute' : isCurrentRoute('inventories'), 'is-loggedOut' : !$root.current_user.username}">
<span class="MainMenu-itemText">
INVENTORIES
</span>
</a>
<a class="MainMenu-item MainMenu-item--notMobile MainMenu-item--left"
id="main_menu_job_templates_link"
href="/#/job_templates"
ng-class="{'is-currentRoute' : isCurrentRoute('job_templates'), 'is-loggedOut' : !$root.current_user.username}">
<span class="MainMenu-itemText">
JOB TEMPLATES
</span>
</a>
<a class="MainMenu-item MainMenu-item--notMobile MainMenu-item--left MainMenu-item--lastLeft"
id="main_menu_jobs_link"
href="/#/jobs"
ng-class="{'is-currentRoute' : isCurrentRoute('jobs'), 'is-loggedOut' : !$root.current_user.username}">
<span class="MainMenu-itemText">
JOBS
</span>
</a>
<a class="MainMenu-item MainMenu-item--notMobile MainMenu-item--user MainMenu-item--right"
id="main_menu_current_user_link"
ng-href="/#/users/{{ $root.current_user.id }}"
ng-class="{'is-currentRoute' : isCurrentRouteUser(), 'is-loggedOut' : !$root.current_user.username}"
aw-tool-tip="{{currentUserTip}}"
aw-tip-watch="currentUserTip"
data-placement="bottom"
data-trigger="hover"
data-container="body">
<i class="MainMenu-itemImage MainMenu-itemImage--user icon-user"
alt="Logged in as {{ $root.current_user.username}}">
</i>
<span class="MainMenu-itemText MainMenu-itemText--username">
{{ $root.current_user.username}}
</span>
</a>
<a class="MainMenu-item MainMenu-item--notMobile MainMenu-item--right"
id="main_menu_setup_link"
ng-href="/#/setup"
ng-class="{'is-currentRoute' : isCurrentRoute('setup'), 'is-loggedOut' : !$root.current_user.username}"
aw-tool-tip="Settings"
data-placement="bottom"
data-trigger="hover"
data-container="body">
<i class="MainMenu-itemImage fa fa-cog"
alt="Settings">
</i>
</a>
<a class="MainMenu-item MainMenu-item--notMobile MainMenu-item--right"
id="main_menu_docs_link"
ng-href="http://docs.ansible.com/ansible-tower/"
ng-class="{'is-loggedOut' : !$root.current_user.username}"
aw-tool-tip="View Documentation"
data-placement="bottom"
data-trigger="hover"
data-container="body"
target="_blank">
<i class="MainMenu-itemImage MainMenu-itemImage--docs fa fa-question-circle"
alt="View Documentation">
</i>
</a>
<a class="MainMenu-item MainMenu-item--notMobile MainMenu-item--right"
id="main_menu_logout_link"
ng-href="/#/logout"
ng-class="{'is-currentRoute' : isCurrentRoute('logout'), 'is-loggedOut' : !$root.current_user.username}"
aw-tool-tip="Log Out"
data-placement="bottom"
data-trigger="hover"
data-container="body"
data-tooltip_inner_class="tooltip-inner--logOut">
<i class="MainMenu-itemImage fa fa-power-off"
alt="Log Out">
</i>
</a>
<!-- Socket-status item -->
<button
id="main_menu_socket_status_notification"
class="MainMenu-socket"
aw-tool-tip="{{socketTip}}"
tip-watch="socketTip"
data-placement="bottom"
data-trigger="hover"
data-container="body"
ng-class="{'is-loggedOut' : !$root.current_user.username}"
ng-if="socketStatus && socketStatus !== 'ok'">
<i class="fa MainMenu-socketImage"
ng-class="socketIconClass">
</i>
</button>
<!-- Mobile menu toggle item -->
<button
id="main_menu_mobile_toggle_button"
class="MainMenu-toggle"
ng-class="{'is-active': !isHiddenOnMobile, 'is-loggedOut' : !$root.current_user.username}"
ng-click="toggleMenu()">
<i class="fa fa-bars MainMenu-toggleImage"></i>
</button>
</nav>

View File

@ -1,19 +1,5 @@
import mainMenu from './main-menu.directive';
import menuItem from './menu-item.directive';
import menuToggle from './menu-toggle.directive';
import webSocketStatus from './web-socket-status.directive';
import defaultMenu from './default-menu.directive';
import portalMenu from './portal-menu.directive';
import shared from '../shared/main';
export default
angular.module('mainMenu',
[ shared.name
])
.directive('menuItem', menuItem)
.directive('defaultMenu', defaultMenu)
.directive('portalMenu', portalMenu)
.directive('menuToggleButton', menuToggle)
.directive('webSocketStatus', webSocketStatus)
angular.module('mainMenu', [])
.directive('mainMenu', mainMenu);

View File

@ -1,39 +0,0 @@
<a menu-item link-to="projects" title="Projects" class="MenuItem MenuItem--projects">
Projects
</a>
<a menu-item link-to="inventories" title="Inventories" class="MenuItem">
Inventories
</a>
<a menu-item link-to="jobTemplates" title="Job Templates" class="MenuItem">
Job Templates
</a>
<a menu-item link-to="jobs" title="Jobs" class="MenuItem">
Jobs
</a>
<web-socket-status class="MenuItem MenuItem--socketStatus MenuItem--right MenuItem--fixed"></web-socket-status>
<a link-to="userEdit" model="{ user_id: currentUser }" class="MenuItem MenuItem--right MenuItem--fixed MenuItem--username">
<i class="MenuItem-icon MenuItem-icon--labelled">
<aw-icon name="User"></aw-icon>
</i>
<span class="u-truncatedText">
{{currentUser.username}}
</span>
</a>
<a link-to="setup" class="MenuItem MenuItem--fixed">
<i class="MenuItem-icon" title="Setup" data-placement="bottom">
<aw-icon name="Setup"></aw-icon>
</i>
<span class="MenuItem-helpTitle">Setup</span>
</a>
<a link-to="portal" menu-item class="MenuItem MenuItem--fixed">
<i class="MenuItem-icon" title="Portal Mode" data-placement="bottom">
<aw-icon name="PortalMode"></aw-icon>
</i>
<span class="MenuItem-helpTitle">Portal Mode</span>
</a>
<a link-to="signOut" class="MenuItem MenuItem--fixed">
<i class="MenuItem-icon" title="Sign Out" data-placement="bottom">
<aw-icon name="Signout"></aw-icon>
</i>
<span class="MenuItem-helpTitle" data-placement="bottom">Sign Out</span>
</a>

View File

@ -1,142 +0,0 @@
/** @define MenuItem */
@import (reference) "../shared/utilities/icons.less";
@import "../shared/branding/colors.less";
.MenuItem {
@menu-breakpoint: 870px;
display: flex;
flex: none;
transition: color 60ms;
padding: 0 1rem;
min-height: 5.8rem;
min-width: 9.2rem;
margin-right: 2rem;
align-items: center;
&, &:active, &:focus {
color: black;
}
&:hover {
color: @blue;
}
&:last-child {
margin-right: 0;
}
@media screen and (max-width: @menu-breakpoint) {
flex: 1 1 0;
padding: 0 1rem;
margin-right: 0;
border-bottom: solid thin rgb(202, 202, 202);
.tooltip, &+.tooltip {
display: none !important;
}
&--logo {
border: none;
display: flex;
align-items: stretch;
}
}
&--fixed {
flex: none;
min-width: 0;
margin-right: 0;
@media screen and (min-width: (@menu-breakpoint + 1px)) {
padding: 0 0.75rem;
}
}
&-helpTitle {
@media screen and (min-width: (@menu-breakpoint + 1px)) {
display: none;
}
}
&-hoverIcon {
width: 28px;
}
&--active {
font-weight: bold;
}
&--right {
// Push this and all following elements to the right
margin-left: auto;
@media screen and (max-width: @menu-breakpoint) {
margin-left: 0;
}
}
&--setup {
&:before {
.icon(@fa-var-cogs);
padding-right: 0.25rem;
}
}
&--popup {
// Make pseudo button
background: transparent;
border: 0;
padding: 8px 0;
outline: none;
&:after {
.icon(@fa-var-angle-down);
}
}
&-logo {
height: 34px;
width: 165px; // IE11 needs hard-coded with to calculate correct dimensions for image in flexbox
align-self: center;
}
&-icon {
height: 17px;
width: auto;
max-width: 18px;
flex: none;
box-sizing: initial;
&--labelled {
margin-right: 0.25rem;
}
@media screen and (max-width: @menu-breakpoint) {
display: none;
margin-right: 1.4rem;
}
}
&--socketStatus {
@media screen and (max-width: @menu-breakpoint) {
display: none;
}
}
&--username {
padding-right: 0.25rem;
@media screen and (max-width: @menu-breakpoint) {
order: 1; // moves this to the bottom
}
@media screen and (min-width: (@menu-breakpoint + 1px)) {
max-width: 110px;
margin-left: -3px;
}
}
&--projects {
margin-right: 0;
}
}

View File

@ -1,39 +0,0 @@
/* jshint unused: vars */
export default ['$route', '$rootScope', function($route, $rootScope) {
return {
require: '?^^mainMenu',
link: function(scope, element, attrs, mainMenuController) {
var routeName = attrs.linkTo;
scope.$on('$routeChangeStart', function() {
// any time we start a route change,
// assume it was from the menu, and
// close it in case it's open
mainMenuController.close();
});
scope.$on('$routeChangeSuccess', function(e, nextRoute) {
if (nextRoute.$$route && nextRoute.$$route.name === routeName) {
element.addClass('MenuItem--active');
} else {
element.removeClass('MenuItem--active');
}
if (nextRoute.$$route) {
return nextRoute.$$route.name;
} else {
return undefined;
}
});
scope.$on('$destroy', function() {
element.off('click.menu-item');
});
element.on('click', function(e) {
mainMenuController.close();
}, true);
}
};
}];

View File

@ -1,24 +0,0 @@
<a href="#portal" title="Portal" class="MenuItem MenuItem--hoverable">
Portal
</a>
<web-socket-status class="MenuItem MenuItem--socketStatus MenuItem--right MenuItem--fixed"></web-socket-status>
<a link-to="userEdit" model="{ user_id: currentUser }" class="MenuItem MenuItem--fixed MenuItem-username">
<i class="MenuItem-icon MenuItem-icon--labelled">
<aw-icon name="User"></aw-icon>
</i>
<span class="u-truncatedText">
{{currentUser.username}}
</span>
</a>
<a link-to="dashboard" class="MenuItem MenuItem--fixed" title="Portal Mode">
<i class="MenuItem-icon" title="Exit Portal Mode" data-placement="bottom">
<aw-icon name="PortalMode--exit"></aw-icon>
</i>
<span class="MenuItem-helpTitle">Exit Portal Mode</span>
</a>
<a link-to="signOut" class="MenuItem MenuItem--fixed">
<i class="MenuItem-icon" title="Sign Out" data-placement="bottom">
<aw-icon name="Signout"></aw-icon>
</i>
<span class="MenuItem-helpTitle" data-placement="bottom">Sign Out</span>
</a>

View File

@ -1,40 +0,0 @@
/** @define MenuToggle */
.MenuToggle {
align-self: center;
// Width & height hardcoded for IE
width: 12px;
height: 10px;
&-icon {
// Override settings (on svg tag) from nv.d3.css that really
// shouldn't be there, but are, so meh.
display: inherit;
width: inherit;
height: inherit;
// border: solid thin white;
}
&-bar {
fill: #000;
transition: transform 0.25s cubic-bezier(.96,-0.6,.27,1.68), opacity 0.25s;
transform: rotate(0deg);
transform-origin: center center;
}
&--open {
.MenuToggle-crossBar1 {
transform: rotate(45deg);
}
.MenuToggle-topBar, .MenuToggle-bottomBar {
opacity: 0;
}
.MenuToggle-crossBar2 {
transform: rotate(-45deg);
}
}
}

View File

@ -1,30 +0,0 @@
/* jshint unused: vars */
export default
[ 'templateUrl',
function(templateUrl) {
return {
templateUrl: templateUrl('main-menu/menu-toggle'),
restrict: 'E',
require: '^^mainMenu',
scope: {
width: '@',
height: '@',
barHeight: '@'
},
link: function(scope, element, attrs, mainMenuController) {
scope.$on('$destroy', function() {
element.off('click');
});
element.on("click", function(e) {
e.preventDefault();
e.stopPropagation();
scope.$apply(function() {
mainMenuController.toggle();
});
});
}
};
}
];

View File

@ -1,9 +0,0 @@
<button menu-toggle class="MenuToggle Button--pseudo">
<svg class="MenuToggle-icon" width="12" height="10">
<rect class="MenuToggle-bar MenuToggle-topBar" x="0" y="0" width="100%" height="2" />
<rect class="MenuToggle-bar MenuToggle-crossBar1" x="0" y="4" width="100%" height="2" />
<rect class="MenuToggle-bar MenuToggle-crossBar2" x="0" y="4" width="100%" height="2" />
<rect class="MenuToggle-bar MenuToggle-bottomBar" x="0" y="8" width="100%" height="2" />
</svg>
</button>

View File

@ -1,18 +0,0 @@
export default
[ 'templateUrl',
function(templateUrl) {
return {
restrict: 'E',
templateUrl: templateUrl('main-menu/menu-portal'),
link: function(scope, element) {
var contents = element.contents();
contents.unwrap();
scope.$on('$destroy', function() {
contents.remove();
$(".MenuItem--socketStatus").remove();
});
}
};
}
];

View File

@ -1,22 +0,0 @@
/* jshint unused: vars */
export default
[ '$rootScope',
'templateUrl',
function($rootScope, templateUrl) {
return {
restrict: 'E',
templateUrl: templateUrl('main-menu/web-socket-status'),
link: function(scope, element, attrs) {
scope.socketHelp = $rootScope.socketHelp;
scope.socketTip = $rootScope.socketTip;
$rootScope.$watch('socketStatus', function(newStatus) {
scope.socketStatus = newStatus;
});
$rootScope.$watch('socketTip', function(newTip) {
scope.socketTip = newTip;
});
}
};
}
];

View File

@ -1,10 +0,0 @@
<button
aw-tool-tip="{{socketTip}}"
tip-watch="socketTip"
data-placement="bottom"
data-trigger="hover"
data-container="body"
class="Button--pseudo"
ng-if="socketStatus !== 'ok'">
<i class="fa icon-socket-{{socketStatus}}"></i>
</button>

View File

@ -494,6 +494,13 @@ angular.module('AWDirectives', ['RestServices', 'Utilities', 'JobsHelper'])
placement = (attrs.placement !== undefined && attrs.placement !== null) ? attrs.placement : 'left';
}
var template;
if (attrs.tooltipInnerClass) {
template = '<div class="tooltip Tooltip" role="tooltip"><div class="tooltip-arrow Tooltip-arrow"></div><div class="tooltip-inner Tooltip-inner ' + attrs.tooltipInnerClass + '"></div></div>';
} else {
template = '<div class="tooltip Tooltip" role="tooltip"><div class="tooltip-arrow Tooltip-arrow"></div><div class="tooltip-inner Tooltip-inner"></div></div>';
}
$(element).on('hidden.bs.tooltip', function( ) {
// TB3RC1 is leaving behind tooltip <div> elements. This will remove them
// after a tooltip fades away. If not, they lay overtop of other elements and
@ -510,7 +517,7 @@ angular.module('AWDirectives', ['RestServices', 'Utilities', 'JobsHelper'])
title: attrs.awToolTip,
container: 'body',
trigger: 'hover focus',
template: '<div class="tooltip Tooltip" role="tooltip"><div class="tooltip-arrow Tooltip-arrow"></div><div class="tooltip-inner Tooltip-inner"></div></div>'
template: template
});
if (attrs.tipWatch) {

View File

@ -40,10 +40,7 @@
<include-svg href="{{ STATIC_URL }}assets/icons.svg"></include-svg>
<main-menu
menu-style="portalMode ? 'portal' : 'default'"
current-user="current_user">
</main-menu>
<main-menu></main-menu>
<div class="container-fluid">
<div class="container-fluid" id="#content-container">