Consultation OK
This commit is contained in:
parent
a52ff41487
commit
26c6de01a6
File diff suppressed because one or more lines are too long
|
@ -0,0 +1,619 @@
|
||||||
|
{
|
||||||
|
"acrobat-reader": 60095,
|
||||||
|
"applemusic": 60096,
|
||||||
|
"atlassian": 60097,
|
||||||
|
"aws": 60098,
|
||||||
|
"baidu": 60099,
|
||||||
|
"bing": 60100,
|
||||||
|
"bower": 60101,
|
||||||
|
"dailymotion": 60102,
|
||||||
|
"delicious": 60103,
|
||||||
|
"deviantart": 60104,
|
||||||
|
"disqus": 60105,
|
||||||
|
"flipboard": 60106,
|
||||||
|
"graphql": 60107,
|
||||||
|
"hexo": 60108,
|
||||||
|
"hipchat": 60109,
|
||||||
|
"icq": 60110,
|
||||||
|
"invision": 60111,
|
||||||
|
"jekyll": 60112,
|
||||||
|
"jira": 60113,
|
||||||
|
"json": 60114,
|
||||||
|
"livestream": 60115,
|
||||||
|
"messenger": 60116,
|
||||||
|
"meteor": 60117,
|
||||||
|
"onenote": 60118,
|
||||||
|
"mongodb": 60119,
|
||||||
|
"netflix": 60120,
|
||||||
|
"nginx": 60121,
|
||||||
|
"odnoklassniki": 60122,
|
||||||
|
"onedrive": 60123,
|
||||||
|
"origin": 60124,
|
||||||
|
"pingdom": 60125,
|
||||||
|
"rails": 60126,
|
||||||
|
"raspberry-pi": 60127,
|
||||||
|
"redis": 60128,
|
||||||
|
"redux": 60129,
|
||||||
|
"saucelabs": 60130,
|
||||||
|
"scorp": 60131,
|
||||||
|
"sentry": 60132,
|
||||||
|
"shazam": 60133,
|
||||||
|
"shopify": 60134,
|
||||||
|
"sinaweibo": 60135,
|
||||||
|
"slides": 60136,
|
||||||
|
"sublimetext": 60137,
|
||||||
|
"swift": 60138,
|
||||||
|
"ted": 60139,
|
||||||
|
"telegram": 60140,
|
||||||
|
"tesla": 60141,
|
||||||
|
"tinder": 60142,
|
||||||
|
"treehouse": 60143,
|
||||||
|
"twoo": 60144,
|
||||||
|
"udacity": 60145,
|
||||||
|
"webstorm": 60146,
|
||||||
|
"wix": 60147,
|
||||||
|
"yandex-international": 60148,
|
||||||
|
"yandex": 60149,
|
||||||
|
"ember": 60087,
|
||||||
|
"cpanel": 60088,
|
||||||
|
"viber": 60089,
|
||||||
|
"deskpro": 60090,
|
||||||
|
"discord": 60091,
|
||||||
|
"discourse": 60092,
|
||||||
|
"adobe": 60059,
|
||||||
|
"algolia": 60060,
|
||||||
|
"atom": 60061,
|
||||||
|
"babel": 60062,
|
||||||
|
"coffeescript": 60063,
|
||||||
|
"electronjs": 60064,
|
||||||
|
"mysql": 60065,
|
||||||
|
"oracle": 60066,
|
||||||
|
"php": 60067,
|
||||||
|
"sourcetree": 60068,
|
||||||
|
"ubuntu": 60069,
|
||||||
|
"unity": 60070,
|
||||||
|
"unreal-engine": 60071,
|
||||||
|
"webpack": 60072,
|
||||||
|
"angelist": 60026,
|
||||||
|
"app-store": 60027,
|
||||||
|
"digg": 60030,
|
||||||
|
"dockers": 60031,
|
||||||
|
"envato": 60032,
|
||||||
|
"gitlab": 60033,
|
||||||
|
"google-drive": 60034,
|
||||||
|
"google-play": 60035,
|
||||||
|
"grunt": 60036,
|
||||||
|
"gulp": 60037,
|
||||||
|
"hacker-news": 60038,
|
||||||
|
"imdb": 60039,
|
||||||
|
"jenkins": 60040,
|
||||||
|
"joomla": 60041,
|
||||||
|
"kickstarter": 60042,
|
||||||
|
"laravel": 60043,
|
||||||
|
"less": 60044,
|
||||||
|
"line": 60045,
|
||||||
|
"npm": 60046,
|
||||||
|
"periscope": 60047,
|
||||||
|
"product-hunt": 60048,
|
||||||
|
"quora": 60049,
|
||||||
|
"skyatlas": 60050,
|
||||||
|
"stylus": 60051,
|
||||||
|
"travis": 60052,
|
||||||
|
"trello": 60053,
|
||||||
|
"uber": 60054,
|
||||||
|
"vine": 60055,
|
||||||
|
"visual-studio": 60056,
|
||||||
|
"vk": 60057,
|
||||||
|
"vuejs": 60058,
|
||||||
|
"microsoft": 60025,
|
||||||
|
"blogger": 60028,
|
||||||
|
"500px": 59658,
|
||||||
|
"amazon": 59659,
|
||||||
|
"ampproject": 59660,
|
||||||
|
"android": 59661,
|
||||||
|
"angularjs": 59662,
|
||||||
|
"apple": 59663,
|
||||||
|
"behance": 59664,
|
||||||
|
"bitbucket": 59665,
|
||||||
|
"bluetooth-b": 59666,
|
||||||
|
"cloudflare": 59667,
|
||||||
|
"codepen": 59668,
|
||||||
|
"css3": 59669,
|
||||||
|
"dribbble": 59670,
|
||||||
|
"dropbox": 59671,
|
||||||
|
"facebook": 59672,
|
||||||
|
"flickr": 59673,
|
||||||
|
"foursquare": 59674,
|
||||||
|
"git": 59675,
|
||||||
|
"github": 59676,
|
||||||
|
"google-plus": 59677,
|
||||||
|
"google": 59678,
|
||||||
|
"hangout": 59679,
|
||||||
|
"houzz": 59680,
|
||||||
|
"html5": 59681,
|
||||||
|
"instagram": 59682,
|
||||||
|
"java": 59683,
|
||||||
|
"jquery": 59684,
|
||||||
|
"jsfiddle": 59685,
|
||||||
|
"linkedin": 59686,
|
||||||
|
"linux": 59687,
|
||||||
|
"magento": 59688,
|
||||||
|
"maxcdn": 59689,
|
||||||
|
"medium": 59690,
|
||||||
|
"meetup": 59691,
|
||||||
|
"nodejs": 59692,
|
||||||
|
"opencart": 59693,
|
||||||
|
"pinterest": 59694,
|
||||||
|
"playstation": 59695,
|
||||||
|
"python": 59696,
|
||||||
|
"react": 59697,
|
||||||
|
"reddit": 59698,
|
||||||
|
"ruby": 59699,
|
||||||
|
"sass": 59700,
|
||||||
|
"skype": 59701,
|
||||||
|
"slack": 59702,
|
||||||
|
"snapchat": 59703,
|
||||||
|
"soundcloud": 59704,
|
||||||
|
"spotify": 59705,
|
||||||
|
"stack-overflow": 59706,
|
||||||
|
"steam": 59707,
|
||||||
|
"stumbleupon": 59708,
|
||||||
|
"svn": 59709,
|
||||||
|
"swarm": 59710,
|
||||||
|
"tripadvisor": 59711,
|
||||||
|
"tumblr": 59712,
|
||||||
|
"twitch": 59713,
|
||||||
|
"twitter": 59714,
|
||||||
|
"vimeo": 59715,
|
||||||
|
"wetransfer": 59716,
|
||||||
|
"whatsapp": 59717,
|
||||||
|
"wifi-logo": 59718,
|
||||||
|
"wikipedia": 59719,
|
||||||
|
"windows": 59720,
|
||||||
|
"wordpress": 59721,
|
||||||
|
"xbox": 59722,
|
||||||
|
"yahoo": 59723,
|
||||||
|
"yelp": 59724,
|
||||||
|
"youtube-play": 59725,
|
||||||
|
"cocoapods": 60200,
|
||||||
|
"composer": 60201,
|
||||||
|
"yarn": 60202,
|
||||||
|
"language": 59943,
|
||||||
|
"toggle-off": 59948,
|
||||||
|
"toggle-on": 60029,
|
||||||
|
"anchor": 60094,
|
||||||
|
"archive": 60150,
|
||||||
|
"at": 60151,
|
||||||
|
"ban": 60152,
|
||||||
|
"battery-half": 60153,
|
||||||
|
"battery-full": 60154,
|
||||||
|
"battery-empty": 60155,
|
||||||
|
"battery-quarter": 60156,
|
||||||
|
"battery-three-quarters": 60157,
|
||||||
|
"bell-alt": 60158,
|
||||||
|
"bell": 60159,
|
||||||
|
"bookmark-alt": 60160,
|
||||||
|
"bookmark": 60161,
|
||||||
|
"bug": 60162,
|
||||||
|
"calculator": 60163,
|
||||||
|
"calendar": 60164,
|
||||||
|
"crosshairs": 60165,
|
||||||
|
"desktop": 60166,
|
||||||
|
"download": 60167,
|
||||||
|
"film": 60168,
|
||||||
|
"history": 60169,
|
||||||
|
"hourglass-end": 60170,
|
||||||
|
"hourglass-half": 60171,
|
||||||
|
"hourglass-start": 60172,
|
||||||
|
"hourglass": 60173,
|
||||||
|
"info": 60174,
|
||||||
|
"key": 60175,
|
||||||
|
"keyboard": 60176,
|
||||||
|
"laptop": 60177,
|
||||||
|
"lightbulb": 60178,
|
||||||
|
"magnet": 60179,
|
||||||
|
"map-marker-alt": 60180,
|
||||||
|
"map-marker": 60181,
|
||||||
|
"map": 60182,
|
||||||
|
"mobile-alt": 60183,
|
||||||
|
"mobile": 60184,
|
||||||
|
"paw": 60185,
|
||||||
|
"phone": 60186,
|
||||||
|
"power": 60187,
|
||||||
|
"qrcode": 60188,
|
||||||
|
"question": 60189,
|
||||||
|
"search": 60190,
|
||||||
|
"sitemap": 60191,
|
||||||
|
"star-half": 60192,
|
||||||
|
"stopwatch": 60193,
|
||||||
|
"tablet-alt": 60194,
|
||||||
|
"tablet": 60195,
|
||||||
|
"ticket": 60196,
|
||||||
|
"tv": 60197,
|
||||||
|
"upload": 60198,
|
||||||
|
"user-secret": 60199,
|
||||||
|
"camera": 59798,
|
||||||
|
"clock": 59799,
|
||||||
|
"close-a": 59800,
|
||||||
|
"code": 59801,
|
||||||
|
"comment": 59802,
|
||||||
|
"commenting": 59803,
|
||||||
|
"comments": 59804,
|
||||||
|
"crop": 59805,
|
||||||
|
"cursor": 59806,
|
||||||
|
"database": 59807,
|
||||||
|
"date": 59808,
|
||||||
|
"earth": 59809,
|
||||||
|
"email": 59810,
|
||||||
|
"eye": 59811,
|
||||||
|
"female": 59812,
|
||||||
|
"favorite": 59813,
|
||||||
|
"filter": 59814,
|
||||||
|
"fire": 59815,
|
||||||
|
"flag": 59816,
|
||||||
|
"flash": 59817,
|
||||||
|
"home": 59818,
|
||||||
|
"link": 59819,
|
||||||
|
"locked": 59820,
|
||||||
|
"male": 59821,
|
||||||
|
"minus-a": 59822,
|
||||||
|
"more-v-a": 59823,
|
||||||
|
"more-v": 59824,
|
||||||
|
"move-h-a": 59825,
|
||||||
|
"move-h": 59826,
|
||||||
|
"nav-icon-a": 59827,
|
||||||
|
"nav-icon-grid-a": 59828,
|
||||||
|
"nav-icon-grid": 59829,
|
||||||
|
"nav-icon-list-a": 59830,
|
||||||
|
"nav-icon-list": 59831,
|
||||||
|
"nav-icon": 59832,
|
||||||
|
"navigate": 59833,
|
||||||
|
"paper-plane": 59834,
|
||||||
|
"person": 59835,
|
||||||
|
"persons": 59836,
|
||||||
|
"picture": 59837,
|
||||||
|
"plus-a": 59838,
|
||||||
|
"print": 59839,
|
||||||
|
"quote-a-left": 59840,
|
||||||
|
"quote-a-right": 59841,
|
||||||
|
"quote-left": 59842,
|
||||||
|
"quote-right": 59843,
|
||||||
|
"reply": 59844,
|
||||||
|
"rss": 59845,
|
||||||
|
"scissors": 59846,
|
||||||
|
"share-a": 59847,
|
||||||
|
"share": 59848,
|
||||||
|
"trash": 59849,
|
||||||
|
"unlocked": 59850,
|
||||||
|
"usb": 59851,
|
||||||
|
"wifi": 59852,
|
||||||
|
"world-o": 59853,
|
||||||
|
"world": 59854,
|
||||||
|
"zoom": 59855,
|
||||||
|
"adjust": 60015,
|
||||||
|
"recycle": 60016,
|
||||||
|
"pinboard": 60093,
|
||||||
|
"zoom-minus": 60082,
|
||||||
|
"zoom-plus": 60083,
|
||||||
|
"check": 60084,
|
||||||
|
"asterisk": 60085,
|
||||||
|
"hashtag": 60086,
|
||||||
|
"checkbox-active": 59778,
|
||||||
|
"checkbox-passive": 59779,
|
||||||
|
"radio-btn-active": 59780,
|
||||||
|
"radio-btn-passive": 59781,
|
||||||
|
"shopping-bag-1": 60011,
|
||||||
|
"shopping-bag": 60012,
|
||||||
|
"shopping-barcode": 60017,
|
||||||
|
"shopping-basket-add": 60018,
|
||||||
|
"shopping-basket-remove": 60019,
|
||||||
|
"shopping-basket": 60020,
|
||||||
|
"shopping-package": 60021,
|
||||||
|
"shopping-pos-machine": 60022,
|
||||||
|
"shopping-sale": 60023,
|
||||||
|
"shopping-store": 60024,
|
||||||
|
"angle-dobule-down": 59748,
|
||||||
|
"angle-dobule-left": 59749,
|
||||||
|
"angle-dobule-right": 59750,
|
||||||
|
"angle-dobule-up": 59751,
|
||||||
|
"angle-down": 59752,
|
||||||
|
"angle-left": 59753,
|
||||||
|
"angle-right": 59754,
|
||||||
|
"angle-up": 59755,
|
||||||
|
"arrow-down-l": 59756,
|
||||||
|
"arrow-down": 59757,
|
||||||
|
"arrow-expand": 59758,
|
||||||
|
"arrow-h": 59759,
|
||||||
|
"arrow-left-l": 59760,
|
||||||
|
"arrow-left": 59761,
|
||||||
|
"arrow-move": 59762,
|
||||||
|
"arrow-resize": 59763,
|
||||||
|
"arrow-return-left": 59764,
|
||||||
|
"arrow-return-right": 59765,
|
||||||
|
"arrow-right-l": 59766,
|
||||||
|
"arrow-right": 59767,
|
||||||
|
"arrow-swap": 59768,
|
||||||
|
"arrow-up-l": 59769,
|
||||||
|
"arrow-up": 59770,
|
||||||
|
"arrow-v": 59771,
|
||||||
|
"caret-down": 59772,
|
||||||
|
"caret-left": 59773,
|
||||||
|
"caret-right": 59774,
|
||||||
|
"caret-up": 59775,
|
||||||
|
"fi": 59776,
|
||||||
|
"fontisto": 59777,
|
||||||
|
"backward": 59866,
|
||||||
|
"eject": 59867,
|
||||||
|
"equalizer": 59868,
|
||||||
|
"forward": 59869,
|
||||||
|
"headphone": 59870,
|
||||||
|
"heart": 59871,
|
||||||
|
"mic": 59872,
|
||||||
|
"music-note": 59873,
|
||||||
|
"pause": 59874,
|
||||||
|
"play-list": 59875,
|
||||||
|
"play": 59876,
|
||||||
|
"player-settings": 59877,
|
||||||
|
"podcast": 59878,
|
||||||
|
"random": 59879,
|
||||||
|
"record": 59880,
|
||||||
|
"star": 59881,
|
||||||
|
"step-backwrad": 59882,
|
||||||
|
"step-forward": 59883,
|
||||||
|
"stop": 59884,
|
||||||
|
"volume-down": 59885,
|
||||||
|
"volume-mute": 59886,
|
||||||
|
"volume-off": 59887,
|
||||||
|
"volume-up": 59888,
|
||||||
|
"airplay": 60008,
|
||||||
|
"bold": 59918,
|
||||||
|
"broken-link": 59919,
|
||||||
|
"center-align": 59920,
|
||||||
|
"close": 59921,
|
||||||
|
"columns": 59922,
|
||||||
|
"copy": 59923,
|
||||||
|
"eraser": 59924,
|
||||||
|
"export": 59925,
|
||||||
|
"file-1": 59926,
|
||||||
|
"file-2": 59927,
|
||||||
|
"folder": 59928,
|
||||||
|
"font": 59929,
|
||||||
|
"import": 59930,
|
||||||
|
"indent": 59931,
|
||||||
|
"italic": 59932,
|
||||||
|
"justify": 59933,
|
||||||
|
"left-align": 59934,
|
||||||
|
"link2": 59935,
|
||||||
|
"list-1": 59936,
|
||||||
|
"list-2": 59937,
|
||||||
|
"outdent": 59938,
|
||||||
|
"paperclip": 59939,
|
||||||
|
"paragraph": 59940,
|
||||||
|
"paste": 59941,
|
||||||
|
"preview": 59942,
|
||||||
|
"print2": 59943,
|
||||||
|
"redo": 59944,
|
||||||
|
"right-align": 59945,
|
||||||
|
"save-1": 59946,
|
||||||
|
"save": 59947,
|
||||||
|
"scissors2": 59948,
|
||||||
|
"strikethrough": 59949,
|
||||||
|
"subscript": 59950,
|
||||||
|
"superscript": 59951,
|
||||||
|
"table-1": 59952,
|
||||||
|
"table-2": 59953,
|
||||||
|
"text-height": 59954,
|
||||||
|
"text-width": 59955,
|
||||||
|
"underline": 59956,
|
||||||
|
"undo": 59957,
|
||||||
|
"cloud-down": 59958,
|
||||||
|
"cloud-refresh": 59959,
|
||||||
|
"cloud-up": 59960,
|
||||||
|
"cloudy-gusts": 59961,
|
||||||
|
"cloudy": 59962,
|
||||||
|
"compass": 59963,
|
||||||
|
"day-cloudy": 59964,
|
||||||
|
"day-haze": 59965,
|
||||||
|
"day-lightning": 59966,
|
||||||
|
"day-rain": 59967,
|
||||||
|
"day-snow": 59968,
|
||||||
|
"day-sunny": 59969,
|
||||||
|
"fog": 59970,
|
||||||
|
"horizon-alt": 59971,
|
||||||
|
"horizon": 59972,
|
||||||
|
"lightning": 59973,
|
||||||
|
"lightnings": 59974,
|
||||||
|
"night-alt-cloudy": 59975,
|
||||||
|
"night-alt-lightning": 59976,
|
||||||
|
"night-alt-rain": 59977,
|
||||||
|
"night-alt-snow": 59978,
|
||||||
|
"night-clear": 59979,
|
||||||
|
"rain": 59980,
|
||||||
|
"rainbow": 59981,
|
||||||
|
"rains": 59982,
|
||||||
|
"snow": 59983,
|
||||||
|
"snows": 59984,
|
||||||
|
"thermometer": 59985,
|
||||||
|
"umbrella": 59986,
|
||||||
|
"wind": 59987,
|
||||||
|
"confused": 59988,
|
||||||
|
"dizzy": 59989,
|
||||||
|
"expressionless": 59990,
|
||||||
|
"frowning": 59991,
|
||||||
|
"heart-eyes": 59992,
|
||||||
|
"laughing": 59993,
|
||||||
|
"mad": 59994,
|
||||||
|
"nervous": 59995,
|
||||||
|
"neutral": 59996,
|
||||||
|
"open-mouth": 59997,
|
||||||
|
"rage": 59998,
|
||||||
|
"slightly-smile": 59999,
|
||||||
|
"smiley": 60000,
|
||||||
|
"smiling": 60001,
|
||||||
|
"stuck-out-tongue": 60002,
|
||||||
|
"sunglasses": 60003,
|
||||||
|
"surprised": 60004,
|
||||||
|
"tongue": 60005,
|
||||||
|
"wink": 60006,
|
||||||
|
"zipper-mouth": 60007,
|
||||||
|
"aids": 60233,
|
||||||
|
"ambulance": 60234,
|
||||||
|
"bandage": 60235,
|
||||||
|
"bed-patient": 60236,
|
||||||
|
"blood-drop": 60237,
|
||||||
|
"blood-test": 60238,
|
||||||
|
"blood": 60239,
|
||||||
|
"dna": 60240,
|
||||||
|
"doctor": 60241,
|
||||||
|
"drug-pack": 60242,
|
||||||
|
"first-aid-alt": 60243,
|
||||||
|
"heart-alt": 60244,
|
||||||
|
"heartbeat-alt": 60245,
|
||||||
|
"heartbeat": 60246,
|
||||||
|
"helicopter-ambulance": 60247,
|
||||||
|
"hospital": 60248,
|
||||||
|
"injection-syringe": 60249,
|
||||||
|
"laboratory": 60250,
|
||||||
|
"nurse": 60251,
|
||||||
|
"nursing-home": 60252,
|
||||||
|
"paralysis-disability": 60253,
|
||||||
|
"pills": 60254,
|
||||||
|
"prescription": 60255,
|
||||||
|
"pulse": 60256,
|
||||||
|
"stethoscope": 60257,
|
||||||
|
"surgical-knife": 60258,
|
||||||
|
"tablets": 60259,
|
||||||
|
"test-bottle": 60260,
|
||||||
|
"test-tube-alt": 60261,
|
||||||
|
"test-tube": 60262,
|
||||||
|
"thermometer-alt": 60263,
|
||||||
|
"american-express": 59856,
|
||||||
|
"credit-card": 59857,
|
||||||
|
"google-wallet": 59858,
|
||||||
|
"iyzigo": 59859,
|
||||||
|
"mastercard": 59860,
|
||||||
|
"paypal-p": 59861,
|
||||||
|
"paypal": 59862,
|
||||||
|
"payu": 59863,
|
||||||
|
"troy": 59864,
|
||||||
|
"visa": 59865,
|
||||||
|
"dinners-club": 60010,
|
||||||
|
"apple-pay": 60009,
|
||||||
|
"discover": 60013,
|
||||||
|
"jcb": 60014,
|
||||||
|
"dislike": 59796,
|
||||||
|
"like": 59797,
|
||||||
|
"audio-description": 59648,
|
||||||
|
"blind": 59649,
|
||||||
|
"braille": 59650,
|
||||||
|
"deaf": 59651,
|
||||||
|
"fa-american-sign-language-interpreting": 59652,
|
||||||
|
"low-vision": 59654,
|
||||||
|
"tty": 59655,
|
||||||
|
"universal-acces": 59656,
|
||||||
|
"wheelchair": 59657,
|
||||||
|
"area-chart": 59732,
|
||||||
|
"bar-chart": 59733,
|
||||||
|
"line-chart": 59734,
|
||||||
|
"pie-chart-1": 59735,
|
||||||
|
"pie-chart-2": 59736,
|
||||||
|
"chrome": 59726,
|
||||||
|
"edge": 59727,
|
||||||
|
"firefox": 59728,
|
||||||
|
"internet-explorer": 59729,
|
||||||
|
"opera": 59730,
|
||||||
|
"safari": 59731,
|
||||||
|
"bitcoin": 59737,
|
||||||
|
"dollar": 59738,
|
||||||
|
"euro": 59739,
|
||||||
|
"gbp": 59740,
|
||||||
|
"gg": 59741,
|
||||||
|
"ils": 59742,
|
||||||
|
"inr": 59743,
|
||||||
|
"krw": 59744,
|
||||||
|
"rouble": 59745,
|
||||||
|
"tl": 59746,
|
||||||
|
"yen": 59747,
|
||||||
|
"genderless": 59782,
|
||||||
|
"intersex": 59783,
|
||||||
|
"mars-double": 59784,
|
||||||
|
"mars-stroke-h": 59785,
|
||||||
|
"mars-stroke-v": 59786,
|
||||||
|
"mars-stroke": 59787,
|
||||||
|
"mars": 59788,
|
||||||
|
"mercury": 59789,
|
||||||
|
"neuter": 59790,
|
||||||
|
"transgender-alt": 59791,
|
||||||
|
"transgender": 59792,
|
||||||
|
"venus-double": 59793,
|
||||||
|
"venus-mars": 59794,
|
||||||
|
"venus": 59795,
|
||||||
|
"automobile": 59899,
|
||||||
|
"bicycle": 59900,
|
||||||
|
"bus": 59901,
|
||||||
|
"car": 59902,
|
||||||
|
"helicopter": 59903,
|
||||||
|
"metro": 59904,
|
||||||
|
"motorcycle": 59905,
|
||||||
|
"plane": 59906,
|
||||||
|
"rocket": 59907,
|
||||||
|
"ship": 59908,
|
||||||
|
"subway": 59909,
|
||||||
|
"taxi": 59910,
|
||||||
|
"train": 59911,
|
||||||
|
"truck": 59912,
|
||||||
|
"yacht": 59913,
|
||||||
|
"beach-slipper": 60203,
|
||||||
|
"bus-ticket": 60204,
|
||||||
|
"cocktail": 60205,
|
||||||
|
"compass-alt": 60206,
|
||||||
|
"direction-sign": 60207,
|
||||||
|
"do-not-disturb": 60208,
|
||||||
|
"flotation-ring": 60209,
|
||||||
|
"holiday-village": 60210,
|
||||||
|
"hot-air-balloon": 60211,
|
||||||
|
"hotel-alt": 60212,
|
||||||
|
"hotel": 60213,
|
||||||
|
"island": 60214,
|
||||||
|
"money-symbol": 60215,
|
||||||
|
"parasol": 60216,
|
||||||
|
"passport-alt": 60217,
|
||||||
|
"passport": 60218,
|
||||||
|
"photograph": 60219,
|
||||||
|
"plane-ticket": 60220,
|
||||||
|
"room": 60221,
|
||||||
|
"sait-boat": 60222,
|
||||||
|
"snorkel": 60223,
|
||||||
|
"suitcase-alt": 60224,
|
||||||
|
"suitcase": 60225,
|
||||||
|
"sun": 60226,
|
||||||
|
"sunglasses-alt": 60227,
|
||||||
|
"swimsuit": 60228,
|
||||||
|
"tent": 60229,
|
||||||
|
"ticket-alt": 60230,
|
||||||
|
"train-ticket": 60231,
|
||||||
|
"wallet": 60232,
|
||||||
|
"circle-o-notch": 59889,
|
||||||
|
"propeller-1": 59890,
|
||||||
|
"propeller-2": 59891,
|
||||||
|
"propeller-3": 59892,
|
||||||
|
"propeller-4": 59893,
|
||||||
|
"spinner-cog": 59894,
|
||||||
|
"spinner-fidget": 59895,
|
||||||
|
"spinner-refresh": 59896,
|
||||||
|
"spinner-rotate-forward": 59897,
|
||||||
|
"spinner": 59898,
|
||||||
|
"snowflake": 60081,
|
||||||
|
"snowflake-1": 60073,
|
||||||
|
"snowflake-2": 60074,
|
||||||
|
"snowflake-3": 60075,
|
||||||
|
"snowflake-4": 60076,
|
||||||
|
"snowflake-5": 60077,
|
||||||
|
"snowflake-6": 60078,
|
||||||
|
"snowflake-7": 60079,
|
||||||
|
"snowflake-8": 60080,
|
||||||
|
"curve": 59915,
|
||||||
|
"ellipse": 59916,
|
||||||
|
"rectangle": 59917,
|
||||||
|
"shield": 59914
|
||||||
|
}
|
|
@ -606,7 +606,7 @@
|
||||||
"PRIME_AMOUNT": "Montant de la prime",
|
"PRIME_AMOUNT": "Montant de la prime",
|
||||||
"AYANT_DROIT": "Ayant(s) droit(s)",
|
"AYANT_DROIT": "Ayant(s) droit(s)",
|
||||||
"SELECT_SUBSCRIPTION": "Sélectionner une souscription",
|
"SELECT_SUBSCRIPTION": "Sélectionner une souscription",
|
||||||
"SAISIR_FEUILLE_SOIN": "Saisir une feuille de soin",
|
"SAISIR_FEUILLE_SOIN": "Créer une consultation",
|
||||||
"MODIFIER_FEUILLE_SOIN": "Modifier une feuille de soin",
|
"MODIFIER_FEUILLE_SOIN": "Modifier une feuille de soin",
|
||||||
"FACTURER_FEUILLES_SOINS": "Facturer les feuilles de soins",
|
"FACTURER_FEUILLES_SOINS": "Facturer les feuilles de soins",
|
||||||
"FICHE_DE_SOIN": "Fiche de soins",
|
"FICHE_DE_SOIN": "Fiche de soins",
|
||||||
|
@ -637,5 +637,30 @@
|
||||||
"CONDITION_PRISE_CHARGE": "Condition de prise en charge",
|
"CONDITION_PRISE_CHARGE": "Condition de prise en charge",
|
||||||
"AFFECTION_COURANTE": "Affection courante",
|
"AFFECTION_COURANTE": "Affection courante",
|
||||||
"AFFECTION_LONGUE": "Affection longue durée",
|
"AFFECTION_LONGUE": "Affection longue durée",
|
||||||
"EXONERE": "Exonéré"
|
"EXONERE": "Exonéré",
|
||||||
|
"DATE_ACCIDENT": "Date accident",
|
||||||
|
"DATE_DEBUT_GROSSESSE": "Date début de grossesse",
|
||||||
|
"DATE_FIN_GROSSESSE": "Date fin de grossesse",
|
||||||
|
"SCAN": "Scanner",
|
||||||
|
"BRING_YOUR_CAMERA_CLOSER_TO_SCAN_QR_CODE": "Approchez votre caméra du QR Code afin de le scanner",
|
||||||
|
"CLOSE": "Fermer",
|
||||||
|
"EMPTY_LIST": "Liste vide",
|
||||||
|
"NO_ASSURE_MATCH_SEARCH": "Aucun assuré ne correspond à la recherche",
|
||||||
|
"LIST_ASSURE": "Liste des assurés",
|
||||||
|
"ASSURE_NON_EN_REGLE": "Assuré non en règle",
|
||||||
|
"CLASSE_PRESTATAIRE": "Classe de prestataire",
|
||||||
|
"FRAIS_DEPLACEMENT": "Frais de déplacement",
|
||||||
|
"AJOUTER_MEDICAMENT": "Ajouter médicament/appareil",
|
||||||
|
"AJOUTER_EXAMEN": "Ajouter examen",
|
||||||
|
"NAME": "Nom",
|
||||||
|
"POSOLOGIE": "Posologie",
|
||||||
|
"QUANTITE": "Quantité",
|
||||||
|
"LISTE_MEDICAMENT": "Liste des médicaments",
|
||||||
|
"PRESTATION": "Prestation",
|
||||||
|
"MEDICAMENT": "Médicament",
|
||||||
|
"EXAMEN": "Examen",
|
||||||
|
"PRESTATION_SUCCESSFULLY_ADD": "Prestation ajouté avec succès",
|
||||||
|
"EXAMENS_SUCCESSFULLY_ADD": "Examens ajouté avec succès",
|
||||||
|
"PRESCRIPTIONS_SUCCESSFULLY_ADD": "Prescription ajouté avec succès",
|
||||||
|
"YOU_MUST_ADD_AT_LEAST_ONE_PRESTATION": "Vous devez ajouter au moins une prestation"
|
||||||
}
|
}
|
||||||
|
|
|
@ -7,8 +7,12 @@
|
||||||
*/
|
*/
|
||||||
import InsuranceActions from './insurance.type';
|
import InsuranceActions from './insurance.type';
|
||||||
import {
|
import {
|
||||||
|
createConsultationUrl,
|
||||||
|
getDrugAndDevicesUrl,
|
||||||
getInsuranceListUrl,
|
getInsuranceListUrl,
|
||||||
getInsurancePrimeAmountUrl,
|
getInsurancePrimeAmountUrl,
|
||||||
|
getNetworkActsUrl,
|
||||||
|
getProviderClassUrl,
|
||||||
getUserByIdQRCodeUrl,
|
getUserByIdQRCodeUrl,
|
||||||
getUserByNameOrNumberUrl,
|
getUserByNameOrNumberUrl,
|
||||||
subscribeInsuranceUrl,
|
subscribeInsuranceUrl,
|
||||||
|
@ -281,3 +285,150 @@ export const fetchGetUserByNameOrNumber = (network_id, id) => {
|
||||||
onError: fetchGetUserByNameOrNumberError,
|
onError: fetchGetUserByNameOrNumberError,
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/************************************************************/
|
||||||
|
export const fetchGetDrugAppareilPending = () => ({
|
||||||
|
type: InsuranceActions.GET_DRUG_APPAREIL_PENDING,
|
||||||
|
});
|
||||||
|
|
||||||
|
export const fetchGetDrugAppareilReset = () => ({
|
||||||
|
type: InsuranceActions.GET_DRUG_APPAREIL_RESET,
|
||||||
|
});
|
||||||
|
|
||||||
|
export const fetchGetDrugAppareilSuccess = (authkey: any) => ({
|
||||||
|
type: InsuranceActions.GET_DRUG_APPAREIL_SUCCESS,
|
||||||
|
payload: authkey,
|
||||||
|
});
|
||||||
|
|
||||||
|
export const fetchGetDrugAppareilError = (error: any) => ({
|
||||||
|
type: InsuranceActions.GET_DRUG_APPAREIL_ERROR,
|
||||||
|
payload: error,
|
||||||
|
});
|
||||||
|
|
||||||
|
export const fetchGetDrugAppareil = (network_id, name) => {
|
||||||
|
return ApiAction({
|
||||||
|
url: `${getDrugAndDevicesUrl}?network_id=${network_id}&name=${name}`,
|
||||||
|
method: 'GET',
|
||||||
|
onLoading: fetchGetDrugAppareilPending,
|
||||||
|
onSuccess: fetchGetDrugAppareilSuccess,
|
||||||
|
onError: fetchGetDrugAppareilError,
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
||||||
|
/************************************************************/
|
||||||
|
export const fetchAddDrugPending = () => ({
|
||||||
|
type: InsuranceActions.ADD_DRUG_PENDING,
|
||||||
|
});
|
||||||
|
|
||||||
|
export const fetchAddDrugReset = () => ({
|
||||||
|
type: InsuranceActions.ADD_DRUG_RESET,
|
||||||
|
});
|
||||||
|
|
||||||
|
export const fetchAddDrugSuccess = (authkey: any) => ({
|
||||||
|
type: InsuranceActions.ADD_DRUG_SUCCESS,
|
||||||
|
payload: authkey,
|
||||||
|
});
|
||||||
|
|
||||||
|
export const fetchAddDrugError = (error: any) => ({
|
||||||
|
type: InsuranceActions.ADD_DRUG_ERROR,
|
||||||
|
payload: error,
|
||||||
|
});
|
||||||
|
|
||||||
|
export const fetchAddDrug = (data) => {
|
||||||
|
return ApiAction({
|
||||||
|
url: `${getDrugAndDevicesUrl}`,
|
||||||
|
method: 'POST',
|
||||||
|
data,
|
||||||
|
onLoading: fetchAddDrugPending,
|
||||||
|
onSuccess: fetchAddDrugSuccess,
|
||||||
|
onError: fetchAddDrugError,
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
||||||
|
/************************************************************/
|
||||||
|
export const fetchGetProviderClassPending = () => ({
|
||||||
|
type: InsuranceActions.GET_PROVIDER_CLASS_PENDING,
|
||||||
|
});
|
||||||
|
|
||||||
|
export const fetchGetProviderClassReset = () => ({
|
||||||
|
type: InsuranceActions.GET_PROVIDER_CLASS_RESET,
|
||||||
|
});
|
||||||
|
|
||||||
|
export const fetchGetProviderClassSuccess = (authkey: any) => ({
|
||||||
|
type: InsuranceActions.GET_PROVIDER_CLASS_SUCCESS,
|
||||||
|
payload: authkey,
|
||||||
|
});
|
||||||
|
|
||||||
|
export const fetchGetProviderClassError = (error: any) => ({
|
||||||
|
type: InsuranceActions.GET_PROVIDER_CLASS_ERROR,
|
||||||
|
payload: error,
|
||||||
|
});
|
||||||
|
|
||||||
|
export const fetchGetProviderClass = (network_id) => {
|
||||||
|
return ApiAction({
|
||||||
|
url: `${getProviderClassUrl}?network_id=${network_id}`,
|
||||||
|
method: 'GET',
|
||||||
|
onLoading: fetchGetProviderClassPending,
|
||||||
|
onSuccess: fetchGetProviderClassSuccess,
|
||||||
|
onError: fetchGetProviderClassError,
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
||||||
|
/************************************************************/
|
||||||
|
export const fetchGetNetworkActsPending = () => ({
|
||||||
|
type: InsuranceActions.GET_NETWORK_ACT_PENDING,
|
||||||
|
});
|
||||||
|
|
||||||
|
export const fetchGetNetworkActsReset = () => ({
|
||||||
|
type: InsuranceActions.GET_NETWORK_ACT_RESET,
|
||||||
|
});
|
||||||
|
|
||||||
|
export const fetchGetNetworkActsSuccess = (authkey: any) => ({
|
||||||
|
type: InsuranceActions.GET_NETWORK_ACT_SUCCESS,
|
||||||
|
payload: authkey,
|
||||||
|
});
|
||||||
|
|
||||||
|
export const fetchGetNetworkActsError = (error: any) => ({
|
||||||
|
type: InsuranceActions.GET_NETWORK_ACT_ERROR,
|
||||||
|
payload: error,
|
||||||
|
});
|
||||||
|
|
||||||
|
export const fetchGetNetworkActs = (network_id, code = '') => {
|
||||||
|
return ApiAction({
|
||||||
|
url: `${getNetworkActsUrl}?network_id=${network_id}&code=${code}`,
|
||||||
|
method: 'GET',
|
||||||
|
onLoading: fetchGetNetworkActsPending,
|
||||||
|
onSuccess: fetchGetNetworkActsSuccess,
|
||||||
|
onError: fetchGetNetworkActsError,
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
||||||
|
/************************************************************/
|
||||||
|
export const fetchCreateConsultationPending = () => ({
|
||||||
|
type: InsuranceActions.CREATE_CONSULTATION_PENDING,
|
||||||
|
});
|
||||||
|
|
||||||
|
export const fetchCreateConsultationReset = () => ({
|
||||||
|
type: InsuranceActions.CREATE_CONSULTATION_RESET,
|
||||||
|
});
|
||||||
|
|
||||||
|
export const fetchCreateConsultationSuccess = (authkey: any) => ({
|
||||||
|
type: InsuranceActions.CREATE_CONSULTATION_SUCCESS,
|
||||||
|
payload: authkey,
|
||||||
|
});
|
||||||
|
|
||||||
|
export const fetchCreateConsultationError = (error: any) => ({
|
||||||
|
type: InsuranceActions.CREATE_CONSULTATION_ERROR,
|
||||||
|
payload: error,
|
||||||
|
});
|
||||||
|
|
||||||
|
export const fetchCreateConsultation = (data) => {
|
||||||
|
return ApiAction({
|
||||||
|
url: `${createConsultationUrl}`,
|
||||||
|
method: 'POST',
|
||||||
|
data,
|
||||||
|
onLoading: fetchCreateConsultationPending,
|
||||||
|
onSuccess: fetchCreateConsultationSuccess,
|
||||||
|
onError: fetchCreateConsultationError,
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
|
@ -287,3 +287,153 @@ export const getUserByNameOrNumberReducer = (state = INITIAL_STATE, action: Insu
|
||||||
|
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
export const getDrugAppareilReducer = (state = INITIAL_STATE, action: InsuranceActions) => {
|
||||||
|
switch (action.type) {
|
||||||
|
case InsuranceActions.GET_DRUG_APPAREIL_PENDING:
|
||||||
|
return {
|
||||||
|
...state,
|
||||||
|
loading: true
|
||||||
|
}
|
||||||
|
case InsuranceActions.GET_DRUG_APPAREIL_SUCCESS:
|
||||||
|
return {
|
||||||
|
loading: false,
|
||||||
|
result: action.payload,
|
||||||
|
error: null
|
||||||
|
}
|
||||||
|
case InsuranceActions.GET_DRUG_APPAREIL_ERROR:
|
||||||
|
return {
|
||||||
|
...state,
|
||||||
|
loading: false,
|
||||||
|
result: null,
|
||||||
|
error: action.payload
|
||||||
|
}
|
||||||
|
|
||||||
|
case InsuranceActions.GET_DRUG_APPAREIL_RESET:
|
||||||
|
return INITIAL_STATE;
|
||||||
|
|
||||||
|
default:
|
||||||
|
return state
|
||||||
|
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
export const addDrugReducer = (state = INITIAL_STATE, action: InsuranceActions) => {
|
||||||
|
switch (action.type) {
|
||||||
|
case InsuranceActions.ADD_DRUG_PENDING:
|
||||||
|
return {
|
||||||
|
...state,
|
||||||
|
loading: true
|
||||||
|
}
|
||||||
|
case InsuranceActions.ADD_DRUG_SUCCESS:
|
||||||
|
return {
|
||||||
|
loading: false,
|
||||||
|
result: action.payload,
|
||||||
|
error: null
|
||||||
|
}
|
||||||
|
case InsuranceActions.ADD_DRUG_ERROR:
|
||||||
|
return {
|
||||||
|
...state,
|
||||||
|
loading: false,
|
||||||
|
result: null,
|
||||||
|
error: action.payload
|
||||||
|
}
|
||||||
|
|
||||||
|
case InsuranceActions.ADD_DRUG_RESET:
|
||||||
|
return INITIAL_STATE;
|
||||||
|
|
||||||
|
default:
|
||||||
|
return state
|
||||||
|
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
export const getProviderClassReducer = (state = INITIAL_STATE, action: InsuranceActions) => {
|
||||||
|
switch (action.type) {
|
||||||
|
case InsuranceActions.GET_PROVIDER_CLASS_PENDING:
|
||||||
|
return {
|
||||||
|
...state,
|
||||||
|
loading: true
|
||||||
|
}
|
||||||
|
case InsuranceActions.GET_PROVIDER_CLASS_SUCCESS:
|
||||||
|
return {
|
||||||
|
loading: false,
|
||||||
|
result: action.payload,
|
||||||
|
error: null
|
||||||
|
}
|
||||||
|
case InsuranceActions.GET_PROVIDER_CLASS_ERROR:
|
||||||
|
return {
|
||||||
|
...state,
|
||||||
|
loading: false,
|
||||||
|
result: null,
|
||||||
|
error: action.payload
|
||||||
|
}
|
||||||
|
|
||||||
|
case InsuranceActions.GET_PROVIDER_CLASS_RESET:
|
||||||
|
return INITIAL_STATE;
|
||||||
|
|
||||||
|
default:
|
||||||
|
return state
|
||||||
|
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
export const getNetworkActReducer = (state = INITIAL_STATE, action: InsuranceActions) => {
|
||||||
|
switch (action.type) {
|
||||||
|
case InsuranceActions.GET_NETWORK_ACT_PENDING:
|
||||||
|
return {
|
||||||
|
...state,
|
||||||
|
loading: true
|
||||||
|
}
|
||||||
|
case InsuranceActions.GET_NETWORK_ACT_SUCCESS:
|
||||||
|
return {
|
||||||
|
loading: false,
|
||||||
|
result: action.payload,
|
||||||
|
error: null
|
||||||
|
}
|
||||||
|
case InsuranceActions.GET_NETWORK_ACT_ERROR:
|
||||||
|
return {
|
||||||
|
...state,
|
||||||
|
loading: false,
|
||||||
|
result: null,
|
||||||
|
error: action.payload
|
||||||
|
}
|
||||||
|
|
||||||
|
case InsuranceActions.GET_NETWORK_ACT_RESET:
|
||||||
|
return INITIAL_STATE;
|
||||||
|
|
||||||
|
default:
|
||||||
|
return state
|
||||||
|
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
export const createConsultationReducer = (state = INITIAL_STATE, action: InsuranceActions) => {
|
||||||
|
switch (action.type) {
|
||||||
|
case InsuranceActions.CREATE_CONSULTATION_PENDING:
|
||||||
|
return {
|
||||||
|
...state,
|
||||||
|
loading: true
|
||||||
|
}
|
||||||
|
case InsuranceActions.CREATE_CONSULTATION_SUCCESS:
|
||||||
|
return {
|
||||||
|
loading: false,
|
||||||
|
result: action.payload,
|
||||||
|
error: null
|
||||||
|
}
|
||||||
|
case InsuranceActions.CREATE_CONSULTATION_ERROR:
|
||||||
|
return {
|
||||||
|
...state,
|
||||||
|
loading: false,
|
||||||
|
result: null,
|
||||||
|
error: action.payload
|
||||||
|
}
|
||||||
|
|
||||||
|
case InsuranceActions.CREATE_CONSULTATION_RESET:
|
||||||
|
return INITIAL_STATE;
|
||||||
|
|
||||||
|
default:
|
||||||
|
return state
|
||||||
|
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
|
@ -16,6 +16,11 @@ const selectActivatePaySubscriptionReducer = (state) => state.activatePaySubscri
|
||||||
const selectAddBeneficiaryToSubscriptionReducer = (state) => state.addBeneficiaryToSubscription;
|
const selectAddBeneficiaryToSubscriptionReducer = (state) => state.addBeneficiaryToSubscription;
|
||||||
const selectGetUserByIdQRCodeReducer = (state) => state.getUserByIdQRCodeReducer;
|
const selectGetUserByIdQRCodeReducer = (state) => state.getUserByIdQRCodeReducer;
|
||||||
const selectGetUserByNameOrNumberReducer = (state) => state.getUserByNameOrNumberReducer;
|
const selectGetUserByNameOrNumberReducer = (state) => state.getUserByNameOrNumberReducer;
|
||||||
|
const selectGetDrugAppareilReducer = (state) => state.getDrugAppareilReducer;
|
||||||
|
const selectAddDrugReducer = (state) => state.addDrugReducer;
|
||||||
|
const selectGetProviderClassReducer = (state) => state.getProviderClassReducer;
|
||||||
|
const selectGetNetworkActReducer = (state) => state.getNetworkActReducer;
|
||||||
|
const selectCreateConsultationReducer = (state) => state.createConsultationReducer;
|
||||||
|
|
||||||
export const selectInsuranceList = createSelector(
|
export const selectInsuranceList = createSelector(
|
||||||
[selectInsuranceListReducer],
|
[selectInsuranceListReducer],
|
||||||
|
@ -60,3 +65,23 @@ export const selectGetUserByNameOrNumber = createSelector(
|
||||||
[selectGetUserByNameOrNumberReducer],
|
[selectGetUserByNameOrNumberReducer],
|
||||||
(getUserByNameOrNumber) => getUserByNameOrNumber
|
(getUserByNameOrNumber) => getUserByNameOrNumber
|
||||||
);
|
);
|
||||||
|
export const selectGetDrugAppareil = createSelector(
|
||||||
|
[selectGetDrugAppareilReducer],
|
||||||
|
(getDrugAppareil) => getDrugAppareil
|
||||||
|
);
|
||||||
|
export const selectAddDrug = createSelector(
|
||||||
|
[selectAddDrugReducer],
|
||||||
|
(addDrugReducer) => addDrugReducer
|
||||||
|
);
|
||||||
|
export const selectGetProviderClass = createSelector(
|
||||||
|
[selectGetProviderClassReducer],
|
||||||
|
(getProviderClassReducer) => getProviderClassReducer
|
||||||
|
);
|
||||||
|
export const selectCreateConsultation = createSelector(
|
||||||
|
[selectCreateConsultationReducer],
|
||||||
|
(createConsultationReducer) => createConsultationReducer
|
||||||
|
);
|
||||||
|
export const selectGetNetworkAct = createSelector(
|
||||||
|
[selectGetNetworkActReducer],
|
||||||
|
(getNetworkActReducer) => getNetworkActReducer
|
||||||
|
);
|
||||||
|
|
|
@ -51,6 +51,29 @@ const InsuranceActions = {
|
||||||
GET_USER_BY_NAME_OR_NUMBER_ERROR: 'GET_USER_BY_NAME_OR_NUMBER_ERROR',
|
GET_USER_BY_NAME_OR_NUMBER_ERROR: 'GET_USER_BY_NAME_OR_NUMBER_ERROR',
|
||||||
GET_USER_BY_NAME_OR_NUMBER_RESET: 'GET_USER_BY_NAME_OR_NUMBER_RESET',
|
GET_USER_BY_NAME_OR_NUMBER_RESET: 'GET_USER_BY_NAME_OR_NUMBER_RESET',
|
||||||
|
|
||||||
|
GET_DRUG_APPAREIL_PENDING: 'GET_DRUG_APPAREIL_PENDING',
|
||||||
|
GET_DRUG_APPAREIL_SUCCESS: 'GET_DRUG_APPAREIL_SUCCESS',
|
||||||
|
GET_DRUG_APPAREIL_ERROR: 'GET_DRUG_APPAREIL_ERROR',
|
||||||
|
GET_DRUG_APPAREIL_RESET: 'GET_DRUG_APPAREIL_RESET',
|
||||||
|
|
||||||
|
ADD_DRUG_PENDING: 'ADD_DRUG_PENDING',
|
||||||
|
ADD_DRUG_SUCCESS: 'ADD_DRUG_SUCCESS',
|
||||||
|
ADD_DRUG_ERROR: 'ADD_DRUG_ERROR',
|
||||||
|
ADD_DRUG_RESET: 'ADD_DRUG_RESET',
|
||||||
|
|
||||||
|
GET_PROVIDER_CLASS_PENDING: 'GET_PROVIDER_CLASS_PENDING',
|
||||||
|
GET_PROVIDER_CLASS_SUCCESS: 'GET_PROVIDER_CLASS_SUCCESS',
|
||||||
|
GET_PROVIDER_CLASS_ERROR: 'GET_PROVIDER_CLASS_ERROR',
|
||||||
|
GET_PROVIDER_CLASS_RESET: 'GET_PROVIDER_CLASS_RESET',
|
||||||
|
|
||||||
|
GET_NETWORK_ACT_PENDING: 'GET_NETWORK_ACT_PENDING',
|
||||||
|
GET_NETWORK_ACT_SUCCESS: 'GET_NETWORK_ACT_SUCCESS',
|
||||||
|
GET_NETWORK_ACT_ERROR: 'GET_NETWORK_ACT_ERROR',
|
||||||
|
GET_NETWORK_ACT_RESET: 'GET_NETWORK_ACT_RESET',
|
||||||
|
|
||||||
|
CREATE_CONSULTATION_PENDING: 'CREATE_CONSULTATION_PENDING',
|
||||||
|
CREATE_CONSULTATION_SUCCESS: 'CREATE_CONSULTATION_SUCCESS',
|
||||||
|
CREATE_CONSULTATION_ERROR: 'CREATE_CONSULTATION_ERROR',
|
||||||
|
CREATE_CONSULTATION_RESET: 'CREATE_CONSULTATION_RESET',
|
||||||
}
|
}
|
||||||
export default InsuranceActions;
|
export default InsuranceActions;
|
||||||
|
|
|
@ -53,7 +53,12 @@ import ReattachAccountReducer from "./ReattachAccountReducer";
|
||||||
import {
|
import {
|
||||||
activatePaySubscriptionReducer,
|
activatePaySubscriptionReducer,
|
||||||
addBeneficiaryToSubscriptionReducer,
|
addBeneficiaryToSubscriptionReducer,
|
||||||
|
addDrugReducer,
|
||||||
|
createConsultationReducer,
|
||||||
|
getDrugAppareilReducer,
|
||||||
getInsurancePrimeAmountReducer,
|
getInsurancePrimeAmountReducer,
|
||||||
|
getNetworkActReducer,
|
||||||
|
getProviderClassReducer,
|
||||||
getSubscriptionListReducer,
|
getSubscriptionListReducer,
|
||||||
getUserByIdQRCodeReducer,
|
getUserByIdQRCodeReducer,
|
||||||
getUserByNameOrNumberReducer,
|
getUserByNameOrNumberReducer,
|
||||||
|
@ -156,6 +161,11 @@ const rootReducer = persistCombineReducers(persistConfig, {
|
||||||
addBeneficiaryToSubscription: addBeneficiaryToSubscriptionReducer,
|
addBeneficiaryToSubscription: addBeneficiaryToSubscriptionReducer,
|
||||||
getUserByIdQRCodeReducer: getUserByIdQRCodeReducer,
|
getUserByIdQRCodeReducer: getUserByIdQRCodeReducer,
|
||||||
getUserByNameOrNumberReducer: getUserByNameOrNumberReducer,
|
getUserByNameOrNumberReducer: getUserByNameOrNumberReducer,
|
||||||
|
getDrugAppareilReducer: getDrugAppareilReducer,
|
||||||
|
addDrugReducer: addDrugReducer,
|
||||||
|
getProviderClassReducer: getProviderClassReducer,
|
||||||
|
getNetworkActReducer: getNetworkActReducer,
|
||||||
|
createConsultationReducer: createConsultationReducer
|
||||||
});
|
});
|
||||||
|
|
||||||
export default rootReducer;
|
export default rootReducer;
|
||||||
|
|
|
@ -1,23 +1,24 @@
|
||||||
import React,{Component} from 'react';
|
import React, {Component} from 'react';
|
||||||
import {StyleSheet,View,Text,Image,StatusBar,ScrollView,Alert} from 'react-native';
|
import {Alert, Image, ScrollView, StatusBar, StyleSheet, Text, View} from 'react-native';
|
||||||
import { Fumi } from 'react-native-textinput-effects';
|
import {Fumi} from 'react-native-textinput-effects';
|
||||||
import * as Animatable from 'react-native-animatable'
|
|
||||||
let theme=require('./../../utils/theme.json');
|
|
||||||
import I18n from 'react-native-i18n'
|
import I18n from 'react-native-i18n'
|
||||||
import FontAwesomeIcon from 'react-native-vector-icons/FontAwesome5'
|
import FontAwesomeIcon from 'react-native-vector-icons/FontAwesome5'
|
||||||
import {readUser,AssignAgentGeo} from './../../webservice/AuthApi';
|
|
||||||
import {responsiveHeight, responsiveWidth} from 'react-native-responsive-dimensions';
|
|
||||||
import MapView,{Marker} from 'react-native-maps';
|
|
||||||
import Icon from 'react-native-vector-icons/FontAwesome5'
|
import Icon from 'react-native-vector-icons/FontAwesome5'
|
||||||
|
import {AssignAgentGeo, getCodeInformation} from './../../webservice/AuthApi';
|
||||||
|
import {responsiveHeight, responsiveWidth} from 'react-native-responsive-dimensions';
|
||||||
import Button from 'apsl-react-native-button'
|
import Button from 'apsl-react-native-button'
|
||||||
import {IlinkEmitter} from "../../utils/events";
|
import {IlinkEmitter} from "../../utils/events";
|
||||||
|
import {Dropdown} from "react-native-material-dropdown";
|
||||||
|
|
||||||
require('./../../utils/Translations')
|
require('./../../utils/Translations')
|
||||||
const route=require('./../../route.json')
|
const route = require('./../../route.json');
|
||||||
|
let theme = require('./../../utils/theme.json');
|
||||||
|
|
||||||
/*var Fabric = require('react-native-fabric');
|
/*var Fabric = require('react-native-fabric');
|
||||||
|
|
||||||
var { Crashlytics } = Fabric;
|
var { Crashlytics } = Fabric;
|
||||||
var { Answers } = Fabric;*/
|
var { Answers } = Fabric;*/
|
||||||
export default class AddNetwork extends Component {
|
export default class AddNetwork extends Component {
|
||||||
static navigatorStyle = {
|
static navigatorStyle = {
|
||||||
navBarBackgroundColor: theme.primaryDark,
|
navBarBackgroundColor: theme.primaryDark,
|
||||||
navBarTextColor: 'white',
|
navBarTextColor: 'white',
|
||||||
|
@ -26,55 +27,61 @@ export default class AddNetwork extends Component {
|
||||||
statusBarColor: theme.primaryDarkAdvanced,
|
statusBarColor: theme.primaryDarkAdvanced,
|
||||||
statusBarTextColorScheme: 'light',
|
statusBarTextColorScheme: 'light',
|
||||||
};
|
};
|
||||||
static navigationOptions = ({navigation})=>{
|
static navigationOptions = ({navigation}) => {
|
||||||
return {
|
return {
|
||||||
drawerLabel:navigation.getParam("name",I18n.t('ADD_NETWORK')),
|
drawerLabel: navigation.getParam("name", I18n.t('ADD_NETWORK')),
|
||||||
drawerIcon: ({ tintColor }) => (
|
drawerIcon: ({tintColor}) => (
|
||||||
<Icon
|
<Icon
|
||||||
name={'user'}
|
name={'user'}
|
||||||
size={24}
|
size={24}
|
||||||
/>
|
/>
|
||||||
),
|
),
|
||||||
}};
|
}
|
||||||
|
};
|
||||||
|
|
||||||
updateLangue(){
|
updateLangue() {
|
||||||
|
|
||||||
this.props.navigation.setParams({name:I18n.t('CHANGE_INFORMATION')})
|
this.props.navigation.setParams({name: I18n.t('CHANGE_INFORMATION')})
|
||||||
this.forceUpdate()
|
this.forceUpdate()
|
||||||
}
|
}
|
||||||
static options(passProps){
|
|
||||||
|
static options(passProps) {
|
||||||
return {
|
return {
|
||||||
topBar:{
|
topBar: {
|
||||||
title:{
|
title: {
|
||||||
text:"",
|
text: "",
|
||||||
},
|
},
|
||||||
backButton: {
|
backButton: {
|
||||||
visible: true,
|
visible: true,
|
||||||
color:"white"
|
color: "white"
|
||||||
},
|
},
|
||||||
buttonsRight:[],
|
buttonsRight: [],
|
||||||
buttonColor:"white",
|
buttonColor: "white",
|
||||||
background:{
|
background: {
|
||||||
color:theme.primaryDark
|
color: theme.primaryDark
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
constructor(props) {
|
constructor(props) {
|
||||||
super(props)
|
super(props)
|
||||||
this.state=this.generateState()
|
this.state = this.generateState()
|
||||||
IlinkEmitter.on("langueChange", this.updateLangue.bind(this))
|
IlinkEmitter.on("langueChange", this.updateLangue.bind(this))
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
generateState() {
|
generateState() {
|
||||||
return {
|
return {
|
||||||
isLoading:false,
|
isLoading: false,
|
||||||
notifi:false
|
notifi: false,
|
||||||
|
isNanoSante: false,
|
||||||
|
provider_classes: [],
|
||||||
|
provider_class: null
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
render(){
|
render() {
|
||||||
return (
|
return (
|
||||||
<View style={style.container}>
|
<View style={style.container}>
|
||||||
<StatusBar
|
<StatusBar
|
||||||
|
@ -82,153 +89,208 @@ export default class AddNetwork extends Component {
|
||||||
barStyle="light-content"
|
barStyle="light-content"
|
||||||
translucent={true}
|
translucent={true}
|
||||||
/>
|
/>
|
||||||
<ScrollView style={{flex:1 ,paddingTop:30}}>
|
<ScrollView style={{flex: 1, paddingTop: 30}}>
|
||||||
<View style={style.appContainer}>
|
<View style={style.appContainer}>
|
||||||
<Image source={require('./../../datas/img/icon3.png')}
|
<Image source={require('./../../datas/img/icon3.png')}
|
||||||
style={{width:responsiveWidth(90),resizeMode:"contain"}}/>
|
style={{width: responsiveWidth(90), resizeMode: "contain"}}/>
|
||||||
</View>
|
</View>
|
||||||
<Text style={style.title}>{I18n.t('ADD_NETWORK')}</Text>
|
<Text style={style.title}>{I18n.t('ADD_NETWORK')}</Text>
|
||||||
<Fumi iconClass={FontAwesomeIcon}
|
<Fumi iconClass={FontAwesomeIcon}
|
||||||
iconName={"code"}
|
iconName={"code"}
|
||||||
labelStyle={style.labelInput}
|
labelStyle={style.labelInput}
|
||||||
inputStyle={{color:'black'}}
|
inputStyle={{color: 'black'}}
|
||||||
value={this.state.validateCode}
|
value={this.state.validateCode}
|
||||||
label={I18n.t('SPONSOR_CODE')}
|
label={I18n.t('SPONSOR_CODE')}
|
||||||
onChangeText={(text)=>this.setState({validateCode:text})}
|
onChangeText={(text) => this.setState({validateCode: text})}
|
||||||
style={style.input}/>
|
style={style.input}/>
|
||||||
|
|
||||||
<Fumi
|
<Fumi
|
||||||
label={I18n.t('PHONE')}
|
label={I18n.t('PHONE')}
|
||||||
iconClass={FontAwesomeIcon}
|
iconClass={FontAwesomeIcon}
|
||||||
iconName={'phone'}
|
iconName={'phone'}
|
||||||
iconColor={'white'}
|
iconColor={'white'}
|
||||||
style={style.input}
|
style={style.input}
|
||||||
autoCapitalize={'none'}
|
autoCapitalize={'none'}
|
||||||
keyboardType={"phone-pad"}
|
keyboardType={"phone-pad"}
|
||||||
autoCorrect={false}
|
autoCorrect={false}
|
||||||
value={this.state.enterPhone}
|
value={this.state.enterPhone}
|
||||||
inputStyle={{color:'black'}}
|
inputStyle={{color: 'black'}}
|
||||||
ref={(com)=>{this.numberRef=com}}
|
ref={(com) => {
|
||||||
onChangeText={(text)=>this.setState({enterPhone:text})}
|
this.numberRef = com
|
||||||
labelStyle={style.labelInput}
|
}}
|
||||||
/>
|
onChangeText={(text) => this.setState({enterPhone: text})}
|
||||||
<Button style={style.btnStyle} textStyle={style.btnTextStyle}
|
labelStyle={style.labelInput}
|
||||||
isLoading={this.state.isLoading} onPress={()=>this.validateNetwork()}
|
/>
|
||||||
>{I18n.t('VALIDATE')}</Button>
|
|
||||||
</ScrollView>
|
|
||||||
|
{this.state.provider_classes.length >= 1 && <View
|
||||||
|
style={{
|
||||||
|
width: responsiveWidth(90),
|
||||||
|
marginTop: 20,
|
||||||
|
alignSelf: 'center',
|
||||||
|
borderRadius: 10,
|
||||||
|
paddingLeft: 20,
|
||||||
|
paddingRight: 20,
|
||||||
|
backgroundColor: 'white'
|
||||||
|
}}>
|
||||||
|
<Dropdown
|
||||||
|
label={I18n.t('CLASSE_PRESTATAIRE')}
|
||||||
|
data={this.state.provider_classes}
|
||||||
|
useNativeDriver={true}
|
||||||
|
value={this.state.provider_class === null ? "" :
|
||||||
|
this.state.provider_class}
|
||||||
|
onChangeText={(value, index, data) => {
|
||||||
|
console.log("Value", value);
|
||||||
|
this.setState({provider_class: value});
|
||||||
|
}}
|
||||||
|
valueExtractor={(value) => {
|
||||||
|
return value
|
||||||
|
}}
|
||||||
|
labelExtractor={(value) => {
|
||||||
|
return value.name
|
||||||
|
}}
|
||||||
|
/>
|
||||||
|
</View>}
|
||||||
|
|
||||||
|
<Button style={style.btnStyle} textStyle={style.btnTextStyle}
|
||||||
|
isLoading={this.state.isLoading} onPress={() => this.validateNetwork()}
|
||||||
|
>{I18n.t('VALIDATE')}</Button>
|
||||||
|
</ScrollView>
|
||||||
|
|
||||||
</View>)
|
</View>)
|
||||||
}
|
}
|
||||||
|
|
||||||
async validateNetwork() {
|
async validateNetwork() {
|
||||||
const {validateCode,isLoading,enterPhone}=this.state
|
|
||||||
if(validateCode!==undefined && validateCode!==null && enterPhone!==null){
|
|
||||||
this.setState({isLoading:true})
|
|
||||||
let res=await AssignAgentGeo(validateCode,enterPhone)
|
|
||||||
this.setState({isLoading:false})
|
|
||||||
if(res){
|
|
||||||
if(res['success']!==undefined){
|
|
||||||
Alert.alert(
|
|
||||||
I18n.t('ADD_SUCCES'),
|
|
||||||
I18n.t('ADD_SUCCESS_TEXT')
|
|
||||||
, [
|
|
||||||
{text: 'OK', onPress: () =>{
|
|
||||||
this.setState({validateCode:"",enterPhone:""})
|
|
||||||
}}
|
|
||||||
])
|
|
||||||
}else{
|
|
||||||
|
|
||||||
if(res['error']) {
|
const {validateCode, isLoading, enterPhone} = this.state;
|
||||||
|
|
||||||
|
if (validateCode !== undefined && validateCode !== null && enterPhone !== null) {
|
||||||
|
this.setState({isLoading: true});
|
||||||
|
let codeInformation = await getCodeInformation(validateCode);
|
||||||
|
|
||||||
|
if (codeInformation) {
|
||||||
|
console.log("codeInformation", codeInformation);
|
||||||
|
if (codeInformation.hasOwnProperty('provider_classes')) {
|
||||||
|
if (this.state.provider_classes.length >= 1)
|
||||||
|
await this.submitNetwork();
|
||||||
|
this.setState({provider_classes: codeInformation.provider_classes});
|
||||||
|
this.setState({isLoading: false});
|
||||||
|
} else {
|
||||||
|
await this.submitNetwork();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
async submitNetwork() {
|
||||||
|
const {validateCode, isLoading, enterPhone} = this.state;
|
||||||
|
|
||||||
|
let res = await AssignAgentGeo(validateCode, enterPhone, this.state.provider_class !== null ? this.state.provider_class.id : null);
|
||||||
|
this.setState({isLoading: false});
|
||||||
|
if (res) {
|
||||||
|
if (res['success'] !== undefined) {
|
||||||
|
Alert.alert(
|
||||||
|
I18n.t('ADD_SUCCES'),
|
||||||
|
I18n.t('ADD_SUCCESS_TEXT')
|
||||||
|
, [
|
||||||
|
{
|
||||||
|
text: 'OK', onPress: () => {
|
||||||
|
this.setState({validateCode: "", enterPhone: "", provider_classes: [], provider_class: null})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
])
|
||||||
|
} else {
|
||||||
|
|
||||||
|
if (res['error']) {
|
||||||
|
let error = res["error"];
|
||||||
|
Alert.alert("Une erreur est survenu",
|
||||||
|
res["error_msg"]
|
||||||
|
, [{
|
||||||
|
text: "Ok", onPress: () => {
|
||||||
|
}
|
||||||
|
}]);
|
||||||
|
} else {
|
||||||
|
if (res['error']) {
|
||||||
let error = res["error"];
|
let error = res["error"];
|
||||||
Alert.alert("Une erreur est survenu",
|
Alert.alert("Une erreur est survenu",
|
||||||
res["error_msg"]
|
"Verifier que les champs sont bien rempli"
|
||||||
, [{
|
, [{
|
||||||
text: "Ok", onPress: () => {
|
text: "Ok", onPress: () => {
|
||||||
}
|
}
|
||||||
}]);
|
}]);
|
||||||
}else{
|
|
||||||
if(res['error']) {
|
|
||||||
let error = res["error"];
|
|
||||||
Alert.alert("Une erreur est survenu",
|
|
||||||
"Verifier que les champs sont bien rempli"
|
|
||||||
, [{
|
|
||||||
text: "Ok", onPress: () => {
|
|
||||||
}
|
|
||||||
}]);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
/* Crashlytics.recordError({"type":"erreur lors de la creation","data":res})
|
|
||||||
Answers.logCustom("error",res)*/
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
const style=StyleSheet.create({
|
const style = StyleSheet.create({
|
||||||
btnHelpText:{
|
btnHelpText: {
|
||||||
color:'white',
|
color: 'white',
|
||||||
fontWeight:'bold'
|
fontWeight: 'bold'
|
||||||
},
|
},
|
||||||
btnHelp:{
|
btnHelp: {
|
||||||
width:responsiveWidth(10),
|
width: responsiveWidth(10),
|
||||||
marginTop:responsiveHeight(10),
|
marginTop: responsiveHeight(10),
|
||||||
alignSelf:'flex-end',
|
alignSelf: 'flex-end',
|
||||||
marginRight:20,
|
marginRight: 20,
|
||||||
borderColor:'transparent',
|
borderColor: 'transparent',
|
||||||
backgroundColor:theme.primaryDark
|
backgroundColor: theme.primaryDark
|
||||||
},
|
},
|
||||||
btnTextStyle:{
|
btnTextStyle: {
|
||||||
color:"white",
|
color: "white",
|
||||||
fontWeight:'bold',
|
fontWeight: 'bold',
|
||||||
},
|
},
|
||||||
btnStyle:{
|
btnStyle: {
|
||||||
alignSelf:'center',
|
alignSelf: 'center',
|
||||||
width:responsiveWidth(95),
|
width: responsiveWidth(95),
|
||||||
marginTop:20,
|
marginTop: 20,
|
||||||
borderColor:'transparent',
|
borderColor: 'transparent',
|
||||||
backgroundColor:theme.primaryDarkAdvanced,
|
backgroundColor: theme.primaryDarkAdvanced,
|
||||||
height:responsiveHeight(8)
|
height: responsiveHeight(8)
|
||||||
|
|
||||||
},
|
},
|
||||||
appContainer:{
|
appContainer: {
|
||||||
flexDirection:'row',
|
flexDirection: 'row',
|
||||||
justifyContent:'center',
|
justifyContent: 'center',
|
||||||
alignItems:'center'
|
alignItems: 'center'
|
||||||
},
|
},
|
||||||
container:{
|
container: {
|
||||||
alignItems:'center',
|
alignItems: 'center',
|
||||||
justifyContent:'center',
|
justifyContent: 'center',
|
||||||
alignSelf:'center',
|
alignSelf: 'center',
|
||||||
flex:1,
|
flex: 1,
|
||||||
width:responsiveWidth(100),
|
width: responsiveWidth(100),
|
||||||
height:responsiveHeight(100),
|
height: responsiveHeight(100),
|
||||||
backgroundColor:theme.primary},
|
backgroundColor: theme.primary
|
||||||
input:{
|
|
||||||
height:responsiveHeight(10),
|
|
||||||
width:responsiveWidth(90),
|
|
||||||
borderRadius:10,
|
|
||||||
marginTop:20,
|
|
||||||
color:"black"
|
|
||||||
},
|
},
|
||||||
logo:{
|
input: {
|
||||||
width:128,
|
height: responsiveHeight(10),
|
||||||
height:128
|
width: responsiveWidth(90),
|
||||||
|
borderRadius: 10,
|
||||||
|
marginTop: 20,
|
||||||
|
color: "black"
|
||||||
},
|
},
|
||||||
nameApp:{
|
logo: {
|
||||||
fontSize:27,
|
width: 128,
|
||||||
fontWeight:'bold',
|
height: 128
|
||||||
color:'white'
|
|
||||||
},
|
},
|
||||||
title:{
|
nameApp: {
|
||||||
fontSize:22,
|
fontSize: 27,
|
||||||
fontWeight:'bold',
|
fontWeight: 'bold',
|
||||||
margin:10,
|
color: 'white'
|
||||||
|
},
|
||||||
|
title: {
|
||||||
|
fontSize: 22,
|
||||||
|
fontWeight: 'bold',
|
||||||
|
margin: 10,
|
||||||
|
|
||||||
color:'white'
|
color: 'white'
|
||||||
},
|
},
|
||||||
subtitle:{
|
subtitle: {
|
||||||
fontSize:20,
|
fontSize: 20,
|
||||||
margin:10,
|
margin: 10,
|
||||||
color:'white'
|
color: 'white'
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
|
@ -1,20 +1,19 @@
|
||||||
import React, { Component } from 'react';
|
import React, {Component} from 'react';
|
||||||
import { StyleSheet, View, Text, Image, StatusBar, TouchableOpacity, ScrollView, ProgressBarAndroid, Alert } from 'react-native';
|
import {Alert, Image, ProgressBarAndroid, ScrollView, StatusBar, StyleSheet, Text, View} from 'react-native';
|
||||||
let theme = require('./../../utils/theme.json');
|
|
||||||
import Icon from 'react-native-vector-icons/MaterialIcons';
|
import Icon from 'react-native-vector-icons/MaterialIcons';
|
||||||
import { readUser, deleteUser } from './../../webservice/AuthApi';
|
import {deleteUser, readUser} from './../../webservice/AuthApi';
|
||||||
import { getAgentNetworksList } from './../../webservice/NetworkApi'
|
import {getAgentNetworksList} from './../../webservice/NetworkApi'
|
||||||
import { responsiveHeight, responsiveWidth } from 'react-native-responsive-dimensions';
|
import {responsiveHeight, responsiveWidth} from 'react-native-responsive-dimensions';
|
||||||
import MapView, { Marker } from 'react-native-maps';
|
import MapView, {Marker} from 'react-native-maps';
|
||||||
import * as Utils from '../../utils/DeviceUtils';
|
import * as Utils from '../../utils/DeviceUtils';
|
||||||
import Button from 'apsl-react-native-button';
|
|
||||||
import { Typography, FontWeight } from '../../config/typography';
|
|
||||||
import CardView from "react-native-cardview";
|
import CardView from "react-native-cardview";
|
||||||
import I18n from 'react-native-i18n'
|
import I18n from 'react-native-i18n'
|
||||||
import { Header } from 'react-native-elements'
|
import {IlinkEmitter} from "../../utils/events";
|
||||||
import { IlinkEmitter } from "../../utils/events";
|
import {Card, CardAction, CardButton, CardContent, CardTitle} from 'react-native-material-cards'
|
||||||
import { Card, CardTitle, CardContent, CardAction, CardButton, CardImage } from 'react-native-material-cards'
|
import {Color} from '../../config/Color';
|
||||||
import { Color } from '../../config/Color';
|
import Fontisto from "react-native-vector-icons/Fontisto";
|
||||||
|
|
||||||
|
let theme = require('./../../utils/theme.json');
|
||||||
let route = require('../../route.json');
|
let route = require('../../route.json');
|
||||||
|
|
||||||
require('./../../utils/Translations')
|
require('./../../utils/Translations')
|
||||||
|
@ -23,421 +22,484 @@ const height = responsiveHeight(100) - 250;
|
||||||
var Fabric = require('react-native-fabric');
|
var Fabric = require('react-native-fabric');
|
||||||
var { Crashlytics } = Fabric;*/
|
var { Crashlytics } = Fabric;*/
|
||||||
export default class UserAccount extends Component {
|
export default class UserAccount extends Component {
|
||||||
static navigatorStyle = {
|
static navigatorStyle = {
|
||||||
navBarHidden: false,
|
navBarHidden: false,
|
||||||
navBarBackgroundColor: theme.primaryDark,
|
navBarBackgroundColor: theme.primaryDark,
|
||||||
navBarTextColor: 'white',
|
navBarTextColor: 'white',
|
||||||
navBarButtonColor: 'white',
|
navBarButtonColor: 'white',
|
||||||
drawUnderStatusBar: false,
|
drawUnderStatusBar: false,
|
||||||
statusBarColor: theme.primaryDarkAdvanced,
|
statusBarColor: theme.primaryDarkAdvanced,
|
||||||
statusBarTextColorScheme: 'light',
|
statusBarTextColorScheme: 'light',
|
||||||
};
|
};
|
||||||
static navigationOptions = ({ navigation }) => {
|
static navigationOptions = ({navigation}) => {
|
||||||
return {
|
return {
|
||||||
headerTitle: I18n.t('USER_ACCOUNT'),
|
headerTitle: I18n.t('USER_ACCOUNT'),
|
||||||
headerStyle: {
|
headerStyle: {
|
||||||
backgroundColor: theme.primary,
|
backgroundColor: theme.primary,
|
||||||
paddingTop: 10
|
paddingTop: 10
|
||||||
},
|
},
|
||||||
headerTitleStyle: {
|
headerTitleStyle: {
|
||||||
color: "white"
|
color: "white"
|
||||||
},
|
},
|
||||||
drawerIcon: ({ tintColor }) => (
|
drawerIcon: ({tintColor}) => (
|
||||||
<Icon
|
<Icon
|
||||||
name={'person'}
|
name={'person'}
|
||||||
size={24}
|
size={24}
|
||||||
/>
|
/>
|
||||||
),
|
),
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
static options(passProps) {
|
|
||||||
return {
|
|
||||||
topBar: {
|
|
||||||
drawBehind: false,
|
|
||||||
visible: true,
|
|
||||||
animate: true,
|
|
||||||
buttonColor: 'white',
|
|
||||||
background: {
|
|
||||||
color: theme.primaryDark,
|
|
||||||
},
|
|
||||||
rightButtons: []
|
|
||||||
},
|
|
||||||
backButton: {
|
|
||||||
visible: true,
|
|
||||||
color: "white"
|
|
||||||
},
|
|
||||||
buttonColor: "white",
|
|
||||||
background: {
|
|
||||||
color: theme.primaryDark
|
|
||||||
},
|
|
||||||
statusBar: {
|
|
||||||
drawBehind: false,
|
|
||||||
visible: true,
|
|
||||||
}
|
|
||||||
};
|
|
||||||
}
|
|
||||||
constructor(props) {
|
|
||||||
super(props)
|
|
||||||
this.state = this.initState();
|
|
||||||
IlinkEmitter.on("langueChange", this.updateLangue.bind(this))
|
|
||||||
readUser().then((user) => {
|
|
||||||
if (user !== null) {
|
|
||||||
this.setState({ user: user })
|
|
||||||
|
|
||||||
this.updateContent(user)
|
static options(passProps) {
|
||||||
}
|
return {
|
||||||
})
|
topBar: {
|
||||||
|
drawBehind: false,
|
||||||
|
visible: true,
|
||||||
|
animate: true,
|
||||||
|
buttonColor: 'white',
|
||||||
|
background: {
|
||||||
|
color: theme.primaryDark,
|
||||||
|
},
|
||||||
|
rightButtons: []
|
||||||
|
},
|
||||||
|
backButton: {
|
||||||
|
visible: true,
|
||||||
|
color: "white"
|
||||||
|
},
|
||||||
|
buttonColor: "white",
|
||||||
|
background: {
|
||||||
|
color: theme.primaryDark
|
||||||
|
},
|
||||||
|
statusBar: {
|
||||||
|
drawBehind: false,
|
||||||
|
visible: true,
|
||||||
|
}
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
constructor(props) {
|
||||||
|
super(props)
|
||||||
|
this.state = this.initState();
|
||||||
|
IlinkEmitter.on("langueChange", this.updateLangue.bind(this))
|
||||||
|
readUser().then((user) => {
|
||||||
|
if (user !== null) {
|
||||||
|
this.setState({user: user})
|
||||||
|
|
||||||
|
this.updateContent(user)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
updateLangue() {
|
|
||||||
|
|
||||||
this.props.navigation.setParams({ name: I18n.t('USER_ACCOUNT') })
|
updateLangue() {
|
||||||
this.forceUpdate()
|
|
||||||
}
|
|
||||||
updateContent(user) {
|
|
||||||
getAgentNetworksList(user.agentId).then((networks) => {
|
|
||||||
if (networks['success'] !== undefined) {
|
|
||||||
this.setState({ mynetworks: networks.networks })
|
|
||||||
}
|
|
||||||
|
|
||||||
});
|
this.props.navigation.setParams({name: I18n.t('USER_ACCOUNT')})
|
||||||
this.setState({ user: user });
|
this.forceUpdate()
|
||||||
}
|
}
|
||||||
|
|
||||||
initState() {
|
updateContent(user) {
|
||||||
return {
|
getAgentNetworksList(user.agentId).then((networks) => {
|
||||||
user: {},
|
console.log("networks", networks.networks);
|
||||||
mynetworks: []
|
if (networks['success'] !== undefined) {
|
||||||
}
|
this.setState({mynetworks: networks.networks})
|
||||||
|
}
|
||||||
|
|
||||||
|
});
|
||||||
|
this.setState({user: user});
|
||||||
|
}
|
||||||
|
|
||||||
|
initState() {
|
||||||
|
return {
|
||||||
|
user: {},
|
||||||
|
mynetworks: []
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
render() {
|
render() {
|
||||||
|
|
||||||
let cat = "";
|
let cat = "";
|
||||||
|
|
||||||
const { user } = this.state
|
const {user} = this.state
|
||||||
|
|
||||||
if (user.category !== undefined || user.category !== null)
|
if (user.category !== undefined || user.category !== null)
|
||||||
cat = user.category === 'super' ? I18n.t("ADMIN") : user.category === 'hyper' ?
|
cat = user.category === 'super' ? I18n.t("ADMIN") : user.category === 'hyper' ?
|
||||||
I18n.t("SUPER_ADMIN") : user.category === 'geolocated' ?
|
I18n.t("SUPER_ADMIN") : user.category === 'geolocated' ?
|
||||||
I18n.t("GEOLOCATED") : I18n.t("SIMPLE_USER")
|
I18n.t("GEOLOCATED") : I18n.t("SIMPLE_USER")
|
||||||
return (
|
return (
|
||||||
<View style={styles.container}>
|
<View style={styles.container}>
|
||||||
<StatusBar
|
<StatusBar
|
||||||
backgroundColor={theme.primaryDark}
|
backgroundColor={theme.primaryDark}
|
||||||
barStyle="light-content"
|
barStyle="light-content"
|
||||||
translucent={false}
|
translucent={false}
|
||||||
/>
|
/>
|
||||||
<ScrollView style={{
|
<ScrollView style={{
|
||||||
flex: 1,
|
flex: 1,
|
||||||
marginTop: -5
|
marginTop: -5
|
||||||
}}>
|
}}>
|
||||||
<View style={styles.userInformation}>
|
<View style={styles.userInformation}>
|
||||||
<ScrollView>
|
<ScrollView>
|
||||||
<View style={{ flex: 1, justifyContent: 'center', alignItems: 'center' }}>
|
<View style={{flex: 1, justifyContent: 'center', alignItems: 'center'}}>
|
||||||
<Image source={require('./../../datas/img/users/man.png')} style={{ width: 92, height: 92 }} />
|
<Image source={require('./../../datas/img/users/man.png')}
|
||||||
</View>
|
style={{width: 92, height: 92}}/>
|
||||||
<View style={{ flex: 1, flexDirection: 'row' }}>
|
</View>
|
||||||
{user.category === undefined || user.category === null ?
|
<View style={{flex: 1, flexDirection: 'row'}}>
|
||||||
this.getHeaderLeftProfil(user) : this.getHeaderLeftAgentProfil(user)
|
{user.category === undefined || user.category === null ?
|
||||||
}
|
this.getHeaderLeftProfil(user) : this.getHeaderLeftAgentProfil(user)
|
||||||
<View style={{ flex: user.category === undefined || user.category === null ? 2 : 2 }}>
|
}
|
||||||
<Text style={styles.textInformation} >{this.state.user.firstname}</Text>
|
<View style={{flex: user.category === undefined || user.category === null ? 2 : 2}}>
|
||||||
<Text style={styles.textInformation} >{this.state.user.lastname}</Text>
|
<Text style={styles.textInformation}>{this.state.user.firstname}</Text>
|
||||||
{<Text style={{ color: 'white', fontSize: 17, fontWeight: 'bold', textAlign: 'center' }}>{cat}</Text>
|
<Text style={styles.textInformation}>{this.state.user.lastname}</Text>
|
||||||
}
|
{<Text style={{
|
||||||
|
color: 'white',
|
||||||
|
fontSize: 17,
|
||||||
|
fontWeight: 'bold',
|
||||||
|
textAlign: 'center'
|
||||||
|
}}>{cat}</Text>
|
||||||
|
}
|
||||||
|
|
||||||
</View>
|
</View>
|
||||||
{user.category === undefined || user.category === null ?
|
{user.category === undefined || user.category === null ?
|
||||||
this.getHeaderRight(user)
|
this.getHeaderRight(user)
|
||||||
: this.getHeaderRightAgent(user)}
|
: this.getHeaderRightAgent(user)}
|
||||||
|
|
||||||
</View>
|
</View>
|
||||||
</ScrollView>
|
</ScrollView>
|
||||||
|
|
||||||
</View>
|
|
||||||
<View style={styles.networkInformation}>
|
|
||||||
|
|
||||||
<Text style={{
|
|
||||||
marginLeft: 10, marginRight: 10, marginTop: 15, marginBottom: 5, fontSize: 17,
|
|
||||||
fontWeight: 'bold', color: 'black'
|
|
||||||
}}>{I18n.t("ACCOUNT_INFO")}</Text>
|
|
||||||
<CardView style={{ marginLeft: 10, marginRight: 10, paddingBottom: 20 }}>
|
|
||||||
<ScrollView>
|
|
||||||
{user.category !== undefined && user.category !== null ? this
|
|
||||||
.addAgentInformation(user) : null}
|
|
||||||
<Text style={styles.textInformation2}>
|
|
||||||
<Icon name={"location-on"} size={18} />{" " + this.state.user.country}</Text>
|
|
||||||
|
|
||||||
{user.balance !== undefined && user.balance !== null ? this.showBalance(user) : null}
|
|
||||||
<Text style={styles.textInformation2}>
|
|
||||||
<Icon name={"mail"} size={18} />{" " + this.state.user.email}</Text>
|
|
||||||
|
|
||||||
|
|
||||||
<Text style={styles.textInformation2}>
|
|
||||||
|
|
||||||
<Icon name={"phone"} size={18} />
|
|
||||||
{" " + this.state.user.phone}</Text>
|
|
||||||
{this.showPhoneSup()}
|
|
||||||
<Text style={styles.textInformation2}>
|
|
||||||
|
|
||||||
<Icon name={"account-balance-wallet"} size={18} />
|
|
||||||
{" " + this.state.user.network}</Text>
|
|
||||||
</ScrollView>
|
|
||||||
</CardView>
|
|
||||||
|
|
||||||
{user.category === 'geolocated' ?
|
|
||||||
(<Text style={{ marginLeft: 10, marginRight: 10, marginTop: 15, marginBottom: 5, fontSize: 17, fontWeight: 'bold', color: 'black' }}>{I18n.t("MY_NETWORK")}</Text>)
|
|
||||||
|
|
||||||
: null}
|
|
||||||
{user.category === 'geolocated' ? (this.state.mynetworks.length > 0 ? this.state.mynetworks.map(item => this.generateItemNetwork(item)) : this.showLoader()) : null}
|
|
||||||
</View>
|
|
||||||
</ScrollView>
|
|
||||||
|
|
||||||
</View>
|
|
||||||
)
|
|
||||||
}
|
|
||||||
showPhoneSup() {
|
|
||||||
if (this.state.user.phoneTransaction != undefined && this.state.user.phoneTransaction != null) {
|
|
||||||
|
|
||||||
return (<Text style={styles.textInformation2}>
|
|
||||||
|
|
||||||
<Icon name={"phone"} size={18} />
|
|
||||||
{" " + this.state.user.phoneTransaction}</Text>
|
|
||||||
)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
getHeaderLeftProfil(user) {
|
|
||||||
return (<View style={{ flex: 2 }}>
|
|
||||||
<Text style={{ color: 'white', fontSize: 15, fontWeight: 'bold', textAlign: 'center' }}>{I18n.t("NETWORK")}</Text>
|
|
||||||
<Text style={{ color: 'white', fontSize: 15, textAlign: 'center' }}>{user.network}</Text>
|
|
||||||
</View>)
|
|
||||||
}
|
|
||||||
|
|
||||||
getHeaderRight(user) {
|
|
||||||
return (<View style={{ flex: 0 }}>
|
|
||||||
</View>)
|
|
||||||
}
|
|
||||||
|
|
||||||
getHeaderRightAgent(user) {
|
|
||||||
|
|
||||||
return (<View style={{ flex: 2 }}>
|
|
||||||
<Text style={{ color: 'white', fontSize: 15, textAlign: 'center', fontWeight: 'bold' }}>{I18n.t("MEMBER_CODE")}</Text>
|
|
||||||
<Text style={{ color: 'white', fontSize: 13, textAlign: 'center' }}>{user.code_membre}</Text>
|
|
||||||
</View>)
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
getHeaderLeftAgentProfil(user) {
|
|
||||||
return (<View style={{ flex: 2 }}>
|
|
||||||
<Text style={{ color: 'white', fontSize: 15, fontWeight: 'bold', textAlign: 'center' }}>{I18n.t("NETWORK")}</Text>
|
|
||||||
<Text style={{ color: 'white', fontSize: 13, textAlign: 'center' }}>{user.network}</Text>
|
|
||||||
</View>)
|
|
||||||
}
|
|
||||||
|
|
||||||
addAgentInformation(user) {
|
|
||||||
console.log(user)
|
|
||||||
if (user.category === "geolocated") {
|
|
||||||
(<View>
|
|
||||||
<Text style={{ marginLeft: 10, marginTop: 10, color: theme.primaryDark }}>
|
|
||||||
<Icon name={'code'} size={18} color={theme.primaryDark} style={{ paddingRight: 10 }} />
|
|
||||||
{" " + user.code_parrain}</Text>
|
|
||||||
</View>)
|
|
||||||
|
|
||||||
} else
|
|
||||||
return (<View>
|
|
||||||
|
|
||||||
<Text style={{ marginLeft: 10, marginTop: 10, color: theme.primaryDark }}>
|
|
||||||
<Icon name={'code'} size={18} color={theme.primaryDark} style={{ paddingRight: 10 }} />
|
|
||||||
{" " + user.code_parrain}</Text>
|
|
||||||
<View style={{ flexDirection: 'row', justifyContent: 'space-between', width: responsiveWidth(90), marginRight: 50 }}>
|
|
||||||
<Text style={{ marginLeft: 12, marginTop: 10, color: theme.primaryDark }}>
|
|
||||||
<Icon name={"group-work"} color={theme.primaryDark} size={18} />
|
|
||||||
{" " + ((user.nbre_reseau === null || user.nbre_reseau === undefined) ? 0 : user.nbre_reseau) + " " + I18n.t("FREE")}</Text>
|
|
||||||
<Text style={{ marginLeft: 12, marginTop: 10, color: theme.primaryDark }}>
|
|
||||||
<Icon name={"book"} color={theme.primaryDark} size={18} />{" " + ((user.nbre_reseau === null || user.nbre_membre === undefined) ? 0 : user.nbre_membre) + " " + I18n.t("SAVED")}</Text>
|
|
||||||
</View>
|
</View>
|
||||||
</View>)
|
<View style={styles.networkInformation}>
|
||||||
}
|
|
||||||
|
|
||||||
mapUser(user) {
|
<Text style={{
|
||||||
const myPosition = { latitude: parseFloat(user.latitude), longitude: parseFloat(user.longitude) }
|
marginLeft: 10, marginRight: 10, marginTop: 15, marginBottom: 5, fontSize: 17,
|
||||||
|
fontWeight: 'bold', color: 'black'
|
||||||
|
}}>{I18n.t("ACCOUNT_INFO")}</Text>
|
||||||
|
<CardView style={{marginLeft: 10, marginRight: 10, paddingBottom: 20}}>
|
||||||
|
<ScrollView>
|
||||||
|
{user.category !== undefined && user.category !== null ? this
|
||||||
|
.addAgentInformation(user) : null}
|
||||||
|
<Text style={styles.textInformation2}>
|
||||||
|
<Icon name={"location-on"} size={18}/>{" " + this.state.user.country}</Text>
|
||||||
|
|
||||||
return (<MapView
|
{user.balance !== undefined && user.balance !== null ? this.showBalance(user) : null}
|
||||||
liteMode
|
<Text style={styles.textInformation2}>
|
||||||
ref={(ref) => { this.mapRef = ref }}
|
<Icon name={"mail"} size={18}/>{" " + this.state.user.email}</Text>
|
||||||
style={styles.map}
|
|
||||||
>
|
|
||||||
{this.state.myPosition !== undefined ?
|
<Text style={styles.textInformation2}>
|
||||||
|
|
||||||
|
<Icon name={"phone"} size={18}/>
|
||||||
|
{" " + this.state.user.phone}</Text>
|
||||||
|
{this.showPhoneSup()}
|
||||||
|
<Text style={styles.textInformation2}>
|
||||||
|
|
||||||
|
<Icon name={"account-balance-wallet"} size={18}/>
|
||||||
|
{" " + this.state.user.network}</Text>
|
||||||
|
</ScrollView>
|
||||||
|
</CardView>
|
||||||
|
|
||||||
|
{user.category === 'geolocated' ?
|
||||||
|
(<Text style={{
|
||||||
|
marginLeft: 10,
|
||||||
|
marginRight: 10,
|
||||||
|
marginTop: 15,
|
||||||
|
marginBottom: 5,
|
||||||
|
fontSize: 17,
|
||||||
|
fontWeight: 'bold',
|
||||||
|
color: 'black'
|
||||||
|
}}>{I18n.t("MY_NETWORK")}</Text>)
|
||||||
|
|
||||||
|
: null}
|
||||||
|
{user.category === 'geolocated' ? (this.state.mynetworks.length > 0 ? this.state.mynetworks.map(item => this.generateItemNetwork(item)) : this.showLoader()) : null}
|
||||||
|
</View>
|
||||||
|
</ScrollView>
|
||||||
|
|
||||||
|
</View>
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
showPhoneSup() {
|
||||||
|
if (this.state.user.phoneTransaction != undefined && this.state.user.phoneTransaction != null) {
|
||||||
|
|
||||||
|
return (<Text style={styles.textInformation2}>
|
||||||
|
|
||||||
|
<Icon name={"phone"} size={18}/>
|
||||||
|
{" " + this.state.user.phoneTransaction}</Text>
|
||||||
|
)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
getHeaderLeftProfil(user) {
|
||||||
|
return (<View style={{flex: 2}}>
|
||||||
|
<Text style={{
|
||||||
|
color: 'white',
|
||||||
|
fontSize: 15,
|
||||||
|
fontWeight: 'bold',
|
||||||
|
textAlign: 'center'
|
||||||
|
}}>{I18n.t("NETWORK")}</Text>
|
||||||
|
<Text style={{color: 'white', fontSize: 15, textAlign: 'center'}}>{user.network}</Text>
|
||||||
|
</View>)
|
||||||
|
}
|
||||||
|
|
||||||
|
getHeaderRight(user) {
|
||||||
|
return (<View style={{flex: 0}}>
|
||||||
|
</View>)
|
||||||
|
}
|
||||||
|
|
||||||
|
getHeaderRightAgent(user) {
|
||||||
|
|
||||||
|
return (<View style={{flex: 2}}>
|
||||||
|
<Text style={{
|
||||||
|
color: 'white',
|
||||||
|
fontSize: 15,
|
||||||
|
textAlign: 'center',
|
||||||
|
fontWeight: 'bold'
|
||||||
|
}}>{I18n.t("MEMBER_CODE")}</Text>
|
||||||
|
<Text style={{color: 'white', fontSize: 13, textAlign: 'center'}}>{user.code_membre}</Text>
|
||||||
|
</View>)
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
getHeaderLeftAgentProfil(user) {
|
||||||
|
return (<View style={{flex: 2}}>
|
||||||
|
<Text style={{
|
||||||
|
color: 'white',
|
||||||
|
fontSize: 15,
|
||||||
|
fontWeight: 'bold',
|
||||||
|
textAlign: 'center'
|
||||||
|
}}>{I18n.t("NETWORK")}</Text>
|
||||||
|
<Text style={{color: 'white', fontSize: 13, textAlign: 'center'}}>{user.network}</Text>
|
||||||
|
</View>)
|
||||||
|
}
|
||||||
|
|
||||||
|
addAgentInformation(user) {
|
||||||
|
console.log(user)
|
||||||
|
if (user.category === "geolocated") {
|
||||||
|
(<View>
|
||||||
|
<Text style={{marginLeft: 10, marginTop: 10, color: theme.primaryDark}}>
|
||||||
|
<Icon name={'code'} size={18} color={theme.primaryDark} style={{paddingRight: 10}}/>
|
||||||
|
{" " + user.code_parrain}</Text>
|
||||||
|
</View>)
|
||||||
|
|
||||||
|
} else
|
||||||
|
return (<View>
|
||||||
|
|
||||||
|
<Text style={{marginLeft: 10, marginTop: 10, color: theme.primaryDark}}>
|
||||||
|
<Icon name={'code'} size={18} color={theme.primaryDark} style={{paddingRight: 10}}/>
|
||||||
|
{" " + user.code_parrain}</Text>
|
||||||
|
<View style={{
|
||||||
|
flexDirection: 'row',
|
||||||
|
justifyContent: 'space-between',
|
||||||
|
width: responsiveWidth(90),
|
||||||
|
marginRight: 50
|
||||||
|
}}>
|
||||||
|
<Text style={{marginLeft: 12, marginTop: 10, color: theme.primaryDark}}>
|
||||||
|
<Icon name={"group-work"} color={theme.primaryDark} size={18}/>
|
||||||
|
{" " + ((user.nbre_reseau === null || user.nbre_reseau === undefined) ? 0 : user.nbre_reseau) + " " + I18n.t("FREE")}
|
||||||
|
</Text>
|
||||||
|
<Text style={{marginLeft: 12, marginTop: 10, color: theme.primaryDark}}>
|
||||||
|
<Icon name={"book"} color={theme.primaryDark}
|
||||||
|
size={18}/>{" " + ((user.nbre_reseau === null || user.nbre_membre === undefined) ? 0 : user.nbre_membre) + " " + I18n.t("SAVED")}
|
||||||
|
</Text>
|
||||||
|
</View>
|
||||||
|
</View>)
|
||||||
|
}
|
||||||
|
|
||||||
|
mapUser(user) {
|
||||||
|
const myPosition = {latitude: parseFloat(user.latitude), longitude: parseFloat(user.longitude)}
|
||||||
|
|
||||||
|
return (<MapView
|
||||||
|
liteMode
|
||||||
|
ref={(ref) => {
|
||||||
|
this.mapRef = ref
|
||||||
|
}}
|
||||||
|
style={styles.map}
|
||||||
|
>
|
||||||
|
{this.state.myPosition !== undefined ?
|
||||||
<Marker
|
<Marker
|
||||||
title={"Vous êtes ici"}
|
title={"Vous êtes ici"}
|
||||||
minZoomLevel={10}
|
minZoomLevel={10}
|
||||||
coordinate={{ longitude: myPosition.longitude, latitude: myPosition.latitude }}
|
coordinate={{longitude: myPosition.longitude, latitude: myPosition.latitude}}
|
||||||
/> :
|
/> :
|
||||||
null}
|
null}
|
||||||
</MapView>
|
</MapView>
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
showBalance(user) {
|
showBalance(user) {
|
||||||
return <Text style={styles.textInformation2}>
|
return <Text style={styles.textInformation2}>
|
||||||
<Icon name={"folder"} size={18} />{" " + this.state.user.balance + " "}</Text>
|
<Icon name={"folder"} size={18}/>{" " + this.state.user.balance + " "}</Text>
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
makeGeolocatedNetworkList() {
|
makeGeolocatedNetworkList() {
|
||||||
|
|
||||||
return (<View>
|
return (<View>
|
||||||
<Text style={{ marginLeft: 10, marginRight: 10, marginTop: 15, marginBottom: 5, fontSize: 17, fontWeight: 'bold', color: 'black' }}>Mes reseaux</Text>
|
<Text style={{
|
||||||
|
marginLeft: 10,
|
||||||
|
marginRight: 10,
|
||||||
|
marginTop: 15,
|
||||||
|
marginBottom: 5,
|
||||||
|
fontSize: 17,
|
||||||
|
fontWeight: 'bold',
|
||||||
|
color: 'black'
|
||||||
|
}}>Mes reseaux</Text>
|
||||||
|
|
||||||
</View>)
|
</View>)
|
||||||
}
|
}
|
||||||
|
|
||||||
generateItemNetwork(item) {
|
generateItemNetwork(item) {
|
||||||
return (
|
return (
|
||||||
|
|
||||||
<Card >
|
<Card>
|
||||||
|
|
||||||
<CardTitle
|
<CardTitle
|
||||||
title={item.name}
|
title={item.name}
|
||||||
subtitle={item.phone}
|
subtitle={item.phone}
|
||||||
|
/>
|
||||||
|
<CardContent>
|
||||||
|
<View Style={{flex: 1}}>
|
||||||
|
<Text style={styles.textInformation2}>
|
||||||
|
<Icon name={"code"} size={18}/>{" " + item.code_membre + " "}</Text>
|
||||||
|
<Text style={styles.textInformation2}>
|
||||||
|
<Icon name={"people"} size={18}/>{" " + item.code_parrain + " "}</Text>
|
||||||
|
{item.provider_class !== null && (
|
||||||
|
<>
|
||||||
|
<Text style={styles.textInformation2}>
|
||||||
|
<Fontisto name={"doctor"} size={18}/>{" " + item.provider_class + " "}</Text>
|
||||||
|
</>
|
||||||
|
|
||||||
|
)}
|
||||||
|
|
||||||
|
</View>
|
||||||
|
</CardContent>
|
||||||
|
<CardAction
|
||||||
|
separator={true}
|
||||||
|
inColumn={false}>
|
||||||
|
<CardButton
|
||||||
|
onPress={() => {
|
||||||
|
Alert.alert(
|
||||||
|
I18n.t("TITLE_SUPPRESS_CONFIRM"),
|
||||||
|
I18n.t("TEXT_SUPPRESS_CONFIRM"),
|
||||||
|
[
|
||||||
|
{
|
||||||
|
text: I18n.t('NO'), onPress: () => {
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
text: I18n.t("YES"), onPress: () => {
|
||||||
|
deleteUser(item).then(() => {
|
||||||
|
this.setState({isLoading: true})
|
||||||
|
this.updateContent(this.state.user)
|
||||||
|
})
|
||||||
|
},
|
||||||
|
style: 'cancel'
|
||||||
|
},
|
||||||
|
],
|
||||||
|
)
|
||||||
|
}}
|
||||||
|
title={I18n.t('DELETE_GEOLOCATED_USER')}
|
||||||
|
color="crimson"
|
||||||
/>
|
/>
|
||||||
<CardContent>
|
</CardAction>
|
||||||
<View Style={{ flex: 1 }}>
|
</Card>)
|
||||||
<Text style={styles.textInformation2}>
|
}
|
||||||
<Icon name={"code"} size={18} />{" " + item.code_membre + " "}</Text>
|
|
||||||
<Text style={styles.textInformation2}>
|
|
||||||
<Icon name={"people"} size={18} />{" " + item.code_parrain + " "}</Text>
|
|
||||||
|
|
||||||
</View>
|
showLoader() {
|
||||||
</CardContent>
|
return (<View style={{height: responsiveHeight(20)}}><ProgressBarAndroid
|
||||||
<CardAction
|
|
||||||
separator={true}
|
|
||||||
inColumn={false}>
|
|
||||||
<CardButton
|
|
||||||
onPress={() => {
|
|
||||||
Alert.alert(
|
|
||||||
I18n.t("TITLE_SUPPRESS_CONFIRM"),
|
|
||||||
I18n.t("TEXT_SUPPRESS_CONFIRM"),
|
|
||||||
[
|
|
||||||
{ text: I18n.t('NO'), onPress: () => { } },
|
|
||||||
{
|
|
||||||
text: I18n.t("YES"), onPress: () => {
|
|
||||||
deleteUser(item).then(() => {
|
|
||||||
this.setState({ isLoading: true })
|
|
||||||
this.updateContent(this.state.user)
|
|
||||||
})
|
|
||||||
},
|
|
||||||
style: 'cancel'
|
|
||||||
},
|
|
||||||
],
|
|
||||||
)
|
|
||||||
}}
|
|
||||||
title={I18n.t('DELETE_GEOLOCATED_USER')}
|
|
||||||
color="crimson"
|
|
||||||
/>
|
|
||||||
</CardAction>
|
|
||||||
</Card>)
|
|
||||||
}
|
|
||||||
|
|
||||||
showLoader() {
|
style={{justifyContent: "center", alignItems: "center"}}
|
||||||
return (<View style={{ height: responsiveHeight(20) }}><ProgressBarAndroid
|
/></View>)
|
||||||
|
}
|
||||||
style={{ justifyContent: "center", alignItems: "center" }}
|
|
||||||
/></View>)
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
const styles = StyleSheet.create({
|
const styles = StyleSheet.create({
|
||||||
userInformation: {
|
userInformation: {
|
||||||
backgroundColor: theme.primary,
|
backgroundColor: theme.primary,
|
||||||
flex: 1,
|
flex: 1,
|
||||||
justifyContent: 'center',
|
justifyContent: 'center',
|
||||||
paddingTop: responsiveHeight(2),
|
paddingTop: responsiveHeight(2),
|
||||||
paddingBottom: responsiveHeight(5)
|
paddingBottom: responsiveHeight(5)
|
||||||
},
|
},
|
||||||
map: {
|
map: {
|
||||||
height: 200,
|
height: 200,
|
||||||
marginRight: responsiveWidth(5),
|
marginRight: responsiveWidth(5),
|
||||||
marginLeft: responsiveWidth(5),
|
marginLeft: responsiveWidth(5),
|
||||||
marginVertical: 10,
|
marginVertical: 10,
|
||||||
},
|
},
|
||||||
networkInformation: {
|
networkInformation: {
|
||||||
width: responsiveWidth(100),
|
width: responsiveWidth(100),
|
||||||
backgroundColor: '#EEEEEE',
|
backgroundColor: '#EEEEEE',
|
||||||
flex: 1
|
flex: 1
|
||||||
},
|
},
|
||||||
container: {
|
container: {
|
||||||
flex: 1,
|
flex: 1,
|
||||||
backgroundColor: '#EEEEEE',
|
backgroundColor: '#EEEEEE',
|
||||||
},
|
},
|
||||||
contain: {
|
contain: {
|
||||||
flexDirection: 'row',
|
flexDirection: 'row',
|
||||||
justifyContent: 'space-between',
|
justifyContent: 'space-between',
|
||||||
},
|
},
|
||||||
identificationOptionMenuContainer: {
|
identificationOptionMenuContainer: {
|
||||||
flexDirection: 'row',
|
flexDirection: 'row',
|
||||||
paddingTop: 10,
|
paddingTop: 10,
|
||||||
paddingLeft: 10,
|
paddingLeft: 10,
|
||||||
paddingRight: 10,
|
paddingRight: 10,
|
||||||
},
|
},
|
||||||
containerTouch: {
|
containerTouch: {
|
||||||
flex: 1,
|
flex: 1,
|
||||||
flexDirection: 'row',
|
flexDirection: 'row',
|
||||||
marginRight: 2.5,
|
marginRight: 2.5,
|
||||||
alignItems: 'center',
|
alignItems: 'center',
|
||||||
shadowColor: Color.borderColor,
|
shadowColor: Color.borderColor,
|
||||||
borderColor: Color.borderColor,
|
borderColor: Color.borderColor,
|
||||||
shadowOffset: { width: 1.5, height: 1.5 },
|
shadowOffset: {width: 1.5, height: 1.5},
|
||||||
shadowOpacity: 1.0,
|
shadowOpacity: 1.0,
|
||||||
elevation: 5,
|
elevation: 5,
|
||||||
borderRadius: 10,
|
borderRadius: 10,
|
||||||
backgroundColor: Color.cardBackgroundColor
|
backgroundColor: Color.cardBackgroundColor
|
||||||
},
|
},
|
||||||
contain: {
|
contain: {
|
||||||
flexDirection: 'row',
|
flexDirection: 'row',
|
||||||
justifyContent: 'space-between',
|
justifyContent: 'space-between',
|
||||||
},
|
},
|
||||||
imageBanner: {
|
imageBanner: {
|
||||||
marginTop: 15,
|
marginTop: 15,
|
||||||
marginLeft: 5,
|
marginLeft: 5,
|
||||||
width: Utils.scaleWithPixel(30),
|
width: Utils.scaleWithPixel(30),
|
||||||
height: Utils.scaleWithPixel(30)
|
height: Utils.scaleWithPixel(30)
|
||||||
},
|
},
|
||||||
content: {
|
content: {
|
||||||
height: Utils.scaleWithPixel(60),
|
height: Utils.scaleWithPixel(60),
|
||||||
paddingHorizontal: 10,
|
paddingHorizontal: 10,
|
||||||
justifyContent: 'space-between',
|
justifyContent: 'space-between',
|
||||||
alignItems: 'flex-start',
|
alignItems: 'flex-start',
|
||||||
flex: 1,
|
flex: 1,
|
||||||
},
|
},
|
||||||
contentTitle: {
|
contentTitle: {
|
||||||
paddingTop: 5,
|
paddingTop: 5,
|
||||||
},
|
},
|
||||||
textInformation: {
|
textInformation: {
|
||||||
fontSize: 16,
|
fontSize: 16,
|
||||||
color: 'white',
|
color: 'white',
|
||||||
textAlign: 'center'
|
textAlign: 'center'
|
||||||
},
|
},
|
||||||
textInformation2: {
|
textInformation2: {
|
||||||
fontSize: 15,
|
fontSize: 15,
|
||||||
marginTop: 7,
|
marginTop: 7,
|
||||||
color: theme.primaryDark,
|
color: theme.primaryDark,
|
||||||
marginLeft: 10,
|
marginLeft: 10,
|
||||||
},
|
},
|
||||||
textTitle: {
|
textTitle: {
|
||||||
fontSize: 25,
|
fontSize: 25,
|
||||||
color: 'white',
|
color: 'white',
|
||||||
fontWeight: 'bold'
|
fontWeight: 'bold'
|
||||||
},
|
},
|
||||||
|
|
||||||
textTitle2: {
|
textTitle2: {
|
||||||
fontSize: 25,
|
fontSize: 25,
|
||||||
color: theme.primaryDark,
|
color: theme.primaryDark,
|
||||||
fontWeight: 'bold'
|
fontWeight: 'bold'
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
|
@ -1373,7 +1373,7 @@ class WalletDetail extends Component {
|
||||||
|
|
||||||
</View>}
|
</View>}
|
||||||
|
|
||||||
{(wallet.type === "ilink-world" || wallet.type === "ilink") &&
|
{(wallet.type === "ilink-world" || wallet.type === "ilink" || wallet.type === "visa") &&
|
||||||
<View style={styles.transactionContainer}>
|
<View style={styles.transactionContainer}>
|
||||||
|
|
||||||
<View style={[styles.containerTouch]}>
|
<View style={[styles.containerTouch]}>
|
||||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -606,7 +606,7 @@
|
||||||
"PRIME_AMOUNT": "Montant de la prime",
|
"PRIME_AMOUNT": "Montant de la prime",
|
||||||
"AYANT_DROIT": "Ayant(s) droit(s)",
|
"AYANT_DROIT": "Ayant(s) droit(s)",
|
||||||
"SELECT_SUBSCRIPTION": "Sélectionner une souscription",
|
"SELECT_SUBSCRIPTION": "Sélectionner une souscription",
|
||||||
"SAISIR_FEUILLE_SOIN": "Saisir une feuille de soin",
|
"SAISIR_FEUILLE_SOIN": "Créer une consultation",
|
||||||
"MODIFIER_FEUILLE_SOIN": "Modifier une feuille de soin",
|
"MODIFIER_FEUILLE_SOIN": "Modifier une feuille de soin",
|
||||||
"FACTURER_FEUILLES_SOINS": "Facturer les feuilles de soins",
|
"FACTURER_FEUILLES_SOINS": "Facturer les feuilles de soins",
|
||||||
"FICHE_DE_SOIN": "Fiche de soins",
|
"FICHE_DE_SOIN": "Fiche de soins",
|
||||||
|
@ -647,5 +647,20 @@
|
||||||
"EMPTY_LIST": "Liste vide",
|
"EMPTY_LIST": "Liste vide",
|
||||||
"NO_ASSURE_MATCH_SEARCH": "Aucun assuré ne correspond à la recherche",
|
"NO_ASSURE_MATCH_SEARCH": "Aucun assuré ne correspond à la recherche",
|
||||||
"LIST_ASSURE": "Liste des assurés",
|
"LIST_ASSURE": "Liste des assurés",
|
||||||
"ASSURE_NON_EN_REGLE": "Assuré non en règle"
|
"ASSURE_NON_EN_REGLE": "Assuré non en règle",
|
||||||
|
"CLASSE_PRESTATAIRE": "Classe de prestataire",
|
||||||
|
"FRAIS_DEPLACEMENT": "Frais de déplacement",
|
||||||
|
"AJOUTER_MEDICAMENT": "Ajouter médicament/appareil",
|
||||||
|
"AJOUTER_EXAMEN": "Ajouter examen",
|
||||||
|
"NAME": "Nom",
|
||||||
|
"POSOLOGIE": "Posologie",
|
||||||
|
"QUANTITE": "Quantité",
|
||||||
|
"LISTE_MEDICAMENT": "Liste des médicaments",
|
||||||
|
"PRESTATION": "Prestation",
|
||||||
|
"MEDICAMENT": "Médicament",
|
||||||
|
"EXAMEN": "Examen",
|
||||||
|
"PRESTATION_SUCCESSFULLY_ADD": "Prestation ajouté avec succès",
|
||||||
|
"EXAMENS_SUCCESSFULLY_ADD": "Examens ajouté avec succès",
|
||||||
|
"PRESCRIPTIONS_SUCCESSFULLY_ADD": "Prescription ajouté avec succès",
|
||||||
|
"YOU_MUST_ADD_AT_LEAST_ONE_PRESTATION": "Vous devez ajouter au moins une prestation"
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
import React from 'react';
|
import React from 'react';
|
||||||
import axios from "axios";
|
|
||||||
import I18n from 'react-native-i18n'
|
import I18n from 'react-native-i18n'
|
||||||
import {db} from './persistences/db';
|
import {db} from './persistences/db';
|
||||||
import {
|
import {
|
||||||
|
@ -297,18 +296,19 @@ export const generateAgentGeo = async (newPhone) => {
|
||||||
"type": "generateNetworkAgentForGeo",
|
"type": "generateNetworkAgentForGeo",
|
||||||
"tag": "member",
|
"tag": "member",
|
||||||
"code_parrain": user.code_membre,
|
"code_parrain": user.code_membre,
|
||||||
'phone': newPhone
|
'phone': newPhon
|
||||||
}, memberActionUrl)
|
}, memberActionUrl)
|
||||||
return items;
|
return items;
|
||||||
}
|
}
|
||||||
export const AssignAgentGeo = async (codeValidation, phone) => {
|
export const AssignAgentGeo = async (codeValidation, phone, provider_class) => {
|
||||||
const user = await readUser();
|
const user = await readUser();
|
||||||
const items = await queryData({
|
const items = await queryData({
|
||||||
"type": "assignNetworkAgentToGeo",
|
"type": "assignNetworkAgentToGeo",
|
||||||
"tag": "member",
|
"tag": "member",
|
||||||
"agentId": user.agentId,
|
"agentId": user.agentId,
|
||||||
'code_parrain': codeValidation,
|
'code_parrain': codeValidation,
|
||||||
"phone": phone
|
"phone": phone,
|
||||||
|
"provider_class_id": provider_class
|
||||||
}, memberActionUrl)
|
}, memberActionUrl)
|
||||||
return items;
|
return items;
|
||||||
}
|
}
|
||||||
|
|
|
@ -84,7 +84,11 @@ export const payBillUrl = testBaseUrl + '/walletService/transactions/ilink';
|
||||||
export const getInsuranceListUrl = testBaseUrl + '/nanoSanteService/insurances';
|
export const getInsuranceListUrl = testBaseUrl + '/nanoSanteService/insurances';
|
||||||
export const getUserByIdQRCodeUrl = testBaseUrl + '/nanoSanteService/qrcode/read';
|
export const getUserByIdQRCodeUrl = testBaseUrl + '/nanoSanteService/qrcode/read';
|
||||||
export const getUserByNameOrNumberUrl = testBaseUrl + '/nanoSanteService/insured';
|
export const getUserByNameOrNumberUrl = testBaseUrl + '/nanoSanteService/insured';
|
||||||
|
export const getDrugAndDevicesUrl = testBaseUrl + '/nanoSanteService/drugs-and-devices';
|
||||||
export const subscribeInsuranceUrl = testBaseUrl + '/nanoSanteService/insurances/subscriptions';
|
export const subscribeInsuranceUrl = testBaseUrl + '/nanoSanteService/insurances/subscriptions';
|
||||||
|
export const getProviderClassUrl = testBaseUrl + '/nanoSanteService/provider-classes';
|
||||||
|
export const getNetworkActsUrl = testBaseUrl + '/nanoSanteService/acts';
|
||||||
|
export const createConsultationUrl = testBaseUrl + '/nanoSanteService/health-care-sheets/consultation';
|
||||||
export const getInsurancePrimeAmountUrl = testBaseUrl + '/nanoSanteService/insurances/subscriptions/bonus-amount';
|
export const getInsurancePrimeAmountUrl = testBaseUrl + '/nanoSanteService/insurances/subscriptions/bonus-amount';
|
||||||
export const uploadInsuranceImagetUrl = 'https://test.ilink-app.com:8086/insurances/subscriptions/upload-images';
|
export const uploadInsuranceImagetUrl = 'https://test.ilink-app.com:8086/insurances/subscriptions/upload-images';
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue