Skip to content

Commit 27afeca

Browse files
authored
Merge pull request #9 from leonhelmus/phpstorm/feature/liveTemplates
Added live template files/ template files
2 parents 6426b78 + 94704a1 commit 27afeca

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

59 files changed

+979
-154
lines changed

Diff for: COMMANDS.md

+121
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,121 @@
1+
# coding-standard-phpstorm
2+
3+
These commando's can be used in xml, php and phtml files.
4+
5+
## M2 XML
6+
All xml templates make use of the includes "M2 XML File Header.xml".
7+
All xml files also have appropriated xsd paths.
8+
9+
Available templates:
10+
* M2 db schema xml:
11+
* M2 di xml:
12+
* M2 extension attributes xml:
13+
* M2 layout xml:
14+
* M2 module xml:
15+
16+
## M2 PHP Classes
17+
All php files are PHP 7.1 or higher. These files have strict_types=1 on top of the templates and
18+
make use of includes "M2 PHP File Header.php".
19+
20+
Make use of `new > file > PHP Class` and select a different template all PHP templates start with M2.
21+
If the one mentioned below is not present go to `file > settings > Editor -> File and Code Templates` and enable the template you're searching for.
22+
This way Namespaces and vendor will be automatically filled in.
23+
24+
Available templates:
25+
* **M2 class**: Default M2 php class.
26+
* **M2 class - Block**: PHP class that extends Template class.
27+
* **M2 class - Helper**: PHP class that extends AbstractHelper
28+
* **M2 class - Observer**: PHP class that implements ObserverInterface
29+
* **M2 class - ViewModel**: PHP class that implements ArgumentInterface
30+
31+
## M2 ACL
32+
Available templates:
33+
* **M2 Acl XML**: Create an acl template that already has path to backend menu and backend config (system.xml)
34+
35+
Available commands:
36+
* **m2aclresource** -> Create a resource tag, available params
37+
* Vendor: vendor name
38+
* namespace: name of module
39+
* resourceId: acl id
40+
* title: acl title
41+
* order: sort order
42+
43+
## M2 Config
44+
Available templates:
45+
* **M2 Config XML**: Create an config with default structure.
46+
47+
Available commands:
48+
* None
49+
50+
## M2 DB Schema
51+
Available templates:
52+
* **M2 Db schema XML**: Create an db schema with default structure.
53+
54+
Available commands:
55+
* **m2dbtable**: Create an table.
56+
* **m2dbcolumnvarchar**: Create an column as a varchar.
57+
* **m2dbcolumnint**: Create an column as a int.
58+
* **m2dbcolumndecimal**: Create an column decimal.
59+
* **m2dbforeign**: Create an foreign key index.
60+
* **m2dbcolumncreate**: Create an create created_at column.
61+
* **m2dbindex**: Create an index.
62+
* **m2dbcolumnupdate**: Create an updated_at column.
63+
64+
## M2 DI
65+
Available templates:
66+
* **M2 DI**: Create an DI file.
67+
68+
Available commands:
69+
* **m2diplugin**: Create an plugin tyoe.
70+
* **m2divirtual**: Create an virtual type
71+
* **m2dipreference**: Create an preference(rewrite)
72+
73+
## M2 Extension Attribute
74+
Available templates:
75+
* **M2 Extension Attributes XML**: Create an extension attribute file with default structure.
76+
77+
## M2 Layout
78+
Available templates:
79+
* **M2 Layout XML**: Create an layout XML with default structure
80+
81+
## M2 Module
82+
Available templates:
83+
* **M2 Module XML**: Create an module XML file that has default structure
84+
85+
Available commands:
86+
* **m2mod**: Create an module tag
87+
* **m2modsequence**: Create an sequence tag
88+
89+
## M2 Registration
90+
Available templates:
91+
* **M2 Module XML**: Create an registration file with the method to register a m2 module
92+
93+
Available commands:
94+
* **m2reg**: Create registration file
95+
96+
## M2 Sales
97+
Available templates:
98+
* **M2 Sales XML**: Create an sales xml file for registrating new totals.
99+
100+
Available commands:
101+
* None
102+
103+
## M2 System / System Include
104+
Available templates:
105+
* **M2 System XML**: Create an system.xml with default structure.
106+
* **M2 System Include XML**: Create an system include that can be included in a system.xml with default structure.
107+
108+
Available commands:
109+
* **m2syssection**: Create an section tag.
110+
* **m2sysinclude**: Create an include tag.
111+
* **m2sysgroup**: Create an group tag.
112+
* **m2sysfieldcmspage**: Create a dropdown field with all cms pages.
113+
* **m2sysfieldyesno**: Create a dropdown with yes and no.
114+
* **m2sysfieldpagelayout**: Create a dropdown with all page layouts.
115+
* **m2sysfieldenabledisable**: Create a dropdown with enable/disable.
116+
* **m2sysfieldpassword**: Create an obscure password field.
117+
* **m2sysfieldtext**: Create a text field.
118+
* **m2sysfieldtextarea**: Create a textarea field.
119+
* **m2sysfieldpricetype**: Create a dropdown with all price types.
120+
* **m2sysfieldproducttax**: Create a dropdown with all product taxes.
121+
* **m2sysfieldcountry**: Create a dropdown with all countries.

