[CORD-1934] Fixing links in table after first page
Change-Id: Ie4a6124154cc5c6c3b310211260e611aa1554a94
(cherry picked from commit 1cb980d686312a891a66ca1b36d28cf3a886e2d3)
diff --git a/src/app/core/link-wrapper/link-wrapper.ts b/src/app/core/link-wrapper/link-wrapper.ts
index f08c9d6..ee353c8 100644
--- a/src/app/core/link-wrapper/link-wrapper.ts
+++ b/src/app/core/link-wrapper/link-wrapper.ts
@@ -20,7 +20,7 @@
export function xosLinkWrapper(): IDirective {
return {
template: `
- <a ng-if="col.link" ui-sref="{{col.link(item)}}">
+ <a ng-if="col.link" ui-state="col.link(item).name" ui-state-params="{id: col.link(item).params.id}">
<div ng-transclude></div>
</a>
<div ng-transclude ng-if="!col.link"></div>
diff --git a/src/app/core/services/helpers/config.helpers.ts b/src/app/core/services/helpers/config.helpers.ts
index b6f28f7..16958de 100644
--- a/src/app/core/services/helpers/config.helpers.ts
+++ b/src/app/core/services/helpers/config.helpers.ts
@@ -196,7 +196,7 @@
};
if (f.name === 'id' || f.name === 'name') {
- col.link = item => this.stateWithParams(modelName, item);
+ col.link = item => this.stateWithParamsForJs(modelName, item);
}
// if the field identify a relation, create a link
diff --git a/src/app/core/table/table.spec.ts b/src/app/core/table/table.spec.ts
index aa1c62b..fd0008d 100644
--- a/src/app/core/table/table.spec.ts
+++ b/src/app/core/table/table.spec.ts
@@ -471,7 +471,10 @@
it('should render a link with the correct url', () => {
let link = $('tbody tr:first-child td a', element)[0];
- expect($(link).attr('ui-sref')).toEqual('state({id: 1})');
+ // TODO document this feature change
+ // TODO improve this test to check that we are going to state({id: 1})
+ expect($(link).attr('ui-state')).toEqual('col.link(item).name');
+ expect($(link).attr('ui-state-params')).toEqual('{id: col.link(item).params.id}');
});
});