Plugin Directory

Changeset 3308965


Ignore:
Timestamp:
06/10/2025 08:03:32 AM (10 months ago)
Author:
wpcompany
Message:

Added custom prefix to all classes to prevent style conflicts

Location:
media-focus-point
Files:
7 added
6 edited

Legend:

Unmodified
Added
Removed
  • media-focus-point/tags/1.4/media-focus-point.php

    r3257865 r3308965  
    139139    function MFP_Background( $attachment_id, $include_image = true ) {
    140140        // Get the stored background position
     141        echo $attachment_id;
    141142        $bg_pos_desktop = get_post_meta( $attachment_id, 'bg_pos_desktop', true );
    142143
  • media-focus-point/tags/1.5/languages/media-focus-point.pot

    r3257933 r3308965  
    33msgid ""
    44msgstr ""
    5 "Project-Id-Version: Media Focus Point 1.4\n"
     5"Project-Id-Version: Media Focus Point 1.5\n"
    66"Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/media-focus-point\n"
    77"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
  • media-focus-point/trunk/admin.css

    r3281586 r3308965  
    1 .overlay{
     1.wpcmfp-overlay{
    22    display:none;
    33    position: fixed;
     
    1111    flex-direction:column
    1212}
    13 .overlay.show{
     13.wpcmfp-overlay.wpcmfp-show{
    1414    display:flex;
    1515}
    16 .overlay:before {
     16.wpcmfp-overlay:before {
    1717    content: '';
    1818    display: block;
     
    2626    opacity: 0.5;
    2727}
    28 .overlay h3{
     28.wpcmfp-overlay h3{
    2929    font-size:15px;
    3030    margin:0px;
    3131}
    32 .overlay .controls{
     32.wpcmfp-overlay .wpcmfp-controls{
    3333    display:flex;
    3434}
    35 .overlay .controls span{
     35.wpcmfp-overlay .wpcmfp-controls span{
    3636    margin:0px 5px;
    3737}
    38 .overlay .close{
     38.wpcmfp-overlay .wpcmfp-close{
    3939    z-index:99;
    4040    border:1px solid;
    4141}
    42 .overlay .img-container{
     42.wpcmfp-overlay .wpcmfp-img-container{
    4343    height: 610px;
    4444    width: 1000px;
     
    5050    margin-top: -305px;
    5151}
    52 .overlay .img-container .header{
     52.wpcmfp-overlay .wpcmfp-img-container .wpcmfp-header{
    5353    height: 50px;
    5454    width: 100%;
     
    5656    border-bottom: 1px solid #DCDCDD;
    5757}
    58 .overlay .img-container .header .wrapp{
     58.wpcmfp-overlay .wpcmfp-img-container .wpcmfp-header .wpcmfp-wrapp{
    5959    display: flex;
    6060    align-items: center;
     
    6464    border-bottom: 1px solid #DCDCDD;
    6565}
    66 .overlay .img-container .container{
     66.wpcmfp-overlay .wpcmfp-img-container .wpcmfp-container{
    6767    background-color: #F7F7F7;
    6868    width: 100%;
     
    7474    position:relative;
    7575}
    76 .overlay img{
     76.wpcmfp-overlay img{
    7777    cursor: crosshair;
    7878    max-height: 100%;
     
    8282}
    8383
    84 .overlay video {
     84.wpcmfp-overlay video {
    8585    cursor: crosshair;
    8686}
    87 .overlay .pin{
     87.wpcmfp-overlay .wpcmfp-pin{
    8888    position: absolute;
    8989    top: 50%;
     
    9393    pointer-events: none;
    9494}
    95 .overlay .pin::before {
     95.wpcmfp-overlay .wpcmfp-pin::before {
    9696    content: "";
    9797    position: absolute;
     
    109109    box-shadow: 0 0 0 6000px #000000;
    110110}
    111 .overlay .pin::after {
     111.wpcmfp-overlay .wpcmfp-pin::after {
    112112    content: "";
    113113    position: absolute;
     
    124124    opacity: .6;
    125125}
    126 .close.button{
    127     border:0px;
    128     background:transparent;
    129 }
    130 .focusp_label_holder{
     126
     127.wpcmfp-focusp_label_holder{
    131128    margin-bottom:15px;
    132129}
    133 #desktop_value,#mobile_value{
     130#wpcmfp_desktop_value,#wpcmfp_mobile_value{
    134131    margin:6px 0px;
    135132}
    136 #desktop_value input[type="number"] {
     133#wpcmfp_desktop_value input[type="number"] {
    137134    width: calc(3ch + 28px);
    138135    padding: 0 4px;
     
    141138    font-size:12px;
    142139}
    143 .media-frame-content.show{
     140.media-frame-content.wpcmfp-show{
    144141    z-index:9999999999999999999;
    145142}
    146 .media-sidebar.show,.media-frame-content.show{
     143.wpcmfp-media-sidebar.wpcmfp-show,.wpcmfp-media-frame-content.wpcmfp-show{
    147144    overflow: visible;
    148145}
  • media-focus-point/trunk/media-focus-point.php

    r3281586 r3308965  
    33* Plugin Name: Media Focus Point
    44* Description: Ensures that your selected focus area of an image or video remains centered and visible, even when resized.
    5 * Version: 2.0
     5* Version: 2.0.1
    66* Author: WP Company
    77* Author URI: https://www.wpcompany.nl
    88* Text Domain: media-focus-point
    99* Domain Path: /languages
    10 * Tested up to: 6.8
     10* Tested up to: 6.7.2
    1111* License: GPLv3 or later
    1212* License URI: http://www.gnu.org/licenses/gpl-3.0.html
     
    5454
    5555    $html = '
    56         <input type="hidden" value="' . esc_attr( $field_value ) . '" id="bg_pos_desktop_id" name="attachments[' . $post->ID . '][bg_pos_desktop]">
    57         <div class="overlay image_focus_point">
    58             <div class="img-container">
    59                 <div class="header">
    60                     <div class="wrapp">
     56        <input type="hidden" value="' . esc_attr( $field_value ) . '" id="wpcmfp_bg_pos_desktop_id" name="attachments[' . $post->ID . '][bg_pos_desktop]">
     57        <div class="wpcmfp-overlay wpcmfp-image_focus_point">
     58            <div class="wpcmfp-img-container">
     59                <div class="wpcmfp-header">
     60                    <div class="wpcmfp-wrapp">
    6161                        <h3>' . __( 'Click on the media to set the focus point', 'media-focus-point' ) . '</h3>
    62                         <div class="controls">
     62                        <div class="wpcmfp-controls">
    6363                        ' . ( $is_video ? '
    64                         <span class="button button-secondary wpcmfp-button" onclick="toggle_controls()">
     64                        <span class="wpcmfp-button button-secondary wpcmfp-button" onclick="toggle_controls()">
    6565                        ' . __( 'Toggle Controls', 'media-focus-point' ) . '
    6666                        </span>' : '' ) . '
     
    7474                    </div>
    7575                </div>
    76                 <div class="container">
    77                     <div class="pin"></div>
     76                <div class="wpcmfp-container">
     77                    <div class="wpcmfp-pin"></div>
    7878                    ' . $media_tag . '
    7979                </div>
    8080            </div>
    8181        </div>
    82         <div class="focusp_label_holder">
    83             <div id="desktop_value">
     82        <div class="wpcmfp-focusp_label_holder">
     83            <div id="wpcmfp_desktop_value">
    8484                <input
    85                     id="desktop_value_x"
     85                    id="wpcmfp_desktop_value_x"
    8686                    type="number"
    8787                    min="0"
     
    9090                    title="' . __( 'This field contains the X-percentage', 'media-focus-point' ) . '" value="' . $value_x . '"
    9191                    onchange="onNumberInputChange(this)" />%
    92                     <input id="desktop_value_y" type="number" min="0" max="100" step="1" title="' . __( 'This field contains the Y-percentage', 'media-focus-point' ) . '" value="' . $value_y . '" onchange="onNumberInputChange(this)" />%
    93                 <div id="desktop_value_label"></div>
     92                    <input id="wpcmfp_desktop_value_y" type="number" min="0" max="100" step="1" title="' . __( 'This field contains the Y-percentage', 'media-focus-point' ) . '" value="' . $value_y . '" onchange="onNumberInputChange(this)" />%
     93                <div id="wpcmfp_desktop_value_label"></div>
    9494            </div>
    9595                <input
    9696                    type="button"
    9797                    class="button button-primary button-small"
    98                     id="label_desktop"
     98                    id="wpcmfp_label_desktop"
    9999                    onclick="set_focus(0)"
    100100                    value="' . $label . '">
    101101                    <input
    102102                    type="button"
    103                     class="button button-small"
    104                     id="reset_desktop"
     103                    class="button button-secondary button-small"
     104                    id="wpcmfp_reset_desktop"
    105105                    onclick="reset_focus()"
    106106                value="' . __( 'Reset', 'media-focus-point' ) . '" ' . $disabled . '>
  • media-focus-point/trunk/readme.txt

    r3281586 r3308965  
    11=== Media Focus Point ===
    22Contributors: wpcompany
    3 Tags: focus, focal, center, image, background, media, video
     3Tags: focus, focal, image, background, video
    44Requires at least: 6.0
    55Tested up to: 6.8
    66Requires PHP: 7.4
    7 Stable tag: 2.0
     7Stable tag: 2.0.1
    88License: GPLv3 or later
    99License URI: https://www.gnu.org/licenses/gpl-2.0.html
     
    110110== Changelog ==
    111111
     112= 2.0.1 =
     113* Added custom prefix to all classes to prevent style conflicts
     114
    112115= 2.0 =
    113116* Media Focus Point: now supports video!
  • media-focus-point/trunk/script.js

    r3281586 r3308965  
    2929
    3030function onNumberInputChange() {
    31     const inputX = document.getElementById('desktop_value_x');
    32     const inputY = document.getElementById('desktop_value_y');
    33     const hidden_input = document.getElementById('bg_pos_desktop_id') ;
     31    const inputX = document.getElementById('wpcmfp_desktop_value_x');
     32    const inputY = document.getElementById('wpcmfp_desktop_value_y');
     33    const hidden_input = document.getElementById('wpcmfp_bg_pos_desktop_id') ;
    3434
    3535    // As values are percentages and it doesn't make sense to place focus outside of the image, we use 100 as a maximum value
     
    4646
    4747function set_bg_values() {
    48     let d = document.getElementById("bg_pos_desktop_id").value.replaceAll('%', '');
     48    let d = document.getElementById("wpcmfp_bg_pos_desktop_id").value.replaceAll('%', '');
    4949    d_left = d.split(' ')[0];
    5050    d_right = d.split(' ')[1];
     
    5252
    5353function cancel_focus() {
    54     document.querySelectorAll(".media-frame-content,.media-sidebar").forEach(el => el.classList.remove('show'));
    55     document.querySelector('.overlay').classList.remove('show');
     54    document.querySelectorAll(".wpcmfp-media-frame-content,.wpcmfp-media-sidebar").forEach(el => el.classList.remove('wpcmfp-show'));
     55    document.querySelector('.wpcmfp-overlay').classList.remove('wpcmfp-show');
    5656}
    5757
    5858function close_overlay() {
    59     const inputX = document.getElementById('desktop_value_x');
    60     const inputY = document.getElementById('desktop_value_y');
    61     document.querySelectorAll(".media-frame-content.media-sidebar").forEach(el => el.classList.remove('show'));
    62     document.querySelector('.overlay').classList.remove('show');
     59    const inputX = document.getElementById('wpcmfp_desktop_value_x');
     60    const inputY = document.getElementById('wpcmfp_desktop_value_y');
     61    document.querySelectorAll(".wpcmfp-media-frame-content.wpcmfp-media-sidebar").forEach(el => el.classList.remove('wpcmfp-show'));
     62    document.querySelector('.wpcmfp-overlay').classList.remove('wpcmfp-show');
    6363
    6464    d_left = bgX;
     
    7272    }
    7373
    74     document.getElementById('bg_pos_desktop_id').value = `${bgX}% ${bgY}%`;
    75     document.getElementById('desktop_value_x').value = bgX;
    76     document.getElementById('desktop_value_y').value = bgY;
     74    document.getElementById('wpcmfp_bg_pos_desktop_id').value = `${bgX}% ${bgY}%`;
     75    document.getElementById('wpcmfp_desktop_value_x').value = bgX;
     76    document.getElementById('wpcmfp_desktop_value_y').value = bgY;
    7777    // Trigger change event to save new values
    78     triggerChange(document.getElementById('bg_pos_desktop_id'));
     78    triggerChange(document.getElementById('wpcmfp_bg_pos_desktop_id'));
    7979
    8080    if (bgX == 50 && bgY == 50) {
    81         document.getElementById("desktop_value_label").innerHTML = centered_text;
    82         document.getElementById("label_desktop").setAttribute('value', 'Set');
     81        document.getElementById("wpcmfp_desktop_value_label").innerHTML = centered_text;
     82        document.getElementById("wpcmfp_label_desktop").setAttribute('value', 'Set');
    8383    } else {
    84         document.getElementById("desktop_value_label").innerHTML = '';
    85         document.getElementById("label_desktop").setAttribute('value', 'Change');
    86         document.getElementById("reset_desktop").style.display = 'inline';
     84        document.getElementById("wpcmfp_desktop_value_label").innerHTML = '';
     85        document.getElementById("wpcmfp_label_desktop").setAttribute('value', 'Change');
     86        document.getElementById("wpcmfp_reset_desktop").style.display = 'inline';
    8787    }
    8888
    8989    // Automatically save the page if editing an attachment directly (not via media modal)
    90     if (!document.querySelector('.media-modal-content')) {
     90    if (!document.querySelector('.wpcmfp-media-modal-content')) {
    9191        const postForm = document.getElementById('post');
    9292        if (postForm) {
     
    148148
    149149    replaceCustomVideoElements()
    150     document.querySelectorAll(".media-frame-content,.media-sidebar").forEach(el => el.classList.add('show'));
    151     document.querySelectorAll(".media-toolbar,.media-menu-item").forEach(el => el.style.zIndex = 0);
     150    document.querySelectorAll(".wpcmfp-media-frame-content,.wpcmfp-media-sidebar").forEach(el => el.classList.add('show'));
     151    document.querySelectorAll(".wpcmfp-media-toolbar,.wpcmfp-media-menu-item").forEach(el => el.style.zIndex = 0);
    152152    set_bg_values();
    153     document.querySelector('.overlay').classList.add('show');
     153    document.querySelector('.wpcmfp-overlay').classList.add('wpcmfp-show');
    154154    attachMediaClickListener();
    155155
    156     const container = document.querySelector(".image_focus_point .container");
     156    const container = document.querySelector(".wpcmfp-image_focus_point .wpcmfp-container");
    157157    const media = container.querySelector("img") || container.querySelector("video");
    158158
     
    175175        // So we will calculate the position of the dot based on the input value.
    176176        if (Number.isNaN(relX) || Number.isNaN(relY)) {
    177             const inputX = document.getElementById('desktop_value_x'); // reading out the input values
    178             const inputY = document.getElementById('desktop_value_y');
     177            const inputX = document.getElementById('wpcmfp_desktop_value_x'); // reading out the input values
     178            const inputY = document.getElementById('wpcmfp_desktop_value_y');
    179179            inputX.value = Math.max(0, Math.min(100, inputX.value));
    180180            inputY.value = Math.max(0, Math.min(100, inputY.value));
     
    197197
    198198
    199         document.querySelector('.pin').style.left = `${rec_left}%`;
    200         document.querySelector('.pin').style.top = `${rec_top}%`;
     199        document.querySelector('.wpcmfp-pin').style.left = `${rec_left}%`;
     200        document.querySelector('.wpcmfp-pin').style.top = `${rec_top}%`;
    201201}
    202202
     
    204204    bgX = 50;
    205205    bgY = 50;
    206     document.querySelector(".overlay .pin").style.left = '50%';
    207     document.querySelector(".overlay .pin").style.top = '50%';
    208     document.getElementById("reset_desktop").style.display = 'none';
     206    document.querySelector(".wpcmfp-overlay .wpcmfp-pin").style.left = '50%';
     207    document.querySelector(".wpcmfp-overlay .wpcmfp-pin").style.top = '50%';
     208    document.getElementById("wpcmfp_reset_desktop").style.display = 'none';
    209209    close_overlay();
    210210}
     
    224224
    225225function attachMediaClickListener() {
    226     const container = document.querySelector(".overlay .container");
     226    const container = document.querySelector(".wpcmfp-overlay .wpcmfp-container");
    227227    const media = container.querySelector("img") || container.querySelector("video");
    228228
     
    246246            bgY =  Math.round(((e.clientY - rect.top) / rect.height) * 100);
    247247
    248             document.querySelector('.pin').style.left = `${rec_left}%`;
    249             document.querySelector('.pin').style.top = `${rec_top}%`;
     248            document.querySelector('.wpcmfp-pin').style.left = `${rec_left}%`;
     249            document.querySelector('.wpcmfp-pin').style.top = `${rec_top}%`;
    250250        });
    251251    } else {
Note: See TracChangeset for help on using the changeset viewer.