Diff for: README.md

+36
Original file line numberDiff line numberDiff line change
@@ -12,3 +12,39 @@ composer require mediact/coding-standard-phpstorm
1212
## Configuration
1313
Use PHPStorm's `file > settings > language > PHP` menu to point to the installed binaries for PHPMD and PHPCS.
1414

15+
## Live Templates
16+
You now get live templates that can be be found in `file > settings > Editor -> Live Templates` .
17+
These can be enabled and disabled for if you want to use them or not.
18+
At this moment there have been live templates created for:
19+
* ACL
20+
* DB Schema
21+
* DI
22+
* Module
23+
* Phtml (WIP)
24+
* Registration
25+
* System
26+
27+
Check out [this link](COMMANDS.md) to see more info
28+
29+
## Templates
30+
You now get live templates that can be be found in `file > settings > Editor -> File and Code Templates` .
31+
These can be enabled and disabled for if you want to use them or not.
32+
At this moment there have been templates created for:
33+
* ACL
34+
* Class
35+
* Class - Block
36+
* Class - Helper
37+
* Class - Observer
38+
* Class - ViewModel
39+
* Config
40+
* DB Schema
41+
* DI
42+
* Extension Attributes
43+
* Layout
44+
* Module
45+
* Registration
46+
* Sales
47+
* System
48+
* System Include
49+
50+
Check out [this link](COMMANDS.md) to see all commando's that can be used.

Diff for: composer.json

+10-7
Original file line numberDiff line numberDiff line change
@@ -9,14 +9,16 @@
99
"email": "contact@mediact.nl"
1010
}
1111
],
12+
"version": "1.7.0",
1213
"require": {
13-
"php": "^5.4.0 || ^7.0",
14+
"php": "^5.4 || ^7.1",
1415
"composer-plugin-api": "^1.0"
1516
},
1617
"require-dev": {
18+
"phpunit/phpunit": "^7.5",
1719
"composer/composer": "^1.3",
18-
"mediact/testing-suite": "@stable",
1920
"kint-php/kint": "@stable",
21+
"mediact/testing-suite": "^1.20",
2022
"mikey179/vfsstream": "^1.6"
2123
},
2224
"autoload": {
@@ -30,10 +32,7 @@
3032
}
3133
},
3234
"extra": {
33-
"class": "Mediact\\CodingStandard\\PhpStorm\\Plugin",
34-
"grumphp": {
35-
"config-default-path": "vendor/mediact/testing-suite/config/default/grumphp.yml"
36-
}
35+
"class": "Mediact\\CodingStandard\\PhpStorm\\Plugin"
3736
},
3837
"archive": {
3938
"exclude": [
@@ -43,7 +42,11 @@
4342
"/phpunit.xml",
4443
"/phpmd.xml",
4544
"/phpstan.neon",
46-
"/phpcs.xml"
45+
"/phpcs.xml",
46+
"/grumphp.yml"
4747
]
48+
},
49+
"config": {
50+
"sort-packages": true
4851
}
4952
}

Diff for: files/fileTemplates/M2 Acl XML.xml

+18
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
<?xml version="1.0"?>
2+
#parse("M2 XML File Header")
3+
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:Acl/etc/acl.xsd">
4+
<acl>
5+
<resources>
6+
<resource id="Magento_Backend::admin">
7+
8+
</resource>
9+
<resource id="Magento_Backend::stores">
10+
<resource id="Magento_Backend::stores_settings">
11+
<resource id="Magento_Config::config">
12+
#[[$END$]]#
13+
</resource>
14+
</resource>
15+
</resource>
16+
</resources>
17+
</acl>
18+
</config>

Diff for: files/fileTemplates/M2 Class - Block.php

+13
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
<?php declare(strict_types=1);
2+
#parse("M2 PHP File Header")
3+
4+
#if (${NAMESPACE})
5+
namespace ${NAMESPACE};
6+
#end
7+
8+
use Magento\Framework\View\Element\Template;
9+
10+
class ${NAME} extends Template
11+
{
12+
#[[$END$]]#
13+
}

Diff for: files/fileTemplates/M2 Class - Helper.php

+13
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
<?php declare(strict_types=1);
2+
#parse("M2 PHP File Header")
3+
4+
#if (${NAMESPACE})
5+
namespace ${NAMESPACE};
6+
#end
7+
8+
use Magento\Framework\App\Helper\AbstractHelper;
9+
10+
class ${NAME} extends AbstractHelper
11+
{
12+
#[[$END$]]#
13+
}

