Browse Source

add refresh button for entitlements, work on wording

Mark deVilliers 2 years ago
parent
commit
feb42c3c75
2 changed files with 209 additions and 174 deletions
  1. 188 160
      ui/node.js
  2. 21 14
      ui/src/Node.elm

+ 188 - 160
ui/node.js

@@ -13333,11 +13333,11 @@ var _user$project$Node$drawAccessLevel = function (level) {
13333 13333
 	var _p1 = level;
13334 13334
 	switch (_p1.ctor) {
13335 13335
 		case 'OwnerOnly':
13336
-			return _elm_lang$html$Html$text('owner-only');
13336
+			return _elm_lang$html$Html$text('Only the owner (you) can see the data');
13337 13337
 		case 'CanDiscover':
13338
-			return _elm_lang$html$Html$text('can-discover');
13338
+			return _elm_lang$html$Html$text('Anyone can discover the data');
13339 13339
 		default:
13340
-			return _elm_lang$html$Html$text('can-access');
13340
+			return _elm_lang$html$Html$text('Anyone can access the data');
13341 13341
 	}
13342 13342
 };
13343 13343
 var _user$project$Node$deviceTab = function (model) {
@@ -13365,7 +13365,7 @@ var _user$project$Node$deviceTab = function (model) {
13365 13365
 					{ctor: '[]'},
13366 13366
 					{
13367 13367
 						ctor: '::',
13368
-						_0: _elm_lang$html$Html$text('add, remove devices.'),
13368
+						_0: _elm_lang$html$Html$text('This is the page where you can add, remove devices.'),
13369 13369
 						_1: {ctor: '[]'}
13370 13370
 					}),
13371 13371
 				_1: {
@@ -13458,7 +13458,7 @@ var _user$project$Node$drawAccessLevelSelector = function (ent) {
13458 13458
 	switch (_p3.ctor) {
13459 13459
 		case 'OwnerOnly':
13460 13460
 			return A2(
13461
-				_elm_lang$html$Html$span,
13461
+				_elm_lang$html$Html$div,
13462 13462
 				{ctor: '[]'},
13463 13463
 				{
13464 13464
 					ctor: '::',
@@ -13479,14 +13479,14 @@ var _user$project$Node$drawAccessLevelSelector = function (ent) {
13479 13479
 						},
13480 13480
 						{
13481 13481
 							ctor: '::',
13482
-							_0: _elm_lang$html$Html$text('make searchable'),
13482
+							_0: _elm_lang$html$Html$text('make data searchable'),
13483 13483
 							_1: {ctor: '[]'}
13484 13484
 						}),
13485 13485
 					_1: {ctor: '[]'}
13486 13486
 				});
13487 13487
 		case 'CanDiscover':
13488 13488
 			return A2(
13489
-				_elm_lang$html$Html$span,
13489
+				_elm_lang$html$Html$div,
13490 13490
 				{ctor: '[]'},
13491 13491
 				{
13492 13492
 					ctor: '::',
@@ -13532,7 +13532,7 @@ var _user$project$Node$drawAccessLevelSelector = function (ent) {
13532 13532
 								},
13533 13533
 								{
13534 13534
 									ctor: '::',
13535
-									_0: _elm_lang$html$Html$text('allow access to values'),
13535
+									_0: _elm_lang$html$Html$text('make data accessible'),
13536 13536
 									_1: {ctor: '[]'}
13537 13537
 								}),
13538 13538
 							_1: {ctor: '[]'}
@@ -13541,7 +13541,7 @@ var _user$project$Node$drawAccessLevelSelector = function (ent) {
13541 13541
 				});
13542 13542
 		default:
13543 13543
 			return A2(
13544
-				_elm_lang$html$Html$span,
13544
+				_elm_lang$html$Html$div,
13545 13545
 				{ctor: '[]'},
13546 13546
 				{
13547 13547
 					ctor: '::',
@@ -13638,59 +13638,62 @@ var _user$project$Node$drawRequested = function (ent) {
13638 13638
 	} else {
13639 13639
 		var _p7 = _p6._0;
13640 13640
 		return A2(
13641
-			_elm_lang$html$Html$span,
13641
+			_elm_lang$html$Html$div,
13642 13642
 			{ctor: '[]'},
13643 13643
 			{
13644 13644
 				ctor: '::',
13645
-				_0: _elm_lang$html$Html$text(' requested : '),
13645
+				_0: _user$project$Node$drawAccessLevel(_p7.level),
13646 13646
 				_1: {
13647 13647
 					ctor: '::',
13648
-					_0: _user$project$Node$drawAccessLevel(_p7.level),
13649
-					_1: {
13650
-						ctor: '::',
13651
-						_0: A2(
13652
-							_elm_lang$html$Html$a,
13653
-							{
13654
-								ctor: '::',
13655
-								_0: _elm_lang$html$Html_Events$onClick(
13656
-									_user$project$Node$AcceptEntitlement(_p7)),
13657
-								_1: {
13648
+					_0: A2(
13649
+						_elm_lang$html$Html$div,
13650
+						{ctor: '[]'},
13651
+						{
13652
+							ctor: '::',
13653
+							_0: A2(
13654
+								_elm_lang$html$Html$a,
13655
+								{
13658 13656
 									ctor: '::',
13659
-									_0: _elm_lang$html$Html_Attributes$href('#'),
13657
+									_0: _elm_lang$html$Html_Events$onClick(
13658
+										_user$project$Node$AcceptEntitlement(_p7)),
13659
+									_1: {
13660
+										ctor: '::',
13661
+										_0: _elm_lang$html$Html_Attributes$href('#'),
13662
+										_1: {ctor: '[]'}
13663
+									}
13664
+								},
13665
+								{
13666
+									ctor: '::',
13667
+									_0: _elm_lang$html$Html$text('accept'),
13660 13668
 									_1: {ctor: '[]'}
13661
-								}
13662
-							},
13663
-							{
13664
-								ctor: '::',
13665
-								_0: _elm_lang$html$Html$text('accept'),
13666
-								_1: {ctor: '[]'}
13667
-							}),
13668
-						_1: {
13669
-							ctor: '::',
13670
-							_0: _elm_lang$html$Html$text(' '),
13669
+								}),
13671 13670
 							_1: {
13672 13671
 								ctor: '::',
13673
-								_0: A2(
13674
-									_elm_lang$html$Html$a,
13675
-									{
13676
-										ctor: '::',
13677
-										_0: _elm_lang$html$Html_Events$onClick(
13678
-											_user$project$Node$DeclineEntitlement(_p7)),
13679
-										_1: {
13672
+								_0: _elm_lang$html$Html$text(' '),
13673
+								_1: {
13674
+									ctor: '::',
13675
+									_0: A2(
13676
+										_elm_lang$html$Html$a,
13677
+										{
13680 13678
 											ctor: '::',
13681
-											_0: _elm_lang$html$Html_Attributes$href('#'),
13679
+											_0: _elm_lang$html$Html_Events$onClick(
13680
+												_user$project$Node$DeclineEntitlement(_p7)),
13681
+											_1: {
13682
+												ctor: '::',
13683
+												_0: _elm_lang$html$Html_Attributes$href('#'),
13684
+												_1: {ctor: '[]'}
13685
+											}
13686
+										},
13687
+										{
13688
+											ctor: '::',
13689
+											_0: _elm_lang$html$Html$text('decline'),
13682 13690
 											_1: {ctor: '[]'}
13683
-										}
13684
-									},
13685
-									{
13686
-										ctor: '::',
13687
-										_0: _elm_lang$html$Html$text('decline'),
13688
-										_1: {ctor: '[]'}
13689
-									}),
13690
-								_1: {ctor: '[]'}
13691
+										}),
13692
+									_1: {ctor: '[]'}
13693
+								}
13691 13694
 							}
13692
-						}
13693
-					}
13695
+						}),
13696
+					_1: {ctor: '[]'}
13694 13697
 				}
13695 13698
 			});
13696 13699
 	}
@@ -13818,94 +13821,6 @@ var _user$project$Node$entitlementsTable = function (model) {
13818 13821
 				_user$project$Node$drawMetadata(model))
13819 13822
 		});
13820 13823
 };
13821
-var _user$project$Node$entitlementsTab = function (model) {
13822
-	return A2(
13823
-		_rundis$elm_bootstrap$Bootstrap_Tab$pane,
13824
-		{
13825
-			ctor: '::',
13826
-			_0: _elm_lang$html$Html_Attributes$class('mt-3'),
13827
-			_1: {ctor: '[]'}
13828
-		},
13829
-		{
13830
-			ctor: '::',
13831
-			_0: A2(
13832
-				_elm_lang$html$Html$h4,
13833
-				{ctor: '[]'},
13834
-				{
13835
-					ctor: '::',
13836
-					_0: _elm_lang$html$Html$text('Entitlements'),
13837
-					_1: {ctor: '[]'}
13838
-				}),
13839
-			_1: {
13840
-				ctor: '::',
13841
-				_0: A2(
13842
-					_elm_lang$html$Html$p,
13843
-					{ctor: '[]'},
13844
-					{
13845
-						ctor: '::',
13846
-						_0: _elm_lang$html$Html$text('This page is where you can edit, view, accept and reject entitlements to your data.'),
13847
-						_1: {ctor: '[]'}
13848
-					}),
13849
-				_1: {
13850
-					ctor: '::',
13851
-					_0: _user$project$Node$entitlementsTable(model),
13852
-					_1: {ctor: '[]'}
13853
-				}
13854
-			}
13855
-		});
13856
-};
13857
-var _user$project$Node$view = function (model) {
13858
-	return A2(
13859
-		_elm_lang$html$Html$div,
13860
-		{ctor: '[]'},
13861
-		{
13862
-			ctor: '::',
13863
-			_0: _rundis$elm_bootstrap$Bootstrap_CDN$stylesheet,
13864
-			_1: {
13865
-				ctor: '::',
13866
-				_0: A2(
13867
-					_rundis$elm_bootstrap$Bootstrap_Tab$view,
13868
-					model.tabState,
13869
-					A2(
13870
-						_rundis$elm_bootstrap$Bootstrap_Tab$items,
13871
-						{
13872
-							ctor: '::',
13873
-							_0: _rundis$elm_bootstrap$Bootstrap_Tab$item(
13874
-								{
13875
-									id: 'tabItem1',
13876
-									link: A2(
13877
-										_rundis$elm_bootstrap$Bootstrap_Tab$link,
13878
-										{ctor: '[]'},
13879
-										{
13880
-											ctor: '::',
13881
-											_0: _elm_lang$html$Html$text('Devices'),
13882
-											_1: {ctor: '[]'}
13883
-										}),
13884
-									pane: _user$project$Node$deviceTab(model)
13885
-								}),
13886
-							_1: {
13887
-								ctor: '::',
13888
-								_0: _rundis$elm_bootstrap$Bootstrap_Tab$item(
13889
-									{
13890
-										id: 'tabItem2',
13891
-										link: A2(
13892
-											_rundis$elm_bootstrap$Bootstrap_Tab$link,
13893
-											{ctor: '[]'},
13894
-											{
13895
-												ctor: '::',
13896
-												_0: _elm_lang$html$Html$text('Entitlements'),
13897
-												_1: {ctor: '[]'}
13898
-											}),
13899
-										pane: _user$project$Node$entitlementsTab(model)
13900
-									}),
13901
-								_1: {ctor: '[]'}
13902
-							}
13903
-						},
13904
-						_rundis$elm_bootstrap$Bootstrap_Tab$config(_user$project$Node$TabMsg))),
13905
-				_1: {ctor: '[]'}
13906
-			}
13907
-		});
13908
-};
13909 13824
 var _user$project$Node$drawEntitlementSelector = F2(
13910 13825
 	function (m, model) {
13911 13826
 		var requested = A2(_user$project$Node$findEntitlement, m.subject, model.requested);
@@ -13947,12 +13862,25 @@ var _user$project$Node$getAcceptedEntitlements = function () {
13947 13862
 		_user$project$Decoders$decodeEntitlements);
13948 13863
 	return A2(_elm_lang$http$Http$send, _user$project$Node$GetAcceptedEntitlementsCompleted, request);
13949 13864
 }();
13865
+var _user$project$Node$GetMetadataCompleted = function (a) {
13866
+	return {ctor: 'GetMetadataCompleted', _0: a};
13867
+};
13868
+var _user$project$Node$getMetadata = function () {
13869
+	var request = A2(
13870
+		_elm_lang$http$Http$get,
13871
+		A2(_elm_lang$core$Basics_ops['++'], _user$project$Node$nodeURL, '/data/meta'),
13872
+		_user$project$Decoders$decodeMetadata);
13873
+	return A2(_elm_lang$http$Http$send, _user$project$Node$GetMetadataCompleted, request);
13874
+}();
13875
+var _user$project$Node$init = {ctor: '_Tuple2', _0: _user$project$Node$initialModel, _1: _user$project$Node$getMetadata};
13950 13876
 var _user$project$Node$update = F2(
13951 13877
 	function (msg, model) {
13952 13878
 		var _p9 = msg;
13953 13879
 		switch (_p9.ctor) {
13954 13880
 			case 'NoOp':
13955 13881
 				return {ctor: '_Tuple2', _0: model, _1: _elm_lang$core$Platform_Cmd$none};
13882
+			case 'Refresh':
13883
+				return {ctor: '_Tuple2', _0: model, _1: _user$project$Node$getMetadata};
13956 13884
 			case 'GetAcceptedEntitlementsCompleted':
13957 13885
 				if (_p9._0.ctor === 'Ok') {
13958 13886
 					return {
@@ -13968,8 +13896,8 @@ var _user$project$Node$update = F2(
13968 13896
 					return _elm_lang$core$Native_Utils.crashCase(
13969 13897
 						'Node',
13970 13898
 						{
13971
-							start: {line: 64, column: 5},
13972
-							end: {line: 114, column: 55}
13899
+							start: {line: 65, column: 5},
13900
+							end: {line: 118, column: 55}
13973 13901
 						},
13974 13902
 						_p9)(
13975 13903
 						_elm_lang$core$Basics$toString(_p9._0._0));
@@ -13989,8 +13917,8 @@ var _user$project$Node$update = F2(
13989 13917
 					return _elm_lang$core$Native_Utils.crashCase(
13990 13918
 						'Node',
13991 13919
 						{
13992
-							start: {line: 64, column: 5},
13993
-							end: {line: 114, column: 55}
13920
+							start: {line: 65, column: 5},
13921
+							end: {line: 118, column: 55}
13994 13922
 						},
13995 13923
 						_p9)(
13996 13924
 						_elm_lang$core$Basics$toString(_p9._0._0));
@@ -14010,8 +13938,8 @@ var _user$project$Node$update = F2(
14010 13938
 					return _elm_lang$core$Native_Utils.crashCase(
14011 13939
 						'Node',
14012 13940
 						{
14013
-							start: {line: 64, column: 5},
14014
-							end: {line: 114, column: 55}
13941
+							start: {line: 65, column: 5},
13942
+							end: {line: 118, column: 55}
14015 13943
 						},
14016 13944
 						_p9)(
14017 13945
 						_elm_lang$core$Basics$toString(_p9._0._0));
@@ -14029,8 +13957,8 @@ var _user$project$Node$update = F2(
14029 13957
 					return _elm_lang$core$Native_Utils.crashCase(
14030 13958
 						'Node',
14031 13959
 						{
14032
-							start: {line: 64, column: 5},
14033
-							end: {line: 114, column: 55}
13960
+							start: {line: 65, column: 5},
13961
+							end: {line: 118, column: 55}
14034 13962
 						},
14035 13963
 						_p9)(
14036 13964
 						_elm_lang$core$Basics$toString(_p9._0._0));
@@ -14048,8 +13976,8 @@ var _user$project$Node$update = F2(
14048 13976
 					return _elm_lang$core$Native_Utils.crashCase(
14049 13977
 						'Node',
14050 13978
 						{
14051
-							start: {line: 64, column: 5},
14052
-							end: {line: 114, column: 55}
13979
+							start: {line: 65, column: 5},
13980
+							end: {line: 118, column: 55}
14053 13981
 						},
14054 13982
 						_p9)(
14055 13983
 						_elm_lang$core$Basics$toString(_p9._0._0));
@@ -14067,8 +13995,8 @@ var _user$project$Node$update = F2(
14067 13995
 					return _elm_lang$core$Native_Utils.crashCase(
14068 13996
 						'Node',
14069 13997
 						{
14070
-							start: {line: 64, column: 5},
14071
-							end: {line: 114, column: 55}
13998
+							start: {line: 65, column: 5},
13999
+							end: {line: 118, column: 55}
14072 14000
 						},
14073 14001
 						_p9)(
14074 14002
 						_elm_lang$core$Basics$toString(_p9._0._0));
@@ -14083,17 +14011,117 @@ var _user$project$Node$update = F2(
14083 14011
 				};
14084 14012
 		}
14085 14013
 	});
14086
-var _user$project$Node$GetMetadataCompleted = function (a) {
14087
-	return {ctor: 'GetMetadataCompleted', _0: a};
14014
+var _user$project$Node$Refresh = {ctor: 'Refresh'};
14015
+var _user$project$Node$entitlementsTab = function (model) {
14016
+	return A2(
14017
+		_rundis$elm_bootstrap$Bootstrap_Tab$pane,
14018
+		{
14019
+			ctor: '::',
14020
+			_0: _elm_lang$html$Html_Attributes$class('mt-3'),
14021
+			_1: {ctor: '[]'}
14022
+		},
14023
+		{
14024
+			ctor: '::',
14025
+			_0: A2(
14026
+				_elm_lang$html$Html$h4,
14027
+				{ctor: '[]'},
14028
+				{
14029
+					ctor: '::',
14030
+					_0: _elm_lang$html$Html$text('Entitlements'),
14031
+					_1: {ctor: '[]'}
14032
+				}),
14033
+			_1: {
14034
+				ctor: '::',
14035
+				_0: A2(
14036
+					_elm_lang$html$Html$p,
14037
+					{ctor: '[]'},
14038
+					{
14039
+						ctor: '::',
14040
+						_0: _elm_lang$html$Html$text('This page is where you can edit, view, accept and reject entitlements to your data.'),
14041
+						_1: {ctor: '[]'}
14042
+					}),
14043
+				_1: {
14044
+					ctor: '::',
14045
+					_0: A2(
14046
+						_elm_lang$html$Html$button,
14047
+						{
14048
+							ctor: '::',
14049
+							_0: _elm_lang$html$Html_Events$onClick(_user$project$Node$Refresh),
14050
+							_1: {ctor: '[]'}
14051
+						},
14052
+						{
14053
+							ctor: '::',
14054
+							_0: _elm_lang$html$Html$text('Refresh'),
14055
+							_1: {ctor: '[]'}
14056
+						}),
14057
+					_1: {
14058
+						ctor: '::',
14059
+						_0: A2(
14060
+							_elm_lang$html$Html$div,
14061
+							{ctor: '[]'},
14062
+							{ctor: '[]'}),
14063
+						_1: {
14064
+							ctor: '::',
14065
+							_0: _user$project$Node$entitlementsTable(model),
14066
+							_1: {ctor: '[]'}
14067
+						}
14068
+					}
14069
+				}
14070
+			}
14071
+		});
14072
+};
14073
+var _user$project$Node$view = function (model) {
14074
+	return A2(
14075
+		_elm_lang$html$Html$div,
14076
+		{ctor: '[]'},
14077
+		{
14078
+			ctor: '::',
14079
+			_0: _rundis$elm_bootstrap$Bootstrap_CDN$stylesheet,
14080
+			_1: {
14081
+				ctor: '::',
14082
+				_0: A2(
14083
+					_rundis$elm_bootstrap$Bootstrap_Tab$view,
14084
+					model.tabState,
14085
+					A2(
14086
+						_rundis$elm_bootstrap$Bootstrap_Tab$items,
14087
+						{
14088
+							ctor: '::',
14089
+							_0: _rundis$elm_bootstrap$Bootstrap_Tab$item(
14090
+								{
14091
+									id: 'tabItem1',
14092
+									link: A2(
14093
+										_rundis$elm_bootstrap$Bootstrap_Tab$link,
14094
+										{ctor: '[]'},
14095
+										{
14096
+											ctor: '::',
14097
+											_0: _elm_lang$html$Html$text('Devices'),
14098
+											_1: {ctor: '[]'}
14099
+										}),
14100
+									pane: _user$project$Node$deviceTab(model)
14101
+								}),
14102
+							_1: {
14103
+								ctor: '::',
14104
+								_0: _rundis$elm_bootstrap$Bootstrap_Tab$item(
14105
+									{
14106
+										id: 'tabItem2',
14107
+										link: A2(
14108
+											_rundis$elm_bootstrap$Bootstrap_Tab$link,
14109
+											{ctor: '[]'},
14110
+											{
14111
+												ctor: '::',
14112
+												_0: _elm_lang$html$Html$text('Entitlements'),
14113
+												_1: {ctor: '[]'}
14114
+											}),
14115
+										pane: _user$project$Node$entitlementsTab(model)
14116
+									}),
14117
+								_1: {ctor: '[]'}
14118
+							}
14119
+						},
14120
+						_rundis$elm_bootstrap$Bootstrap_Tab$config(_user$project$Node$TabMsg))),
14121
+				_1: {ctor: '[]'}
14122
+			}
14123
+		});
14088 14124
 };
14089
-var _user$project$Node$getMetadata = function () {
14090
-	var request = A2(
14091
-		_elm_lang$http$Http$get,
14092
-		A2(_elm_lang$core$Basics_ops['++'], _user$project$Node$nodeURL, '/data/meta'),
14093
-		_user$project$Decoders$decodeMetadata);
14094
-	return A2(_elm_lang$http$Http$send, _user$project$Node$GetMetadataCompleted, request);
14095
-}();
14096
-var _user$project$Node$init = {ctor: '_Tuple2', _0: _user$project$Node$initialModel, _1: _user$project$Node$getMetadata};
14097 14125
 var _user$project$Node$main = _elm_lang$html$Html$program(
14098 14126
 	{init: _user$project$Node$init, view: _user$project$Node$view, update: _user$project$Node$update, subscriptions: _user$project$Node$subscriptions})();
14099 14127
 var _user$project$Node$NoOp = {ctor: 'NoOp'};

+ 21 - 14
ui/src/Node.elm

@@ -47,6 +47,7 @@ init =
47 47
 
48 48
 type Msg
49 49
     = NoOp
50
+    | Refresh
50 51
     | GetMetadataCompleted (Result Http.Error Decoders.Metadata)
51 52
     | GetAcceptedEntitlementsCompleted (Result Http.Error Decoders.Entitlements)
52 53
     | GetRequestedEntitlementsCompleted (Result Http.Error Decoders.Entitlements)
@@ -65,6 +66,9 @@ update msg model =
65 66
         NoOp ->
66 67
             ( model, Cmd.none )
67 68
 
69
+        Refresh ->
70
+            ( model, getMetadata )
71
+
68 72
         GetAcceptedEntitlementsCompleted (Ok items) ->
69 73
             ( { model | accepted = Just items }, getRequestedEntitlements )
70 74
 
@@ -238,7 +242,7 @@ deviceTab : Model -> Tab.Pane msg
238 242
 deviceTab model =
239 243
     Tab.pane [ Html.Attributes.class "mt-3" ]
240 244
         [ h4 [] [ text "Devices" ]
241
-        , p [] [ text "add, remove devices." ]
245
+        , p [] [ text "This is the page where you can add, remove devices." ]
242 246
         , text "coming soon"
243 247
         ]
244 248
 
@@ -248,6 +252,8 @@ entitlementsTab model =
248 252
     Tab.pane [ Html.Attributes.class "mt-3" ]
249 253
         [ h4 [] [ text "Entitlements" ]
250 254
         , p [] [ text "This page is where you can edit, view, accept and reject entitlements to your data." ]
255
+        , button [ onClick Refresh ] [ text "Refresh" ]
256
+        , div [] []
251 257
         , entitlementsTable model
252 258
         ]
253 259
 
@@ -313,30 +319,30 @@ drawAccessLevelSelector : Decoders.Entitlement -> Html Msg
313 319
 drawAccessLevelSelector ent =
314 320
     case ent.level of
315 321
         Decoders.OwnerOnly ->
316
-            Html.span [] [ a [ onClick (AmendEntitlement { ent | level = Decoders.CanDiscover }), href "#" ] [ text ("make searchable") ] ]
322
+            div [] [ a [ onClick (AmendEntitlement { ent | level = Decoders.CanDiscover }), href "#" ] [ text ("make data searchable") ] ]
317 323
 
318 324
         Decoders.CanDiscover ->
319
-            Html.span []
325
+            div []
320 326
                 [ a [ onClick (AmendEntitlement { ent | level = Decoders.OwnerOnly }), href "#" ] [ text ("stop making available for search") ]
321 327
                 , text (" ")
322
-                , a [ onClick (AmendEntitlement { ent | level = Decoders.CanAccess }), href "#" ] [ text ("allow access to values") ]
328
+                , a [ onClick (AmendEntitlement { ent | level = Decoders.CanAccess }), href "#" ] [ text ("make data accessible") ]
323 329
                 ]
324 330
 
325 331
         Decoders.CanAccess ->
326
-            Html.span [] [ a [ onClick (AmendEntitlement { ent | level = Decoders.CanDiscover }), href "#" ] [ text ("remove access") ] ]
332
+            div [] [ a [ onClick (AmendEntitlement { ent | level = Decoders.CanDiscover }), href "#" ] [ text ("remove access") ] ]
327 333
 
328 334
 
329 335
 drawAccessLevel : Decoders.AccessLevel -> Html Msg
330 336
 drawAccessLevel level =
331 337
     case level of
332 338
         Decoders.OwnerOnly ->
333
-            text ("owner-only")
339
+            text ("Only the owner (you) can see the data")
334 340
 
335 341
         Decoders.CanDiscover ->
336
-            text ("can-discover")
342
+            text ("Anyone can discover the data")
337 343
 
338 344
         Decoders.CanAccess ->
339
-            text ("can-access")
345
+            text ("Anyone can access the data")
340 346
 
341 347
 
342 348
 drawRequested : Maybe Decoders.Entitlement -> Html Msg
@@ -346,12 +352,13 @@ drawRequested ent =
346 352
             text ("")
347 353
 
348 354
         Just e ->
349
-            Html.span []
350
-                [ text (" requested : ")
351
-                , drawAccessLevel (e.level)
352
-                , a [ onClick (AcceptEntitlement e), href "#" ] [ text ("accept") ]
353
-                , text (" ")
354
-                , a [ onClick (DeclineEntitlement e), href "#" ] [ text ("decline") ]
355
+            div []
356
+                [ drawAccessLevel (e.level)
357
+                , div []
358
+                    [ a [ onClick (AcceptEntitlement e), href "#" ] [ text ("accept") ]
359
+                    , text (" ")
360
+                    , a [ onClick (DeclineEntitlement e), href "#" ] [ text ("decline") ]
361
+                    ]
355 362
                 ]
356 363
 
357 364