CMS "GIRVAS" रिलीज़ दिनांक 08.07.2025, विकास चरण "वोइत्सी" में।
नवीनतम परिवर्तन
- चर, विधियों और ऑब्जेक्ट गुणों के नामकरण को PSR-1 नियमों के अनुरूप बनाना;
- कोड को PSR-12 नियमों के अनुरूप बनाना;
- SQL क्वेरी बिल्डर के लिए ALTER TABLE क्लॉज में IF EXISTS शर्त जोड़ना;
- SQL क्वेरी बिल्डर के लिए SELECT क्लॉज में चयनित कॉलम के लिए केस-सेंसिटिविटी जोड़ना;
- यह जाँच जोड़ना कि क्या संपादित किए जा रहे उपयोगकर्ता समूह के समान तकनीकी नाम वाला कोई उपयोगकर्ता समूह पहले से मौजूद है;
- क्वेरी बिल्डर के आरंभीकरण के लिए DBMS प्रकार के साथ एक तर्क जोड़ना;
- HTTPS कनेक्शन की सही जाँच के लिए सिस्टम कोर क्लास में एक विधि का कार्यान्वयन, जिसमें क्लाउड वातावरण और प्रॉक्सी के लिए जाँच शामिल है;
- फ़ाइलों के स्वचालित समावेश के लिए सिस्टम कोर क्लास में एक विधि का कार्यान्वयन (पहले समावेश को एक अलग विधि में नहीं निकाला गया था);
- सिस्टम कोर, मॉड्यूल और थीम के स्थानीयकरण कक्षाओं के लिए एक सामान्य इंटरफ़ेस का कार्यान्वयन;
- MySQL DBMS समर्थन का कार्यान्वयन;
- विभिन्न DBMS के अनुकूलन के लिए डेटाबेस तालिकाओं में रिकॉर्ड की संख्या निर्धारित करते समय COUNT() एग्रीगेट SQL फ़ंक्शन के लिए एक उपनाम जोड़ना;
- URL पार्सर क्लास के लिए पिछला URL (Referrer) प्राप्त करने की विधि का कार्यान्वयन;
- एक त्रुटि का सुधार, जिसके कारण सामग्री विवरण में HTML संस्थाओं की उपस्थिति के कारण फीड कलेक्टर संग्रह नहीं कर पा रहा था;
- साइट की प्राथमिक थीम में सिस्टम लोगो को नए से बदलना;
- स्थानीयकरण अद्यतन: ru_RU, en_US;
- सिस्टम कोड, साइट की प्राथमिक थीम और प्रशासनिक पैनल का पुनर्गठन (Refactoring);
- साइट की प्राथमिक थीम में छोटे शैलीगत सुधार;
- अन्य छोटे सुधार;
पिछला रिलीज़: 0.1.36 Alpha
पुराने डेटाबेस का अनुकूलन
निम्न SQL क्वेरी 0.2.0 वोइत्सी अद्यतन से पहले CMS "GIRVAS" द्वारा उत्पन्न PostgreSQL डेटाबेस को सही ढंग से अनुकूलित करने में मदद करेंगी।
कॉलम का नाम बदलना
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 ऑब्जेक्ट्स के गुणों का नाम बदलना
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";
टिप्पणियाँ