Diff for: files/fileTemplates/M2 Class - Observer.php

+13
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
<?php declare(strict_types=1);
2+
#parse("M2 PHP File Header")
3+
4+
#if (${NAMESPACE})
5+
namespace ${NAMESPACE};
6+
#end
7+
8+
use Magento\Framework\Event\ObserverInterface;
9+
10+
class ${NAME} implements ObserverInterface
11+
{
12+
#[[$END$]]#
13+
}

Diff for: files/fileTemplates/M2 Class - ViewModel.php

+13
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
<?php declare(strict_types=1);
2+
#parse("M2 PHP File Header")
3+
4+
#if (${NAMESPACE})
5+
namespace ${NAMESPACE};
6+
#end
7+
8+
use Magento\Framework\View\Element\Block\ArgumentInterface;
9+
10+
class ${NAME} implements ArgumentInterface
11+
{
12+
#[[$END$]]#
13+
}

Diff for: files/fileTemplates/M2 Class.php

+11
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
<?php declare(strict_types=1);
2+
#parse("M2 PHP File Header")
3+
4+
#if (${NAMESPACE})
5+
namespace ${NAMESPACE};
6+
#end
7+
8+
class ${NAME}
9+
{
10+
#[[$END$]]#
11+
}

Diff for: files/fileTemplates/M2 Config XML.xml

+7
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
<?xml version="1.0"?>
2+
#parse("M2 XML File Header")
3+
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:module:Magento_Store:etc/config.xsd">
4+
<default>
5+
#[[$END$]]#
6+
</default>
7+
</config>

Diff for: files/fileTemplates/M2 DI.xml

+5
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
<?xml version="1.0"?>
2+
#parse("M2 XML File Header")
3+
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:ObjectManager/etc/config.xsd">
4+
#[[$END$]]#
5+
</config>

Diff for: files/fileTemplates/M2 Db schema XML.xml

+5
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
<?xml version="1.0"?>
2+
#parse("M2 XML File Header")
3+
<schema xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:Setup/Declaration/Schema/etc/schema.xsd">
4+
#[[$END$]]#
5+
</schema>

Diff for: files/fileTemplates/M2 Extension Attributes XML.xml

+5
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
<?xml version="1.0"?>
2+
#parse("M2 XML File Header")
3+
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:Api/etc/extension_attributes.xsd">
4+
#[[$END$]]#
5+
</config>

Diff for: files/fileTemplates/M2 Layout XML.xml

+7
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
<?xml version="1.0"?>
2+
#parse("M2 XML File Header")
3+
<page xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" layout="checkout" xsi:noNamespaceSchemaLocation="urn:magento:framework:View/Layout/etc/page_configuration.xsd">
4+
<body>
5+
#[[$END$]]#
6+
</body>
7+
</page>

Diff for: files/fileTemplates/M2 Module XML.xml

+5
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
<?xml version="1.0"?>
2+
#parse("M2 XML File Header")
3+
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:Module/etc/module.xsd">
4+
m2module#[[$END$]]#
5+
</config>

Diff for: files/fileTemplates/M2 Registration.php

+11
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
<?php
2+
#parse("M2 PHP File Header")
3+
4+
use Magento\Framework\Component\ComponentRegistrar;
5+
6+
ComponentRegistrar::register(
7+
ComponentRegistrar::MODULE,
8+
'${Vendor}_${Namespace}',
9+
__DIR__
10+
);
11+
#[[$END$]]#

Diff for: files/fileTemplates/M2 Sales XML.xml

+9
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
<?xml version="1.0"?>
2+
#parse("M2 XML File Header")
3+
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:module:Magento_Sales:etc/sales.xsd">
4+
<section name="quote">
5+
<group name="totals">
6+
#[[$END$]]#
7+
</group>
8+
</section>
9+
</config>

Diff for: files/fileTemplates/M2 System XML.xml

+7
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
<?xml version="1.0"?>
2+
#parse("M2 XML File Header")
3+
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:module:Magento_Config:etc/system_file.xsd">
4+
<system>
5+
#[[$END$]]#
6+
</system>
7+
</config>

Diff for: files/fileTemplates/M2 System include XML.xml

+5
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
<?xml version="1.0"?>
2+
#parse("M2 XML File Header")
3+
<include xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:module:Magento_Config:etc/system_include.xsd">
4+
#[[$END$]]#
5+
</include>

Diff for: files/fileTemplates/code/PHP Constructor.php

-6
This file was deleted.

Diff for: files/fileTemplates/code/PHP Fluent Setter Method.php

-11
This file was deleted.

0 commit comments

Comments
 (0)