diff --git a/ayanova/src/api/ayanova-version.js b/ayanova/src/api/ayanova-version.js
index 52a53724..97e19a4f 100644
--- a/ayanova/src/api/ayanova-version.js
+++ b/ayanova/src/api/ayanova-version.js
@@ -1,4 +1,4 @@
export default {
- version: "8.0.0-alpha.90",
+ version: "8.0.0-alpha.93",
copyright: "© 1999-2020, Ground Zero Tech-Works Inc."
};
diff --git a/ayanova/src/api/gzutil.js b/ayanova/src/api/gzutil.js
index 7be39f27..8172622f 100644
--- a/ayanova/src/api/gzutil.js
+++ b/ayanova/src/api/gzutil.js
@@ -737,7 +737,7 @@ export default {
"View map: error - no matching mapurl / address / geo coordinates set for display, nothing to view"
);
}
-
+ window.open(mapUrl, "map");
//This is not valid to do as some platforms don't open a new web browser window
//but rather a map application in which case this is null and throws up the exception even though it's working
// if (window.open(mapUrl, "map") == null) {
diff --git a/ayanova/src/components/email-control.vue b/ayanova/src/components/email-control.vue
new file mode 100644
index 00000000..dfc6d5e4
--- /dev/null
+++ b/ayanova/src/components/email-control.vue
@@ -0,0 +1,25 @@
+
+
+
+
diff --git a/ayanova/src/components/phone-control.vue b/ayanova/src/components/phone-control.vue
index f09db34c..ac52e563 100644
--- a/ayanova/src/components/phone-control.vue
+++ b/ayanova/src/components/phone-control.vue
@@ -4,17 +4,21 @@
v-on="$listeners"
type="tel"
prepend-icon="$ayiPhoneAlt"
- @click:prepend="dial"
+ @click:prepend="openUrl"
>
diff --git a/ayanova/src/main.js b/ayanova/src/main.js
index 9e24470d..ba6a562b 100644
--- a/ayanova/src/main.js
+++ b/ayanova/src/main.js
@@ -43,6 +43,8 @@ import customFieldsControl from "./components/custom-fields-control.vue";
import currencyControl from "./components/currency-control.vue";
import decimalControl from "./components/decimal-control.vue";
import phoneControl from "./components/phone-control.vue";
+import emailControl from "./components/email-control.vue";
+import urlControl from "./components/url-control.vue";
import roleControl from "./components/role-control.vue";
import durationControl from "./components/duration-control.vue";
import errorControl from "./components/error-control.vue";
@@ -188,6 +190,8 @@ Vue.component("gz-custom-fields", customFieldsControl);
Vue.component("gz-currency", currencyControl);
Vue.component("gz-decimal", decimalControl);
Vue.component("gz-phone", phoneControl);
+Vue.component("gz-email", emailControl);
+Vue.component("gz-url", urlControl);
Vue.component("gz-role-picker", roleControl);
Vue.component("gz-duration-picker", durationControl);
Vue.component("gz-error", errorControl);
diff --git a/ayanova/src/plugins/vuetify.js b/ayanova/src/plugins/vuetify.js
index c5db82a9..dab26104 100644
--- a/ayanova/src/plugins/vuetify.js
+++ b/ayanova/src/plugins/vuetify.js
@@ -68,6 +68,7 @@ import {
faExclamation,
faExclamationCircle,
faExclamationTriangle,
+ faExternalLinkAlt,
faEye,
faEyeSlash,
faFan,
@@ -231,6 +232,7 @@ library.add(
faExclamation,
faExclamationCircle,
faExclamationTriangle,
+ faExternalLinkAlt,
faEye,
faEyeSlash,
faFan,
@@ -591,6 +593,12 @@ const CUSTOM_ICONS = {
icon: ["fas", "exclamation-triangle"]
}
},
+ ayiExternalLinkAlt: {
+ component: FontAwesomeIcon,
+ props: {
+ icon: ["fas", "external-link-alt"]
+ }
+ },
ayiEye: {
component: FontAwesomeIcon,
props: {
diff --git a/ayanova/src/views/cust-customer.vue b/ayanova/src/views/cust-customer.vue
index 60cc96aa..9021cd4c 100644
--- a/ayanova/src/views/cust-customer.vue
+++ b/ayanova/src/views/cust-customer.vue
@@ -67,6 +67,25 @@
>
+
+
+
+
-
+ >
-