diff --git a/src/Element/Marker/ExtraMarker.php b/src/Element/Marker/ExtraMarker.php index 9dd5680..33dc59a 100644 --- a/src/Element/Marker/ExtraMarker.php +++ b/src/Element/Marker/ExtraMarker.php @@ -27,11 +27,13 @@ class ExtraMarker extends AbstractMarker protected $shape; protected $color; + protected $awesome; - public function __construct(int $shape, int $color, float $latitude, float $longitude) + public function __construct(int $shape, int $color, string $awesome, float $latitude, float $longitude) { $this->shape = $shape; $this->color = $color; + $this->awesome = $awesome; $this->latitude = $latitude; $this->longitude = $longitude; @@ -46,4 +48,9 @@ class ExtraMarker extends AbstractMarker { return $this->color; } + + public function getAwesome(): string + { + return $this->awesome; + } } diff --git a/src/ElementPrinter/Marker/ExtraMarkerPrinter.php b/src/ElementPrinter/Marker/ExtraMarkerPrinter.php index ecdbb18..e44ac01 100644 --- a/src/ElementPrinter/Marker/ExtraMarkerPrinter.php +++ b/src/ElementPrinter/Marker/ExtraMarkerPrinter.php @@ -61,7 +61,7 @@ class ExtraMarkerPrinter imagecopy($markerImage, $extramarkers, 0, 0, $sourceX, $sourceY, $markerWidth, $markerHeight); $white = imagecolorallocate($markerImage, 255, 255, 255); - imagettftext($markerImage, 24, 0, 16, 47, $white, __DIR__.'/../../../fonts/fontawesome-webfont.ttf', json_decode('""')); + imagettftext($markerImage, 24, 0, 16, 43, $white, __DIR__.'/../../../fonts/fontawesome-webfont.ttf', json_decode(sprintf('"&#x%s;"', $this->marker->getAwesome()))); return $markerImage; } diff --git a/web/staticmap.php b/web/staticmap.php index 6201d19..d9e9cfc 100644 --- a/web/staticmap.php +++ b/web/staticmap.php @@ -51,7 +51,7 @@ if ($markers) { foreach ($markerList as $markerData) { list($markerLatitude, $markerLongitude, $markerShape, $markerColor, $markerIcon) = explode(',', $markerData); - $marker = new ExtraMarker(getMarkerShape($markerShape), getMarkerColor($markerColor), $markerLatitude, $markerLongitude); + $marker = new ExtraMarker(getMarkerShape($markerShape), getMarkerColor($markerColor), getMarkerAwesome($markerIcon), $markerLatitude, $markerLongitude); $printer->addMarker($marker); } @@ -82,7 +82,7 @@ function getMarkerShape(string $markerShape): int $key = array_search($markerShape, $shapes); if (false === $key) { - die('This shape is not available'); + die(sprintf('The shape "%s" is not available', $markerShape)); } return $key; @@ -95,8 +95,654 @@ function getMarkerColor(string $markerColor): int $key = array_search($markerColor, $colors); if (false === $key) { - die('This color is not available'); + die(sprintf('The color "%s" is not available', $markerColor)); } return $key; +} + +function getMarkerAwesome(string $markerIcon): string +{ + $icons = [ + 'glass' => 'f000', + 'music' => 'f001', + 'search' => 'f002', + 'envelope-o' => 'f003', + 'heart' => 'f004', + 'star' => 'f005', + 'star-o' => 'f006', + 'user' => 'f007', + 'film' => 'f008', + 'th-large' => 'f009', + 'th' => 'f00a', + 'th-list' => 'f00b', + 'check' => 'f00c', + 'times' => 'f00d', + 'search-plus' => 'f00e', + 'search-minus' => 'f010', + 'power-off' => 'f011', + 'signal' => 'f012', + 'cog' => 'f013', + 'trash-o' => 'f014', + 'home' => 'f015', + 'file-o' => 'f016', + 'clock-o' => 'f017', + 'road' => 'f018', + 'download' => 'f019', + 'arrow-circle-o-down' => 'f01a', + 'arrow-circle-o-up' => 'f01b', + 'inbox' => 'f01c', + 'play-circle-o' => 'f01d', + 'repeat' => 'f01e', + 'refresh' => 'f021', + 'list-alt' => 'f022', + 'lock' => 'f023', + 'flag' => 'f024', + 'headphones' => 'f025', + 'volume-off' => 'f026', + 'volume-down' => 'f027', + 'volume-up' => 'f028', + 'qrcode' => 'f029', + 'barcode' => 'f02a', + 'tag' => 'f02b', + 'tags' => 'f02c', + 'book' => 'f02d', + 'bookmark' => 'f02e', + 'print' => 'f02f', + 'camera' => 'f030', + 'font' => 'f031', + 'bold' => 'f032', + 'italic' => 'f033', + 'text-height' => 'f034', + 'text-width' => 'f035', + 'align-left' => 'f036', + 'align-center' => 'f037', + 'align-right' => 'f038', + 'align-justify' => 'f039', + 'list' => 'f03a', + 'outdent' => 'f03b', + 'indent' => 'f03c', + 'video-camera' => 'f03d', + 'picture-o' => 'f03e', + 'pencil' => 'f040', + 'map-marker' => 'f041', + 'adjust' => 'f042', + 'tint' => 'f043', + 'pencil-square-o' => 'f044', + 'share-square-o' => 'f045', + 'check-square-o' => 'f046', + 'arrows' => 'f047', + 'step-backward' => 'f048', + 'fast-backward' => 'f049', + 'backward' => 'f04a', + 'play' => 'f04b', + 'pause' => 'f04c', + 'stop' => 'f04d', + 'forward' => 'f04e', + 'fast-forward' => 'f050', + 'step-forward' => 'f051', + 'eject' => 'f052', + 'chevron-left' => 'f053', + 'chevron-right' => 'f054', + 'plus-circle' => 'f055', + 'minus-circle' => 'f056', + 'times-circle' => 'f057', + 'check-circle' => 'f058', + 'question-circle' => 'f059', + 'info-circle' => 'f05a', + 'crosshairs' => 'f05b', + 'times-circle-o' => 'f05c', + 'check-circle-o' => 'f05d', + 'ban' => 'f05e', + 'arrow-left' => 'f060', + 'arrow-right' => 'f061', + 'arrow-up' => 'f062', + 'arrow-down' => 'f063', + 'share' => 'f064', + 'expand' => 'f065', + 'compress' => 'f066', + 'plus' => 'f067', + 'minus' => 'f068', + 'asterisk' => 'f069', + 'exclamation-circle' => 'f06a', + 'gift' => 'f06b', + 'leaf' => 'f06c', + 'fire' => 'f06d', + 'eye' => 'f06e', + 'eye-slash' => 'f070', + 'exclamation-triangle' => 'f071', + 'plane' => 'f072', + 'calendar' => 'f073', + 'random' => 'f074', + 'comment' => 'f075', + 'magnet' => 'f076', + 'chevron-up' => 'f077', + 'chevron-down' => 'f078', + 'retweet' => 'f079', + 'shopping-cart' => 'f07a', + 'folder' => 'f07b', + 'folder-open' => 'f07c', + 'arrows-v' => 'f07d', + 'arrows-h' => 'f07e', + 'bar-chart' => 'f080', + 'twitter-square' => 'f081', + 'facebook-square' => 'f082', + 'camera-retro' => 'f083', + 'key' => 'f084', + 'cogs' => 'f085', + 'comments' => 'f086', + 'thumbs-o-up' => 'f087', + 'thumbs-o-down' => 'f088', + 'star-half' => 'f089', + 'heart-o' => 'f08a', + 'sign-out' => 'f08b', + 'linkedin-square' => 'f08c', + 'thumb-tack' => 'f08d', + 'external-link' => 'f08e', + 'sign-in' => 'f090', + 'trophy' => 'f091', + 'github-square' => 'f092', + 'upload' => 'f093', + 'lemon-o' => 'f094', + 'phone' => 'f095', + 'square-o' => 'f096', + 'bookmark-o' => 'f097', + 'phone-square' => 'f098', + 'twitter' => 'f099', + 'facebook' => 'f09a', + 'github' => 'f09b', + 'unlock' => 'f09c', + 'credit-card' => 'f09d', + 'rss' => 'f09e', + 'hdd-o' => 'f0a0', + 'bullhorn' => 'f0a1', + 'bell' => 'f0f3', + 'certificate' => 'f0a3', + 'hand-o-right' => 'f0a4', + 'hand-o-left' => 'f0a5', + 'hand-o-up' => 'f0a6', + 'hand-o-down' => 'f0a7', + 'arrow-circle-left' => 'f0a8', + 'arrow-circle-right' => 'f0a9', + 'arrow-circle-up' => 'f0aa', + 'arrow-circle-down' => 'f0ab', + 'globe' => 'f0ac', + 'wrench' => 'f0ad', + 'tasks' => 'f0ae', + 'filter' => 'f0b0', + 'briefcase' => 'f0b1', + 'arrows-alt' => 'f0b2', + 'users' => 'f0c0', + 'link' => 'f0c1', + 'cloud' => 'f0c2', + 'flask' => 'f0c3', + 'scissors' => 'f0c4', + 'files-o' => 'f0c5', + 'paperclip' => 'f0c6', + 'floppy-o' => 'f0c7', + 'square' => 'f0c8', + 'bars' => 'f0c9', + 'list-ul' => 'f0ca', + 'list-ol' => 'f0cb', + 'strikethrough' => 'f0cc', + 'underline' => 'f0cd', + 'table' => 'f0ce', + 'magic' => 'f0d0', + 'truck' => 'f0d1', + 'pinterest' => 'f0d2', + 'pinterest-square' => 'f0d3', + 'google-plus-square' => 'f0d4', + 'google-plus' => 'f0d5', + 'money' => 'f0d6', + 'caret-down' => 'f0d7', + 'caret-up' => 'f0d8', + 'caret-left' => 'f0d9', + 'caret-right' => 'f0da', + 'columns' => 'f0db', + 'sort' => 'f0dc', + 'sort-desc' => 'f0dd', + 'sort-asc' => 'f0de', + 'envelope' => 'f0e0', + 'linkedin' => 'f0e1', + 'undo' => 'f0e2', + 'gavel' => 'f0e3', + 'tachometer' => 'f0e4', + 'comment-o' => 'f0e5', + 'comments-o' => 'f0e6', + 'bolt' => 'f0e7', + 'sitemap' => 'f0e8', + 'umbrella' => 'f0e9', + 'clipboard' => 'f0ea', + 'lightbulb-o' => 'f0eb', + 'exchange' => 'f0ec', + 'cloud-download' => 'f0ed', + 'cloud-upload' => 'f0ee', + 'user-md' => 'f0f0', + 'stethoscope' => 'f0f1', + 'suitcase' => 'f0f2', + 'bell-o' => 'f0a2', + 'coffee' => 'f0f4', + 'cutlery' => 'f0f5', + 'file-text-o' => 'f0f6', + 'building-o' => 'f0f7', + 'hospital-o' => 'f0f8', + 'ambulance' => 'f0f9', + 'medkit' => 'f0fa', + 'fighter-jet' => 'f0fb', + 'beer' => 'f0fc', + 'h-square' => 'f0fd', + 'plus-square' => 'f0fe', + 'angle-double-left' => 'f100', + 'angle-double-right' => 'f101', + 'angle-double-up' => 'f102', + 'angle-double-down' => 'f103', + 'angle-left' => 'f104', + 'angle-right' => 'f105', + 'angle-up' => 'f106', + 'angle-down' => 'f107', + 'desktop' => 'f108', + 'laptop' => 'f109', + 'tablet' => 'f10a', + 'mobile' => 'f10b', + 'circle-o' => 'f10c', + 'quote-left' => 'f10d', + 'quote-right' => 'f10e', + 'spinner' => 'f110', + 'circle' => 'f111', + 'reply' => 'f112', + 'github-alt' => 'f113', + 'folder-o' => 'f114', + 'folder-open-o' => 'f115', + 'smile-o' => 'f118', + 'frown-o' => 'f119', + 'meh-o' => 'f11a', + 'gamepad' => 'f11b', + 'keyboard-o' => 'f11c', + 'flag-o' => 'f11d', + 'flag-checkered' => 'f11e', + 'terminal' => 'f120', + 'code' => 'f121', + 'reply-all' => 'f122', + 'star-half-o' => 'f123', + 'location-arrow' => 'f124', + 'crop' => 'f125', + 'code-fork' => 'f126', + 'chain-broken' => 'f127', + 'question' => 'f128', + 'info' => 'f129', + 'exclamation' => 'f12a', + 'superscript' => 'f12b', + 'subscript' => 'f12c', + 'eraser' => 'f12d', + 'puzzle-piece' => 'f12e', + 'microphone' => 'f130', + 'microphone-slash' => 'f131', + 'shield' => 'f132', + 'calendar-o' => 'f133', + 'fire-extinguisher' => 'f134', + 'rocket' => 'f135', + 'maxcdn' => 'f136', + 'chevron-circle-left' => 'f137', + 'chevron-circle-right' => 'f138', + 'chevron-circle-up' => 'f139', + 'chevron-circle-down' => 'f13a', + 'html5' => 'f13b', + 'css3' => 'f13c', + 'anchor' => 'f13d', + 'unlock-alt' => 'f13e', + 'bullseye' => 'f140', + 'ellipsis-h' => 'f141', + 'ellipsis-v' => 'f142', + 'rss-square' => 'f143', + 'play-circle' => 'f144', + 'ticket' => 'f145', + 'minus-square' => 'f146', + 'minus-square-o' => 'f147', + 'level-up' => 'f148', + 'level-down' => 'f149', + 'check-square' => 'f14a', + 'pencil-square' => 'f14b', + 'external-link-square' => 'f14c', + 'share-square' => 'f14d', + 'compass' => 'f14e', + 'caret-square-o-down' => 'f150', + 'caret-square-o-up' => 'f151', + 'caret-square-o-right' => 'f152', + 'eur' => 'f153', + 'gbp' => 'f154', + 'usd' => 'f155', + 'inr' => 'f156', + 'jpy' => 'f157', + 'rub' => 'f158', + 'krw' => 'f159', + 'btc' => 'f15a', + 'file' => 'f15b', + 'file-text' => 'f15c', + 'sort-alpha-asc' => 'f15d', + 'sort-alpha-desc' => 'f15e', + 'sort-amount-asc' => 'f160', + 'sort-amount-desc' => 'f161', + 'sort-numeric-asc' => 'f162', + 'sort-numeric-desc' => 'f163', + 'thumbs-up' => 'f164', + 'thumbs-down' => 'f165', + 'youtube-square' => 'f166', + 'youtube' => 'f167', + 'xing' => 'f168', + 'xing-square' => 'f169', + 'youtube-play' => 'f16a', + 'dropbox' => 'f16b', + 'stack-overflow' => 'f16c', + 'instagram' => 'f16d', + 'flickr' => 'f16e', + 'adn' => 'f170', + 'bitbucket' => 'f171', + 'bitbucket-square' => 'f172', + 'tumblr' => 'f173', + 'tumblr-square' => 'f174', + 'long-arrow-down' => 'f175', + 'long-arrow-up' => 'f176', + 'long-arrow-left' => 'f177', + 'long-arrow-right' => 'f178', + 'apple' => 'f179', + 'windows' => 'f17a', + 'android' => 'f17b', + 'linux' => 'f17c', + 'dribbble' => 'f17d', + 'skype' => 'f17e', + 'foursquare' => 'f180', + 'trello' => 'f181', + 'female' => 'f182', + 'male' => 'f183', + 'gratipay' => 'f184', + 'sun-o' => 'f185', + 'moon-o' => 'f186', + 'archive' => 'f187', + 'bug' => 'f188', + 'vk' => 'f189', + 'weibo' => 'f18a', + 'renren' => 'f18b', + 'pagelines' => 'f18c', + 'stack-exchange' => 'f18d', + 'arrow-circle-o-right' => 'f18e', + 'arrow-circle-o-left' => 'f190', + 'caret-square-o-left' => 'f191', + 'dot-circle-o' => 'f192', + 'wheelchair' => 'f193', + 'vimeo-square' => 'f194', + 'try' => 'f195', + 'plus-square-o' => 'f196', + 'space-shuttle' => 'f197', + 'slack' => 'f198', + 'envelope-square' => 'f199', + 'wordpress' => 'f19a', + 'openid' => 'f19b', + 'university' => 'f19c', + 'graduation-cap' => 'f19d', + 'yahoo' => 'f19e', + 'google' => 'f1a0', + 'reddit' => 'f1a1', + 'reddit-square' => 'f1a2', + 'stumbleupon-circle' => 'f1a3', + 'stumbleupon' => 'f1a4', + 'delicious' => 'f1a5', + 'digg' => 'f1a6', + 'pied-piper-pp' => 'f1a7', + 'pied-piper-alt' => 'f1a8', + 'drupal' => 'f1a9', + 'joomla' => 'f1aa', + 'language' => 'f1ab', + 'fax' => 'f1ac', + 'building' => 'f1ad', + 'child' => 'f1ae', + 'paw' => 'f1b0', + 'spoon' => 'f1b1', + 'cube' => 'f1b2', + 'cubes' => 'f1b3', + 'behance' => 'f1b4', + 'behance-square' => 'f1b5', + 'steam' => 'f1b6', + 'steam-square' => 'f1b7', + 'recycle' => 'f1b8', + 'car' => 'f1b9', + 'taxi' => 'f1ba', + 'tree' => 'f1bb', + 'spotify' => 'f1bc', + 'deviantart' => 'f1bd', + 'soundcloud' => 'f1be', + 'database' => 'f1c0', + 'file-pdf-o' => 'f1c1', + 'file-word-o' => 'f1c2', + 'file-excel-o' => 'f1c3', + 'file-powerpoint-o' => 'f1c4', + 'file-image-o' => 'f1c5', + 'file-archive-o' => 'f1c6', + 'file-audio-o' => 'f1c7', + 'file-video-o' => 'f1c8', + 'file-code-o' => 'f1c9', + 'vine' => 'f1ca', + 'codepen' => 'f1cb', + 'jsfiddle' => 'f1cc', + 'life-ring' => 'f1cd', + 'circle-o-notch' => 'f1ce', + 'rebel' => 'f1d0', + 'empire' => 'f1d1', + 'git-square' => 'f1d2', + 'git' => 'f1d3', + 'hacker-news' => 'f1d4', + 'tencent-weibo' => 'f1d5', + 'qq' => 'f1d6', + 'weixin' => 'f1d7', + 'paper-plane' => 'f1d8', + 'paper-plane-o' => 'f1d9', + 'history' => 'f1da', + 'circle-thin' => 'f1db', + 'header' => 'f1dc', + 'paragraph' => 'f1dd', + 'sliders' => 'f1de', + 'share-alt' => 'f1e0', + 'share-alt-square' => 'f1e1', + 'bomb' => 'f1e2', + 'futbol-o' => 'f1e3', + 'tty' => 'f1e4', + 'binoculars' => 'f1e5', + 'plug' => 'f1e6', + 'slideshare' => 'f1e7', + 'twitch' => 'f1e8', + 'yelp' => 'f1e9', + 'newspaper-o' => 'f1ea', + 'wifi' => 'f1eb', + 'calculator' => 'f1ec', + 'paypal' => 'f1ed', + 'google-wallet' => 'f1ee', + 'cc-visa' => 'f1f0', + 'cc-mastercard' => 'f1f1', + 'cc-discover' => 'f1f2', + 'cc-amex' => 'f1f3', + 'cc-paypal' => 'f1f4', + 'cc-stripe' => 'f1f5', + 'bell-slash' => 'f1f6', + 'bell-slash-o' => 'f1f7', + 'trash' => 'f1f8', + 'copyright' => 'f1f9', + 'at' => 'f1fa', + 'eyedropper' => 'f1fb', + 'paint-brush' => 'f1fc', + 'birthday-cake' => 'f1fd', + 'area-chart' => 'f1fe', + 'pie-chart' => 'f200', + 'line-chart' => 'f201', + 'lastfm' => 'f202', + 'lastfm-square' => 'f203', + 'toggle-off' => 'f204', + 'toggle-on' => 'f205', + 'bicycle' => 'f206', + 'bus' => 'f207', + 'ioxhost' => 'f208', + 'angellist' => 'f209', + 'cc' => 'f20a', + 'ils' => 'f20b', + 'meanpath' => 'f20c', + 'buysellads' => 'f20d', + 'connectdevelop' => 'f20e', + 'dashcube' => 'f210', + 'forumbee' => 'f211', + 'leanpub' => 'f212', + 'sellsy' => 'f213', + 'shirtsinbulk' => 'f214', + 'simplybuilt' => 'f215', + 'skyatlas' => 'f216', + 'cart-plus' => 'f217', + 'cart-arrow-down' => 'f218', + 'diamond' => 'f219', + 'ship' => 'f21a', + 'user-secret' => 'f21b', + 'motorcycle' => 'f21c', + 'street-view' => 'f21d', + 'heartbeat' => 'f21e', + 'venus' => 'f221', + 'mars' => 'f222', + 'mercury' => 'f223', + 'transgender' => 'f224', + 'transgender-alt' => 'f225', + 'venus-double' => 'f226', + 'mars-double' => 'f227', + 'venus-mars' => 'f228', + 'mars-stroke' => 'f229', + 'mars-stroke-v' => 'f22a', + 'mars-stroke-h' => 'f22b', + 'neuter' => 'f22c', + 'genderless' => 'f22d', + 'facebook-official' => 'f230', + 'pinterest-p' => 'f231', + 'whatsapp' => 'f232', + 'server' => 'f233', + 'user-plus' => 'f234', + 'user-times' => 'f235', + 'bed' => 'f236', + 'viacoin' => 'f237', + 'train' => 'f238', + 'subway' => 'f239', + 'medium' => 'f23a', + 'y-combinator' => 'f23b', + 'optin-monster' => 'f23c', + 'opencart' => 'f23d', + 'expeditedssl' => 'f23e', + 'battery-full' => 'f240', + 'battery-three-quarters' => 'f241', + 'battery-half' => 'f242', + 'battery-quarter' => 'f243', + 'battery-empty' => 'f244', + 'mouse-pointer' => 'f245', + 'i-cursor' => 'f246', + 'object-group' => 'f247', + 'object-ungroup' => 'f248', + 'sticky-note' => 'f249', + 'sticky-note-o' => 'f24a', + 'cc-jcb' => 'f24b', + 'cc-diners-club' => 'f24c', + 'clone' => 'f24d', + 'balance-scale' => 'f24e', + 'hourglass-o' => 'f250', + 'hourglass-start' => 'f251', + 'hourglass-half' => 'f252', + 'hourglass-end' => 'f253', + 'hourglass' => 'f254', + 'hand-rock-o' => 'f255', + 'hand-paper-o' => 'f256', + 'hand-scissors-o' => 'f257', + 'hand-lizard-o' => 'f258', + 'hand-spock-o' => 'f259', + 'hand-pointer-o' => 'f25a', + 'hand-peace-o' => 'f25b', + 'trademark' => 'f25c', + 'registered' => 'f25d', + 'creative-commons' => 'f25e', + 'gg' => 'f260', + 'gg-circle' => 'f261', + 'tripadvisor' => 'f262', + 'odnoklassniki' => 'f263', + 'odnoklassniki-square' => 'f264', + 'get-pocket' => 'f265', + 'wikipedia-w' => 'f266', + 'safari' => 'f267', + 'chrome' => 'f268', + 'firefox' => 'f269', + 'opera' => 'f26a', + 'internet-explorer' => 'f26b', + 'television' => 'f26c', + 'contao' => 'f26d', + '500px' => 'f26e', + 'amazon' => 'f270', + 'calendar-plus-o' => 'f271', + 'calendar-minus-o' => 'f272', + 'calendar-times-o' => 'f273', + 'calendar-check-o' => 'f274', + 'industry' => 'f275', + 'map-pin' => 'f276', + 'map-signs' => 'f277', + 'map-o' => 'f278', + 'map' => 'f279', + 'commenting' => 'f27a', + 'commenting-o' => 'f27b', + 'houzz' => 'f27c', + 'vimeo' => 'f27d', + 'black-tie' => 'f27e', + 'fonticons' => 'f280', + 'reddit-alien' => 'f281', + 'edge' => 'f282', + 'credit-card-alt' => 'f283', + 'codiepie' => 'f284', + 'modx' => 'f285', + 'fort-awesome' => 'f286', + 'usb' => 'f287', + 'product-hunt' => 'f288', + 'mixcloud' => 'f289', + 'scribd' => 'f28a', + 'pause-circle' => 'f28b', + 'pause-circle-o' => 'f28c', + 'stop-circle' => 'f28d', + 'stop-circle-o' => 'f28e', + 'shopping-bag' => 'f290', + 'shopping-basket' => 'f291', + 'hashtag' => 'f292', + 'bluetooth' => 'f293', + 'bluetooth-b' => 'f294', + 'percent' => 'f295', + 'gitlab' => 'f296', + 'wpbeginner' => 'f297', + 'wpforms' => 'f298', + 'envira' => 'f299', + 'universal-access' => 'f29a', + 'wheelchair-alt' => 'f29b', + 'question-circle-o' => 'f29c', + 'blind' => 'f29d', + 'audio-description' => 'f29e', + 'volume-control-phone' => 'f2a0', + 'braille' => 'f2a1', + 'assistive-listening-systems' => 'f2a2', + 'american-sign-language-interpreting' => 'f2a3', + 'deaf' => 'f2a4', + 'glide' => 'f2a5', + 'glide-g' => 'f2a6', + 'sign-language' => 'f2a7', + 'low-vision' => 'f2a8', + 'viadeo' => 'f2a9', + 'viadeo-square' => 'f2aa', + 'snapchat' => 'f2ab', + 'snapchat-ghost' => 'f2ac', + 'snapchat-square' => 'f2ad', + 'pied-piper' => 'f2ae', + 'first-order' => 'f2b0', + 'yoast' => 'f2b1', + 'themeisle' => 'f2b2', + 'google-plus-official' => 'f2b3', + 'font-awesome' => 'f2b4' + ]; + + if (!array_key_exists($markerIcon, $icons)) { + die(sprintf('The icon "%s" is not available', $markerIcon)); + } + + return $icons[$markerIcon]; } \ No newline at end of file