All Projects → joomla-extensions → Weblinks

joomla-extensions / Weblinks

Licence: gpl-2.0
This repo is meant to hold the decoupled com_weblinks component and related code.

Labels

Projects that are alternatives of or similar to Weblinks

lightning
Joomla 4 template using HiQ CSS
Stars: ✭ 36 (+9.09%)
Mutual labels:  joomla
Joomla Cms
Home of the Joomla! Content Management System
Stars: ✭ 3,995 (+12006.06%)
Mutual labels:  joomla
Joomla External Login
The External Login project allows Joomla! to manage external Authentication Servers
Stars: ✭ 24 (-27.27%)
Mutual labels:  joomla
UltimateCMSWordlists
📚 An ultimate collection wordlists of the best-known CMS
Stars: ✭ 54 (+63.64%)
Mutual labels:  joomla
Xbruteforcer
X Brute Forcer Tool 🔓 WordPress , Joomla , DruPal , OpenCart , Magento
Stars: ✭ 261 (+690.91%)
Mutual labels:  joomla
Joomscan
OWASP Joomla Vulnerability Scanner Project
Stars: ✭ 640 (+1839.39%)
Mutual labels:  joomla
form
[DEPRECATED] Joomla Framework Form Package
Stars: ✭ 12 (-63.64%)
Mutual labels:  joomla
Jscssmanipulate
Плагин Joomla для манипуляции с Javascript и Stylesheet
Stars: ✭ 14 (-57.58%)
Mutual labels:  joomla
Joomla Component Builder
Builds Complex Joomla! Components
Stars: ✭ 317 (+860.61%)
Mutual labels:  joomla
Xattacker
X Attacker Tool ☣ Website Vulnerability Scanner & Auto Exploiter
Stars: ✭ 897 (+2618.18%)
Mutual labels:  joomla
jlsitemap
JL Sitemap - Component sitemap for Joomla
Stars: ✭ 20 (-39.39%)
Mutual labels:  joomla
slogin
Social Login for Joomla
Stars: ✭ 24 (-27.27%)
Mutual labels:  joomla
Cmsscan
CMS Scanner: Scan Wordpress, Drupal, Joomla, vBulletin websites for Security issues
Stars: ✭ 775 (+2248.48%)
Mutual labels:  joomla
JlContentFieldsFilter
Модуль фильтрации материалов Joomla по дополнительным полям
Stars: ✭ 20 (-39.39%)
Mutual labels:  joomla
Joomla Entity
Semantical API for Joomla!
Stars: ✭ 25 (-24.24%)
Mutual labels:  joomla
joomla4-backend-template
A dark themed backend template for Joomla 4.x
Stars: ✭ 26 (-21.21%)
Mutual labels:  joomla
Hookphp
HookPHP基于C扩展搭建内置AI编程的架构系统-支持微服务部署|热插拔业务组件-集成业务模型|权限模型|UI组件库|多模板|多平台|多域名|多终端|多语言-含常驻内存|前后分离|API平台|LUA QQ群:679116380
Stars: ✭ 575 (+1642.42%)
Mutual labels:  joomla
Kickgdpr
Joomla Sytem Plugin for GDPR Google Analytics and Cookie
Stars: ✭ 15 (-54.55%)
Mutual labels:  joomla
Image
Joomla Framework Image Package
Stars: ✭ 9 (-72.73%)
Mutual labels:  joomla
Gantry5
🚀 Next Generation Template / Theme Framework
Stars: ✭ 895 (+2612.12%)
Mutual labels:  joomla

Weblinks for Joomla! Travis:

Travis: Travis Build Status

Drone: Drone Build Status

This repo is meant to hold the decoupled com_weblinks component and related code.

How to test a PR

With the Patch Tester Component

Easily apply changes from a pull requests against this repo: Install the last release of com_weblinks into your Joomla. Install the last release of com_patchtester into your Joomla (weblinks is supported since Version 3.0.0 Alpha 2). Log into your site's administrator section, go to the Patch Tester Component Options (Components -> Patch Tester -> Options) Switch the GitHub Repository to Joomla Weblinks Package. For this you have to fill the field GitHub Project Owner with joomla-extensions and the field GitHub Project Repository with weblinks. Click Save & Close and hit the Fetch Data Button to the the lastest pull requests Click Apply Patch to apply the proposed changes from the pull request. Click Revert Patch to revert an applied patch.

You can read more about the Patch Tester extension on the Joomla! Documentation Wiki.

With Github

