Giter VIP home page Giter VIP logo

idea-php-oxid-plugin's Introduction

OXID Plugin

Version Downloads Downloads last month Donate to this project using Paypal

IntelliJ IDEA / PhpStorm Plugin for OXID

Key Value
Plugin Url https://plugins.jetbrains.com/plugin/7853
ID de.espend.idea.oxid
Changelog CHANGELOG

Install

  • Install the plugin by going to Settings -> Plugins -> Browse repositories and then search for OXID Plugin.
  • Enabled Symfony Plugin per project (File > Settings > Symfony Plugin )

Screenshots

PHP Metadata Smarty

idea-php-oxid-plugin's People

Contributors

haehnchen avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

idea-php-oxid-plugin's Issues

Plugin is not usable with PHPStorm 2018

Erroroutput:

Argument for @NotNull parameter 'files' of com/intellij/openapi/command/WriteCommandAction.<init> must not be null
java.lang.IllegalArgumentException: Argument for @NotNull parameter 'files' of com/intellij/openapi/command/WriteCommandAction.<init> must not be null
	at com.intellij.openapi.command.WriteCommandAction.$$$reportNull$$$0(WriteCommandAction.java)
	at com.intellij.openapi.command.WriteCommandAction.<init>(WriteCommandAction.java)
	at de.espend.idea.oxid.utils.OxidUtil$1.<init>(OxidUtil.java:227)
	at de.espend.idea.oxid.utils.OxidUtil.buildClassMetadataFile(OxidUtil.java:227)
	at de.espend.idea.oxid.OxidProjectComponent$1.run(OxidProjectComponent.java:46)
	at com.intellij.openapi.progress.impl.CoreProgressManager$TaskRunnable.run(CoreProgressManager.java:750)
	at com.intellij.openapi.progress.impl.CoreProgressManager.a(CoreProgressManager.java:157)
	at com.intellij.openapi.progress.impl.CoreProgressManager.a(CoreProgressManager.java:580)
	at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:525)
	at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:85)
	at com.intellij.openapi.progress.impl.CoreProgressManager.runProcess(CoreProgressManager.java:144)
	at com.intellij.openapi.progress.impl.CoreProgressManager$4.run(CoreProgressManager.java:395)
	at com.intellij.openapi.application.impl.ApplicationImpl$1.run(ApplicationImpl.java:305)
	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
	at java.lang.Thread.run(Thread.java:745)

Thank you for such a great plugin! I hope the error will be fixed quick!

sometimes undo is not possible in phpstorm

somehow the plugin changes files in the background which causes phpstrom to block undo operations.
I think it is a bug in the phpstorm undo architecture but as the problem seams to happen often in combination with this module maybe we can fix/workaround it somehow within this module.

com.intellij.openapi.project.IndexNotReadyException

I got a couple of them. You can use com.intellij.openapi.project.DumbService#isDumb() to check whether it's possible to use indices or not.

Please change caller according to com.intellij.openapi.project.IndexNotReadyException documentation

