diff --git a/CHANGELOG.md b/CHANGELOG.md
index 79d51cf30..700bd5c95 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -2,7 +2,11 @@
## Changelog
-### 1.4.1 build 1
+### 1.4.2 build 1
+* Added the Ability to Copy the URL Path
+* Added the Preview Page for Templates
+
+### 1.4.1
* Editing Pages in Pages-List
### 1.4.0
diff --git a/altrpnjs/config/app.ts b/altrpnjs/config/app.ts
index cc3ccaa11..1dd5abd4b 100644
--- a/altrpnjs/config/app.ts
+++ b/altrpnjs/config/app.ts
@@ -234,5 +234,5 @@ export const profiler: ProfilerConfig = {
export const validator: ValidatorConfig = {
}
-export const altrp_version:string = '1.4.1'
+export const altrp_version:string = '1.4.2'
export const url:string = Env.get('APP_URL')
diff --git a/resources/modules/customizer/src/js/components/sidebar/modules/CustomizerSettingsPanel.js b/resources/modules/customizer/src/js/components/sidebar/modules/CustomizerSettingsPanel.js
index a502a24b8..6d242f7e9 100644
--- a/resources/modules/customizer/src/js/components/sidebar/modules/CustomizerSettingsPanel.js
+++ b/resources/modules/customizer/src/js/components/sidebar/modules/CustomizerSettingsPanel.js
@@ -159,16 +159,30 @@ class CustomizerSettingsPanel extends React.Component {
let Url = ''
if (this.props.customizer.source) {
- let { web_url } = this.props.customizer.source
- try{
- if(this.state.customizer?.settings?.external){
+ let {web_url} = this.props.customizer.source
+ try {
+ if (this.state.customizer?.settings?.external) {
Url = `${document.location.origin}/api/v1/${this.state.customizer.name}`
- } else {
+ } else {
let strippedDownUrl = new URL(web_url)
Url = document.location.origin
- +strippedDownUrl.pathname
+ + strippedDownUrl.pathname
}
+
+ } catch (e) {
+ alert('Error while parsing source URL')
+ console.error(e);
+ }
+ }
+ let relativeUrl = ''
+ if (this.props.customizer.source) {
+ let { web_url } = this.props.customizer.source
+ try{
+ let strippedDownUrl = new URL(web_url)
+ relativeUrl = strippedDownUrl.pathname
+ Url = document.location.origin
+ +strippedDownUrl.pathname
}catch (e){
alert('Error while parsing source URL')
console.error(e);
@@ -467,9 +481,12 @@ class CustomizerSettingsPanel extends React.Component {
Url:
-
+
+
+
+
-
url copied successfully!
+
url copied!
diff --git a/resources/modules/customizer/src/sass/styles.scss b/resources/modules/customizer/src/sass/styles.scss
index a0a350632..e29c9ca81 100644
--- a/resources/modules/customizer/src/sass/styles.scss
+++ b/resources/modules/customizer/src/sass/styles.scss
@@ -921,7 +921,6 @@ textarea.control-field{
display: flex;
align-items: center;
justify-content: center;
- width: 100px;
height: 38px;
&:hover {
@@ -930,6 +929,9 @@ textarea.control-field{
}
}
+ & .btn_success:not(:last-child) {
+ margin-right: 12px;
+ }
}
.url-text {
diff --git a/resources/modules/editor/src/js/classes/elements/Button.js b/resources/modules/editor/src/js/classes/elements/Button.js
index 3b5e6376a..2f38b9ea5 100644
--- a/resources/modules/editor/src/js/classes/elements/Button.js
+++ b/resources/modules/editor/src/js/classes/elements/Button.js
@@ -170,6 +170,8 @@ class Button extends BaseElement {
actionsControllers(this);
+ actionsControllers(this, 'Hover Actions', 'hover_');
+
//
this.startControlSection('position_section', {
diff --git a/resources/modules/editor/src/js/classes/elements/InputTextAutocomplete.js b/resources/modules/editor/src/js/classes/elements/InputTextAutocomplete.js
index cf8a8b31f..7df15cbe2 100644
--- a/resources/modules/editor/src/js/classes/elements/InputTextAutocomplete.js
+++ b/resources/modules/editor/src/js/classes/elements/InputTextAutocomplete.js
@@ -16,11 +16,9 @@ import {
TAB_STYLE,
CONTROLLER_CHOOSE,
CONTROLLER_SHADOW,
- CONTROLLER_REPEATER,
CONTROLLER_MEDIA
} from "../modules/ControllersManager";
import Repeater from "../Repeater";
-import { CONDITIONS_OPTIONS } from "../../../../../front-app/src/js/helpers";
import { actionsControllers } from "../../decorators/actions-controllers";
class InputTextCommon extends BaseElement {
diff --git a/resources/modules/editor/src/js/components/widgets/ButtonWidget.js b/resources/modules/editor/src/js/components/widgets/ButtonWidget.js
index b13786032..2816776c3 100644
--- a/resources/modules/editor/src/js/components/widgets/ButtonWidget.js
+++ b/resources/modules/editor/src/js/components/widgets/ButtonWidget.js
@@ -145,6 +145,27 @@ class ButtonWidget extends Component {
actionsManager.unregisterWidgetActions(this.props.element.getId());
}
+ onMouseEnter = async (e) => {
+ e.persist();
+ if (isEditor()) {
+ e.preventDefault();
+ } else if (this.props.element.getResponsiveLockedSetting("hover_actions", null, []).length) {
+ e.preventDefault();
+ e.stopPropagation();
+ const actionsManager = (
+ await import(/* webpackChunkName: 'ActionsManager' */
+ "../../../../../front-app/src/js/classes/modules/ActionsManager.js"
+ )
+ ).default;
+ await actionsManager.callAllWidgetActions(
+ this.props.element.getIdForAction(),
+ 'click',
+ this.props.element.getLockedSettings("hover_actions", []),
+ this.props.element
+ );
+ }
+ }
+
/**
* Клик по кнопке
* @param e
@@ -582,6 +603,7 @@ class ButtonWidget extends Component {
let button =