If you want to test a patch you can apply the patch via git.

If you cloned this repo under the name upstream - your remote is upstream – you can user the command

git fetch upstream pull/PR_NUMBER/head:BRANCHNUMER

for fetching the branch of the PR https://github.com/joomla-extensions/weblinks/pull/290 this would be

git fetch upstream pull/290/head:move-lang-files

After that you can checkout the branch and start testing.

git checkout move-lang-files

For Linux

Install

1. Open a session and change to the document root of your local webserver.

$ cd /var/www/html/
/var/www/html$

2. Clone the current repository into your webserver root folder

/var/www/html$ git clone [email protected]:joomla-extensions/weblinks.git
Clone nach 'weblinks' ...
remote: Counting objects: 2446, done.
remote: Compressing objects: 100% (75/75), done.
remote: Total 2446 (delta 10), reused 0 (delta 0), pack-reused 2361
Empfange Objekte: 100% (2446/2446), 615.02 KiB | 375.00 KiB/s, Fertig.
Löse Unterschiede auf: 100% (1232/1232), Fertig.
Prüfe Konnektivität ... Fertig.

Are you new with github? Here you can find informations about setting it up: https://help.github.com/articles/set-up-git/ If you get an error you can try git clone https://github.com:joomla-extensions/weblinks.git instead of git clone [email protected]:joomla-extensions/weblinks.git

3. Change to the directory weblinks

/var/www/html$ cd weblinks
/var/www/html/weblinks$

4. This files should be in your weblinks folder.

/var/www/html/weblinks$ ls
codeception.yml  docs		  LICENSE	RoboFile.dist.ini  tests
composer.json	 jed_update.xml   manifest.xml	RoboFile.php
composer.lock	 jorobo.dist.ini  README.md	src

5. Optional: Have a look into composer.json for information what software you will install via composer.

/var/www/html/weblinks$ cat composer.json

or https://github.com/joomla-extensions/weblinks/blob/master/composer.json

Read more about how to install composer here.

6. Optional: If you have problems using composer set a timeout.

/var/www/html/weblinks$export COMPOSER_PROCESS_TIMEOUT=1500;

7. Install via composer

/var/www/html/weblinks$ composer install
Loading composer repositories with package information
Installing dependencies (including require-dev) from lock file
  - Installing symfony/yaml (v3.1.3)
    Downloading: 100%
...
...
Generating autoload files

8. After that you have to build robo

/var/www/html/weblinks$ vendor/bin/robo build

9. Optional: Prepare the database

If you use MySQL or PostgreSQL as database and your user has create database privileges the Database is automatically created by the Joomla installer. But the safest way is to create the database before running Joomla's web installer.

/var/www/html/weblinks$ mysql -u root -p

mysql> create database weblinks;
Query OK, 1 row affected (0,00 sec)

mysql> quit;
Bye

10. Copy the file acceptance.suite.dist.yml into acceptance.suite.dist.yml

/var/www/html/weblinks$ cd tests
/var/www/html/weblinks/tests$ cp acceptance.suite.dist.yml acceptance.suite.yml

11. Update the file acceptance.suite.yml to your needs. At least you have to update the options url, database name and counter_test_url.

/var/www/html/weblinks/tests$ cat acceptance.suite.yml

class_name: AcceptanceTester
modules:
    enabled:
        - JoomlaBrowser
        - AcceptanceHelper
    config:
        JoomlaBrowser:
            url: 'http://localhost/weblinks/tests/joomla-cms3'     # the url that points to the joomla installation at /tests/system/joomla-cms
            browser: 'firefox'
            window_size: 1024x768
            capabilities:
            unexpectedAlertBehaviour: 'accept'
            username: 'admin'                      # UserName for the Administrator
            password: 'admin'                      # Password for the Administrator
            database host: 'localhost'             # place where the Application is Hosted #server Address
            database user: 'root'                  # MySQL Server user ID, usually root
            database password: 'yourPassword'                  # MySQL Server password, usually empty or root
            database name: 'weblinks'         # DB Name, at the Server
            database type: 'mysqli'                # type in lowercase one of the options: MySQL\MySQLi\PDO
            database prefix: 'jos_'                # DB Prefix for tables
            install sample data: 'no'              # Do you want to Download the Sample Data Along with Joomla Installation, then keep it Yes
            sample data: 'Default English (GB) Sample Data'    # Default Sample Data
            admin email: '[email protected]'      # email Id of the Admin
            language: 'English (United Kingdom)'   # Language in which you want the Application to be Installed
        AcceptanceHelper:
            repo_folder: '/home/travis/build/joomla-extensions/weblinks/' # Path to the Extension repository. To be used by tests to install via Install from folder
            counter_test_url: 'http://localhost/weblinks/tests/joomla-cms3' # the url for the weblink item used to test hits counter
            url: 'http://localhost/weblinks/tests/joomla-cms3' # the url that points to the joomla installation at /tests/system/joomla-cms - we need it twice here