com.intellij.openapi.project.IndexNotReadyException: Please change caller according to com.intellij.openapi.project.IndexNotReadyException documentation
	at com.intellij.util.indexing.FileBasedIndexImpl.handleDumbMode(FileBasedIndexImpl.java:722)
	at com.intellij.util.indexing.FileBasedIndexImpl.ensureUpToDate(FileBasedIndexImpl.java:671)
	at com.intellij.util.indexing.FileBasedIndexImpl.ensureUpToDate(FileBasedIndexImpl.java:654)
	at com.intellij.psi.stubs.StubIndexImpl.doProcessStubs(StubIndexImpl.java:346)
	at com.intellij.psi.stubs.StubIndexImpl.processElements(StubIndexImpl.java:327)
	at com.intellij.psi.stubs.StubIndex.getElements(StubIndex.java:146)
	at com.intellij.psi.stubs.StubIndex.getElements(StubIndex.java:135)
	at com.jetbrains.php.PhpIndexImpl.getByName(PhpIndexImpl.java:565)
	at com.jetbrains.php.PhpIndexImpl.getByFQN(PhpIndexImpl.java:545)
	at com.jetbrains.php.PhpIndexImpl.getClassesByFQN(PhpIndexImpl.java:575)
	at com.jetbrains.php.PhpIndexImpl.getAnyByFQN(PhpIndexImpl.java:591)
	at fr.adrienbrault.idea.symfony2plugin.util.PhpElementsUtil.getClassInterface(PhpElementsUtil.java:461)
	at de.espend.idea.oxid.utils.OxidUtil.getPseudoClassOverwrites(OxidUtil.java:72)
	at de.espend.idea.oxid.utils.OxidUtil$1.run(OxidUtil.java:218)
	at com.intellij.openapi.application.impl.ApplicationImpl.runReadAction(ApplicationImpl.java:907)
	at de.espend.idea.oxid.utils.OxidUtil.buildClassMetadataFile(OxidUtil.java:215)
	at de.espend.idea.oxid.OxidProjectComponent$1$1.run(OxidProjectComponent.java:53)
	at com.intellij.openapi.progress.impl.CoreProgressManager$TaskRunnable.run(CoreProgressManager.java:757)
	at com.intellij.openapi.progress.impl.CoreProgressManager$3.run(CoreProgressManager.java:181)
	at com.intellij.openapi.progress.impl.CoreProgressManager.registerIndicatorAndRun(CoreProgressManager.java:587)
	at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:532)
	at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:66)
	at com.intellij.openapi.progress.impl.CoreProgressManager.runProcess(CoreProgressManager.java:166)
	at com.intellij.openapi.progress.impl.ProgressManagerImpl$1.run(ProgressManagerImpl.java:137)
	at com.intellij.openapi.application.impl.ApplicationImpl$2.run(ApplicationImpl.java:330)
	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
	at java.lang.Thread.run(Thread.java:745)

Please migrate to PhpTypeProvider3

PhpTypePriovider2 is deprecated since 2016.3 and will be removed in 2017.3

Migration is pretty straightforward, but I can provide assistance if required.

Support modules without vendor directory

Seems like only modules within a vendor directory are supported by the plugin.

modules/oe/oepaypal/metadata.php --> Paths are clickable and class inheritance is added to the .phpstorm-oxid.meta.php file

modules/fcPayOne/metadata.php --> Paths can not be resolved.

bildschirmfoto 2015-07-14 um 11 45 24

It'd be nice to support those modules as well.

Does it work with PhpStorm9? NullPointerException

I'm getting errors when trying to call public method. Let's say I create object $oOrder = oxNew('oxOrder'); and I try to call method $oOrder->getOrderUser(), so auto completion for method does not work. I get error:

null
java.lang.NullPointerException
    at de.espend.idea.oxid.utils.ModuleUtil.getExtendsList(ModuleUtil.java:105)
    at de.espend.idea.oxid.utils.OxidUtil.getPseudoClassOverwrites(OxidUtil.java:55)
    at de.espend.idea.oxid.utils.OxidUtil$1.run(OxidUtil.java:143)
    at com.intellij.openapi.application.impl.ApplicationImpl.runReadAction(ApplicationImpl.java:872)
    at de.espend.idea.oxid.utils.OxidUtil.buildClassMetadataFile(OxidUtil.java:139)
    at de.espend.idea.oxid.OxidProjectComponent$1$1.run(OxidProjectComponent.java:53)
    at com.intellij.openapi.progress.impl.CoreProgressManager$TaskRunnable.run(CoreProgressManager.java:563)
    at com.intellij.openapi.progress.impl.CoreProgressManager$2.run(CoreProgressManager.java:152)
    at com.intellij.openapi.progress.impl.CoreProgressManager.a(CoreProgressManager.java:452)
    at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:402)
    at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:54)
    at com.intellij.openapi.progress.impl.CoreProgressManager.runProcess(CoreProgressManager.java:137)
    at com.intellij.openapi.progress.impl.ProgressManagerImpl$1.run(ProgressManagerImpl.java:126)
    at com.intellij.openapi.application.impl.ApplicationImpl$8.run(ApplicationImpl.java:400)
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
    at java.util.concurrent.FutureTask.run(FutureTask.java:262)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
    at java.lang.Thread.run(Thread.java:745)
    at org.jetbrains.ide.PooledThreadExecutor$1$1.run(PooledThreadExecutor.java:56)

