Code improvements

- shared global declarations
- reduced hyperlink-related repetitive code
This commit is contained in:
Denys Vuika
2016-10-11 11:53:08 +01:00
parent 8151d3493e
commit 3042ae8060
16 changed files with 64 additions and 81 deletions

View File

@@ -15,40 +15,25 @@
* limitations under the License.
*/
import { Component } from '@angular/core';
import { Component, OnInit } from '@angular/core';
import { WidgetComponent } from './../widget.component';
declare var componentHandler;
@Component({
moduleId: module.id,
selector: 'hyperlink-widget',
templateUrl: './hyperlink.widget.html',
styleUrls: ['./hyperlink.widget.css']
})
export class HyperlinkWidget extends WidgetComponent {
export class HyperlinkWidget extends WidgetComponent implements OnInit {
static DEFAULT_URL: string = '#';
static DEFAULT_URL_SCHEME: string = 'http://';
linkUrl: string;
linkText: string;
get linkUrl(): string {
let url = HyperlinkWidget.DEFAULT_URL;
if (this.field && this.field.hyperlinkUrl) {
url = this.field.hyperlinkUrl;
if (!/^https?:\/\//i.test(url)) {
url = HyperlinkWidget.DEFAULT_URL_SCHEME + url;
}
}
return url;
}
get linkText(): string {
ngOnInit() {
if (this.field) {
return this.field.displayText || this.field.hyperlinkUrl;
this.linkUrl = this.getHyperlinkUrl(this.field);
this.linkText = this.getHyperlinkText(this.field);
}
return null;
}
}