Your IP : 216.73.216.14


Current Path : /var/www/www.indacotrentino.com/www/scripts/content/
Upload File :
Current File : /var/www/www.indacotrentino.com/www/scripts/content/index.php

<?php
$servername = "localhost";
$username = "indaco";
$password = "indaco";
$dbname = "magento_indaco";
$conn = new mysqli($servername, $username, $password, $dbname);
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
}
?>
<html>
<head>
    <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.2.1/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-iYQeCzEYFbKjA/T2uDLTpkwGzCiq6soy8tYaI1GyVh/UjpbCx/TYkiZhlZB6+fzT" crossorigin="anonymous">
    <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.2.1/dist/js/bootstrap.bundle.min.js" integrity="sha384-u1OknCvxWvY5kfmNBILK2hRnQC3Pr17a+RTT6rIHI7NnikvbZlHgTPOOmMi466C8" crossorigin="anonymous"></script></head>
<body>
<div class="container">
    <div class="row">
        <h1>Import/Export Content Page</h1>
        <?php
            if ($_GET['action'] == 'export') {
                $sql = "
                                select name, cms_page.page_id, identifier, content_heading, update_time, content
                                from cms_page
                                left outer join cms_page_store on cms_page.page_id=cms_page_store.page_id
                                left outer join store on cms_page_store.store_id=store.store_id
                                where cms_page.page_id = " . (int) $_GET['page_id']. "
                                order by identifier, name, cms_page.page_id
                                limit 1
                                ";
                $result = $conn->query($sql);
                $row = $result->fetch_assoc();
                mkdir('page/', 0755, true);
                $pageName = "./page/" . preg_replace("/[^0-9a-zA-Z_]/", "", ($row['name'] ?? 'nothing') . '_' . $row['identifier']) . ".json";
                $myfile = fopen( $pageName, "w") or die("Unable to open file!");

                $page['page_id'] = $row['page_id'];
                $page['identifier'] = $row['identifier'];
                $page['update_time'] = $row['update_time'];
                $page['content_heading'] = $row['content_heading'];
                $page['content'] = $row['content'];

                fwrite($myfile, json_encode($page));
                fclose($myfile);
                print '<div class="alert alert-success" role="alert">Exported page <b>' . $row['identifier'] . '</b> of store <b>' . ($row['name'] ?? 'nothing') . '</b>.<br/>Writed file ' . $pageName . '</div>';
            } elseif ($_GET['action'] == 'import') {
 //               echo "./file/" . basename($_GET['file']);
                $string = file_get_contents("./page/" . basename($_GET['file']));
//                echo $string."--";
                $json = json_decode($string, true);
                echo $json['content'];
            }
        ?>
        <div class="accordion" id="accordionExample">
            <div class="accordion-item">
                <h2 class="accordion-header" id="headingOne">
                    <button class="accordion-button" type="button" data-bs-toggle="collapse" data-bs-target="#collapseOne" aria-expanded="true" aria-controls="collapseOne">
                        Import
                    </button>
                </h2>
                <div id="collapseOne" class="accordion-collapse collapse show" aria-labelledby="headingOne" data-bs-parent="#accordionExample">
                    <div class="accordion-body">
                        <form action="./index.php" method="get" id="formImport">
                            <input type="hidden" name="action" value="import"/>
                            <div class="mt-2">
                                <span class="badge bg-success">1</span>
                                <span class="label">Select page to update</span>
                            </div>
                            <table class="table table-hover mt-2">
                                <thead>
                                <tr>
                                    <th scope="col">#</th>
                                    <th scope="col">STORE</th>
                                    <th scope="col">PAGE_ID</th>
                                    <th scope="col">IDENTIFIER</th>
                                    <th scope="col">HEADING</th>
                                    <th scope="col">UPDATE</th>
                                </tr>
                                </thead>
                                <?php
                                $sql = "
                                    select name, cms_page.page_id, identifier, content_heading, update_time
                                    from cms_page
                                    left outer join cms_page_store on cms_page.page_id=cms_page_store.page_id
                                    left outer join store on cms_page_store.store_id=store.store_id
                                    order by identifier, name, cms_page.page_id
                                    ";
                                $result = $conn->query($sql);

                                if ($result->num_rows > 0) {
                                    while($row = $result->fetch_assoc()) {
                                        echo '<tr>';
                                        echo '<td><input type="radio" name="page_id" value="' . $row["page_id"] . '"/>'  . '</td>';
                                        echo '<td>' . $row["name"] . '</td>';
                                        echo '<td>' . $row["page_id"] . '</td>';
                                        echo '<td>' . $row["identifier"] . '</td>';
                                        echo '<td>' . $row["content_heading"] . '</td>';
                                        echo '<td>' . $row["update_time"] . '</td>';
                                        echo '</tr>';
                                    }
                                } else {
                                    echo "<tr><td>0 results</td></tr>";
                                }
                                ?>
                            </table>
                            <div class="mt-2">
                                <span class="badge bg-success">2</span>
                                <span class="label">Select file to import</span>
                            </div>
                            <select name="file">
                                <option></option>
                                <?php
                                    $files = scandir('./page/');
                                    foreach ($files as $file) {
                                        if ($file == '.' or $file == '..') continue;
                                        echo '<option>' . $file . '</option>';
                                    }
                                ?>
                            </select>
                            <div class="mt-2">
                                <span class="badge bg-success">3</span>
                                <span class="label">Import</span>
                            </div>
                            <div class="mt-2">
                                <button type="submit" form="formImport" class="btn btn-primary">IMPORT</button>
                            </div>
                        </form>
                    </div>
                </div>
            </div>
            <div class="accordion-item">
                <h2 class="accordion-header" id="headingTwo">
                    <button class="accordion-button collapsed" type="button" data-bs-toggle="collapse" data-bs-target="#collapseTwo" aria-expanded="false" aria-controls="collapseTwo">
                        Export
                    </button>
                </h2>
                <div id="collapseTwo" class="accordion-collapse collapse" aria-labelledby="headingTwo" data-bs-parent="#accordionExample">
                    <div class="accordion-body">
                        <form action="./index.php" method="get" id="formExport">
                            <input type="hidden" name="action" value="export"/>
                            <div class="mt-2">
                                <span class="badge bg-success">1</span>
                                <span class="label">Select page to export</span>
                            </div>

                            <table class="table table-hover mt-2">
                                <thead>
                                <tr>
                                    <th scope="col">#</th>
                                    <th scope="col">STORE</th>
                                    <th scope="col">PAGE_ID</th>
                                    <th scope="col">IDENTIFIER</th>
                                    <th scope="col">HEADING</th>
                                    <th scope="col">UPDATE</th>
                                </tr>
                                </thead>
                                <?php
                                $sql = "
                                    select name, cms_page.page_id, identifier, content_heading, update_time
                                    from cms_page
                                    left outer join cms_page_store on cms_page.page_id=cms_page_store.page_id
                                    left outer join store on cms_page_store.store_id=store.store_id
                                    order by identifier, name, cms_page.page_id
                                    ";
                                $result = $conn->query($sql);

                                if ($result->num_rows > 0) {
                                    while($row = $result->fetch_assoc()) {
                                        echo '<tr>';
                                        echo '<td><input type="radio" name="page_id" value="' . $row["page_id"] . '"/>'  . '</td>';
                                        echo '<td>' . $row["name"] . '</td>';
                                        echo '<td>' . $row["page_id"] . '</td>';
                                        echo '<td>' . $row["identifier"] . '</td>';
                                        echo '<td>' . $row["content_heading"] . '</td>';
                                        echo '<td>' . $row["update_time"] . '</td>';
                                        echo '</tr>';
                                        //                                echo "store:" . $row["name"] . " - id: " . $row["page_id"]. " - Identifier: " . $row["identifier"]. " - Heading: " . $row["heading"]. " - Update: " . $row["update_time"]. "<br>";
                                    }
                                } else {
                                    echo "<tr><td>0 results</td></tr>";
                                }
                                ?>
                            </table>
                            <div class="mt-2">
                                <span class="badge bg-success">2</span>
                                <span class="label">Export</span>
                            </div>
                            <div class="mt-2">
                                <button type="submit" form="formExport"  class="btn btn-primary">EXPORT</button>
                            </div>
                        </form>
                    </div>
                </div>
            </div>
        </div>
    </div>
</div>
</body>
</html>
<?php
$conn->close();
?>