@recaptime-dev's working patches + fork for Phorge, a community fork of Phabricator. (Upstream dev and stable branches are at upstream/main and upstream/stable respectively.) hq.recaptime.dev/wiki/Phorge
phorge phabricator
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

Add Glyphicons Halflings Font and Examples

Summary: This adds in the Glyphicons Halflings Font/Iconset as an option for PHUIIconView along with a standard set of 10 colors. This will be a replacement for the standard action icon set in upcoming diffs, as well as obviously give us more flexibility, less KB, and less design resource time managing images.

Test Plan: UIExamples, Diviner

Reviewers: btrahan, epriestley

Reviewed By: epriestley

Subscribers: epriestley, Korvin

Differential Revision: https://secure.phabricator.com/D8798

+1044 -83
+11 -6
resources/celerity/map.php
··· 109 109 'rsrc/css/application/slowvote/slowvote.css' => '266df6a1', 110 110 'rsrc/css/application/subscriptions/subscribers-list.css' => '5bb30c78', 111 111 'rsrc/css/application/tokens/tokens.css' => '5f7bca25', 112 - 'rsrc/css/application/uiexample/example.css' => '4741b891', 112 + 'rsrc/css/application/uiexample/example.css' => 'aa291bae', 113 113 'rsrc/css/core/core.css' => 'da26ddb2', 114 114 'rsrc/css/core/remarkup.css' => '0923dbd6', 115 115 'rsrc/css/core/syntax.css' => '3c18c1cb', 116 116 'rsrc/css/core/z-index.css' => '0d89d53c', 117 117 'rsrc/css/diviner/diviner-shared.css' => '38813222', 118 - 'rsrc/css/font/font-source-sans-pro.css' => '225851dd', 118 + 'rsrc/css/font/font-glyphicons-halflings.css' => '87018f55', 119 + 'rsrc/css/font/font-source-sans-pro.css' => '91d53463', 119 120 'rsrc/css/layout/phabricator-action-header-view.css' => 'c14dfc57', 120 121 'rsrc/css/layout/phabricator-action-list-view.css' => '81383e25', 121 122 'rsrc/css/layout/phabricator-crumbs-view.css' => '2d9db584', ··· 167 168 'rsrc/css/sprite-projects.css' => '7578fa56', 168 169 'rsrc/css/sprite-status.css' => '8bce1c97', 169 170 'rsrc/css/sprite-tokens.css' => '1706b943', 170 - 'rsrc/externals/font/SourceSansPro.woff' => '44e50175', 171 - 'rsrc/externals/font/SourceSansProBold.woff' => '8799f025', 171 + 'rsrc/externals/font/glyphicons/glyphicons-halflings-regular.eot' => '282d455e', 172 + 'rsrc/externals/font/glyphicons/glyphicons-halflings-regular.ttf' => 'b7c56991', 173 + 'rsrc/externals/font/glyphicons/glyphicons-halflings-regular.woff' => 'bac768cd', 174 + 'rsrc/externals/font/sourcesans/SourceSansPro.woff' => '3614608c', 175 + 'rsrc/externals/font/sourcesans/SourceSansProBold.woff' => 'cbf46566', 172 176 'rsrc/externals/javelin/core/Event.js' => '79473b62', 173 177 'rsrc/externals/javelin/core/Stratcom.js' => 'c293f7b9', 174 178 'rsrc/externals/javelin/core/__tests__/event-stop-and-kill.js' => '717554e4', ··· 518 522 'diffusion-icons-css' => '384a0f7d', 519 523 'diffusion-source-css' => '66fdf661', 520 524 'diviner-shared-css' => '38813222', 521 - 'font-source-sans-pro' => '225851dd', 525 + 'font-glyphicons-halflings' => '87018f55', 526 + 'font-source-sans-pro' => '91d53463', 522 527 'global-drag-and-drop-css' => '697324ad', 523 528 'harbormaster-css' => 'cec833b7', 524 529 'herald-css' => '59d48f01', ··· 718 723 'phabricator-textareautils' => 'b3ec3cfc', 719 724 'phabricator-tooltip' => '3915d490', 720 725 'phabricator-transaction-view-css' => 'ce491938', 721 - 'phabricator-ui-example-css' => '4741b891', 726 + 'phabricator-ui-example-css' => 'aa291bae', 722 727 'phabricator-uiexample-javelin-view' => 'd4a14807', 723 728 'phabricator-uiexample-reactor-button' => '44524435', 724 729 'phabricator-uiexample-reactor-checkbox' => '7ba325ee',
+285 -73
src/applications/uiexample/examples/PHUIIconExample.php
··· 10 10 return 'Easily render icons or images with links and sprites.'; 11 11 } 12 12 13 + private function listHalflings() { 14 + return array ( 15 + 'glass', 16 + 'music', 17 + 'search', 18 + 'envelope', 19 + 'heart', 20 + 'star', 21 + 'star-empty', 22 + 'user', 23 + 'film', 24 + 'th-large', 25 + 'th', 26 + 'th-list', 27 + 'ok', 28 + 'remove', 29 + 'zoom-in', 30 + 'zoom-out', 31 + 'off', 32 + 'signal', 33 + 'cog', 34 + 'trash', 35 + 'home', 36 + 'file', 37 + 'time', 38 + 'road', 39 + 'download-alt', 40 + 'download', 41 + 'upload', 42 + 'inbox', 43 + 'play-circle', 44 + 'repeat', 45 + 'refresh', 46 + 'list-alt', 47 + 'lock', 48 + 'flag', 49 + 'headphones', 50 + 'volume-off', 51 + 'volume-down', 52 + 'volume-up', 53 + 'qrcode', 54 + 'barcode', 55 + 'tag', 56 + 'tags', 57 + 'book', 58 + 'bookmark', 59 + 'print', 60 + 'camera', 61 + 'font', 62 + 'bold', 63 + 'italic', 64 + 'text-height', 65 + 'text-width', 66 + 'align-left', 67 + 'align-center', 68 + 'align-right', 69 + 'align-justify', 70 + 'list', 71 + 'indent-left', 72 + 'indent-right', 73 + 'facetime-video', 74 + 'picture', 75 + 'pencil', 76 + 'map-marker', 77 + 'adjust', 78 + 'tint', 79 + 'edit', 80 + 'share', 81 + 'check', 82 + 'move', 83 + 'step-backward', 84 + 'fast-backward', 85 + 'backward', 86 + 'play', 87 + 'pause', 88 + 'stop', 89 + 'forward', 90 + 'fast-forward', 91 + 'step-forward', 92 + 'eject', 93 + 'chevron-left', 94 + 'chevron-right', 95 + 'plus-sign', 96 + 'minus-sign', 97 + 'remove-sign', 98 + 'ok-sign', 99 + 'question-sign', 100 + 'info-sign', 101 + 'screenshot', 102 + 'remove-circle', 103 + 'ok-circle', 104 + 'ban-circle', 105 + 'arrow-left', 106 + 'arrow-right', 107 + 'arrow-up', 108 + 'arrow-down', 109 + 'share-alt', 110 + 'resize-full', 111 + 'resize-small', 112 + 'plus', 113 + 'minus', 114 + 'asterisk', 115 + 'exclamation-sign', 116 + 'gift', 117 + 'leaf', 118 + 'fire', 119 + 'eye-open', 120 + 'eye-close', 121 + 'warning-sign', 122 + 'plane', 123 + 'calendar', 124 + 'random', 125 + 'comments', 126 + 'magnet', 127 + 'chevron-up', 128 + 'chevron-down', 129 + 'retweet', 130 + 'shopping-cart', 131 + 'folder-close', 132 + 'folder-open', 133 + 'resize-vertical', 134 + 'resize-horizontal', 135 + 'hdd', 136 + 'bullhorn', 137 + 'bell', 138 + 'certificate', 139 + 'thumbs-up', 140 + 'thumbs-down', 141 + 'hand-right', 142 + 'hand-left', 143 + 'hand-top', 144 + 'hand-down', 145 + 'circle-arrow-right', 146 + 'circle-arrow-left', 147 + 'circle-arrow-top', 148 + 'circle-arrow-down', 149 + 'globe', 150 + 'wrench', 151 + 'tasks', 152 + 'filter', 153 + 'briefcase', 154 + 'fullscreen', 155 + 'dashboard', 156 + 'paperclip', 157 + 'heart-empty', 158 + 'link', 159 + 'phone', 160 + 'pushpin', 161 + 'euro', 162 + 'usd', 163 + 'gbp', 164 + 'sort', 165 + 'sort-by-alphabet', 166 + 'sort-by-alphabet-alt', 167 + 'sort-by-order', 168 + 'sort-by-order-alt', 169 + 'sort-by-attributes', 170 + 'sort-by-attributes-alt', 171 + 'unchecked', 172 + 'expand', 173 + 'collapse', 174 + 'collapse-top', 175 + 'log_in', 176 + 'flash', 177 + 'log_out', 178 + 'new_window', 179 + 'record', 180 + 'save', 181 + 'open', 182 + 'saved', 183 + 'import', 184 + 'export', 185 + 'send', 186 + 'floppy_disk', 187 + 'floppy_saved', 188 + 'floppy_remove', 189 + 'floppy_save', 190 + 'floppy_open', 191 + 'credit_card', 192 + 'transfer', 193 + 'cutlery', 194 + 'header', 195 + 'compressed', 196 + 'earphone', 197 + 'phone_alt', 198 + 'tower', 199 + 'stats', 200 + 'sd_video', 201 + 'hd_video', 202 + 'subtitles', 203 + 'sound_stereo', 204 + 'sound_dolby', 205 + 'sound_5_1', 206 + 'sound_6_1', 207 + 'sound_7_1', 208 + 'copyright_mark', 209 + 'registration_mark', 210 + 'cloud', 211 + 'cloud_download', 212 + 'cloud_upload', 213 + 'tree_conifer', 214 + 'tree_deciduous', 215 + ); 216 + } 217 + 218 + private function listColors() { 219 + return array( 220 + null, 221 + 'bluegrey', 222 + 'white', 223 + 'red', 224 + 'orange', 225 + 'yellow', 226 + 'green', 227 + 'blue', 228 + 'sky', 229 + 'indigo', 230 + 'violet', 231 + ); 232 + } 233 + 13 234 public function renderExample() { 235 + 236 + $colors = $this->listColors(); 237 + $glyphs = $this->listHalflings(); 238 + $gicons = array(); 239 + foreach ($glyphs as $glyph) { 240 + $gicons[] = id(new PHUIIconView()) 241 + ->addClass('phui-halfling-name') 242 + ->setHalfling($glyph) 243 + ->appendChild($glyph); 244 + } 245 + $cicons = array(); 246 + foreach ($colors as $color) { 247 + $cicons[] = id(new PHUIIconView()) 248 + ->addClass('phui-halfling-color') 249 + ->setHalfling('tag', $color) 250 + ->appendChild(pht('tag %s', $color)); 251 + } 14 252 15 253 $person1 = new PHUIIconView(); 16 254 $person1->setHeadSize(PHUIIconView::HEAD_MEDIUM); ··· 114 352 ->addClass(PHUI::MARGIN_SMALL_RIGHT); 115 353 } 116 354 117 - $layout1 = 118 - array( 119 - id(new PHUIBoxView()) 120 - ->appendChild($actionview) 121 - ->addMargin(PHUI::MARGIN_MEDIUM) 122 - ->addPadding(PHUI::PADDING_SMALL) 123 - ->setBorder(true)); 355 + $layout_gicons = id(new PHUIBoxView()) 356 + ->appendChild($gicons) 357 + ->addMargin(PHUI::MARGIN_LARGE); 124 358 125 - $layout2 = 126 - array( 127 - id(new PHUIBoxView()) 128 - ->appendChild(array($person1, $person2, $person3)) 129 - ->addMargin(PHUI::MARGIN_MEDIUM) 130 - ->addPadding(PHUI::PADDING_SMALL) 131 - ->setBorder(true)); 359 + $layout_cicons = id(new PHUIBoxView()) 360 + ->appendChild($cicons) 361 + ->addMargin(PHUI::MARGIN_LARGE); 132 362 133 - $layout2a = 134 - array( 135 - id(new PHUIBoxView()) 136 - ->appendChild(array($person4, $person5, $person6)) 137 - ->addMargin(PHUI::MARGIN_MEDIUM) 138 - ->addPadding(PHUI::PADDING_SMALL) 139 - ->setBorder(true)); 363 + $layout1 = id(new PHUIBoxView()) 364 + ->appendChild($actionview) 365 + ->addMargin(PHUI::MARGIN_MEDIUM); 140 366 141 - $layout3 = 142 - array( 143 - id(new PHUIBoxView()) 144 - ->appendChild($tokenview) 145 - ->addMargin(PHUI::MARGIN_MEDIUM) 146 - ->addPadding(PHUI::PADDING_SMALL) 147 - ->setBorder(true)); 367 + $layout2 = id(new PHUIBoxView()) 368 + ->appendChild(array($person1, $person2, $person3)) 369 + ->addMargin(PHUI::MARGIN_MEDIUM); 148 370 149 - $layout4 = 150 - array( 151 - id(new PHUIBoxView()) 152 - ->appendChild(array($card1, $card2, $card3, $card4, $card5)) 153 - ->addMargin(PHUI::MARGIN_MEDIUM) 154 - ->addPadding(PHUI::PADDING_MEDIUM) 155 - ->setBorder(true)); 371 + $layout2a = id(new PHUIBoxView()) 372 + ->appendChild(array($person4, $person5, $person6)) 373 + ->addMargin(PHUI::MARGIN_MEDIUM); 156 374 157 - $layout5 = 158 - array( 159 - id(new PHUIBoxView()) 160 - ->appendChild($loginview) 161 - ->addMargin(PHUI::MARGIN_MEDIUM) 162 - ->addPadding(PHUI::PADDING_MEDIUM) 163 - ->setBorder(true)); 375 + $layout3 = id(new PHUIBoxView()) 376 + ->appendChild($tokenview) 377 + ->addMargin(PHUI::MARGIN_MEDIUM); 164 378 165 - $head1 = id(new PHUIHeaderView()) 166 - ->setHeader(pht('Action Icons!')); 379 + $layout4 = id(new PHUIBoxView()) 380 + ->appendChild(array($card1, $card2, $card3, $card4, $card5)) 381 + ->addMargin(PHUI::MARGIN_MEDIUM); 167 382 168 - $head2 = id(new PHUIHeaderView()) 169 - ->setHeader(pht('People!')); 383 + $layout5 = id(new PHUIBoxView()) 384 + ->appendChild($loginview) 385 + ->addMargin(PHUI::MARGIN_MEDIUM); 170 386 171 - $head3 = id(new PHUIHeaderView()) 172 - ->setHeader(pht('Tokens')); 387 + $halflings = id(new PHUIObjectBoxView()) 388 + ->setHeaderText(pht('Glyphicon Halflings')) 389 + ->appendChild($layout_gicons); 173 390 174 - $head4 = id(new PHUIHeaderView()) 175 - ->setHeader(pht('Payments')); 391 + $halflings_color = id(new PHUIObjectBoxView()) 392 + ->setHeaderText(pht('Halflings Colors')) 393 + ->appendChild($layout_cicons); 176 394 177 - $head5 = id(new PHUIHeaderView()) 178 - ->setHeader(pht('Authentication')); 179 - 180 - $wrap1 = id(new PHUIBoxView()) 181 - ->appendChild($layout1) 182 - ->addMargin(PHUI::MARGIN_LARGE); 395 + $wrap1 = id(new PHUIObjectBoxView()) 396 + ->setHeaderText(pht('Action Icons!')) 397 + ->appendChild($layout1); 183 398 184 - $wrap2 = id(new PHUIBoxView()) 185 - ->appendChild(array($layout2, $layout2a)) 186 - ->addMargin(PHUI::MARGIN_LARGE); 399 + $wrap2 = id(new PHUIObjectBoxView()) 400 + ->setHeaderText(pht('People!')) 401 + ->appendChild(array($layout2, $layout2a)); 187 402 188 - $wrap3 = id(new PHUIBoxView()) 189 - ->appendChild($layout3) 190 - ->addMargin(PHUI::MARGIN_LARGE); 403 + $wrap3 = id(new PHUIObjectBoxView()) 404 + ->setHeaderText(pht('Tokens')) 405 + ->appendChild($layout3); 191 406 192 - $wrap4 = id(new PHUIBoxView()) 193 - ->appendChild($layout4) 194 - ->addMargin(PHUI::MARGIN_LARGE); 407 + $wrap4 = id(new PHUIObjectBoxView()) 408 + ->setHeaderText(pht('Payments')) 409 + ->appendChild($layout4); 195 410 196 - $wrap5 = id(new PHUIBoxView()) 197 - ->appendChild($layout5) 198 - ->addMargin(PHUI::MARGIN_LARGE); 411 + $wrap5 = id(new PHUIObjectBoxView()) 412 + ->setHeaderText(pht('Authentication')) 413 + ->appendChild($layout5); 199 414 200 415 return phutil_tag( 201 416 'div', ··· 203 418 'class' => 'phui-icon-example', 204 419 ), 205 420 array( 206 - $head1, 421 + $halflings, 422 + $halflings_color, 207 423 $wrap1, 208 - $head2, 209 424 $wrap2, 210 - $head3, 211 425 $wrap3, 212 - $head4, 213 426 $wrap4, 214 - $head5, 215 427 $wrap5 216 428 )); 217 429 }
+2
src/infrastructure/celerity/CelerityResourceController.php
··· 93 93 'jpg' => 'image/jpeg', 94 94 'swf' => 'application/x-shockwave-flash', 95 95 'woff' => 'font/woff', 96 + 'eot' => 'font/eot', 97 + 'ttf' => 'font/ttf', 96 98 ); 97 99 } 98 100
+2
src/infrastructure/celerity/resources/CelerityResourcesOnDisk.php
··· 34 34 'gif', 35 35 'swf', 36 36 'woff', 37 + 'ttf', 38 + 'eot', 37 39 ); 38 40 } 39 41
+16
src/view/phui/PHUIIconView.php
··· 19 19 private $href = null; 20 20 private $image; 21 21 private $headSize = null; 22 + 22 23 private $spriteIcon; 23 24 private $spriteSheet; 25 + private $halfling; 26 + private $halflingColor; 24 27 25 28 public function setHref($href) { 26 29 $this->href = $href; ··· 47 50 return $this; 48 51 } 49 52 53 + public function setHalfling($hf, $color=null) { 54 + $this->halfling = $hf; 55 + $this->halflingColor = $color; 56 + return $this; 57 + } 58 + 50 59 public function getTagName() { 51 60 $tag = 'span'; 52 61 if ($this->href) { ··· 66 75 require_celerity_resource('sprite-'.$this->spriteSheet.'-css'); 67 76 $classes[] = 'sprite-'.$this->spriteSheet; 68 77 $classes[] = $this->spriteSheet.'-'.$this->spriteIcon; 78 + } elseif ($this->halfling) { 79 + require_celerity_resource('font-glyphicons-halflings'); 80 + $classes[] = 'halflings'; 81 + $classes[] = $this->halfling; 82 + if ($this->halflingColor) { 83 + $classes[] = $this->halflingColor; 84 + } 69 85 } else { 70 86 if ($this->headSize) { 71 87 $classes[] = $this->headSize;
+14 -2
webroot/rsrc/css/application/uiexample/example.css
··· 39 39 } 40 40 41 41 .jxui-blue-background { 42 - background: blue; 42 + background: {$blue}; 43 43 } 44 44 45 45 .jxui-red-border { 46 - border-color: red; 46 + border-color: {$red}; 47 + } 48 + 49 + .phui-icon-view.phui-halfling-name { 50 + display: inline-block; 51 + width: 140px; 52 + padding-bottom: 8px; 53 + white-space: nowrap; 54 + } 55 + 56 + .phui-icon-view.phui-halfling-color { 57 + display: block; 58 + padding-bottom: 8px; 47 59 }
+666
webroot/rsrc/css/font/font-glyphicons-halflings.css
··· 1 + /** 2 + * @provides font-glyphicons-halflings 3 + */ 4 + @font-face { 5 + font-family: 'Glyphicons Halflings Regular'; 6 + src: url('/rsrc/externals/font/glyphicons/glyphicons-halflings-regular.eot'); 7 + src: url('/rsrc/externals/font/glyphicons/glyphicons-halflings-regular.eot?#iefix') format('embedded-opentype'), url('/rsrc/externals/font/glyphicons/glyphicons-halflings-regular.woff') format('woff'), url('/rsrc/externals/font/glyphicons/glyphicons-halflings-regular.ttf') format('truetype'); 8 + font-weight: normal; 9 + font-style: normal; 10 + } 11 + .phui-icon-view.halflings { 12 + display: inline-block; 13 + position: relative; 14 + padding-left: 20px; 15 + color: {$darkgreytext}; 16 + text-decoration: none; 17 + *display: inline; 18 + *zoom: 1; 19 + vertical-align: middle; 20 + } 21 + .phui-icon-view.halflings:before { 22 + position: absolute; 23 + left: 0; 24 + top: 0; 25 + display: inline-block; 26 + margin: 0 5px 0 0; 27 + font: 12px/1em 'Glyphicons Halflings Regular'; 28 + font-style: normal; 29 + font-weight: normal; 30 + color: {$darkgreytext}; 31 + *display: inline; 32 + *zoom: 1; 33 + vertical-align: middle; 34 + text-transform: none; 35 + -webkit-font-smoothing: antialiased; 36 + } 37 + .halflings.bluegrey:before { 38 + color: #7787a6; 39 + } 40 + .halflings.white:before { 41 + color: #fff; 42 + } 43 + .halflings.red:before { 44 + color: {$red}; 45 + } 46 + .halflings.orange:before { 47 + color: {$orange}; 48 + } 49 + .halflings.yellow:before { 50 + color: {$yellow}; 51 + } 52 + .halflings.green:before { 53 + color: {$green} 54 + } 55 + .halflings.blue:before { 56 + color: {$blue}; 57 + } 58 + .halflings.sky:before { 59 + color: {$sky}; 60 + } 61 + .halflings.indigo:before { 62 + color: {$indigo}; 63 + } 64 + .halflings.violet:before { 65 + color: {$violet}; 66 + } 67 + .halflings.glass:before { 68 + content: "\E001"; 69 + } 70 + .halflings.music:before { 71 + content: "\E002"; 72 + } 73 + .halflings.search:before { 74 + content: "\E003"; 75 + } 76 + .halflings.envelope:before { 77 + content: "\2709"; 78 + } 79 + .halflings.heart:before { 80 + content: "\E005"; 81 + } 82 + .halflings.star:before { 83 + content: "\E006"; 84 + } 85 + .halflings.star-empty:before { 86 + content: "\E007"; 87 + } 88 + .halflings.user:before { 89 + content: "\E008"; 90 + } 91 + .halflings.film:before { 92 + content: "\E009"; 93 + } 94 + .halflings.th-large:before { 95 + content: "\E010"; 96 + } 97 + .halflings.th:before { 98 + content: "\E011"; 99 + } 100 + .halflings.th-list:before { 101 + content: "\E012"; 102 + } 103 + .halflings.ok:before { 104 + content: "\E013"; 105 + } 106 + .halflings.remove:before { 107 + content: "\E014"; 108 + } 109 + .halflings.zoom-in:before { 110 + content: "\E015"; 111 + } 112 + .halflings.zoom-out:before { 113 + content: "\E016"; 114 + } 115 + .halflings.off:before { 116 + content: "\E017"; 117 + } 118 + .halflings.signal:before { 119 + content: "\E018"; 120 + } 121 + .halflings.cog:before { 122 + content: "\E019"; 123 + } 124 + .halflings.trash:before { 125 + content: "\E020"; 126 + } 127 + .halflings.home:before { 128 + content: "\E021"; 129 + } 130 + .halflings.file:before { 131 + content: "\E022"; 132 + } 133 + .halflings.time:before { 134 + content: "\E023"; 135 + } 136 + .halflings.road:before { 137 + content: "\E024"; 138 + } 139 + .halflings.download-alt:before { 140 + content: "\E025"; 141 + } 142 + .halflings.download:before { 143 + content: "\E026"; 144 + } 145 + .halflings.upload:before { 146 + content: "\E027"; 147 + } 148 + .halflings.inbox:before { 149 + content: "\E028"; 150 + } 151 + .halflings.play-circle:before { 152 + content: "\E029"; 153 + } 154 + .halflings.repeat:before { 155 + content: "\E030"; 156 + } 157 + .halflings.refresh:before { 158 + content: "\E031"; 159 + } 160 + .halflings.list-alt:before { 161 + content: "\E032"; 162 + } 163 + .halflings.lock:before { 164 + content: "\1F512"; 165 + } 166 + .halflings.flag:before { 167 + content: "\E034"; 168 + } 169 + .halflings.headphones:before { 170 + content: "\E035"; 171 + } 172 + .halflings.volume-off:before { 173 + content: "\E036"; 174 + } 175 + .halflings.volume-down:before { 176 + content: "\E037"; 177 + } 178 + .halflings.volume-up:before { 179 + content: "\E038"; 180 + } 181 + .halflings.qrcode:before { 182 + content: "\E039"; 183 + } 184 + .halflings.barcode:before { 185 + content: "\E040"; 186 + } 187 + .halflings.tag:before { 188 + content: "\E041"; 189 + } 190 + .halflings.tags:before { 191 + content: "\E042"; 192 + } 193 + .halflings.book:before { 194 + content: "\E043"; 195 + } 196 + .halflings.bookmark:before { 197 + content: "\1F516"; 198 + } 199 + .halflings.print:before { 200 + content: "\E045"; 201 + } 202 + .halflings.camera:before { 203 + content: "\1F4F7"; 204 + } 205 + .halflings.font:before { 206 + content: "\E047"; 207 + } 208 + .halflings.bold:before { 209 + content: "\E048"; 210 + } 211 + .halflings.italic:before { 212 + content: "\E049"; 213 + } 214 + .halflings.text-height:before { 215 + content: "\E050"; 216 + } 217 + .halflings.text-width:before { 218 + content: "\E051"; 219 + } 220 + .halflings.align-left:before { 221 + content: "\E052"; 222 + } 223 + .halflings.align-center:before { 224 + content: "\E053"; 225 + } 226 + .halflings.align-right:before { 227 + content: "\E054"; 228 + } 229 + .halflings.align-justify:before { 230 + content: "\E055"; 231 + } 232 + .halflings.list:before { 233 + content: "\E056"; 234 + } 235 + .halflings.indent-left:before { 236 + content: "\E057"; 237 + } 238 + .halflings.indent-right:before { 239 + content: "\E058"; 240 + } 241 + .halflings.facetime-video:before { 242 + content: "\E059"; 243 + } 244 + .halflings.picture:before { 245 + content: "\E060"; 246 + } 247 + .halflings.pencil:before { 248 + content: "\270F"; 249 + } 250 + .halflings.map-marker:before { 251 + content: "\E062"; 252 + } 253 + .halflings.adjust:before { 254 + content: "\E063"; 255 + } 256 + .halflings.tint:before { 257 + content: "\E064"; 258 + } 259 + .halflings.edit:before { 260 + content: "\E065"; 261 + } 262 + .halflings.share:before { 263 + content: "\E066"; 264 + } 265 + .halflings.check:before { 266 + content: "\E067"; 267 + } 268 + .halflings.move:before { 269 + content: "\E068"; 270 + } 271 + .halflings.step-backward:before { 272 + content: "\E069"; 273 + } 274 + .halflings.fast-backward:before { 275 + content: "\E070"; 276 + } 277 + .halflings.backward:before { 278 + content: "\E071"; 279 + } 280 + .halflings.play:before { 281 + content: "\E072"; 282 + } 283 + .halflings.pause:before { 284 + content: "\E073"; 285 + } 286 + .halflings.stop:before { 287 + content: "\E074"; 288 + } 289 + .halflings.forward:before { 290 + content: "\E075"; 291 + } 292 + .halflings.fast-forward:before { 293 + content: "\E076"; 294 + } 295 + .halflings.step-forward:before { 296 + content: "\E077"; 297 + } 298 + .halflings.eject:before { 299 + content: "\E078"; 300 + } 301 + .halflings.chevron-left:before { 302 + content: "\E079"; 303 + } 304 + .halflings.chevron-right:before { 305 + content: "\E080"; 306 + } 307 + .halflings.plus-sign:before { 308 + content: "\E081"; 309 + } 310 + .halflings.minus-sign:before { 311 + content: "\E082"; 312 + } 313 + .halflings.remove-sign:before { 314 + content: "\E083"; 315 + } 316 + .halflings.ok-sign:before { 317 + content: "\E084"; 318 + } 319 + .halflings.question-sign:before { 320 + content: "\E085"; 321 + } 322 + .halflings.info-sign:before { 323 + content: "\E086"; 324 + } 325 + .halflings.screenshot:before { 326 + content: "\E087"; 327 + } 328 + .halflings.remove-circle:before { 329 + content: "\E088"; 330 + } 331 + .halflings.ok-circle:before { 332 + content: "\E089"; 333 + } 334 + .halflings.ban-circle:before { 335 + content: "\E090"; 336 + } 337 + .halflings.arrow-left:before { 338 + content: "\E091"; 339 + } 340 + .halflings.arrow-right:before { 341 + content: "\E092"; 342 + } 343 + .halflings.arrow-up:before { 344 + content: "\E093"; 345 + } 346 + .halflings.arrow-down:before { 347 + content: "\E094"; 348 + } 349 + .halflings.share-alt:before { 350 + content: "\E095"; 351 + } 352 + .halflings.resize-full:before { 353 + content: "\E096"; 354 + } 355 + .halflings.resize-small:before { 356 + content: "\E097"; 357 + } 358 + .halflings.plus:before { 359 + content: "\002B"; 360 + } 361 + .halflings.minus:before { 362 + content: "\2212"; 363 + } 364 + .halflings.asterisk:before { 365 + content: "\002A"; 366 + } 367 + .halflings.exclamation-sign:before { 368 + content: "\E101"; 369 + } 370 + .halflings.gift:before { 371 + content: "\E102"; 372 + } 373 + .halflings.leaf:before { 374 + content: "\E103"; 375 + } 376 + .halflings.fire:before { 377 + content: "\1F525"; 378 + } 379 + .halflings.eye-open:before { 380 + content: "\E105"; 381 + } 382 + .halflings.eye-close:before { 383 + content: "\E106"; 384 + } 385 + .halflings.warning-sign:before { 386 + content: "\E107"; 387 + } 388 + .halflings.plane:before { 389 + content: "\E108"; 390 + } 391 + .halflings.calendar:before { 392 + content: "\1F4C5"; 393 + } 394 + .halflings.random:before { 395 + content: "\E110"; 396 + } 397 + .halflings.comments:before { 398 + content: "\E111"; 399 + } 400 + .halflings.magnet:before { 401 + content: "\E112"; 402 + } 403 + .halflings.chevron-up:before { 404 + content: "\E113"; 405 + } 406 + .halflings.chevron-down:before { 407 + content: "\E114"; 408 + } 409 + .halflings.retweet:before { 410 + content: "\E115"; 411 + } 412 + .halflings.shopping-cart:before { 413 + content: "\E116"; 414 + } 415 + .halflings.folder-close:before { 416 + content: "\E117"; 417 + } 418 + .halflings.folder-open:before { 419 + content: "\E118"; 420 + } 421 + .halflings.resize-vertical:before { 422 + content: "\E119"; 423 + } 424 + .halflings.resize-horizontal:before { 425 + content: "\E120"; 426 + } 427 + .halflings.hdd:before { 428 + content: "\E121"; 429 + } 430 + .halflings.bullhorn:before { 431 + content: "\E122"; 432 + } 433 + .halflings.bell:before { 434 + content: "\1F514"; 435 + } 436 + .halflings.certificate:before { 437 + content: "\E124"; 438 + } 439 + .halflings.thumbs-up:before { 440 + content: "\E125"; 441 + } 442 + .halflings.thumbs-down:before { 443 + content: "\E126"; 444 + } 445 + .halflings.hand-right:before { 446 + content: "\E127"; 447 + } 448 + .halflings.hand-left:before { 449 + content: "\E128"; 450 + } 451 + .halflings.hand-top:before { 452 + content: "\E129"; 453 + } 454 + .halflings.hand-down:before { 455 + content: "\E130"; 456 + } 457 + .halflings.circle-arrow-right:before { 458 + content: "\E131"; 459 + } 460 + .halflings.circle-arrow-left:before { 461 + content: "\E132"; 462 + } 463 + .halflings.circle-arrow-top:before { 464 + content: "\E133"; 465 + } 466 + .halflings.circle-arrow-down:before { 467 + content: "\E134"; 468 + } 469 + .halflings.globe:before { 470 + content: "\E135"; 471 + } 472 + .halflings.wrench:before { 473 + content: "\1F527"; 474 + } 475 + .halflings.tasks:before { 476 + content: "\E137"; 477 + } 478 + .halflings.filter:before { 479 + content: "\E138"; 480 + } 481 + .halflings.briefcase:before { 482 + content: "\1F4BC"; 483 + } 484 + .halflings.fullscreen:before { 485 + content: "\E140"; 486 + } 487 + .halflings.dashboard:before { 488 + content: "\E141"; 489 + } 490 + .halflings.paperclip:before { 491 + content: "\1F4CE"; 492 + } 493 + .halflings.heart-empty:before { 494 + content: "\E143"; 495 + } 496 + .halflings.link:before { 497 + content: "\E144"; 498 + } 499 + .halflings.phone:before { 500 + content: "\E145"; 501 + } 502 + .halflings.pushpin:before { 503 + content: "\1F4CC"; 504 + } 505 + .halflings.euro:before { 506 + content: "\20AC"; 507 + } 508 + .halflings.usd:before { 509 + content: "\E148"; 510 + } 511 + .halflings.gbp:before { 512 + content: "\E149"; 513 + } 514 + .halflings.sort:before { 515 + content: "\E150"; 516 + } 517 + .halflings.sort-by-alphabet:before { 518 + content: "\E151"; 519 + } 520 + .halflings.sort-by-alphabet-alt:before { 521 + content: "\E152"; 522 + } 523 + .halflings.sort-by-order:before { 524 + content: "\E153"; 525 + } 526 + .halflings.sort-by-order-alt:before { 527 + content: "\E154"; 528 + } 529 + .halflings.sort-by-attributes:before { 530 + content: "\E155"; 531 + } 532 + .halflings.sort-by-attributes-alt:before { 533 + content: "\E156"; 534 + } 535 + .halflings.unchecked:before { 536 + content: "\E157"; 537 + } 538 + .halflings.expand:before { 539 + content: "\E158"; 540 + } 541 + .halflings.collapse:before { 542 + content: "\E159"; 543 + } 544 + .halflings.collapse-top:before { 545 + content: "\E160"; 546 + } 547 + .halflings.log_in:before { 548 + content: "\E161"; 549 + } 550 + .halflings.flash:before { 551 + content: "\E162"; 552 + } 553 + .halflings.log_out:before { 554 + content: "\E163"; 555 + } 556 + .halflings.new_window:before { 557 + content: "\E164"; 558 + } 559 + .halflings.record:before { 560 + content: "\E165"; 561 + } 562 + .halflings.save:before { 563 + content: "\E166"; 564 + } 565 + .halflings.open:before { 566 + content: "\E167"; 567 + } 568 + .halflings.saved:before { 569 + content: "\E168"; 570 + } 571 + .halflings.import:before { 572 + content: "\E169"; 573 + } 574 + .halflings.export:before { 575 + content: "\E170"; 576 + } 577 + .halflings.send:before { 578 + content: "\E171"; 579 + } 580 + .halflings.floppy_disk:before { 581 + content: "\E172"; 582 + } 583 + .halflings.floppy_saved:before { 584 + content: "\E173"; 585 + } 586 + .halflings.floppy_remove:before { 587 + content: "\E174"; 588 + } 589 + .halflings.floppy_save:before { 590 + content: "\E175"; 591 + } 592 + .halflings.floppy_open:before { 593 + content: "\E176"; 594 + } 595 + .halflings.credit_card:before { 596 + content: "\E177"; 597 + } 598 + .halflings.transfer:before { 599 + content: "\E178"; 600 + } 601 + .halflings.cutlery:before { 602 + content: "\E179"; 603 + } 604 + .halflings.header:before { 605 + content: "\E180"; 606 + } 607 + .halflings.compressed:before { 608 + content: "\E181"; 609 + } 610 + .halflings.earphone:before { 611 + content: "\E182"; 612 + } 613 + .halflings.phone_alt:before { 614 + content: "\E183"; 615 + } 616 + .halflings.tower:before { 617 + content: "\E184"; 618 + } 619 + .halflings.stats:before { 620 + content: "\E185"; 621 + } 622 + .halflings.sd_video:before { 623 + content: "\E186"; 624 + } 625 + .halflings.hd_video:before { 626 + content: "\E187"; 627 + } 628 + .halflings.subtitles:before { 629 + content: "\E188"; 630 + } 631 + .halflings.sound_stereo:before { 632 + content: "\E189"; 633 + } 634 + .halflings.sound_dolby:before { 635 + content: "\E190"; 636 + } 637 + .halflings.sound_5_1:before { 638 + content: "\E191"; 639 + } 640 + .halflings.sound_6_1:before { 641 + content: "\E192"; 642 + } 643 + .halflings.sound_7_1:before { 644 + content: "\E193"; 645 + } 646 + .halflings.copyright_mark:before { 647 + content: "\E194"; 648 + } 649 + .halflings.registration_mark:before { 650 + content: "\E195"; 651 + } 652 + .halflings.cloud:before { 653 + content: "\2601"; 654 + } 655 + .halflings.cloud_download:before { 656 + content: "\E197"; 657 + } 658 + .halflings.cloud_upload:before { 659 + content: "\E198"; 660 + } 661 + .halflings.tree_conifer:before { 662 + content: "\E199"; 663 + } 664 + .halflings.tree_deciduous:before { 665 + content: "\E200"; 666 + }
+2 -2
webroot/rsrc/css/font/font-source-sans-pro.css
··· 8 8 font-weight: 400; 9 9 src: local('Source Sans Pro'), 10 10 local('SourceSansPro-Regular'), 11 - url(/rsrc/externals/font/SourceSansPro.woff) 11 + url(/rsrc/externals/font/sourcesans/SourceSansPro.woff) 12 12 format('woff'); 13 13 } 14 14 ··· 18 18 font-weight: 700; 19 19 src: local('Source Sans Pro Bold'), 20 20 local('SourceSansPro-Bold'), 21 - url(/rsrc/externals/font/SourceSansProBold.woff) 21 + url(/rsrc/externals/font/sourcesans/SourceSansProBold.woff) 22 22 format('woff'); 23 23 }
webroot/rsrc/externals/font/LICENSE webroot/rsrc/externals/font/sourcesans/LICENSE
webroot/rsrc/externals/font/SourceSansPro.woff webroot/rsrc/externals/font/sourcesans/SourceSansPro.woff
webroot/rsrc/externals/font/SourceSansProBold.woff webroot/rsrc/externals/font/sourcesans/SourceSansProBold.woff
+46
webroot/rsrc/externals/font/glyphicons/LICENSE
··· 1 + ------------------------------------------- 2 + THANK YOU FOR PURCHASING GLYPHICONS 3 + ------------------------------------------- 4 + Your payment will help in the future development of new icons. If you would like to be among the first ones to hear about all the news, please, follow @GLYPHICONS on Twitter. 5 + 6 + 7 + ------------------------------------------- 8 + LICENSE 9 + ------------------------------------------- 10 + By downloading icons from GLYPHICONS.com, you agree to be bound by the terms of this agreement. A buyer is granted an unlimited usage of all icons purchased on GLYPHICONS.com. The icons may be used for both commercial and personal purposes such as mobile applications, web sites, web applications as well as for printing, info-graphics, etc. You do not need an extra license for every new project. The price is final and includes all future updates of GLYPHICONS, which means that no additional purchase is required. 11 + 12 + This license is nonexclusive, non-sublicensable. Keep in mind, please, that it is not allowed to resell the icons as such because the icons are the property of the author. Reselling of the icons is prohibited. The license is non transferable and it is tied always only with one buyer (his email address). Please, be aware that in case you would like to use a font or all icons in vector format in your html theme / application, you have to include this license as a part of your product. If your customers would like to use GLYPHICONS as a part of their own (another) product, they have to buy their own license. 13 + 14 + You can: 15 + - use icons in your HTML theme and sell it (you are obliged to include this license) 16 + - use icons in your mobile or web app, web, print them etc. 17 + - modify icons and change their color, shape, etc. 18 + 19 + You must not: 20 + - use icons in your HTML theme and sell it without including this license 21 + - resell icons or offer them for download anywhere on the internet 22 + - use icons as a part of any application where your customers are not a final customer 23 + 24 + All icons are provided "as they are" without a warranty of any kind, either expressed or implied. I am not liable for any damages coused of any defects in this icon set. All logos and trademarks in social icons are the property of the respective trademark owners.® 25 + 26 + 27 + ------------------------------------------- 28 + LICENSE FOR HALFLINGS IN TWITTER BOOTSTRAP 29 + ------------------------------------------- 30 + GLYPHICONS Halflings are also a part of Bootstrap from Twitter, and they are released under the same license as Bootstrap. While you are not required to include attribution on your Bootstrap-based projects, I would certainly appreciate a visible link back to GLYPHICONS.com in any place you find appropriate (footer, docs, etc). 31 + 32 + 33 + ------------------------------------------- 34 + CONTACT 35 + ------------------------------------------- 36 + Web: http://glyphicons.com/ 37 + Email: glyphicons@gmail.com 38 + Twitter: http://twitter.com/glyphicons 39 + 40 + 41 + ------------------------------------------- 42 + NOTE 43 + ------------------------------------------- 44 + PRO users do not have to indicate the name of the author, but it always makes me happy when I see a link or a nice tweet about GLYPHICONS :) If you use the icons in your application, website or anywherelse and if you want to, email me, please, and maybe I will mention about it on Twitter, eventually publish your application on www.glyphicons.com/examples-of-use/. 45 + 46 + Jan Kovařík
webroot/rsrc/externals/font/glyphicons/glyphicons-halflings-regular.eot

This is a binary file and will not be displayed.

webroot/rsrc/externals/font/glyphicons/glyphicons-halflings-regular.ttf

This is a binary file and will not be displayed.

webroot/rsrc/externals/font/glyphicons/glyphicons-halflings-regular.woff

This is a binary file and will not be displayed.