goto definition does not always point to sourcefile

sometime when you like to jump in a method definition (STRG+ left mouse click),
phpstorm will show you a file with traits.

What i would except is that one of the classes implementing the method will be opened (or the option to choose on of these classes). I guess this could be achieved by building a class chain like the oxid shop does it internally. Personally i do not need this chain to match the effective chain in a specific order build by the shop.

Repeating File Cache Conflict since version 0.3

Hello,

this morning I updated the OXID PhpStorm plugin from version 0.2.1 to 0.3. Since then I get a PhpStorm file cache conflict every few seconds to minutes:
phpstorm_error

I'll send you a screenshot of the actual diff via email.
PhpStorm PS-141.1912 running on Windows 8.1 with samba share mounted.
Please ping me if you need any further information.

Cheers
Adrian

Plugin doesen't work - NullPointerException: null

I use PhpStorm 9.0.1 + current versions of the Symfony2 and OXID Plugin.
PhpStorm shows Exceptions in the event log:
08:12:12 NullPointerException: null
08:12:16 NullPointerException: null
08:12:29 NullPointerException: null
08:13:50 NullPointerException: null
08:13:54 NullPointerException: null
08:20:49 NullPointerException: null
08:21:00 NullPointerException: null
08:23:48 NullPointerException: null