error_level: "E_ALL & ~E_STRICT & ~E_DEPRECATED"
env:
    desktop: ~
    tablet:
        modules:
            config:
                JoomlaBrowser:
                    window_size: 768x1024
    phone:
        modules:
            config:
                JoomlaBrowser:
                    window_size: 480x640

12. Optional: Go back to weblinks directory and create and edit the file RoboFile.ini. Delete the local user www-data.

/var/www/html/weblinks$ cp RoboFile.dist.ini RoboFile.ini
/var/www/html/weblinks$ cat RoboFile.ini
; If set to true, the repo will not be cloned from GitHub and the local copy will be reused.
; This setting will be obsolete once we have local Git cache enabled
skipClone = false

; If you want to setup your test website in a different folder, you can do that here.
; You can also set an absolute path, i.e. /path/to/my/cms/folder
cmsPath = tests/joomla-cms3

; If you want to clone a different branch, you can set it here
branch = staging

; (Linux / Mac only) If you want to set a different owner for the CMS root folder, you can set it here.
localUser =

; Set this to true, if your curl binaries are not able to create an https connection
insecure = false

13. Optional: Set use owner of the project to your user.

/var/www/html/weblinks$sudo chown -R username:usergroup /var/www

14. Ready! Run the first tests:

/var/www/html/weblinks$ vendor/bin/robo run:tests
Clone nach 'tests/cache' ...
 [Exec] Done in 13.18s
 [FileSystem\CopyDir] Copied from tests/cache to tests/joomla-cms3
...

Tests

The tests in Weblinks Extension use Codeception Testing Framework, if you want to know more about the technology used for testing please check: Testing Joomla Extensions with Codeception.

Optional: extra configuration for RoboFile

This is not required, and if in doubt you can just skip this section, but there may be some specific use cases when you need (or want) to override the default behaviour of RoboFile.php. To do this, copy RoboFile.dist.ini to RoboFile.ini and add options in INI format, one per line, e.g.

skipClone = true
cmsPath = tests/joomla-cms3

The currently available options are as follows:

  • skipClone: set to true to avoid the cms repo being deleted and re-cloned at each test execution. Useful to save time and bandwidth while you're debugging your test environment. But please be aware that if you don't refresh the repo you'll have to manually check the installation folder is present and the configuration.php is not.
  • cmsPath: set to the local path (absolute or relative) where you'd like the test website to be installed. Default is tests/joomla-cms3.
  • branch: set to whatever existing branch from the joomla-cms project if you want to clone that specific branch. Default is staging.

Additional options

You can run the tests against different resolutions. The default acceptance YAML configuration file provides three options:

  • "desktop": default, 1024x768px
  • "tablet": tablet in portrait mode, 768x1024px
  • "phone": phone in portrait mode, 480x640px

To set a specific resolution, set is as an option of the command:

$ vendor/bin/robo run:tests --env=tablet

Note: the first parameter is used by Travis and you should always set it to "0" when you run your tests locally.

Video

Here you can finde a video that shows the installation of com_weblinks for testing.

For Windows:

You need to install:

Note: For commands line is better if you use the 'Git shell' program.

First you should create a fork of the official repository and clone the fork into your web server folder.

To prepare the system tests (Selenium) to be run in your local machine you are asked to rename the file tests/acceptance.suite.dist.yml to tests/acceptance.suite.yml. Afterwards, please edit the file according to your system needs.

The next step is only required if you don't place the weblinks folder into your web server folder. Create a symbolic link from your tests\joomla-cms3 to a subfolder of your web server. For example:

mklink /J C:\wamp\www\tests\joomla-cms3 C:\Users\Name\Documents\GitHub\weblinks\tests\joomla-cms3

Open the console and go in the folder of weblinks, for example:

cd C:\wamp\www\weblinks

Then run the command:

$ composer install

You can then run the following command to start the tests:

$ vendor/bin/robo run:tests

Once all tests were executed, you may also run a specific test:

$ vendor/bin/robo run:test // Then select the test you want to run!
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].