diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml new file mode 100644 index 0000000..42d4298 --- /dev/null +++ b/.github/workflows/build.yml @@ -0,0 +1,92 @@ +name: Build ZIP from src + +on: + release: + types: [prereleased, released] + workflow_dispatch: + inputs: + source_dir: + description: "Folder to zip (relative to repo root)" + required: false + default: "src" + zip_prefix: + description: "ZIP filename prefix (default repo name)" + required: false + default: "" + zip_name: + description: "Override full ZIP filename (without .zip)" + required: false + default: "" + +jobs: + + build-zip: + name: Build ZIP from src + runs-on: ubuntu-latest + + env: + DEFAULT_SOURCE_DIR: src + + steps: + - name: Check out repository + uses: actions/checkout@v4 + + - name: Resolve build parameters + id: cfg + run: | + if [ "${{ github.event_name }}" = "workflow_dispatch" ] && [ -n "${{ github.event.inputs.source_dir }}" ]; then + SRC_DIR="${{ github.event.inputs.source_dir }}" + else + SRC_DIR="${DEFAULT_SOURCE_DIR}" + fi + + if [ "${{ github.event_name }}" = "workflow_dispatch" ] && [ -n "${{ github.event.inputs.zip_prefix }}" ]; then + PREFIX="${{ github.event.inputs.zip_prefix }}" + else + PREFIX="${GITHUB_REPOSITORY##*/}" + fi + + if [ "${{ github.event_name }}" = "release" ]; then + REF_NAME="${GITHUB_REF_NAME}" + else + REF_NAME="${GITHUB_SHA::7}" + fi + + if [ "${{ github.event_name }}" = "workflow_dispatch" ] && [ -n "${{ github.event.inputs.zip_name }}" ]; then + ZIP_NAME="${{ github.event.inputs.zip_name }}" + else + ZIP_NAME="${PREFIX}-${REF_NAME}" + fi + + echo "src_dir=${SRC_DIR}" >> "$GITHUB_OUTPUT" + echo "zip_name=${ZIP_NAME}" >> "$GITHUB_OUTPUT" + + - name: Validate source directory + run: | + if [ ! -d "${{ steps.cfg.outputs.src_dir }}" ]; then + echo "Source directory '${{ steps.cfg.outputs.src_dir }}' does not exist." + exit 1 + fi + + - name: Prepare dist folder + run: | + mkdir -p dist + + - name: Build ZIP from folder contents + run: | + cd "${{ steps.cfg.outputs.src_dir }}" + zip -r "../dist/${{ steps.cfg.outputs.zip_name }}.zip" . + + - name: Upload artifact to workflow run + uses: actions/upload-artifact@v4 + with: + name: ${{ steps.cfg.outputs.zip_name }} + path: dist/${{ steps.cfg.outputs.zip_name }}.zip + + - name: Attach ZIP to GitHub Release + if: github.event_name == 'release' + uses: softprops/action-gh-release@v2 + with: + files: dist/${{ steps.cfg.outputs.zip_name }}.zip + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 282dcf8..8e65efd 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -1,45 +1,132 @@ -# Copyright (C) 2025 Moko Consulting -# -# This file is part of a Moko Consulting project. -# -# SPDX-LICENSE-IDENTIFIER: GPL-3.0-or-later -# -# This program is free software; you can redistribute it and/or modify it under the terms of the -# GNU General Public License as published by the Free Software Foundation; either version 3 of the -# License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; -# without even the IMPLIED WARRANTY of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License (./LICENSE.md). -# -# FILE INFORMATION -# DEFGROUP: # INGROUP: Documentation -# REPO: # FILE: ci.yml -# VERSION: # BRIEF: Baseline CI workflow -# PATH: ./.github/workflows/ci.yml -# NOTE: name: ci +name: Continuous Integration Pipeline -on: push: branches: ["main"] - pull_request: branches: ["main"] +on: + push: + branches: + - main + - "version/*" + pull_request: + branches: + - main -jobs: lint-and-test: runs-on: ubuntu-latest - steps: - name: Checkout +permissions: + contents: read + +jobs: + php-lint: + name: PHP lint + runs-on: ubuntu-latest + + steps: + - name: Check out repository uses: actions/checkout@v4 - - name: Set up Node - uses: actions/setup-node@v4 - with: node-version: "20" + - name: Set up PHP + uses: shivammathur/setup-php@v2 + with: + php-version: "8.2" + coverage: none - - name: Install dependencies - run: npm ci - continue-on-error: true + - name: Lint PHP files under src + run: | + if [ -d "src" ]; then + echo "Running php -l against PHP files in src/" + find src -type f -name "*.php" -print0 | xargs -0 -n 1 -P 4 php -l + else + echo "No src directory found. Skipping PHP lint." + fi - - name: Lint - run: npm run lint - continue-on-error: true + composer-tests: + name: Composer install and tests + runs-on: ubuntu-latest + needs: php-lint - - name: Test - run: npm test - continue-on-error: true + steps: + - name: Check out repository + uses: actions/checkout@v4 + + - name: Set up PHP + uses: shivammathur/setup-php@v2 + with: + php-version: "8.2" + coverage: none + + - name: Install dependencies if composer.json exists + run: | + if [ -f "composer.json" ]; then + composer install --no-interaction --no-progress --prefer-dist + else + echo "No composer.json found. Skipping dependency install and tests." + fi + + - name: Run Composer tests when defined + run: | + if [ ! -f "composer.json" ]; then + echo "No composer.json. Nothing to test." + exit 0 + fi + + if composer run -q | grep -q "^ test"; then + echo "Detected composer script 'test'. Running composer test." + composer test + else + echo "No 'test' script defined in composer.json. Skipping tests." + fi + + validate-manifest-and-changelog: + name: Validate manifest and changelog via scripts + runs-on: ubuntu-latest + needs: + - php-lint + - composer-tests + + steps: + - name: Check out repository + uses: actions/checkout@v4 + with: + fetch-depth: 0 + + - name: Run manifest validation script if present + run: | + set -e + echo "Checking for manifest validation scripts" + + if [ -x "scripts/validate_manifest.sh" ]; then + echo "Running scripts/validate_manifest.sh" + scripts/validate_manifest.sh + elif [ -f "scripts/validate_manifest.php" ]; then + echo "Running scripts/validate_manifest.php" + php scripts/validate_manifest.php + elif [ -f "scripts/validate_manifest.py" ]; then + echo "Running scripts/validate_manifest.py" + python scripts/validate_manifest.py + else + echo "No manifest validation script found (scripts/validate_manifest.*). Skipping manifest validation step." + fi + + - name: Run changelog update/verification script if present + run: | + set -e + echo "Checking for changelog update or verification scripts" + + if [ -x "scripts/update_changelog.sh" ]; then + echo "Running scripts/update_changelog.sh --ci" + scripts/update_changelog.sh --ci + elif [ -f "scripts/update_changelog.py" ]; then + echo "Running scripts/update_changelog.py --ci" + python scripts/update_changelog.py --ci + elif [ -x "scripts/verify_changelog.sh" ]; then + echo "Running scripts/verify_changelog.sh" + scripts/verify_changelog.sh + else + echo "No changelog script found (scripts/update_changelog.* or scripts/verify_changelog.sh). Skipping changelog enforcement." + exit 0 + fi + + echo "Checking for uncommitted changes after changelog script" + if ! git diff --quiet; then + echo "Changelog or related files were modified by the script." + echo "Please run the changelog script locally and commit the changes before pushing." + git diff + exit 1 + fi diff --git a/.github/workflows/cleanup_version_branches.yml b/.github/workflows/cleanup_version_branches.yml new file mode 100644 index 0000000..1250366 --- /dev/null +++ b/.github/workflows/cleanup_version_branches.yml @@ -0,0 +1,80 @@ +name: Cleanup merged version branches + +on: + workflow_dispatch: + schedule: + - cron: "0 3 * * 0" + # Runs every Sunday at 03:00 UTC; adjust if needed. + +permissions: + contents: write + +jobs: + cleanup-version-branches: + name: Delete merged version/* branches + runs-on: ubuntu-latest + + steps: + - name: Check out repository + uses: actions/checkout@v4 + with: + fetch-depth: 0 + + - name: Fetch all remote branches + run: | + git fetch --all --prune + + - name: Identify merged version/* branches + id: find + run: | + # List remote version branches + REMOTE_BRANCHES=$(git branch -r --list "origin/version/*" | sed 's/^ *//') + + if [ -z "$REMOTE_BRANCHES" ]; then + echo "No remote version/* branches found." + echo "branches=" >> "$GITHUB_OUTPUT" + exit 0 + fi + + echo "Found version branches:" + echo "$REMOTE_BRANCHES" + + MERGED_BRANCHES=() + + # Determine which are fully merged into origin/main + for RB in $REMOTE_BRANCHES; do + # Strip the 'origin/' prefix for local tracking + LB=${RB#origin/} + + # Check merge status against origin/main + if git branch --remotes --merged origin/main | grep -q "$RB"; then + # Do not touch the currently checked out branch (defensive) + if [ "$LB" != "$GITHUB_REF_NAME" ]; then + MERGED_BRANCHES+=("$LB") + fi + fi + done + + if [ "${#MERGED_BRANCHES[@]}" -eq 0 ]; then + echo "No merged version/* branches to delete." + echo "branches=" >> "$GITHUB_OUTPUT" + exit 0 + fi + + echo "Merged version branches to delete:" + printf '%s\n' "${MERGED_BRANCHES[@]}" + + # Join into space-separated list for output + echo "branches=${MERGED_BRANCHES[*]}" >> "$GITHUB_OUTPUT" + + - name: Delete merged version branches on origin + if: steps.find.outputs.branches != '' + env: + BRANCHES: ${{ steps.find.outputs.branches }} + run: | + echo "Deleting merged version branches: ${BRANCHES}" + + for BR in ${BRANCHES}; do + echo "Deleting origin/${BR}" + git push origin --delete "${BR}" || echo "Failed to delete ${BR} (might already be gone)" + done diff --git a/.github/workflows/init.yml b/.github/workflows/init.yml new file mode 100644 index 0000000..0023e1c --- /dev/null +++ b/.github/workflows/init.yml @@ -0,0 +1,23 @@ +- name: Initialize update server repository context + id: init + run: | + set -e + + # Canonical repo identifiers + REPO_SLUG="${GITHUB_REPOSITORY}" # owner/repo + REPO_NAME="${GITHUB_REPOSITORY##*/}" # repo + SERVER_URL="${GITHUB_SERVER_URL:-https://github.com}" + + # Update server XML source repository URL + UPDATE_XML_REPO_URL="${SERVER_URL}/${REPO_SLUG}" + + echo "Resolved repository slug: ${REPO_SLUG}" + echo "Resolved repository name: ${REPO_NAME}" + echo "Resolved update XML repo URL: ${UPDATE_XML_REPO_URL}" + + # Export for downstream steps + { + echo "repo_slug=${REPO_SLUG}" + echo "repo_name=${REPO_NAME}" + echo "update_xml_repo_url=${UPDATE_XML_REPO_URL}" + } >> "$GITHUB_OUTPUT" diff --git a/.github/workflows/release_from_version.yml b/.github/workflows/release_from_version.yml new file mode 100644 index 0000000..fcb8b02 --- /dev/null +++ b/.github/workflows/release_from_version.yml @@ -0,0 +1,278 @@ +name: Version branch release pipeline + +on: + workflow_dispatch: + +permissions: + contents: write + pull-requests: write + issues: write + +jobs: + meta: + name: Derive version metadata from branch + runs-on: ubuntu-latest + + outputs: + branch: ${{ steps.meta.outputs.branch }} + version: ${{ steps.meta.outputs.version }} + is_prerelease: ${{ steps.meta.outputs.is_prerelease }} + + steps: + - name: Determine branch and version + id: meta + run: | + BRANCH="${GITHUB_REF_NAME}" + + echo "Running on branch: ${BRANCH}" + + if [[ ! "${BRANCH}" =~ ^version\/[0-9]+\.[0-9]+\.[0-9]+(-[A-Za-z0-9._]+)?$ ]]; then + echo "This workflow must be run on a branch named version/X.Y.Z or version/X.Y.Z-suffix" + exit 1 + fi + + VERSION="${BRANCH#version/}" + + echo "Detected version: ${VERSION}" + + if [[ "${VERSION}" =~ -(alpha|beta|rc|pre|preview|dev|test) ]]; then + echo "Version is prerelease: ${VERSION}" + IS_PRERELEASE="true" + else + echo "Version is stable: ${VERSION}" + IS_PRERELEASE="false" + fi + + echo "branch=${BRANCH}" >> "$GITHUB_OUTPUT" + echo "version=${VERSION}" >> "$GITHUB_OUTPUT" + echo "is_prerelease=${IS_PRERELEASE}" >> "$GITHUB_OUTPUT" + + build-and-test: + name: Build and test (sanity check) + runs-on: ubuntu-latest + needs: meta + + steps: + - name: Check out version branch + uses: actions/checkout@v4 + with: + ref: ${{ needs.meta.outputs.branch }} + + - name: Set up PHP + uses: shivammathur/setup-php@v2 + with: + php-version: "8.2" + coverage: none + + - name: PHP lint under src (if present) + run: | + if [ -d "src" ]; then + echo "Running php -l against PHP files in src/" + find src -type f -name "*.php" -print0 | xargs -0 -n 1 -P 4 php -l + else + echo "No src directory found. Skipping PHP lint." + fi + + - name: Install dependencies if composer.json exists + run: | + if [ -f "composer.json" ]; then + composer install --no-interaction --no-progress --prefer-dist + else + echo "No composer.json found. Skipping composer install." + fi + + - name: Run Composer tests when defined + run: | + if [ ! -f "composer.json" ]; then + echo "No composer.json. Nothing to test." + exit 0 + fi + + if composer run -q | grep -q "^ test"; then + echo "Detected composer script 'test'. Running composer test." + composer test + else + echo "No 'test' script defined in composer.json. Skipping tests." + fi + + changelog: + name: Update CHANGELOG.md on version branch + runs-on: ubuntu-latest + needs: [meta, build-and-test] + + steps: + - name: Check out version branch with history + uses: actions/checkout@v4 + with: + ref: ${{ needs.meta.outputs.branch }} + fetch-depth: 0 + + - name: Fetch main for comparison + run: | + git fetch origin main + + - name: Update CHANGELOG using script + env: + VERSION: ${{ needs.meta.outputs.version }} + run: | + if [ ! -f "scripts/update_changelog.sh" ]; then + echo "ERROR: scripts/update_changelog.sh not found" + exit 1 + fi + + chmod +x scripts/update_changelog.sh + ./scripts/update_changelog.sh "${VERSION}" + + - name: Commit CHANGELOG.md if changed + env: + VERSION: ${{ needs.meta.outputs.version }} + run: | + git config user.name "github-actions[bot]" + git config user.email "github-actions[bot]@users.noreply.github.com" + + if git diff --quiet; then + echo "No changelog changes to commit." + exit 0 + fi + + git add CHANGELOG.md + git commit -m "chore: update changelog for ${VERSION}" + git push origin HEAD + + pr-merge-release: + name: PR, conditional squash, and GitHub release + runs-on: ubuntu-latest + needs: [meta, changelog] + + steps: + - name: Check out version branch + uses: actions/checkout@v4 + with: + ref: ${{ needs.meta.outputs.branch }} + fetch-depth: 0 + + - name: Verify branch has commits ahead of main + run: | + git fetch origin main + + AHEAD_COUNT=$(git rev-list --count origin/main..HEAD) + echo "Commits ahead of main: ${AHEAD_COUNT}" + + if [ "${AHEAD_COUNT}" -eq 0 ]; then + echo "ERROR: No commits between main and ${GITHUB_REF_NAME}." + echo "Action required: commit changes to the version branch before running this workflow." + exit 1 + fi + + - name: Ensure standard PR labels exist + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + run: | + echo "Ensuring standard labels exist" + gh label create "release" --color "0E8A16" --description "Release related PR" || echo "Label 'release' already exists" + gh label create "version-update" --color "5319E7" --description "Version bump and release PR" || echo "Label 'version-update' already exists" + + - name: Create or reuse PR from version branch to main + id: pr + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + BRANCH: ${{ needs.meta.outputs.branch }} + VERSION: ${{ needs.meta.outputs.version }} + run: | + echo "Ensuring PR exists for ${BRANCH} -> main" + + PR_NUMBER=$(gh pr list --head "${BRANCH}" --base "main" --state open --json number -q '.[0].number' || true) + + if [ -z "${PR_NUMBER}" ]; then + echo "No existing open PR found. Creating PR." + PR_URL=$(gh pr create --base "main" --head "${BRANCH}" --title "Merge version ${VERSION} into main" --body "Automated PR to merge version ${VERSION} into main.") + PR_NUMBER=$(gh pr view "${PR_URL}" --json number -q '.number') + + echo "Applying standard labels (non-blocking)" + gh pr edit "${PR_NUMBER}" --add-label "release" || echo "Label 'release' not found or cannot be applied" + gh pr edit "${PR_NUMBER}" --add-label "version-update" || echo "Label 'version-update' not found or cannot be applied" + else + echo "Found existing PR #${PR_NUMBER}" + fi + + echo "pr_number=${PR_NUMBER}" >> "$GITHUB_OUTPUT" + + - name: Squash merge PR into main (stable only) + if: needs.meta.outputs.is_prerelease == 'false' + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + REPO: ${{ github.repository }} + VERSION: ${{ needs.meta.outputs.version }} + PR_NUMBER: ${{ steps.pr.outputs.pr_number }} + run: | + if [ -z "${PR_NUMBER}" ]; then + echo "No pull request number returned. Cannot squash merge." + exit 1 + fi + + echo "Performing squash merge PR #${PR_NUMBER} into main" + + MERGE_PAYLOAD=$(jq -n --arg method "squash" --arg title "Squash merge version ${VERSION} into main" '{"merge_method": $method, "commit_title": $title}') + + curl -sS -X PUT -H "Authorization: Bearer ${GITHUB_TOKEN}" -H "Accept: application/vnd.github+json" "https://api.github.com/repos/${REPO}/pulls/${PR_NUMBER}/merge" -d "${MERGE_PAYLOAD}" + + - name: Skip squash (prerelease detected) + if: needs.meta.outputs.is_prerelease == 'true' + run: | + echo "Prerelease version detected. PR created but squash merge intentionally skipped." + + - name: Create GitHub Release (stable and prerelease) and attach ZIP from src + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + VERSION: ${{ needs.meta.outputs.version }} + IS_PRERELEASE: ${{ needs.meta.outputs.is_prerelease }} + run: | + PRERELEASE_FLAG="false" + if [ "${IS_PRERELEASE}" = "true" ]; then + PRERELEASE_FLAG="true" + fi + + echo "Building ZIP from src for version ${VERSION}" + + REPO_NAME="${GITHUB_REPOSITORY##*/}" + ASSET_NAME="${REPO_NAME}-${VERSION}.zip" + + if [ ! -d "src" ]; then + echo "ERROR: src directory does not exist. Cannot build release ZIP." + exit 1 + fi + + mkdir -p dist + cd src + zip -r "../dist/${ASSET_NAME}" . + cd .. + + echo "Preparing GitHub release for ${VERSION} (prerelease=${PRERELEASE_FLAG}) with asset dist/${ASSET_NAME}" + + if gh release view "${VERSION}" >/dev/null 2>&1; then + echo "Release ${VERSION} already exists. Uploading asset." + gh release upload "${VERSION}" "dist/${ASSET_NAME}" --clobber + else + ARGS=( + "${VERSION}" + "dist/${ASSET_NAME}" + --title + "Version ${VERSION}" + --notes + "Release generated from branch version/${VERSION}." + ) + + if [ "${PRERELEASE_FLAG}" = "true" ]; then + ARGS+=(--prerelease) + fi + + gh release create "${ARGS[@]}" + fi + + - name: Optional delete version branch after merge (stable only) + if: needs.meta.outputs.is_prerelease == 'false' + env: + BRANCH: ${{ needs.meta.outputs.branch }} + run: | + echo "Deleting branch ${BRANCH} after squash merge and release" + git push origin --delete "${BRANCH}" || echo "Branch already deleted or cannot delete" diff --git a/.github/workflows/updateserver.yml b/.github/workflows/updateserver.yml new file mode 100644 index 0000000..7865fa3 --- /dev/null +++ b/.github/workflows/updateserver.yml @@ -0,0 +1,61 @@ + - name: Update updates.xml (version, date, download URL only) + if: steps.meta.outputs.skip != 'true' + env: + VERSION: ${{ steps.meta.outputs.version }} + DOWNLOAD_URL: ${{ steps.meta.outputs.download_url }} + UPDATE_FILE: ${{ steps.parse.outputs.update_file }} + run: | + python << 'PY' + import os + from datetime import datetime + import xml.etree.ElementTree as ET + from pathlib import Path + + xml_path = Path(os.environ["UPDATE_FILE"]) + if not xml_path.exists(): + raise SystemExit(f"{xml_path} not found in update server repository") + + tree = ET.parse(xml_path) + root = tree.getroot() + + version = os.environ["VERSION"].strip() + download_url = os.environ["DOWNLOAD_URL"].strip() + today = datetime.utcnow().strftime("%Y-%m-%d") + + # Find an existing update node for this version; if none exists, create one. + target = None + for upd in root.findall("update"): + v_node = upd.find("version") + if v_node is not None and (v_node.text or "").strip() == version: + target = upd + break + + if target is None: + target = ET.SubElement(root, "update") + ET.SubElement(target, "version").text = version + + # Ensure version is set (only set the version field) + v_node = target.find("version") + if v_node is None: + v_node = ET.SubElement(target, "version") + v_node.text = version + + # Ensure creationDate is set + cd_node = target.find("creationDate") + if cd_node is None: + cd_node = ET.SubElement(target, "creationDate") + cd_node.text = today + + # Ensure downloads/downloadurl exists; update text only, keep attributes as-is if present + downloads = target.find("downloads") + if downloads is None: + downloads = ET.SubElement(target, "downloads") + + dl = downloads.find("downloadurl") + if dl is None: + dl = ET.SubElement(downloads, "downloadurl") + + dl.text = download_url + + tree.write(xml_path, encoding="utf-8", xml_declaration=True) + PY diff --git a/.github/workflows/version_branch.yml b/.github/workflows/version_branch.yml new file mode 100644 index 0000000..1e6c3f9 --- /dev/null +++ b/.github/workflows/version_branch.yml @@ -0,0 +1,227 @@ +name: Create version branch and bump versions + +on: + workflow_dispatch: + inputs: + new_version: + description: "New version (for example: 01.02.00). Leave blank to auto-increment from highest version/* branch." + required: false + default: "" + base_branch: + description: "Base branch to create version branch from" + required: false + default: "main" + +permissions: + contents: write + +jobs: + create-version-branch: + name: Create version branch and update versions + runs-on: ubuntu-latest + + env: + BASE_BRANCH: ${{ github.event.inputs.base_branch }} + + steps: + - name: Check out repository + uses: actions/checkout@v4 + with: + fetch-depth: 0 + ref: ${{ env.BASE_BRANCH }} + + - name: Determine new version (input or auto-increment) + id: version + env: + INPUT_VERSION: ${{ github.event.inputs.new_version }} + run: | + python << 'PY' + import os + import re + import subprocess + + input_version = os.environ.get("INPUT_VERSION", "").strip() + + if input_version: + new_version = input_version + else: + completed = subprocess.run( + ["git", "ls-remote", "--heads", "origin"], + check=True, + capture_output=True, + text=True, + ) + + pattern = re.compile(r"refs/heads/version/([0-9]+\.[0-9]+\.[0-9]+)$") + versions = [] + + for line in completed.stdout.splitlines(): + parts = line.split() + if len(parts) != 2: + continue + ref = parts[1] + m = pattern.search(ref) + if not m: + continue + + v_str = m.group(1) + try: + major, minor, patch = map(int, v_str.split(".")) + except ValueError: + continue + versions.append((major, minor, patch)) + + if versions: + major, minor, patch = max(versions) + patch += 1 + else: + major, minor, patch = 1, 0, 0 + + new_version = f"{major:02d}.{minor:02d}.{patch:02d}" + + print(f"Using version {new_version}") + + with open(os.environ["GITHUB_OUTPUT"], "a", encoding="utf-8") as fh: + fh.write(f"new_version={new_version}\n") + PY + + - name: Compute branch name + id: branch + env: + NEW_VERSION: ${{ steps.version.outputs.new_version }} + run: | + SAFE_VERSION="${NEW_VERSION// /-}" + BRANCH_NAME="version/${SAFE_VERSION}" + echo "Using branch name: $BRANCH_NAME" + echo "branch_name=$BRANCH_NAME" >> "$GITHUB_OUTPUT" + + - name: Create version branch from base + run: | + git checkout -b "${{ steps.branch.outputs.branch_name }}" + + - name: Bump version strings across repo + env: + NEW_VERSION: ${{ steps.version.outputs.new_version }} + run: | + echo "Updating version strings to ${NEW_VERSION} across repository" + + python << 'PY' + import os + import re + from pathlib import Path + + new_version = os.environ["NEW_VERSION"] + + targets = [ + Path("src"), + Path("docs"), + ] + + patterns = [ + (re.compile(r"\(VERSION\s+[0-9]+\.[0-9]+\.[0-9]+\)"), lambda v: f"(VERSION {v})"), + (re.compile(r"(VERSION[:\s]+)([0-9]+\.[0-9]+\.[0-9]+)"), lambda v: r"\1" + v), + (re.compile(r"()([0-9]+\.[0-9]+\.[0-9]+)()"), lambda v: r"\1" + v + r"\3"), + (re.compile(r'(]*\\bversion=")([0-9]+\.[0-9]+\.[0-9]+)(")'), lambda v: r"\1" + v + r"\3"), + (re.compile(r'(\"version\"\s*:\s*\")(\d+\.\d+\.\d+)(\")'), lambda v: r"\1" + v + r"\3"), + ] + + def update_file(path: Path) -> bool: + try: + text = path.read_text(encoding="utf-8") + except UnicodeDecodeError: + return False + + original = text + for regex, repl in patterns: + text = regex.sub(lambda m, r=repl: r(m), text) + + if text != original: + path.write_text(text, encoding="utf-8") + print(f"Updated version in {path}") + return True + + return False + + for root in targets: + if not root.exists(): + continue + + for path in root.rglob("*"): + if not path.is_file(): + continue + + if path.suffix.lower() in { + ".png", ".jpg", ".jpeg", ".gif", ".svg", ".ico", + ".zip", ".pdf", ".tar", ".gz", + }: + continue + + update_file(path) + + repo_root = Path(".").resolve() + + def is_under_any_target(p: Path) -> bool: + for t in targets: + if not t.exists(): + continue + try: + p.resolve().relative_to(t.resolve()) + return True + except ValueError: + continue + return False + + # Explicitly update README.md and CHANGELOG.md + for fname in ["README.md", "CHANGELOG.md"]: + p = Path(fname) + if p.exists() and p.is_file(): + update_file(p) + + # Update remaining markdown files outside src/docs + for path in repo_root.rglob("*.md"): + if not path.is_file(): + continue + + if path.name.lower() in {"readme.md", "changelog.md"}: + continue + + if is_under_any_target(path): + continue + + update_file(path) + PY + + - name: Update CHANGELOG using script + env: + NEW_VERSION: ${{ steps.version.outputs.new_version }} + run: | + if [ ! -f "scripts/update_changelog.sh" ]; then + echo "scripts/update_changelog.sh not found. Failing version branch creation." + exit 1 + fi + + chmod +x scripts/update_changelog.sh + ./scripts/update_changelog.sh "${NEW_VERSION}" + + - name: Configure git user + run: | + git config user.name "github-actions[bot]" + git config user.email "github-actions[bot]@users.noreply.github.com" + + - name: Commit version bump + env: + NEW_VERSION: ${{ steps.version.outputs.new_version }} + run: | + git status + if git diff --quiet; then + echo "No changes detected after version bump. Skipping commit." + exit 0 + fi + + git add -A + + git commit -m "chore: bump version to ${NEW_VERSION}" + + - name: Push version branch + run: | + git push -u origin "${{ steps.branch.outputs.branch_name }}" diff --git a/templates/index.html b/src/templates/index.html similarity index 100% rename from templates/index.html rename to src/templates/index.html diff --git a/templates/moko-cassiopeia/component.php b/src/templates/moko-cassiopeia/component.php similarity index 98% rename from templates/moko-cassiopeia/component.php rename to src/templates/moko-cassiopeia/component.php index 8b7d2bd..d31c76e 100644 --- a/templates/moko-cassiopeia/component.php +++ b/src/templates/moko-cassiopeia/component.php @@ -15,8 +15,9 @@ # FILE INFORMATION DEFGROUP: Joomla.Template.Site INGROUP: Moko-Cassiopeia + REPO: https://github.com/mokoconsulting-tech/moko-cassiopeia PATH: ./templates/moko-cassiopeia/component.php - VERSION: 03.00 + VERSION: 03.00.00 BRIEF: Minimal component-only template file for Moko-Cassiopeia */ diff --git a/templates/moko-cassiopeia/custom.php b/src/templates/moko-cassiopeia/custom.php similarity index 94% rename from templates/moko-cassiopeia/custom.php rename to src/templates/moko-cassiopeia/custom.php index 3b15175..e58731e 100644 --- a/templates/moko-cassiopeia/custom.php +++ b/src/templates/moko-cassiopeia/custom.php @@ -15,8 +15,9 @@ # FILE INFORMATION DEFGROUP: Joomla.Template.Site INGROUP: Moko-Cassiopeia + REPO: https://github.com/mokoconsulting-tech/moko-cassiopeia PATH: ./templates/moko-cassiopeia/custom.php - VERSION: 03.00 + VERSION: 03.00.00 BRIEF: Custom entry template file for Moko-Cassiopeia with user-defined overrides */ diff --git a/templates/moko-cassiopeia/error.php b/src/templates/moko-cassiopeia/error.php similarity index 99% rename from templates/moko-cassiopeia/error.php rename to src/templates/moko-cassiopeia/error.php index b882149..1b2a74f 100644 --- a/templates/moko-cassiopeia/error.php +++ b/src/templates/moko-cassiopeia/error.php @@ -15,8 +15,9 @@ # FILE INFORMATION DEFGROUP: Joomla.Template.Site INGROUP: Moko-Cassiopeia + REPO: https://github.com/mokoconsulting-tech/moko-cassiopeia PATH: ./templates/moko-cassiopeia/error.php - VERSION: 03.00 + VERSION: 03.00.00 BRIEF: Error page template file for Moko-Cassiopeia */ diff --git a/templates/moko-cassiopeia/favicon.ico b/src/templates/moko-cassiopeia/favicon.ico similarity index 100% rename from templates/moko-cassiopeia/favicon.ico rename to src/templates/moko-cassiopeia/favicon.ico diff --git a/src/templates/moko-cassiopeia/favicon.ico.bak b/src/templates/moko-cassiopeia/favicon.ico.bak new file mode 100644 index 0000000..710b9c8 Binary files /dev/null and b/src/templates/moko-cassiopeia/favicon.ico.bak differ diff --git a/templates/moko-cassiopeia/html/com_contact/contact/default.php b/src/templates/moko-cassiopeia/html/com_contact/contact/default.php similarity index 100% rename from templates/moko-cassiopeia/html/com_contact/contact/default.php rename to src/templates/moko-cassiopeia/html/com_contact/contact/default.php diff --git a/templates/moko-cassiopeia/html/com_contact/contact/index.html b/src/templates/moko-cassiopeia/html/com_contact/contact/index.html similarity index 98% rename from templates/moko-cassiopeia/html/com_contact/contact/index.html rename to src/templates/moko-cassiopeia/html/com_contact/contact/index.html index 4ded426..d8abe80 100644 --- a/templates/moko-cassiopeia/html/com_contact/contact/index.html +++ b/src/templates/moko-cassiopeia/html/com_contact/contact/index.html @@ -12,8 +12,8 @@ You should have received a copy of the GNU General Public License along with this program. If not, see https://www.gnu.org/licenses/ . # FILE INFORMATION - DEFGROUP: Joomla.Site - INGROUP: Templates.Moko-Cassiopeia + DEFGROUP: Joomla.Templates.Site + INGROUP: Moko-Cassiopeia FILE: index.html BRIEF: Security redirect page to block folder access and forward to site root. --> diff --git a/templates/moko-cassiopeia/html/com_contact/default.php b/src/templates/moko-cassiopeia/html/com_contact/default.php similarity index 100% rename from templates/moko-cassiopeia/html/com_contact/default.php rename to src/templates/moko-cassiopeia/html/com_contact/default.php diff --git a/templates/moko-cassiopeia/html/com_contact/index.html b/src/templates/moko-cassiopeia/html/com_contact/index.html similarity index 98% rename from templates/moko-cassiopeia/html/com_contact/index.html rename to src/templates/moko-cassiopeia/html/com_contact/index.html index 4ded426..d8abe80 100644 --- a/templates/moko-cassiopeia/html/com_contact/index.html +++ b/src/templates/moko-cassiopeia/html/com_contact/index.html @@ -12,8 +12,8 @@ You should have received a copy of the GNU General Public License along with this program. If not, see https://www.gnu.org/licenses/ . # FILE INFORMATION - DEFGROUP: Joomla.Site - INGROUP: Templates.Moko-Cassiopeia + DEFGROUP: Joomla.Templates.Site + INGROUP: Moko-Cassiopeia FILE: index.html BRIEF: Security redirect page to block folder access and forward to site root. --> diff --git a/templates/moko-cassiopeia/html/com_content/article/index.html b/src/templates/moko-cassiopeia/html/com_content/article/index.html similarity index 98% rename from templates/moko-cassiopeia/html/com_content/article/index.html rename to src/templates/moko-cassiopeia/html/com_content/article/index.html index 4ded426..d8abe80 100644 --- a/templates/moko-cassiopeia/html/com_content/article/index.html +++ b/src/templates/moko-cassiopeia/html/com_content/article/index.html @@ -12,8 +12,8 @@ You should have received a copy of the GNU General Public License along with this program. If not, see https://www.gnu.org/licenses/ . # FILE INFORMATION - DEFGROUP: Joomla.Site - INGROUP: Templates.Moko-Cassiopeia + DEFGROUP: Joomla.Templates.Site + INGROUP: Moko-Cassiopeia FILE: index.html BRIEF: Security redirect page to block folder access and forward to site root. --> diff --git a/templates/moko-cassiopeia/html/com_content/article/toc-left.php b/src/templates/moko-cassiopeia/html/com_content/article/toc-left.php similarity index 98% rename from templates/moko-cassiopeia/html/com_content/article/toc-left.php rename to src/templates/moko-cassiopeia/html/com_content/article/toc-left.php index 8e374a9..90c0171 100644 --- a/templates/moko-cassiopeia/html/com_content/article/toc-left.php +++ b/src/templates/moko-cassiopeia/html/com_content/article/toc-left.php @@ -15,8 +15,9 @@ # FILE INFORMATION DEFGROUP: Joomla.Template.Site INGROUP: Moko-Cassiopeia + REPO: https://github.com/mokoconsulting-tech/moko-cassiopeia PATH: ./templates/moko-cassiopeia/html/com_content/article/toc-left.php - VERSION: 03.00 + VERSION: 03.00.00 BRIEF: Template override for Joomla articles with Table of Contents aligned left */ diff --git a/templates/moko-cassiopeia/html/com_content/article/toc-right.php b/src/templates/moko-cassiopeia/html/com_content/article/toc-right.php similarity index 98% rename from templates/moko-cassiopeia/html/com_content/article/toc-right.php rename to src/templates/moko-cassiopeia/html/com_content/article/toc-right.php index 880964c..874a497 100644 --- a/templates/moko-cassiopeia/html/com_content/article/toc-right.php +++ b/src/templates/moko-cassiopeia/html/com_content/article/toc-right.php @@ -15,8 +15,9 @@ # FILE INFORMATION DEFGROUP: Joomla.Template.Site INGROUP: Moko-Cassiopeia + REPO: https://github.com/mokoconsulting-tech/moko-cassiopeia PATH: ./templates/moko-cassiopeia/html/com_content/article/toc-right.php - VERSION: 03.00 + VERSION: 03.00.00 BRIEF: Template override for Joomla articles with Table of Contents aligned right */ diff --git a/templates/moko-cassiopeia/html/com_content/categories/default.php b/src/templates/moko-cassiopeia/html/com_content/categories/default.php similarity index 100% rename from templates/moko-cassiopeia/html/com_content/categories/default.php rename to src/templates/moko-cassiopeia/html/com_content/categories/default.php diff --git a/templates/moko-cassiopeia/html/com_content/categories/default_items.php b/src/templates/moko-cassiopeia/html/com_content/categories/default_items.php similarity index 100% rename from templates/moko-cassiopeia/html/com_content/categories/default_items.php rename to src/templates/moko-cassiopeia/html/com_content/categories/default_items.php diff --git a/templates/moko-cassiopeia/html/com_content/categories/index.html b/src/templates/moko-cassiopeia/html/com_content/categories/index.html similarity index 98% rename from templates/moko-cassiopeia/html/com_content/categories/index.html rename to src/templates/moko-cassiopeia/html/com_content/categories/index.html index 4ded426..d8abe80 100644 --- a/templates/moko-cassiopeia/html/com_content/categories/index.html +++ b/src/templates/moko-cassiopeia/html/com_content/categories/index.html @@ -12,8 +12,8 @@ You should have received a copy of the GNU General Public License along with this program. If not, see https://www.gnu.org/licenses/ . # FILE INFORMATION - DEFGROUP: Joomla.Site - INGROUP: Templates.Moko-Cassiopeia + DEFGROUP: Joomla.Templates.Site + INGROUP: Moko-Cassiopeia FILE: index.html BRIEF: Security redirect page to block folder access and forward to site root. --> diff --git a/templates/moko-cassiopeia/html/com_content/category/blog.php b/src/templates/moko-cassiopeia/html/com_content/category/blog.php similarity index 100% rename from templates/moko-cassiopeia/html/com_content/category/blog.php rename to src/templates/moko-cassiopeia/html/com_content/category/blog.php diff --git a/templates/moko-cassiopeia/html/com_content/category/blog_children.php b/src/templates/moko-cassiopeia/html/com_content/category/blog_children.php similarity index 100% rename from templates/moko-cassiopeia/html/com_content/category/blog_children.php rename to src/templates/moko-cassiopeia/html/com_content/category/blog_children.php diff --git a/templates/moko-cassiopeia/html/com_content/category/blog_item.php b/src/templates/moko-cassiopeia/html/com_content/category/blog_item.php similarity index 100% rename from templates/moko-cassiopeia/html/com_content/category/blog_item.php rename to src/templates/moko-cassiopeia/html/com_content/category/blog_item.php diff --git a/templates/moko-cassiopeia/html/com_content/category/blog_links.php b/src/templates/moko-cassiopeia/html/com_content/category/blog_links.php similarity index 100% rename from templates/moko-cassiopeia/html/com_content/category/blog_links.php rename to src/templates/moko-cassiopeia/html/com_content/category/blog_links.php diff --git a/templates/moko-cassiopeia/html/com_content/category/default.php b/src/templates/moko-cassiopeia/html/com_content/category/default.php similarity index 100% rename from templates/moko-cassiopeia/html/com_content/category/default.php rename to src/templates/moko-cassiopeia/html/com_content/category/default.php diff --git a/templates/moko-cassiopeia/html/com_content/category/default_articles.php b/src/templates/moko-cassiopeia/html/com_content/category/default_articles.php similarity index 100% rename from templates/moko-cassiopeia/html/com_content/category/default_articles.php rename to src/templates/moko-cassiopeia/html/com_content/category/default_articles.php diff --git a/templates/moko-cassiopeia/html/com_content/category/default_children.php b/src/templates/moko-cassiopeia/html/com_content/category/default_children.php similarity index 100% rename from templates/moko-cassiopeia/html/com_content/category/default_children.php rename to src/templates/moko-cassiopeia/html/com_content/category/default_children.php diff --git a/src/templates/moko-cassiopeia/html/com_content/category/index.html b/src/templates/moko-cassiopeia/html/com_content/category/index.html new file mode 100644 index 0000000..d8abe80 --- /dev/null +++ b/src/templates/moko-cassiopeia/html/com_content/category/index.html @@ -0,0 +1,89 @@ + + + + + + + Redirecting… + + + + + + + + + + + + + + + + + + + +
Redirecting to the site root… If you are not redirected, click here.
+ + diff --git a/templates/moko-cassiopeia/html/com_content/featured/default.php b/src/templates/moko-cassiopeia/html/com_content/featured/default.php similarity index 100% rename from templates/moko-cassiopeia/html/com_content/featured/default.php rename to src/templates/moko-cassiopeia/html/com_content/featured/default.php diff --git a/templates/moko-cassiopeia/html/com_content/featured/default_item.php b/src/templates/moko-cassiopeia/html/com_content/featured/default_item.php similarity index 100% rename from templates/moko-cassiopeia/html/com_content/featured/default_item.php rename to src/templates/moko-cassiopeia/html/com_content/featured/default_item.php diff --git a/templates/moko-cassiopeia/html/com_content/featured/default_links.php b/src/templates/moko-cassiopeia/html/com_content/featured/default_links.php similarity index 100% rename from templates/moko-cassiopeia/html/com_content/featured/default_links.php rename to src/templates/moko-cassiopeia/html/com_content/featured/default_links.php diff --git a/src/templates/moko-cassiopeia/html/com_content/featured/index.html b/src/templates/moko-cassiopeia/html/com_content/featured/index.html new file mode 100644 index 0000000..d8abe80 --- /dev/null +++ b/src/templates/moko-cassiopeia/html/com_content/featured/index.html @@ -0,0 +1,89 @@ + + + + + + + Redirecting… + + + + + + + + + + + + + + + + + + + +
Redirecting to the site root… If you are not redirected, click here.
+ + diff --git a/src/templates/moko-cassiopeia/html/com_content/index.html b/src/templates/moko-cassiopeia/html/com_content/index.html new file mode 100644 index 0000000..d8abe80 --- /dev/null +++ b/src/templates/moko-cassiopeia/html/com_content/index.html @@ -0,0 +1,89 @@ + + + + + + + Redirecting… + + + + + + + + + + + + + + + + + + + +
Redirecting to the site root… If you are not redirected, click here.
+ + diff --git a/templates/moko-cassiopeia/html/com_engage/comments/default.php b/src/templates/moko-cassiopeia/html/com_engage/comments/default.php similarity index 100% rename from templates/moko-cassiopeia/html/com_engage/comments/default.php rename to src/templates/moko-cassiopeia/html/com_engage/comments/default.php diff --git a/templates/moko-cassiopeia/html/com_engage/comments/default_form.php b/src/templates/moko-cassiopeia/html/com_engage/comments/default_form.php similarity index 100% rename from templates/moko-cassiopeia/html/com_engage/comments/default_form.php rename to src/templates/moko-cassiopeia/html/com_engage/comments/default_form.php diff --git a/templates/moko-cassiopeia/html/com_engage/comments/default_list.php b/src/templates/moko-cassiopeia/html/com_engage/comments/default_list.php similarity index 100% rename from templates/moko-cassiopeia/html/com_engage/comments/default_list.php rename to src/templates/moko-cassiopeia/html/com_engage/comments/default_list.php diff --git a/templates/moko-cassiopeia/html/com_engage/comments/default_login.php b/src/templates/moko-cassiopeia/html/com_engage/comments/default_login.php similarity index 100% rename from templates/moko-cassiopeia/html/com_engage/comments/default_login.php rename to src/templates/moko-cassiopeia/html/com_engage/comments/default_login.php diff --git a/src/templates/moko-cassiopeia/html/com_engage/comments/index.html b/src/templates/moko-cassiopeia/html/com_engage/comments/index.html new file mode 100644 index 0000000..d8abe80 --- /dev/null +++ b/src/templates/moko-cassiopeia/html/com_engage/comments/index.html @@ -0,0 +1,89 @@ + + + + + + + Redirecting… + + + + + + + + + + + + + + + + + + + +
Redirecting to the site root… If you are not redirected, click here.
+ + diff --git a/src/templates/moko-cassiopeia/html/com_engage/index.html b/src/templates/moko-cassiopeia/html/com_engage/index.html new file mode 100644 index 0000000..d8abe80 --- /dev/null +++ b/src/templates/moko-cassiopeia/html/com_engage/index.html @@ -0,0 +1,89 @@ + + + + + + + Redirecting… + + + + + + + + + + + + + + + + + + + +
Redirecting to the site root… If you are not redirected, click here.
+ + diff --git a/templates/moko-cassiopeia/html/com_osmembership/common/accordion_plans.php b/src/templates/moko-cassiopeia/html/com_osmembership/common/accordion_plans.php similarity index 100% rename from templates/moko-cassiopeia/html/com_osmembership/common/accordion_plans.php rename to src/templates/moko-cassiopeia/html/com_osmembership/common/accordion_plans.php diff --git a/templates/moko-cassiopeia/html/com_osmembership/common/batch.php b/src/templates/moko-cassiopeia/html/com_osmembership/common/batch.php similarity index 100% rename from templates/moko-cassiopeia/html/com_osmembership/common/batch.php rename to src/templates/moko-cassiopeia/html/com_osmembership/common/batch.php diff --git a/templates/moko-cassiopeia/html/com_osmembership/common/batch_nocheck.php b/src/templates/moko-cassiopeia/html/com_osmembership/common/batch_nocheck.php similarity index 100% rename from templates/moko-cassiopeia/html/com_osmembership/common/batch_nocheck.php rename to src/templates/moko-cassiopeia/html/com_osmembership/common/batch_nocheck.php diff --git a/templates/moko-cassiopeia/html/com_osmembership/common/categories.php b/src/templates/moko-cassiopeia/html/com_osmembership/common/categories.php similarity index 100% rename from templates/moko-cassiopeia/html/com_osmembership/common/categories.php rename to src/templates/moko-cassiopeia/html/com_osmembership/common/categories.php diff --git a/templates/moko-cassiopeia/html/com_osmembership/common/columns_plans.php b/src/templates/moko-cassiopeia/html/com_osmembership/common/columns_plans.php similarity index 100% rename from templates/moko-cassiopeia/html/com_osmembership/common/columns_plans.php rename to src/templates/moko-cassiopeia/html/com_osmembership/common/columns_plans.php diff --git a/templates/moko-cassiopeia/html/com_osmembership/common/default_plans.php b/src/templates/moko-cassiopeia/html/com_osmembership/common/default_plans.php similarity index 100% rename from templates/moko-cassiopeia/html/com_osmembership/common/default_plans.php rename to src/templates/moko-cassiopeia/html/com_osmembership/common/default_plans.php diff --git a/templates/moko-cassiopeia/html/com_osmembership/common/group_members.php b/src/templates/moko-cassiopeia/html/com_osmembership/common/group_members.php similarity index 100% rename from templates/moko-cassiopeia/html/com_osmembership/common/group_members.php rename to src/templates/moko-cassiopeia/html/com_osmembership/common/group_members.php diff --git a/src/templates/moko-cassiopeia/html/com_osmembership/common/index.html b/src/templates/moko-cassiopeia/html/com_osmembership/common/index.html new file mode 100644 index 0000000..d8abe80 --- /dev/null +++ b/src/templates/moko-cassiopeia/html/com_osmembership/common/index.html @@ -0,0 +1,89 @@ + + + + + + + Redirecting… + + + + + + + + + + + + + + + + + + + +
Redirecting to the site root… If you are not redirected, click here.
+ + diff --git a/templates/moko-cassiopeia/html/com_osmembership/common/paymentredirect.php b/src/templates/moko-cassiopeia/html/com_osmembership/common/paymentredirect.php similarity index 100% rename from templates/moko-cassiopeia/html/com_osmembership/common/paymentredirect.php rename to src/templates/moko-cassiopeia/html/com_osmembership/common/paymentredirect.php diff --git a/templates/moko-cassiopeia/html/com_osmembership/common/plan_custom_fields.php b/src/templates/moko-cassiopeia/html/com_osmembership/common/plan_custom_fields.php similarity index 100% rename from templates/moko-cassiopeia/html/com_osmembership/common/plan_custom_fields.php rename to src/templates/moko-cassiopeia/html/com_osmembership/common/plan_custom_fields.php diff --git a/templates/moko-cassiopeia/html/com_osmembership/common/plan_information.php b/src/templates/moko-cassiopeia/html/com_osmembership/common/plan_information.php similarity index 100% rename from templates/moko-cassiopeia/html/com_osmembership/common/plan_information.php rename to src/templates/moko-cassiopeia/html/com_osmembership/common/plan_information.php diff --git a/templates/moko-cassiopeia/html/com_osmembership/common/priceduration.php b/src/templates/moko-cassiopeia/html/com_osmembership/common/priceduration.php similarity index 100% rename from templates/moko-cassiopeia/html/com_osmembership/common/priceduration.php rename to src/templates/moko-cassiopeia/html/com_osmembership/common/priceduration.php diff --git a/templates/moko-cassiopeia/html/com_osmembership/common/pricingtable_circle_plans.php b/src/templates/moko-cassiopeia/html/com_osmembership/common/pricingtable_circle_plans.php similarity index 100% rename from templates/moko-cassiopeia/html/com_osmembership/common/pricingtable_circle_plans.php rename to src/templates/moko-cassiopeia/html/com_osmembership/common/pricingtable_circle_plans.php diff --git a/templates/moko-cassiopeia/html/com_osmembership/common/pricingtable_flat_plans.php b/src/templates/moko-cassiopeia/html/com_osmembership/common/pricingtable_flat_plans.php similarity index 100% rename from templates/moko-cassiopeia/html/com_osmembership/common/pricingtable_flat_plans.php rename to src/templates/moko-cassiopeia/html/com_osmembership/common/pricingtable_flat_plans.php diff --git a/templates/moko-cassiopeia/html/com_osmembership/common/pricingtable_plans.php b/src/templates/moko-cassiopeia/html/com_osmembership/common/pricingtable_plans.php similarity index 100% rename from templates/moko-cassiopeia/html/com_osmembership/common/pricingtable_plans.php rename to src/templates/moko-cassiopeia/html/com_osmembership/common/pricingtable_plans.php diff --git a/templates/moko-cassiopeia/html/com_osmembership/common/renew_options.php b/src/templates/moko-cassiopeia/html/com_osmembership/common/renew_options.php similarity index 100% rename from templates/moko-cassiopeia/html/com_osmembership/common/renew_options.php rename to src/templates/moko-cassiopeia/html/com_osmembership/common/renew_options.php diff --git a/templates/moko-cassiopeia/html/com_osmembership/common/restrictionmsg.php b/src/templates/moko-cassiopeia/html/com_osmembership/common/restrictionmsg.php similarity index 100% rename from templates/moko-cassiopeia/html/com_osmembership/common/restrictionmsg.php rename to src/templates/moko-cassiopeia/html/com_osmembership/common/restrictionmsg.php diff --git a/templates/moko-cassiopeia/html/com_osmembership/common/subscriptions_history.php b/src/templates/moko-cassiopeia/html/com_osmembership/common/subscriptions_history.php similarity index 100% rename from templates/moko-cassiopeia/html/com_osmembership/common/subscriptions_history.php rename to src/templates/moko-cassiopeia/html/com_osmembership/common/subscriptions_history.php diff --git a/templates/moko-cassiopeia/html/com_osmembership/common/subscriptions_pdf.php b/src/templates/moko-cassiopeia/html/com_osmembership/common/subscriptions_pdf.php similarity index 100% rename from templates/moko-cassiopeia/html/com_osmembership/common/subscriptions_pdf.php rename to src/templates/moko-cassiopeia/html/com_osmembership/common/subscriptions_pdf.php diff --git a/templates/moko-cassiopeia/html/com_osmembership/common/upgrade_options.php b/src/templates/moko-cassiopeia/html/com_osmembership/common/upgrade_options.php similarity index 100% rename from templates/moko-cassiopeia/html/com_osmembership/common/upgrade_options.php rename to src/templates/moko-cassiopeia/html/com_osmembership/common/upgrade_options.php diff --git a/src/templates/moko-cassiopeia/html/com_osmembership/index.html b/src/templates/moko-cassiopeia/html/com_osmembership/index.html new file mode 100644 index 0000000..d8abe80 --- /dev/null +++ b/src/templates/moko-cassiopeia/html/com_osmembership/index.html @@ -0,0 +1,89 @@ + + + + + + + Redirecting… + + + + + + + + + + + + + + + + + + + +
Redirecting to the site root… If you are not redirected, click here.
+ + diff --git a/templates/moko-cassiopeia/html/com_osmembership/mplan/default.php b/src/templates/moko-cassiopeia/html/com_osmembership/mplan/default.php similarity index 100% rename from templates/moko-cassiopeia/html/com_osmembership/mplan/default.php rename to src/templates/moko-cassiopeia/html/com_osmembership/mplan/default.php diff --git a/templates/moko-cassiopeia/html/com_osmembership/mplan/default_advanced_settings.php b/src/templates/moko-cassiopeia/html/com_osmembership/mplan/default_advanced_settings.php similarity index 100% rename from templates/moko-cassiopeia/html/com_osmembership/mplan/default_advanced_settings.php rename to src/templates/moko-cassiopeia/html/com_osmembership/mplan/default_advanced_settings.php diff --git a/templates/moko-cassiopeia/html/com_osmembership/mplan/default_general.php b/src/templates/moko-cassiopeia/html/com_osmembership/mplan/default_general.php similarity index 100% rename from templates/moko-cassiopeia/html/com_osmembership/mplan/default_general.php rename to src/templates/moko-cassiopeia/html/com_osmembership/mplan/default_general.php diff --git a/templates/moko-cassiopeia/html/com_osmembership/mplan/default_group_membership.php b/src/templates/moko-cassiopeia/html/com_osmembership/mplan/default_group_membership.php similarity index 100% rename from templates/moko-cassiopeia/html/com_osmembership/mplan/default_group_membership.php rename to src/templates/moko-cassiopeia/html/com_osmembership/mplan/default_group_membership.php diff --git a/templates/moko-cassiopeia/html/com_osmembership/mplan/default_member_card.php b/src/templates/moko-cassiopeia/html/com_osmembership/mplan/default_member_card.php similarity index 100% rename from templates/moko-cassiopeia/html/com_osmembership/mplan/default_member_card.php rename to src/templates/moko-cassiopeia/html/com_osmembership/mplan/default_member_card.php diff --git a/templates/moko-cassiopeia/html/com_osmembership/mplan/default_messages.php b/src/templates/moko-cassiopeia/html/com_osmembership/mplan/default_messages.php similarity index 100% rename from templates/moko-cassiopeia/html/com_osmembership/mplan/default_messages.php rename to src/templates/moko-cassiopeia/html/com_osmembership/mplan/default_messages.php diff --git a/templates/moko-cassiopeia/html/com_osmembership/mplan/default_metadata.php b/src/templates/moko-cassiopeia/html/com_osmembership/mplan/default_metadata.php similarity index 100% rename from templates/moko-cassiopeia/html/com_osmembership/mplan/default_metadata.php rename to src/templates/moko-cassiopeia/html/com_osmembership/mplan/default_metadata.php diff --git a/templates/moko-cassiopeia/html/com_osmembership/mplan/default_recurring_settings.php b/src/templates/moko-cassiopeia/html/com_osmembership/mplan/default_recurring_settings.php similarity index 100% rename from templates/moko-cassiopeia/html/com_osmembership/mplan/default_recurring_settings.php rename to src/templates/moko-cassiopeia/html/com_osmembership/mplan/default_recurring_settings.php diff --git a/templates/moko-cassiopeia/html/com_osmembership/mplan/default_reminder_messages.php b/src/templates/moko-cassiopeia/html/com_osmembership/mplan/default_reminder_messages.php similarity index 100% rename from templates/moko-cassiopeia/html/com_osmembership/mplan/default_reminder_messages.php rename to src/templates/moko-cassiopeia/html/com_osmembership/mplan/default_reminder_messages.php diff --git a/templates/moko-cassiopeia/html/com_osmembership/mplan/default_reminders_settings.php b/src/templates/moko-cassiopeia/html/com_osmembership/mplan/default_reminders_settings.php similarity index 100% rename from templates/moko-cassiopeia/html/com_osmembership/mplan/default_reminders_settings.php rename to src/templates/moko-cassiopeia/html/com_osmembership/mplan/default_reminders_settings.php diff --git a/templates/moko-cassiopeia/html/com_osmembership/mplan/default_renew_options.php b/src/templates/moko-cassiopeia/html/com_osmembership/mplan/default_renew_options.php similarity index 100% rename from templates/moko-cassiopeia/html/com_osmembership/mplan/default_renew_options.php rename to src/templates/moko-cassiopeia/html/com_osmembership/mplan/default_renew_options.php diff --git a/templates/moko-cassiopeia/html/com_osmembership/mplan/default_renewal_discounts.php b/src/templates/moko-cassiopeia/html/com_osmembership/mplan/default_renewal_discounts.php similarity index 100% rename from templates/moko-cassiopeia/html/com_osmembership/mplan/default_renewal_discounts.php rename to src/templates/moko-cassiopeia/html/com_osmembership/mplan/default_renewal_discounts.php diff --git a/templates/moko-cassiopeia/html/com_osmembership/mplan/default_translation.php b/src/templates/moko-cassiopeia/html/com_osmembership/mplan/default_translation.php similarity index 100% rename from templates/moko-cassiopeia/html/com_osmembership/mplan/default_translation.php rename to src/templates/moko-cassiopeia/html/com_osmembership/mplan/default_translation.php diff --git a/templates/moko-cassiopeia/html/com_osmembership/mplan/default_upgrade_options.php b/src/templates/moko-cassiopeia/html/com_osmembership/mplan/default_upgrade_options.php similarity index 100% rename from templates/moko-cassiopeia/html/com_osmembership/mplan/default_upgrade_options.php rename to src/templates/moko-cassiopeia/html/com_osmembership/mplan/default_upgrade_options.php diff --git a/src/templates/moko-cassiopeia/html/com_osmembership/mplan/index.html b/src/templates/moko-cassiopeia/html/com_osmembership/mplan/index.html new file mode 100644 index 0000000..d8abe80 --- /dev/null +++ b/src/templates/moko-cassiopeia/html/com_osmembership/mplan/index.html @@ -0,0 +1,89 @@ + + + + + + + Redirecting… + + + + + + + + + + + + + + + + + + + +
Redirecting to the site root… If you are not redirected, click here.
+ + diff --git a/templates/moko-cassiopeia/html/com_osmembership/mplans/default.php b/src/templates/moko-cassiopeia/html/com_osmembership/mplans/default.php similarity index 100% rename from templates/moko-cassiopeia/html/com_osmembership/mplans/default.php rename to src/templates/moko-cassiopeia/html/com_osmembership/mplans/default.php diff --git a/templates/moko-cassiopeia/html/com_osmembership/mplans/default_search_bar.bootstrap4.php b/src/templates/moko-cassiopeia/html/com_osmembership/mplans/default_search_bar.bootstrap4.php similarity index 100% rename from templates/moko-cassiopeia/html/com_osmembership/mplans/default_search_bar.bootstrap4.php rename to src/templates/moko-cassiopeia/html/com_osmembership/mplans/default_search_bar.bootstrap4.php diff --git a/templates/moko-cassiopeia/html/com_osmembership/mplans/default_search_bar.php b/src/templates/moko-cassiopeia/html/com_osmembership/mplans/default_search_bar.php similarity index 100% rename from templates/moko-cassiopeia/html/com_osmembership/mplans/default_search_bar.php rename to src/templates/moko-cassiopeia/html/com_osmembership/mplans/default_search_bar.php diff --git a/src/templates/moko-cassiopeia/html/com_osmembership/mplans/index.html b/src/templates/moko-cassiopeia/html/com_osmembership/mplans/index.html new file mode 100644 index 0000000..d8abe80 --- /dev/null +++ b/src/templates/moko-cassiopeia/html/com_osmembership/mplans/index.html @@ -0,0 +1,89 @@ + + + + + + + Redirecting… + + + + + + + + + + + + + + + + + + + +
Redirecting to the site root… If you are not redirected, click here.
+ + diff --git a/templates/moko-cassiopeia/html/com_osmembership/plan/default.php b/src/templates/moko-cassiopeia/html/com_osmembership/plan/default.php similarity index 100% rename from templates/moko-cassiopeia/html/com_osmembership/plan/default.php rename to src/templates/moko-cassiopeia/html/com_osmembership/plan/default.php diff --git a/templates/moko-cassiopeia/html/com_osmembership/plan/default_renew_upgrade.php b/src/templates/moko-cassiopeia/html/com_osmembership/plan/default_renew_upgrade.php similarity index 100% rename from templates/moko-cassiopeia/html/com_osmembership/plan/default_renew_upgrade.php rename to src/templates/moko-cassiopeia/html/com_osmembership/plan/default_renew_upgrade.php diff --git a/src/templates/moko-cassiopeia/html/com_osmembership/plan/index.html b/src/templates/moko-cassiopeia/html/com_osmembership/plan/index.html new file mode 100644 index 0000000..d8abe80 --- /dev/null +++ b/src/templates/moko-cassiopeia/html/com_osmembership/plan/index.html @@ -0,0 +1,89 @@ + + + + + + + Redirecting… + + + + + + + + + + + + + + + + + + + +
Redirecting to the site root… If you are not redirected, click here.
+ + diff --git a/templates/moko-cassiopeia/html/com_osmembership/plans/columns.php b/src/templates/moko-cassiopeia/html/com_osmembership/plans/columns.php similarity index 100% rename from templates/moko-cassiopeia/html/com_osmembership/plans/columns.php rename to src/templates/moko-cassiopeia/html/com_osmembership/plans/columns.php diff --git a/templates/moko-cassiopeia/html/com_osmembership/plans/default.php b/src/templates/moko-cassiopeia/html/com_osmembership/plans/default.php similarity index 100% rename from templates/moko-cassiopeia/html/com_osmembership/plans/default.php rename to src/templates/moko-cassiopeia/html/com_osmembership/plans/default.php diff --git a/src/templates/moko-cassiopeia/html/com_osmembership/plans/index.html b/src/templates/moko-cassiopeia/html/com_osmembership/plans/index.html new file mode 100644 index 0000000..d8abe80 --- /dev/null +++ b/src/templates/moko-cassiopeia/html/com_osmembership/plans/index.html @@ -0,0 +1,89 @@ + + + + + + + Redirecting… + + + + + + + + + + + + + + + + + + + +
Redirecting to the site root… If you are not redirected, click here.
+ + diff --git a/templates/moko-cassiopeia/html/com_osmembership/plans/pricingtable.php b/src/templates/moko-cassiopeia/html/com_osmembership/plans/pricingtable.php similarity index 100% rename from templates/moko-cassiopeia/html/com_osmembership/plans/pricingtable.php rename to src/templates/moko-cassiopeia/html/com_osmembership/plans/pricingtable.php diff --git a/templates/moko-cassiopeia/html/com_osmembership/plans/pricingtablecircle.php b/src/templates/moko-cassiopeia/html/com_osmembership/plans/pricingtablecircle.php similarity index 100% rename from templates/moko-cassiopeia/html/com_osmembership/plans/pricingtablecircle.php rename to src/templates/moko-cassiopeia/html/com_osmembership/plans/pricingtablecircle.php diff --git a/templates/moko-cassiopeia/html/com_osmembership/plans/pricingtableflat.php b/src/templates/moko-cassiopeia/html/com_osmembership/plans/pricingtableflat.php similarity index 100% rename from templates/moko-cassiopeia/html/com_osmembership/plans/pricingtableflat.php rename to src/templates/moko-cassiopeia/html/com_osmembership/plans/pricingtableflat.php diff --git a/src/templates/moko-cassiopeia/html/index.html b/src/templates/moko-cassiopeia/html/index.html new file mode 100644 index 0000000..d8abe80 --- /dev/null +++ b/src/templates/moko-cassiopeia/html/index.html @@ -0,0 +1,89 @@ + + + + + + + Redirecting… + + + + + + + + + + + + + + + + + + + +
Redirecting to the site root… If you are not redirected, click here.
+ + diff --git a/templates/moko-cassiopeia/html/layouts/chromes/card.php b/src/templates/moko-cassiopeia/html/layouts/chromes/card.php similarity index 100% rename from templates/moko-cassiopeia/html/layouts/chromes/card.php rename to src/templates/moko-cassiopeia/html/layouts/chromes/card.php diff --git a/templates/moko-cassiopeia/html/layouts/chromes/html5.php b/src/templates/moko-cassiopeia/html/layouts/chromes/html5.php similarity index 100% rename from templates/moko-cassiopeia/html/layouts/chromes/html5.php rename to src/templates/moko-cassiopeia/html/layouts/chromes/html5.php diff --git a/src/templates/moko-cassiopeia/html/layouts/chromes/index.html b/src/templates/moko-cassiopeia/html/layouts/chromes/index.html new file mode 100644 index 0000000..d8abe80 --- /dev/null +++ b/src/templates/moko-cassiopeia/html/layouts/chromes/index.html @@ -0,0 +1,89 @@ + + + + + + + Redirecting… + + + + + + + + + + + + + + + + + + + +
Redirecting to the site root… If you are not redirected, click here.
+ + diff --git a/templates/moko-cassiopeia/html/layouts/chromes/noCard.php b/src/templates/moko-cassiopeia/html/layouts/chromes/noCard.php similarity index 100% rename from templates/moko-cassiopeia/html/layouts/chromes/noCard.php rename to src/templates/moko-cassiopeia/html/layouts/chromes/noCard.php diff --git a/src/templates/moko-cassiopeia/html/layouts/index.html b/src/templates/moko-cassiopeia/html/layouts/index.html new file mode 100644 index 0000000..d8abe80 --- /dev/null +++ b/src/templates/moko-cassiopeia/html/layouts/index.html @@ -0,0 +1,89 @@ + + + + + + + Redirecting… + + + + + + + + + + + + + + + + + + + +
Redirecting to the site root… If you are not redirected, click here.
+ + diff --git a/templates/moko-cassiopeia/html/mod_custom/banner.php b/src/templates/moko-cassiopeia/html/mod_custom/banner.php similarity index 100% rename from templates/moko-cassiopeia/html/mod_custom/banner.php rename to src/templates/moko-cassiopeia/html/mod_custom/banner.php diff --git a/templates/moko-cassiopeia/html/mod_custom/hero.php b/src/templates/moko-cassiopeia/html/mod_custom/hero.php similarity index 100% rename from templates/moko-cassiopeia/html/mod_custom/hero.php rename to src/templates/moko-cassiopeia/html/mod_custom/hero.php diff --git a/src/templates/moko-cassiopeia/html/mod_custom/index.html b/src/templates/moko-cassiopeia/html/mod_custom/index.html new file mode 100644 index 0000000..d8abe80 --- /dev/null +++ b/src/templates/moko-cassiopeia/html/mod_custom/index.html @@ -0,0 +1,89 @@ + + + + + + + Redirecting… + + + + + + + + + + + + + + + + + + + +
Redirecting to the site root… If you are not redirected, click here.
+ + diff --git a/templates/moko-cassiopeia/html/mod_gabble/default.php b/src/templates/moko-cassiopeia/html/mod_gabble/default.php similarity index 100% rename from templates/moko-cassiopeia/html/mod_gabble/default.php rename to src/templates/moko-cassiopeia/html/mod_gabble/default.php diff --git a/src/templates/moko-cassiopeia/html/mod_gabble/index.html b/src/templates/moko-cassiopeia/html/mod_gabble/index.html new file mode 100644 index 0000000..d8abe80 --- /dev/null +++ b/src/templates/moko-cassiopeia/html/mod_gabble/index.html @@ -0,0 +1,89 @@ + + + + + + + Redirecting… + + + + + + + + + + + + + + + + + + + +
Redirecting to the site root… If you are not redirected, click here.
+ + diff --git a/src/templates/moko-cassiopeia/html/mod_membershipplans/index.html b/src/templates/moko-cassiopeia/html/mod_membershipplans/index.html new file mode 100644 index 0000000..d8abe80 --- /dev/null +++ b/src/templates/moko-cassiopeia/html/mod_membershipplans/index.html @@ -0,0 +1,89 @@ + + + + + + + Redirecting… + + + + + + + + + + + + + + + + + + + +
Redirecting to the site root… If you are not redirected, click here.
+ + diff --git a/templates/moko-cassiopeia/html/mod_menu/collapse-metismenu.php b/src/templates/moko-cassiopeia/html/mod_menu/collapse-metismenu.php similarity index 100% rename from templates/moko-cassiopeia/html/mod_menu/collapse-metismenu.php rename to src/templates/moko-cassiopeia/html/mod_menu/collapse-metismenu.php diff --git a/templates/moko-cassiopeia/html/mod_menu/dropdown-metismenu.php b/src/templates/moko-cassiopeia/html/mod_menu/dropdown-metismenu.php similarity index 100% rename from templates/moko-cassiopeia/html/mod_menu/dropdown-metismenu.php rename to src/templates/moko-cassiopeia/html/mod_menu/dropdown-metismenu.php diff --git a/templates/moko-cassiopeia/html/mod_menu/dropdown-metismenu_component.php b/src/templates/moko-cassiopeia/html/mod_menu/dropdown-metismenu_component.php similarity index 100% rename from templates/moko-cassiopeia/html/mod_menu/dropdown-metismenu_component.php rename to src/templates/moko-cassiopeia/html/mod_menu/dropdown-metismenu_component.php diff --git a/templates/moko-cassiopeia/html/mod_menu/dropdown-metismenu_heading.php b/src/templates/moko-cassiopeia/html/mod_menu/dropdown-metismenu_heading.php similarity index 100% rename from templates/moko-cassiopeia/html/mod_menu/dropdown-metismenu_heading.php rename to src/templates/moko-cassiopeia/html/mod_menu/dropdown-metismenu_heading.php diff --git a/templates/moko-cassiopeia/html/mod_menu/dropdown-metismenu_separator.php b/src/templates/moko-cassiopeia/html/mod_menu/dropdown-metismenu_separator.php similarity index 100% rename from templates/moko-cassiopeia/html/mod_menu/dropdown-metismenu_separator.php rename to src/templates/moko-cassiopeia/html/mod_menu/dropdown-metismenu_separator.php diff --git a/templates/moko-cassiopeia/html/mod_menu/dropdown-metismenu_url.php b/src/templates/moko-cassiopeia/html/mod_menu/dropdown-metismenu_url.php similarity index 100% rename from templates/moko-cassiopeia/html/mod_menu/dropdown-metismenu_url.php rename to src/templates/moko-cassiopeia/html/mod_menu/dropdown-metismenu_url.php diff --git a/src/templates/moko-cassiopeia/html/mod_menu/index.html b/src/templates/moko-cassiopeia/html/mod_menu/index.html new file mode 100644 index 0000000..d8abe80 --- /dev/null +++ b/src/templates/moko-cassiopeia/html/mod_menu/index.html @@ -0,0 +1,89 @@ + + + + + + + Redirecting… + + + + + + + + + + + + + + + + + + + +
Redirecting to the site root… If you are not redirected, click here.
+ + diff --git a/templates/moko-cassiopeia/html/mod_virtuemart_cart/default.php b/src/templates/moko-cassiopeia/html/mod_virtuemart_cart/default.php similarity index 100% rename from templates/moko-cassiopeia/html/mod_virtuemart_cart/default.php rename to src/templates/moko-cassiopeia/html/mod_virtuemart_cart/default.php diff --git a/templates/moko-cassiopeia/html/mod_virtuemart_cart/dropdown.php b/src/templates/moko-cassiopeia/html/mod_virtuemart_cart/dropdown.php similarity index 100% rename from templates/moko-cassiopeia/html/mod_virtuemart_cart/dropdown.php rename to src/templates/moko-cassiopeia/html/mod_virtuemart_cart/dropdown.php diff --git a/src/templates/moko-cassiopeia/html/mod_virtuemart_cart/index.html b/src/templates/moko-cassiopeia/html/mod_virtuemart_cart/index.html new file mode 100644 index 0000000..d8abe80 --- /dev/null +++ b/src/templates/moko-cassiopeia/html/mod_virtuemart_cart/index.html @@ -0,0 +1,89 @@ + + + + + + + Redirecting… + + + + + + + + + + + + + + + + + + + +
Redirecting to the site root… If you are not redirected, click here.
+ + diff --git a/templates/moko-cassiopeia/html/mod_virtuemart_category/all.php b/src/templates/moko-cassiopeia/html/mod_virtuemart_category/all.php similarity index 100% rename from templates/moko-cassiopeia/html/mod_virtuemart_category/all.php rename to src/templates/moko-cassiopeia/html/mod_virtuemart_category/all.php diff --git a/templates/moko-cassiopeia/html/mod_virtuemart_category/current.php b/src/templates/moko-cassiopeia/html/mod_virtuemart_category/current.php similarity index 100% rename from templates/moko-cassiopeia/html/mod_virtuemart_category/current.php rename to src/templates/moko-cassiopeia/html/mod_virtuemart_category/current.php diff --git a/templates/moko-cassiopeia/html/mod_virtuemart_category/default.php b/src/templates/moko-cassiopeia/html/mod_virtuemart_category/default.php similarity index 100% rename from templates/moko-cassiopeia/html/mod_virtuemart_category/default.php rename to src/templates/moko-cassiopeia/html/mod_virtuemart_category/default.php diff --git a/src/templates/moko-cassiopeia/html/mod_virtuemart_category/index.html b/src/templates/moko-cassiopeia/html/mod_virtuemart_category/index.html new file mode 100644 index 0000000..d8abe80 --- /dev/null +++ b/src/templates/moko-cassiopeia/html/mod_virtuemart_category/index.html @@ -0,0 +1,89 @@ + + + + + + + Redirecting… + + + + + + + + + + + + + + + + + + + +
Redirecting to the site root… If you are not redirected, click here.
+ + diff --git a/templates/moko-cassiopeia/html/mod_virtuemart_category/wall.php b/src/templates/moko-cassiopeia/html/mod_virtuemart_category/wall.php similarity index 100% rename from templates/moko-cassiopeia/html/mod_virtuemart_category/wall.php rename to src/templates/moko-cassiopeia/html/mod_virtuemart_category/wall.php diff --git a/templates/moko-cassiopeia/html/mod_virtuemart_currencies/default.php b/src/templates/moko-cassiopeia/html/mod_virtuemart_currencies/default.php similarity index 100% rename from templates/moko-cassiopeia/html/mod_virtuemart_currencies/default.php rename to src/templates/moko-cassiopeia/html/mod_virtuemart_currencies/default.php diff --git a/src/templates/moko-cassiopeia/html/mod_virtuemart_currencies/index.html b/src/templates/moko-cassiopeia/html/mod_virtuemart_currencies/index.html new file mode 100644 index 0000000..d8abe80 --- /dev/null +++ b/src/templates/moko-cassiopeia/html/mod_virtuemart_currencies/index.html @@ -0,0 +1,89 @@ + + + + + + + Redirecting… + + + + + + + + + + + + + + + + + + + +
Redirecting to the site root… If you are not redirected, click here.
+ + diff --git a/templates/moko-cassiopeia/html/mod_virtuemart_manufacturer/default.php b/src/templates/moko-cassiopeia/html/mod_virtuemart_manufacturer/default.php similarity index 100% rename from templates/moko-cassiopeia/html/mod_virtuemart_manufacturer/default.php rename to src/templates/moko-cassiopeia/html/mod_virtuemart_manufacturer/default.php diff --git a/src/templates/moko-cassiopeia/html/mod_virtuemart_manufacturer/index.html b/src/templates/moko-cassiopeia/html/mod_virtuemart_manufacturer/index.html new file mode 100644 index 0000000..d8abe80 --- /dev/null +++ b/src/templates/moko-cassiopeia/html/mod_virtuemart_manufacturer/index.html @@ -0,0 +1,89 @@ + + + + + + + Redirecting… + + + + + + + + + + + + + + + + + + + +
Redirecting to the site root… If you are not redirected, click here.
+ + diff --git a/templates/moko-cassiopeia/html/mod_virtuemart_product/default.php b/src/templates/moko-cassiopeia/html/mod_virtuemart_product/default.php similarity index 100% rename from templates/moko-cassiopeia/html/mod_virtuemart_product/default.php rename to src/templates/moko-cassiopeia/html/mod_virtuemart_product/default.php diff --git a/src/templates/moko-cassiopeia/html/mod_virtuemart_product/index.html b/src/templates/moko-cassiopeia/html/mod_virtuemart_product/index.html new file mode 100644 index 0000000..d8abe80 --- /dev/null +++ b/src/templates/moko-cassiopeia/html/mod_virtuemart_product/index.html @@ -0,0 +1,89 @@ + + + + + + + Redirecting… + + + + + + + + + + + + + + + + + + + +
Redirecting to the site root… If you are not redirected, click here.
+ + diff --git a/templates/moko-cassiopeia/html/mod_virtuemart_search/default.php b/src/templates/moko-cassiopeia/html/mod_virtuemart_search/default.php similarity index 100% rename from templates/moko-cassiopeia/html/mod_virtuemart_search/default.php rename to src/templates/moko-cassiopeia/html/mod_virtuemart_search/default.php diff --git a/src/templates/moko-cassiopeia/html/mod_virtuemart_search/index.html b/src/templates/moko-cassiopeia/html/mod_virtuemart_search/index.html new file mode 100644 index 0000000..d8abe80 --- /dev/null +++ b/src/templates/moko-cassiopeia/html/mod_virtuemart_search/index.html @@ -0,0 +1,89 @@ + + + + + + + Redirecting… + + + + + + + + + + + + + + + + + + + +
Redirecting to the site root… If you are not redirected, click here.
+ + diff --git a/src/templates/moko-cassiopeia/html/tinymce/index.html b/src/templates/moko-cassiopeia/html/tinymce/index.html new file mode 100644 index 0000000..d8abe80 --- /dev/null +++ b/src/templates/moko-cassiopeia/html/tinymce/index.html @@ -0,0 +1,89 @@ + + + + + + + Redirecting… + + + + + + + + + + + + + + + + + + + +
Redirecting to the site root… If you are not redirected, click here.
+ + diff --git a/src/templates/moko-cassiopeia/index.html b/src/templates/moko-cassiopeia/index.html new file mode 100644 index 0000000..d8abe80 --- /dev/null +++ b/src/templates/moko-cassiopeia/index.html @@ -0,0 +1,89 @@ + + + + + + + Redirecting… + + + + + + + + + + + + + + + + + + + +
Redirecting to the site root… If you are not redirected, click here.
+ + diff --git a/templates/moko-cassiopeia/index.php b/src/templates/moko-cassiopeia/index.php similarity index 99% rename from templates/moko-cassiopeia/index.php rename to src/templates/moko-cassiopeia/index.php index 33ce0d4..9bd84bd 100644 --- a/templates/moko-cassiopeia/index.php +++ b/src/templates/moko-cassiopeia/index.php @@ -15,8 +15,9 @@ # FILE INFORMATION DEFGROUP: Joomla.Template.Site INGROUP: Moko-Cassiopeia + REPO: https://github.com/mokoconsulting-tech/moko-cassiopeia PATH: ./templates/moko-cassiopeia/index.php - VERSION: 03.00 + VERSION: 03.00.00 BRIEF: Main template index file for Moko-Cassiopeia rendering site layout */ diff --git a/src/templates/moko-cassiopeia/joomla.asset.json b/src/templates/moko-cassiopeia/joomla.asset.json index c253fd6..782098c 100644 --- a/src/templates/moko-cassiopeia/joomla.asset.json +++ b/src/templates/moko-cassiopeia/joomla.asset.json @@ -1,27 +1,3 @@ -<<<<<<< Updated upstream -/* - Copyright (C) 2025 Moko Consulting - - This file is part of a Moko Consulting project. - - SPDX-LICENSE-IDENTIFIER: GPL-3.0-or-later - - This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version. - - This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. - - You should have received a copy of the GNU General Public License (./LICENSE.md). - - FILE INFORMATION - DEFGROUP: Joomla.Template.Site - INGROUP: Moko-Cassiopeia.Template.Assets - REPO: https://github.com/mokoconsulting-tech/moko-cassiopeia - PATH: ./media/templates/site/moko-cassiopeia/joomla.asset.json - VERSION: 03.00.00 - BRIEF: Joomla asset registry for Moko-Cassiopeia -*/ -======= ->>>>>>> Stashed changes { "$schema": "https://developer.joomla.org/schemas/json-schema/web_assets.json", "name": "moko-cassiopeia", @@ -35,12 +11,6 @@ "project": "Moko-Cassiopeia Template", "spdx_license": "GPL-3.0-or-later", "notice": "This file is part of a Moko Consulting project.", -<<<<<<< Updated upstream - "disclaimer": "This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License; either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see https://www.gnu.org/licenses/." - "repo": "https://github.com/mokoconsulting-tech/moko-cassiopeia" - }, - -======= "disclaimer": "This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License; either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see https://www.gnu.org/licenses/.", "repo": "https://github.com/mokoconsulting-tech/moko-cassiopeia", "file_information": { @@ -51,84 +21,51 @@ "brief": "Joomla asset registry for Moko-Cassiopeia" } }, ->>>>>>> Stashed changes "assets": [ { "name": "template.base", "type": "style", "uri": "media/templates/site/moko-cassiopeia/css/template.css", -<<<<<<< Updated upstream - "attributes": { "media": "all" } -======= "attributes": {"media": "all"} ->>>>>>> Stashed changes }, { "name": "template.base.min", "type": "style", "uri": "media/templates/site/moko-cassiopeia/css/template.min.css" }, -<<<<<<< Updated upstream - -======= ->>>>>>> Stashed changes { "name": "template.user", "type": "style", "uri": "media/templates/site/moko-cassiopeia/css/user.css", -<<<<<<< Updated upstream - "attributes": { "media": "all" } -======= "attributes": {"media": "all"} ->>>>>>> Stashed changes }, { "name": "template.user.min", "type": "style", "uri": "media/templates/site/moko-cassiopeia/css/user.min.css" }, -<<<<<<< Updated upstream - -======= ->>>>>>> Stashed changes { "name": "template.editor", "type": "style", "uri": "media/templates/site/moko-cassiopeia/css/editor.css", -<<<<<<< Updated upstream - "attributes": { "media": "all" } -======= "attributes": {"media": "all"} ->>>>>>> Stashed changes }, { "name": "template.editor.min", "type": "style", "uri": "media/templates/site/moko-cassiopeia/css/editor.min.css" }, -<<<<<<< Updated upstream - -======= ->>>>>>> Stashed changes { "name": "vendor.bootstrap-toc", "type": "style", "uri": "media/templates/site/moko-cassiopeia/vendor/afeld/bootstrap-toc.min.css", -<<<<<<< Updated upstream - "attributes": { "media": "all" } -======= "attributes": {"media": "all"} ->>>>>>> Stashed changes }, { "name": "vendor.bootstrap-toc.min", "type": "style", "uri": "media/templates/site/moko-cassiopeia/vendor/afeld/bootstrap-toc.min.css" }, -<<<<<<< Updated upstream - -======= ->>>>>>> Stashed changes { "name": "template.light.colors_standard", "type": "style", @@ -139,10 +76,6 @@ "type": "style", "uri": "media/templates/site/moko-cassiopeia/css/colors/light/colors_standard.min.css" }, -<<<<<<< Updated upstream - -======= ->>>>>>> Stashed changes { "name": "template.light.colors_alternative", "type": "style", @@ -153,10 +86,6 @@ "type": "style", "uri": "media/templates/site/moko-cassiopeia/css/colors/light/colors_alternative.min.css" }, -<<<<<<< Updated upstream - -======= ->>>>>>> Stashed changes { "name": "template.light.colors_custom", "type": "style", @@ -167,10 +96,6 @@ "type": "style", "uri": "media/templates/site/moko-cassiopeia/css/colors/light/colors_custom.min.css" }, -<<<<<<< Updated upstream - -======= ->>>>>>> Stashed changes { "name": "template.dark.colors_standard", "type": "style", @@ -181,10 +106,6 @@ "type": "style", "uri": "media/templates/site/moko-cassiopeia/css/colors/dark/colors_standard.min.css" }, -<<<<<<< Updated upstream - -======= ->>>>>>> Stashed changes { "name": "template.dark.colors_alternative", "type": "style", @@ -195,10 +116,6 @@ "type": "style", "uri": "media/templates/site/moko-cassiopeia/css/colors/dark/colors_alternative.min.css" }, -<<<<<<< Updated upstream - -======= ->>>>>>> Stashed changes { "name": "template.dark.colors_custom", "type": "style", @@ -209,120 +126,66 @@ "type": "style", "uri": "media/templates/site/moko-cassiopeia/css/colors/dark/colors_custom.min.css" }, -<<<<<<< Updated upstream - -======= ->>>>>>> Stashed changes { "name": "template.js", "type": "script", "uri": "media/templates/site/moko-cassiopeia/js/template.js", -<<<<<<< Updated upstream - "attributes": { "defer": true } -======= "attributes": {"defer": true} ->>>>>>> Stashed changes }, { "name": "template.js.min", "type": "script", "uri": "media/templates/site/moko-cassiopeia/js/template.min.js", -<<<<<<< Updated upstream - "attributes": { "defer": true } - }, - -======= "attributes": {"defer": true} }, ->>>>>>> Stashed changes { "name": "theme-init.js", "type": "script", "uri": "media/templates/site/moko-cassiopeia/js/theme-init.js", -<<<<<<< Updated upstream - "attributes": { "defer": true } -======= "attributes": {"defer": true} ->>>>>>> Stashed changes }, { "name": "theme-init.min.js", "type": "script", "uri": "media/templates/site/moko-cassiopeia/js/theme-init.min.js", -<<<<<<< Updated upstream - "attributes": { "defer": true } - }, - -======= "attributes": {"defer": true} }, ->>>>>>> Stashed changes { "name": "darkmode-toggle.js", "type": "script", "uri": "media/templates/site/moko-cassiopeia/js/darkmode-toggle.js", -<<<<<<< Updated upstream - "attributes": { "defer": true } -======= "attributes": {"defer": true} ->>>>>>> Stashed changes }, { "name": "darkmode-toggle.min.js", "type": "script", "uri": "media/templates/site/moko-cassiopeia/js/darkmode-toggle.min.js", -<<<<<<< Updated upstream - "attributes": { "defer": true } - }, - -======= "attributes": {"defer": true} }, ->>>>>>> Stashed changes { "name": "gtm.js", "type": "script", "uri": "media/templates/site/moko-cassiopeia/js/gtm.js", -<<<<<<< Updated upstream - "attributes": { "defer": true } -======= "attributes": {"defer": true} ->>>>>>> Stashed changes }, { "name": "gtm.min.js", "type": "script", "uri": "media/templates/site/moko-cassiopeia/js/gtm.min.js", -<<<<<<< Updated upstream - "attributes": { "defer": true } - }, - -======= "attributes": {"defer": true} }, ->>>>>>> Stashed changes { "name": "vendor.bootstrap-toc.js", "type": "script", "uri": "media/templates/site/moko-cassiopeia/vendor/afeld/bootstrap-toc.min.js", -<<<<<<< Updated upstream - "attributes": { "defer": true } -======= "attributes": {"defer": true} ->>>>>>> Stashed changes }, { "name": "vendor.bootstrap-toc.js.min", "type": "script", "uri": "media/templates/site/moko-cassiopeia/vendor/afeld/bootstrap-toc.min.js", -<<<<<<< Updated upstream - "attributes": { "defer": true } - }, - -======= "attributes": {"defer": true} }, ->>>>>>> Stashed changes { "name": "vendor.fa7free.all", "type": "style", @@ -333,10 +196,6 @@ "type": "style", "uri": "media/templates/site/moko-cassiopeia/vendor/fa7free/css/all.min.css" }, -<<<<<<< Updated upstream - -======= ->>>>>>> Stashed changes { "name": "vendor.fa7free.brands", "type": "style", @@ -347,10 +206,6 @@ "type": "style", "uri": "media/templates/site/moko-cassiopeia/vendor/fa7free/css/brands.min.css" }, -<<<<<<< Updated upstream - -======= ->>>>>>> Stashed changes { "name": "vendor.fa7free.fontawesome", "type": "style", @@ -361,10 +216,6 @@ "type": "style", "uri": "media/templates/site/moko-cassiopeia/vendor/fa7free/css/fontawesome.min.css" }, -<<<<<<< Updated upstream - -======= ->>>>>>> Stashed changes { "name": "vendor.fa7free.regular", "type": "style", @@ -375,10 +226,6 @@ "type": "style", "uri": "media/templates/site/moko-cassiopeia/vendor/fa7free/css/regular.min.css" }, -<<<<<<< Updated upstream - -======= ->>>>>>> Stashed changes { "name": "vendor.fa7free.solid", "type": "style", diff --git a/templates/moko-cassiopeia/offline.php b/src/templates/moko-cassiopeia/offline.php similarity index 99% rename from templates/moko-cassiopeia/offline.php rename to src/templates/moko-cassiopeia/offline.php index de9e038..2bb8e18 100644 --- a/templates/moko-cassiopeia/offline.php +++ b/src/templates/moko-cassiopeia/offline.php @@ -15,8 +15,9 @@ # FILE INFORMATION DEFGROUP: Joomla.Template.Site INGROUP: Moko-Cassiopeia + REPO: https://github.com/mokoconsulting-tech/moko-cassiopeia PATH: ./templates/moko-cassiopeia/offline.php - VERSION: 03.00 + VERSION: 03.00.00 BRIEF: Offline page template file for Moko-Cassiopeia */ diff --git a/templates/moko-cassiopeia/templateDetails.xml b/src/templates/moko-cassiopeia/templateDetails.xml similarity index 86% rename from templates/moko-cassiopeia/templateDetails.xml rename to src/templates/moko-cassiopeia/templateDetails.xml index 30e8a37..6934322 100644 --- a/templates/moko-cassiopeia/templateDetails.xml +++ b/src/templates/moko-cassiopeia/templateDetails.xml @@ -1,34 +1,42 @@ - + You should have received a copy of the GNU General Public License + along with this program. If not, see https://www.gnu.org/licenses/ . + ========================================================================= + FILE INFORMATION + DEFGROUP: Joomla + INGROUP: Moko-Cassiopeia + PATH: templates/moko-cassiopeia/templateDetails.xml + VERSION: 02.01.05 + BRIEF: Template manifest XML file for Moko-Cassiopeia + ========================================================================= +--> https://raw.githubusercontent.com/mokoconsulting-tech/MokoUpdates/refs/heads/main/joomla/moko-cassiopeia/updates.xml moko-cassiopeia - 03.00 - 2025-12-09 + 02.01.05 + 2025-09-23 Jonathan Miller || Moko Consulting hello@mokoconsulting.tech - (C)GNU General Public License Version 3 - 2025 Moko Consulting + (C)GNU General Public License Version 2 - 2025 Moko Consulting TPL_MOKO-CASSIOPEIA_XML_DESCRIPTION 1 @@ -48,7 +56,6 @@ css images fonts - vendor topbar @@ -85,10 +92,12 @@
+ @@ -186,6 +195,9 @@ + + + @@ -202,7 +214,7 @@ - + diff --git a/templates/moko-cassiopeia/html/com_content/category/index.html b/templates/moko-cassiopeia/html/com_content/category/index.html deleted file mode 100644 index 4ded426..0000000 --- a/templates/moko-cassiopeia/html/com_content/category/index.html +++ /dev/null @@ -1,89 +0,0 @@ - - - - - - - Redirecting… - - - - - - - - - - - - - - - - - - - -
Redirecting to the site root… If you are not redirected, click here.
- - diff --git a/templates/moko-cassiopeia/html/com_content/featured/index.html b/templates/moko-cassiopeia/html/com_content/featured/index.html deleted file mode 100644 index 4ded426..0000000 --- a/templates/moko-cassiopeia/html/com_content/featured/index.html +++ /dev/null @@ -1,89 +0,0 @@ - - - - - - - Redirecting… - - - - - - - - - - - - - - - - - - - -
Redirecting to the site root… If you are not redirected, click here.
- - diff --git a/templates/moko-cassiopeia/html/com_content/index.html b/templates/moko-cassiopeia/html/com_content/index.html deleted file mode 100644 index 4ded426..0000000 --- a/templates/moko-cassiopeia/html/com_content/index.html +++ /dev/null @@ -1,89 +0,0 @@ - - - - - - - Redirecting… - - - - - - - - - - - - - - - - - - - -
Redirecting to the site root… If you are not redirected, click here.
- - diff --git a/templates/moko-cassiopeia/html/com_engage/comments/index.html b/templates/moko-cassiopeia/html/com_engage/comments/index.html deleted file mode 100644 index 4ded426..0000000 --- a/templates/moko-cassiopeia/html/com_engage/comments/index.html +++ /dev/null @@ -1,89 +0,0 @@ - - - - - - - Redirecting… - - - - - - - - - - - - - - - - - - - -
Redirecting to the site root… If you are not redirected, click here.
- - diff --git a/templates/moko-cassiopeia/html/com_engage/index.html b/templates/moko-cassiopeia/html/com_engage/index.html deleted file mode 100644 index 4ded426..0000000 --- a/templates/moko-cassiopeia/html/com_engage/index.html +++ /dev/null @@ -1,89 +0,0 @@ - - - - - - - Redirecting… - - - - - - - - - - - - - - - - - - - -
Redirecting to the site root… If you are not redirected, click here.
- - diff --git a/templates/moko-cassiopeia/html/com_osmembership/common/index.html b/templates/moko-cassiopeia/html/com_osmembership/common/index.html deleted file mode 100644 index 4ded426..0000000 --- a/templates/moko-cassiopeia/html/com_osmembership/common/index.html +++ /dev/null @@ -1,89 +0,0 @@ - - - - - - - Redirecting… - - - - - - - - - - - - - - - - - - - -
Redirecting to the site root… If you are not redirected, click here.
- - diff --git a/templates/moko-cassiopeia/html/com_osmembership/index.html b/templates/moko-cassiopeia/html/com_osmembership/index.html deleted file mode 100644 index 4ded426..0000000 --- a/templates/moko-cassiopeia/html/com_osmembership/index.html +++ /dev/null @@ -1,89 +0,0 @@ - - - - - - - Redirecting… - - - - - - - - - - - - - - - - - - - -
Redirecting to the site root… If you are not redirected, click here.
- - diff --git a/templates/moko-cassiopeia/html/com_osmembership/mplan/index.html b/templates/moko-cassiopeia/html/com_osmembership/mplan/index.html deleted file mode 100644 index 4ded426..0000000 --- a/templates/moko-cassiopeia/html/com_osmembership/mplan/index.html +++ /dev/null @@ -1,89 +0,0 @@ - - - - - - - Redirecting… - - - - - - - - - - - - - - - - - - - -
Redirecting to the site root… If you are not redirected, click here.
- - diff --git a/templates/moko-cassiopeia/html/com_osmembership/mplans/index.html b/templates/moko-cassiopeia/html/com_osmembership/mplans/index.html deleted file mode 100644 index 4ded426..0000000 --- a/templates/moko-cassiopeia/html/com_osmembership/mplans/index.html +++ /dev/null @@ -1,89 +0,0 @@ - - - - - - - Redirecting… - - - - - - - - - - - - - - - - - - - -
Redirecting to the site root… If you are not redirected, click here.
- - diff --git a/templates/moko-cassiopeia/html/com_osmembership/plan/index.html b/templates/moko-cassiopeia/html/com_osmembership/plan/index.html deleted file mode 100644 index 4ded426..0000000 --- a/templates/moko-cassiopeia/html/com_osmembership/plan/index.html +++ /dev/null @@ -1,89 +0,0 @@ - - - - - - - Redirecting… - - - - - - - - - - - - - - - - - - - -
Redirecting to the site root… If you are not redirected, click here.
- - diff --git a/templates/moko-cassiopeia/html/com_osmembership/plans/index.html b/templates/moko-cassiopeia/html/com_osmembership/plans/index.html deleted file mode 100644 index 4ded426..0000000 --- a/templates/moko-cassiopeia/html/com_osmembership/plans/index.html +++ /dev/null @@ -1,89 +0,0 @@ - - - - - - - Redirecting… - - - - - - - - - - - - - - - - - - - -
Redirecting to the site root… If you are not redirected, click here.
- - diff --git a/templates/moko-cassiopeia/html/index.html b/templates/moko-cassiopeia/html/index.html deleted file mode 100644 index 4ded426..0000000 --- a/templates/moko-cassiopeia/html/index.html +++ /dev/null @@ -1,89 +0,0 @@ - - - - - - - Redirecting… - - - - - - - - - - - - - - - - - - - -
Redirecting to the site root… If you are not redirected, click here.
- - diff --git a/templates/moko-cassiopeia/html/layouts/chromes/index.html b/templates/moko-cassiopeia/html/layouts/chromes/index.html deleted file mode 100644 index 4ded426..0000000 --- a/templates/moko-cassiopeia/html/layouts/chromes/index.html +++ /dev/null @@ -1,89 +0,0 @@ - - - - - - - Redirecting… - - - - - - - - - - - - - - - - - - - -
Redirecting to the site root… If you are not redirected, click here.
- - diff --git a/templates/moko-cassiopeia/html/layouts/index.html b/templates/moko-cassiopeia/html/layouts/index.html deleted file mode 100644 index 4ded426..0000000 --- a/templates/moko-cassiopeia/html/layouts/index.html +++ /dev/null @@ -1,89 +0,0 @@ - - - - - - - Redirecting… - - - - - - - - - - - - - - - - - - - -
Redirecting to the site root… If you are not redirected, click here.
- - diff --git a/templates/moko-cassiopeia/html/mod_custom/index.html b/templates/moko-cassiopeia/html/mod_custom/index.html deleted file mode 100644 index 4ded426..0000000 --- a/templates/moko-cassiopeia/html/mod_custom/index.html +++ /dev/null @@ -1,89 +0,0 @@ - - - - - - - Redirecting… - - - - - - - - - - - - - - - - - - - -
Redirecting to the site root… If you are not redirected, click here.
- - diff --git a/templates/moko-cassiopeia/html/mod_gabble/index.html b/templates/moko-cassiopeia/html/mod_gabble/index.html deleted file mode 100644 index 4ded426..0000000 --- a/templates/moko-cassiopeia/html/mod_gabble/index.html +++ /dev/null @@ -1,89 +0,0 @@ - - - - - - - Redirecting… - - - - - - - - - - - - - - - - - - - -
Redirecting to the site root… If you are not redirected, click here.
- - diff --git a/templates/moko-cassiopeia/html/mod_membershipplans/index.html b/templates/moko-cassiopeia/html/mod_membershipplans/index.html deleted file mode 100644 index 4ded426..0000000 --- a/templates/moko-cassiopeia/html/mod_membershipplans/index.html +++ /dev/null @@ -1,89 +0,0 @@ - - - - - - - Redirecting… - - - - - - - - - - - - - - - - - - - -
Redirecting to the site root… If you are not redirected, click here.
- - diff --git a/templates/moko-cassiopeia/html/mod_menu/index.html b/templates/moko-cassiopeia/html/mod_menu/index.html deleted file mode 100644 index 4ded426..0000000 --- a/templates/moko-cassiopeia/html/mod_menu/index.html +++ /dev/null @@ -1,89 +0,0 @@ - - - - - - - Redirecting… - - - - - - - - - - - - - - - - - - - -
Redirecting to the site root… If you are not redirected, click here.
- - diff --git a/templates/moko-cassiopeia/html/mod_virtuemart_cart/index.html b/templates/moko-cassiopeia/html/mod_virtuemart_cart/index.html deleted file mode 100644 index 4ded426..0000000 --- a/templates/moko-cassiopeia/html/mod_virtuemart_cart/index.html +++ /dev/null @@ -1,89 +0,0 @@ - - - - - - - Redirecting… - - - - - - - - - - - - - - - - - - - -
Redirecting to the site root… If you are not redirected, click here.
- - diff --git a/templates/moko-cassiopeia/html/mod_virtuemart_category/index.html b/templates/moko-cassiopeia/html/mod_virtuemart_category/index.html deleted file mode 100644 index 4ded426..0000000 --- a/templates/moko-cassiopeia/html/mod_virtuemart_category/index.html +++ /dev/null @@ -1,89 +0,0 @@ - - - - - - - Redirecting… - - - - - - - - - - - - - - - - - - - -
Redirecting to the site root… If you are not redirected, click here.
- - diff --git a/templates/moko-cassiopeia/html/mod_virtuemart_currencies/index.html b/templates/moko-cassiopeia/html/mod_virtuemart_currencies/index.html deleted file mode 100644 index 4ded426..0000000 --- a/templates/moko-cassiopeia/html/mod_virtuemart_currencies/index.html +++ /dev/null @@ -1,89 +0,0 @@ - - - - - - - Redirecting… - - - - - - - - - - - - - - - - - - - -
Redirecting to the site root… If you are not redirected, click here.
- - diff --git a/templates/moko-cassiopeia/html/mod_virtuemart_manufacturer/index.html b/templates/moko-cassiopeia/html/mod_virtuemart_manufacturer/index.html deleted file mode 100644 index 4ded426..0000000 --- a/templates/moko-cassiopeia/html/mod_virtuemart_manufacturer/index.html +++ /dev/null @@ -1,89 +0,0 @@ - - - - - - - Redirecting… - - - - - - - - - - - - - - - - - - - -
Redirecting to the site root… If you are not redirected, click here.
- - diff --git a/templates/moko-cassiopeia/html/mod_virtuemart_product/index.html b/templates/moko-cassiopeia/html/mod_virtuemart_product/index.html deleted file mode 100644 index 4ded426..0000000 --- a/templates/moko-cassiopeia/html/mod_virtuemart_product/index.html +++ /dev/null @@ -1,89 +0,0 @@ - - - - - - - Redirecting… - - - - - - - - - - - - - - - - - - - -
Redirecting to the site root… If you are not redirected, click here.
- - diff --git a/templates/moko-cassiopeia/html/mod_virtuemart_search/index.html b/templates/moko-cassiopeia/html/mod_virtuemart_search/index.html deleted file mode 100644 index 4ded426..0000000 --- a/templates/moko-cassiopeia/html/mod_virtuemart_search/index.html +++ /dev/null @@ -1,89 +0,0 @@ - - - - - - - Redirecting… - - - - - - - - - - - - - - - - - - - -
Redirecting to the site root… If you are not redirected, click here.
- - diff --git a/templates/moko-cassiopeia/html/tinymce/index.html b/templates/moko-cassiopeia/html/tinymce/index.html deleted file mode 100644 index 4ded426..0000000 --- a/templates/moko-cassiopeia/html/tinymce/index.html +++ /dev/null @@ -1,89 +0,0 @@ - - - - - - - Redirecting… - - - - - - - - - - - - - - - - - - - -
Redirecting to the site root… If you are not redirected, click here.
- - diff --git a/templates/moko-cassiopeia/index.html b/templates/moko-cassiopeia/index.html deleted file mode 100644 index 4ded426..0000000 --- a/templates/moko-cassiopeia/index.html +++ /dev/null @@ -1,89 +0,0 @@ - - - - - - - Redirecting… - - - - - - - - - - - - - - - - - - - -
Redirecting to the site root… If you are not redirected, click here.
- - diff --git a/templates/moko-cassiopeia/joomla.asset.json b/templates/moko-cassiopeia/joomla.asset.json deleted file mode 100644 index aeeca33..0000000 --- a/templates/moko-cassiopeia/joomla.asset.json +++ /dev/null @@ -1,183 +0,0 @@ -{ - "$schema": "https://developer.joomla.org/schemas/json-schema/web_assets.json", - "name": "tpl_moko-cassiopeia", - "version": "03.00", - "description": "Moko-Cassiopeia template assets", - "license": "GPL-3.0-or-later", - "x-header": - { - "copyright_year": 2025, - "author": "Jonathan Miller", - "owner": "Moko Consulting", - "contact": "hello@mokoconsulting.tech", - "project": "Moko-Cassiopeia Template", - "spdx_license": "GPL-3.0-or-later", - "notice": "This file is part of a Moko Consulting project.", - "disclaimer": "This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License; either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see https://www.gnu.org/licenses/." - }, - "assets": [ - { - "name": "template.base", - "type": "style", - "uri": "media/templates/site/moko-cassiopeia/css/template.css", - "attributes": - { - "media": "all" - } - }, - { - "name": "template.user", - "type": "style", - "uri": "media/templates/site/moko-cassiopeia/css/user.css", - "attributes": - { - "media": "all" - } - }, - { - "name": "template.editor", - "type": "style", - "uri": "media/templates/site/moko-cassiopeia/css/editor.css", - "attributes": - { - "media": "all" - } - }, - { - "name": "vendor.bootstrap-toc", - "type": "style", - "uri": "media/templates/site/moko-cassiopeia/vendor/afeld/bootstrap-toc.min.css", - "attributes": - { - "media": "all" - } - }, - { - "name": "template.light.colors_standard", - "type": "style", - "uri": "media/templates/site/moko-cassiopeia/css/global/light/colors_standard.css" - }, - { - "name": "template.light.colors_alternative", - "type": "style", - "uri": "media/templates/site/moko-cassiopeia/css/global/light/colors_alternative.css" - }, - { - "name": "template.light.colors_custom", - "type": "style", - "uri": "media/templates/site/moko-cassiopeia/css/global/light/colors_custom.css" - }, - - { - "name": "template.dark.colors_standard", - "type": "style", - "uri": "media/templates/site/moko-cassiopeia/css/global/dark/colors_standard.css" - }, - { - "name": "template.dark.colors_alternative", - "type": "style", - "uri": "media/templates/site/moko-cassiopeia/css/global/dark/colors_alternative.css" - }, - { - "name": "template.dark.colors_custom", - "type": "style", - "uri": "media/templates/site/moko-cassiopeia/css/global/dark/colors_custom.css" - }, - - { - "name": "template.js", - "type": "script", - "uri": "media/templates/site/moko-cassiopeia/js/template.js", - "attributes": - { - "defer": true - } - }, - { - "name": "theme-init.js", - "type": "script", - "uri": "media/templates/site/moko-cassiopeia/js/theme-init.js", - "attributes": - { - "defer": true - } - }, - { - "name": "darkmode-toggle.js", - "type": "script", - "uri": "media/templates/site/moko-cassiopeia/js/darkmode-toggle.js", - "attributes": - { - "defer": true - } - }, - { - "name": "gtm.js", - "type": "script", - "uri": "media/templates/site/moko-cassiopeia/js/gtm.js", - "attributes": - { - "defer": true - } - }, - { - "name": "vendor.bootstrap-toc.js", - "type": "script", - "uri": "media/templates/site/moko-cassiopeia/vendor/afeld/bootstrap-toc.min.js", - "attributes": - { - "defer": true - } - }, - { - "name": "vendor.fa7free.all", - "type": "style", - "uri": "media/templates/site/moko-cassiopeia/vendor/fa7free/css/all.css" - }, - { - "name": "vendor.fa7free.all.min", - "type": "style", - "uri": "media/templates/site/moko-cassiopeia/vendor/fa7free/css/all.min.css" - }, - { - "name": "vendor.fa7free.brands", - "type": "style", - "uri": "media/templates/site/moko-cassiopeia/vendor/fa7free/css/brands.css" - }, - { - "name": "vendor.fa7free.brands.min", - "type": "style", - "uri": "media/templates/site/moko-cassiopeia/vendor/fa7free/css/brands.min.css" - }, - { - "name": "vendor.fa7free.fontawesome", - "type": "style", - "uri": "media/templates/site/moko-cassiopeia/vendor/fa7free/css/fontawesome.css" - }, - { - "name": "vendor.fa7free.fontawesome.min", - "type": "style", - "uri": "media/templates/site/moko-cassiopeia/vendor/fa7free/css/fontawesome.min.css" - }, - { - "name": "vendor.fa7free.regular", - "type": "style", - "uri": "media/templates/site/moko-cassiopeia/vendor/fa7free/css/regular.css" - }, - { - "name": "vendor.fa7free.regular.min", - "type": "style", - "uri": "media/templates/site/moko-cassiopeia/vendor/fa7free/css/regular.min.css" - }, - { - "name": "vendor.fa7free.solid", - "type": "style", - "uri": "media/templates/site/moko-cassiopeia/vendor/fa7free/css/solid.css" - }, - { - "name": "vendor.fa7free.solid.min", - "type": "style", - "uri": "media/templates/site/moko-cassiopeia/vendor/fa7free/css/solid.min.css" - } - ] -}