Complete Message:
null
java.lang.NullPointerException
at de.espend.idea.oxid.utils.MetadataUtil.visitMetadataKey(MetadataUtil.java:143)
at de.espend.idea.oxid.utils.MetadataUtil.getBlocks(MetadataUtil.java:72)
at de.espend.idea.oxid.utils.MetadataUtil.getMetadataKeyMap(MetadataUtil.java:102)
at de.espend.idea.oxid.utils.ModuleUtil.getExtendsList(ModuleUtil.java:100)
at de.espend.idea.oxid.types.OxidFactoryTypeProvider.addExtendsClasses(OxidFactoryTypeProvider.java:110)
at de.espend.idea.oxid.types.OxidFactoryTypeProvider.getBySignature(OxidFactoryTypeProvider.java:94)
at com.jetbrains.php.PhpIndexImpl.getBySignatureInternal(PhpIndexImpl.java:418)
at com.jetbrains.php.PhpIndexImpl.getBySignature(PhpIndexImpl.java:304)
at com.jetbrains.php.PhpIndexImpl.completeType(PhpIndexImpl.java:81)
at com.jetbrains.php.lang.psi.resolve.types.PhpType.globalLocationAware(PhpType.java:404)
at com.jetbrains.php.lang.psi.elements.impl.MemberReferenceImpl.resolveGlobal(MemberReferenceImpl.java:154)
at com.jetbrains.php.lang.psi.elements.impl.PhpReferenceImpl$1.resolve(PhpReferenceImpl.java:107)
at com.jetbrains.php.lang.psi.elements.impl.PhpReferenceImpl$1.resolve(PhpReferenceImpl.java:104)
at com.intellij.psi.impl.source.resolve.ResolveCache$3.compute(ResolveCache.java:142)
at com.intellij.openapi.util.RecursionManager$2.doPreventingRecursion(RecursionManager.java:112)
at com.intellij.psi.impl.source.resolve.ResolveCache.a(ResolveCache.java:139)
at com.intellij.psi.impl.source.resolve.ResolveCache.resolveWithCaching(ResolveCache.java:167)
at com.intellij.psi.impl.source.resolve.ResolveCache.resolveWithCaching(ResolveCache.java:159)
at com.jetbrains.php.lang.psi.elements.impl.PhpReferenceImpl.multiResolve(PhpReferenceImpl.java:99)
at com.jetbrains.php.lang.psi.elements.impl.PhpReferenceImpl.resolve(PhpReferenceImpl.java:85)
at com.jetbrains.php.lang.inspections.PhpMethodParametersCountMismatchInspection$1.inspect(PhpMethodParametersCountMismatchInspection.java:40)
at com.jetbrains.php.lang.inspections.PhpMethodParametersCountMismatchInspection$1.visitPhpMethodReference(PhpMethodParametersCountMismatchInspection.java:94)
at com.jetbrains.php.lang.psi.elements.impl.MethodReferenceImpl.accept(MethodReferenceImpl.java:30)
at com.intellij.codeInspection.InspectionEngine.acceptElements(InspectionEngine.java:80)
at com.intellij.codeInspection.InspectionEngine.createVisitorAndAcceptElements(InspectionEngine.java:69)
at com.intellij.codeInsight.daemon.impl.LocalInspectionsPass.a(LocalInspectionsPass.java:285)
at com.intellij.codeInsight.daemon.impl.LocalInspectionsPass.access$200(LocalInspectionsPass.java:75)
at com.intellij.codeInsight.daemon.impl.LocalInspectionsPass$2.process(LocalInspectionsPass.java:254)
at com.intellij.codeInsight.daemon.impl.LocalInspectionsPass$2.process(LocalInspectionsPass.java:251)
at com.intellij.concurrency.ApplierCompleter.a(ApplierCompleter.java:122)
at com.intellij.concurrency.ApplierCompleter.access$000(ApplierCompleter.java:44)
at com.intellij.concurrency.ApplierCompleter$1.run(ApplierCompleter.java:85)
at com.intellij.openapi.application.impl.ApplicationImpl.tryRunReadAction(ApplicationImpl.java:1098)
at com.intellij.concurrency.ApplierCompleter$2.run(ApplierCompleter.java:94)
at com.intellij.openapi.progress.impl.CoreProgressManager.a(CoreProgressManager.java:452)
at com.intellij.openapi.progress.impl.CoreProgressManager.a(CoreProgressManager.java:449)
at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:402)
at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:54)
at com.intellij.concurrency.ApplierCompleter.a(ApplierCompleter.java:106)
at com.intellij.concurrency.ApplierCompleter.compute(ApplierCompleter.java:82)
at jsr166e.CountedCompleter.exec(CountedCompleter.java:684)
at jsr166e.ForkJoinTask.doExec(ForkJoinTask.java:260)
at jsr166e.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:858)
at jsr166e.ForkJoinPool.scan(ForkJoinPool.java:1687)
at jsr166e.ForkJoinPool.runWorker(ForkJoinPool.java:1642)
at jsr166e.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:109)

