Top.Mail.Ru
  • CMS «GIRVAS»

    Joustava ja ilmainen sisällönhallintajärjestelmä, jonka avulla voit luoda minkä tahansa alan verkkosivuston.

    Meidän kanssamme helpommin!

  • Täysin ilmainen

    Lopeta vanhojen ja maksullisten hallintajärjestelmien käyttö! Uusien ratkaisujen aikakausi on koittanut – valitse «GIRVAS»!

  • Karjalainen ratkaisu

    «GIRVAS» on kehitetty Karjalan tasavallassa, ja se on merkitty Venäjän federaation digitaalisen kehityksen ministeriön ylläpitämään venäläisten ohjelmistojen rekisteriin (rekisterinumero nro 25012, 27.11.2024).

0.2.0 Voitsy

CMS "GIRVAS" -julkaisu 8.7.2025 kehitysvaiheessa "Voitsy".

Viimeisimmät muutokset

  • Muuttujien, metodien ja olioiden ominaisuuksien nimeämisen saattaminen PSR-1-sääntöjen mukaiseksi;
  • Koodin saattaminen PSR-12-sääntöjen mukaiseksi;
  • IF EXISTS -ehdon lisääminen ALTER TABLE -lauseeseen SQL-kyselyiden rakentajalle;
  • Kirjainkoon huomioimisen lisääminen valituille sarakkeille SELECT-lauseessa SQL-kyselyiden rakentajalle;
  • Tarkistuksen lisääminen, onko olemassa käyttäjäryhmä, jolla on sama tekninen nimi kuin muokattavalla ryhmällä;
  • Tietokannan hallintajärjestelmän tyyppiä koskevan argumentin lisääminen tietokantakyselyiden rakentajan alustusta varten;
  • Metodin toteutus järjestelmän ytimen luokassa HTTPS-yhteyden oikeaa tarkistamista varten, mukaan lukien tarkistus pilviympäristöissä ja välityspalvelimille;
  • Metodin toteutus järjestelmän ytimen luokassa tiedostojen automaattista liittämistä varten (aiemmin liittämistä ei ollut erotettu omaksi metodiksi);
  • Yhteisen rajapinnan toteutus järjestelmän ytimen, moduulien ja teemojen lokalisointiluokille;
  • MySQL-tietokannan hallintajärjestelmän tuen toteutus;
  • Alias-nimen lisääminen COUNT(*)-aggregaatti-SQL-funktiolle määritettäessä tietueiden määrää tietokantatauluissa eri tietokannan hallintajärjestelmien mukauttamiseksi;
  • Menetelmän toteutus edellisen URL-osoitteen (Referrer) saamiseksi osoiteriviparserin luokalle;
  • Virheen korjaus, jonka vuoksi syötteiden kerääjä ei pystynyt suorittamaan keräystä HTML-entiteettien vuoksi sisällön kuvauksessa;
  • Järjestelmän logon korvaaminen uudella sivuston ensisijaisessa mallissa;
  • Lokalisointien päivitys: ru_RU, en_US;
  • Järjestelmän, sivuston ensisijaisten mallien ja hallintapaneelin koodin refaktorointi;
  • Sivuston ensisijaisen mallin pienet tyylilliset korjaukset;
  • Muut pienet korjaukset;

Edellinen julkaisu: 0.1.36 Alpha

Vanhan tietokannan mukauttaminen

Seuraavat SQL-kyselyt auttavat mukauttamaan oikein PostgreSQL-tietokannan, joka on luotu CMS "GIRVAS" -järjestelmällä ennen 0.2.0 Voitsy -päivitystä.

Sarakkeiden uudelleennimeäminen

ALTER TABLE configurations RENAME COLUMN created_unix_timestamp to "createdUnixTimestamp";
ALTER TABLE configurations RENAME COLUMN updated_unix_timestamp to "updatedUnixTimestamp";
ALTER TABLE entries RENAME COLUMN author_id to "authorID";
ALTER TABLE entries RENAME COLUMN category_id to "categoryID";
ALTER TABLE entries RENAME COLUMN created_unix_timestamp to "createdUnixTimestamp";
ALTER TABLE entries RENAME COLUMN updated_unix_timestamp to "updatedUnixTimestamp";
ALTER TABLE entries_categories RENAME COLUMN parent_id to "parentID";
ALTER TABLE entries_categories RENAME COLUMN created_unix_timestamp to "createdUnixTimestamp";
ALTER TABLE entries_categories RENAME COLUMN updated_unix_timestamp to "updatedUnixTimestamp";
ALTER TABLE entries_comments RENAME COLUMN author_id to "authorID";
ALTER TABLE entries_comments RENAME COLUMN entry_id to "entryID";
ALTER TABLE entries_comments RENAME COLUMN created_unix_timestamp to "createdUnixTimestamp";
ALTER TABLE entries_comments RENAME COLUMN updated_unix_timestamp to "updatedUnixTimestamp";
ALTER TABLE entries_samples RENAME COLUMN created_unix_timestamp to "createdUnixTimestamp";
ALTER TABLE entries_samples RENAME COLUMN updated_unix_timestamp to "updatedUnixTimestamp";
ALTER TABLE metrics RENAME COLUMN created_unix_timestamp to "createdUnixTimestamp";
ALTER TABLE metrics RENAME COLUMN updated_unix_timestamp to "updatedUnixTimestamp";
ALTER TABLE pages_static RENAME COLUMN author_id to "authorID";
ALTER TABLE pages_static RENAME COLUMN created_unix_timestamp to "createdUnixTimestamp";
ALTER TABLE pages_static RENAME COLUMN updated_unix_timestamp to "updatedUnixTimestamp";
ALTER TABLE reports RENAME COLUMN created_unix_timestamp to "createdUnixTimestamp";
ALTER TABLE users RENAME COLUMN password_hash to "passwordHash";
ALTER TABLE users RENAME COLUMN security_hash to "securityHash";
ALTER TABLE users RENAME COLUMN email_is_submitted to "emailIsSubmitted";
ALTER TABLE users RENAME COLUMN created_unix_timestamp to "createdUnixTimestamp";
ALTER TABLE users RENAME COLUMN updated_unix_timestamp to updatedUnixTimestamp;
ALTER TABLE users_groups RENAME COLUMN created_unix_timestamp to "createdUnixTimestamp";
ALTER TABLE users_groups RENAME COLUMN updated_unix_timestamp to "updatedUnixTimestamp";
ALTER TABLE users_registration_submits RENAME COLUMN user_id to "userID";
ALTER TABLE users_registration_submits RENAME COLUMN submit_token to "submitToken";
ALTER TABLE users_registration_submits RENAME COLUMN refusal_token to "refusalToken";
ALTER TABLE users_registration_submits RENAME COLUMN created_unix_timestamp to "createdUnixTimestamp";
ALTER TABLE users_sessions RENAME COLUMN user_id to "userID";
ALTER TABLE users_sessions RENAME COLUMN user_ip to "userIP";
ALTER TABLE users_sessions RENAME COLUMN type_id to "typeID";
ALTER TABLE users_sessions RENAME COLUMN created_unix_timestamp to "createdUnixTimestamp";
ALTER TABLE users_sessions RENAME COLUMN updated_unix_timestamp to "updatedUnixTimestamp";
ALTER TABLE web_channels RENAME COLUMN entries_category_id to "entriesCategoryID";
ALTER TABLE web_channels RENAME COLUMN type_id to "typeID";
ALTER TABLE web_channels RENAME COLUMN created_unix_timestamp to "createdUnixTimestamp";
ALTER TABLE web_channels RENAME COLUMN updated_unix_timestamp to "updatedUnixTimestamp";

JSON-objektien ominaisuuksien uudelleennimeäminen metatiedoissa

UPDATE users
SET metadata = jsonb_set(
    metadata,
    "{groupID}",
    metadata->"group_id"
) || 
jsonb_build_object("metadata", metadata - "group_id");

UPDATE entries
SET metadata = jsonb_set(
    metadata,
    "{isPublish}",
    metadata->"is_publish"
) || 
jsonb_build_object("metadata", metadata - "is_publish");

UPDATE entries
SET metadata = jsonb_set(
    metadata,
    "{previewURL}",
    metadata->"preview_url"
) || 
jsonb_build_object("metadata", metadata - "preview_url");

UPDATE pages_static
SET metadata = jsonb_set(
    metadata,
    "{isPublish}",
    metadata->"is_publish"
) || 
jsonb_build_object("metadata", metadata - "is_publish");

UPDATE pages_static
SET metadata = jsonb_set(
    metadata,
    "{previewURL}",
    metadata->"preview_url"
) || 
jsonb_build_object("metadata", metadata - "preview_url");

UPDATE metrics
SET "data" = jsonb_set(
    "data",
    "{metrics}",
    jsonb_set(
        "data"->"metrics",
        "{views}",
        (
            SELECT jsonb_object_agg(
                view.key,
                jsonb_set(
                    view.value,
                    "{URLTransfers}",
                    (
                        SELECT jsonb_agg(
                            jsonb_set(
                                transfer_elem,
                                array[transfer_key],
                                jsonb_set(
                                    transfer_elem->transfer_key,
                                    "{isVisitedNew}",
                                    (transfer_elem->transfer_key)->"is_visited_new"
                                ) - "is_visited_new"
                            )
                        )
                        FROM jsonb_array_elements(view.value->"url_transfers") AS transfer_elem,
                        jsonb_object_keys(transfer_elem) AS transfer_key
                    )
                ) - "url_transfers"
            )
            FROM jsonb_each("data"->"metrics"->"views") AS view
        )
    )
)
WHERE "data" @? "$.metrics.views.*.url_transfers";
Käännökset

Kommentit

Tähän kirjoitukseen ei ole kommentteja.