java.lang.NullPointerException
at de.espend.idea.oxid.utils.MetadataUtil.visitMetadataKey(MetadataUtil.java:143)
at de.espend.idea.oxid.utils.MetadataUtil.getBlocks(MetadataUtil.java:72)
at de.espend.idea.oxid.utils.MetadataUtil.getMetadataKeyMap(MetadataUtil.java:102)
at de.espend.idea.oxid.utils.ModuleUtil.getExtendsList(ModuleUtil.java:100)
at de.espend.idea.oxid.types.OxidFactoryTypeProvider.addExtendsClasses(OxidFactoryTypeProvider.java:110)
at de.espend.idea.oxid.types.OxidFactoryTypeProvider.getBySignature(OxidFactoryTypeProvider.java:94)
at com.jetbrains.php.PhpIndexImpl.getBySignatureInternal(PhpIndexImpl.java:418)
at com.jetbrains.php.PhpIndexImpl.getBySignature(PhpIndexImpl.java:304)
at com.jetbrains.php.PhpIndexImpl.completeType(PhpIndexImpl.java:81)
at com.jetbrains.php.lang.psi.resolve.types.PhpType.globalLocationAware(PhpType.java:404)
at com.jetbrains.php.lang.psi.elements.impl.MemberReferenceImpl.resolveGlobal(MemberReferenceImpl.java:154)
at com.jetbrains.php.lang.psi.elements.impl.PhpReferenceImpl$1.resolve(PhpReferenceImpl.java:107)
at com.jetbrains.php.lang.psi.elements.impl.PhpReferenceImpl$1.resolve(PhpReferenceImpl.java:104)
at com.intellij.psi.impl.source.resolve.ResolveCache$3.compute(ResolveCache.java:142)
at com.intellij.openapi.util.RecursionManager$2.doPreventingRecursion(RecursionManager.java:112)
at com.intellij.psi.impl.source.resolve.ResolveCache.a(ResolveCache.java:139)
at com.intellij.psi.impl.source.resolve.ResolveCache.resolveWithCaching(ResolveCache.java:167)
at com.intellij.psi.impl.source.resolve.ResolveCache.resolveWithCaching(ResolveCache.java:159)
at com.jetbrains.php.lang.psi.elements.impl.PhpReferenceImpl.multiResolve(PhpReferenceImpl.java:99)
at com.jetbrains.php.lang.psi.elements.impl.PhpReferenceImpl.resolve(PhpReferenceImpl.java:85)
at com.jetbrains.php.lang.inspections.PhpMethodParametersCountMismatchInspection$1.inspect(PhpMethodParametersCountMismatchInspection.java:40)
at com.jetbrains.php.lang.inspections.PhpMethodParametersCountMismatchInspection$1.visitPhpMethodReference(PhpMethodParametersCountMismatchInspection.java:94)
at com.jetbrains.php.lang.psi.elements.impl.MethodReferenceImpl.accept(MethodReferenceImpl.java:30)
at com.intellij.codeInspection.InspectionEngine.acceptElements(InspectionEngine.java:80)
at com.intellij.codeInspection.InspectionEngine.createVisitorAndAcceptElements(InspectionEngine.java:69)
at com.intellij.codeInsight.daemon.impl.LocalInspectionsPass.a(LocalInspectionsPass.java:285)
at com.intellij.codeInsight.daemon.impl.LocalInspectionsPass.access$200(LocalInspectionsPass.java:75)
at com.intellij.codeInsight.daemon.impl.LocalInspectionsPass$2.process(LocalInspectionsPass.java:254)
at com.intellij.codeInsight.daemon.impl.LocalInspectionsPass$2.process(LocalInspectionsPass.java:251)
at com.intellij.concurrency.ApplierCompleter.a(ApplierCompleter.java:122)
at com.intellij.concurrency.ApplierCompleter.access$000(ApplierCompleter.java:44)
at com.intellij.concurrency.ApplierCompleter$1.run(ApplierCompleter.java:85)
at com.intellij.openapi.application.impl.ApplicationImpl.tryRunReadAction(ApplicationImpl.java:1098)
at com.intellij.concurrency.ApplierCompleter$2.run(ApplierCompleter.java:94)
at com.intellij.openapi.progress.impl.CoreProgressManager.a(CoreProgressManager.java:452)
at com.intellij.openapi.progress.impl.CoreProgressManager.a(CoreProgressManager.java:449)
at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:402)
at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:54)
at com.intellij.concurrency.ApplierCompleter.a(ApplierCompleter.java:106)
at com.intellij.concurrency.ApplierCompleter.compute(ApplierCompleter.java:82)
at jsr166e.CountedCompleter.exec(CountedCompleter.java:684)
at jsr166e.ForkJoinTask.doExec(ForkJoinTask.java:260)
at jsr166e.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:858)
at jsr166e.ForkJoinPool.scan(ForkJoinPool.java:1687)
at jsr166e.ForkJoinPool.runWorker(ForkJoinPool.java:1642)
at jsr166e.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:109)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.