Please upgrade here. These earlier versions are no longer being updated and have security issues.
HackerOne users: Testing against this community violates our program's Terms of Service and will result in your bounty being denied.

[GitHub Bug #1609] I removed a plugin from the dashboard and all my plugins disappeared !

245

Answers

  • vrijvlindervrijvlinder Papillon-Sauvage MVP

    yes but that function means clean up the config definitions from that plugin not the plugin folder. You can't believe how it felt, my heart sank . I know this happened before to someone here. Will search. But I reiterate, none of my settings are 777 .

    No I did not have anything like that on the removed plugin. It was a contact form which I was experimenting making a home made captcha but the random text did not show and I got tired of the idea so I removed it.

    I could install vanilla on another domain I have and try to replicate. Then it would not be so horrible ... to lose everything .

  • vrijvlindervrijvlinder Papillon-Sauvage MVP

    @Shadowdare said:
    It's still strange that the remove button deleted every plugin and hopefully it's not a bug in Vanilla.

    yes very strange and it seems like a bug, maybe it has a limit of how many plugins you can have installed? I know the host does, but they said I am nowhere near the limit.

  • vrijvlindervrijvlinder Papillon-Sauvage MVP

    Most of the folders have permission 755 and the highest is 775.

    I suppose the lesson here and serves as warning to others is that if they see a remove button in the dashboard next to a disabled plugin, Do Not Remove

  • vrijvlindervrijvlinder Papillon-Sauvage MVP

    here is a screenshot of my dashboard on another domain and also has remove buttons vanilla 2.0.18.8

    dash.png 314.9K
  • vrijvlindervrijvlinder Papillon-Sauvage MVP

    In looking at all my domains they all have remove buttons

  • peregrineperegrine MVP
    edited May 2013

    my reference about being too permissive was related to other as in owner-group-other.
    with "other" having rwx.

    but it would be interesting to see what various forum owners have in relation to

    http://vanillaforums.org/discussion/comment/184313/#Comment_184313

    I may not provide the completed solution you might desire, but I do try to provide honest suggestions to help you solve your issue.

  • vrijvlindervrijvlinder Papillon-Sauvage MVP

    only user has write permissions group and other can only read and execute. 755
    The host restricts hot permissions. They were clear about it making it susceptible to hackers if anything was 777. I don't have anything that requires 777 .

    I would think this might be a certain bug? Before the update to .8 I had remove buttons too and I used them. No problems. In fact I used them often to clean up dead wood plugins. No problem.

    It makes no sense to have a remove button which you think will only remove the plugin but removes all even the folder?

  • peregrineperegrine MVP
    edited May 2013

    see http://vanillaforums.org/discussion/comment/184313/#Comment_184313

    php exec owner vs file folder owner is the key question. are they different.

    It makes no sense to have a remove button which you think will only remove the plugin but removes all even the folder?

    if you can replicate it is a bug, if you can't the reason may be a bug but it is still unknown.

    I may not provide the completed solution you might desire, but I do try to provide honest suggestions to help you solve your issue.

  • vrijvlindervrijvlinder Papillon-Sauvage MVP
    edited May 2013

    You may be right or there is something , maybe a rogue plugin , I noticed that after they put my plugins back, there is no remove button next to the disabled plugs. They returned all the plugins I had even the one I removed. So that one was not the cause.

    How odd. Permissions are the same across the board ... on all domains

  • hgtonighthgtonight ∞ · New Moderator

    @peregrine on my low grade webhost, php is run with my normal user account. My user account/group owns all the files/folders. I suppose it simplifies setup?

    Search first

    Check out the Documentation! We are always looking for new content and pull requests.

    Click on insightful, awesome, and funny reactions to thank community volunteers for their valuable posts.

  • vrijvlindervrijvlinder Papillon-Sauvage MVP
    edited May 2013

    I found this in relation to this happening to someone else

    http://vanillaforums.org/discussion/comment/171968/#Comment_171968

    I wonder what to do to my other domains installs to get rid of the remove button. I am now afraid to use it.

    What I will do is back up the whole plugin folder under a new name like old.plugins and see if deleting a plugin from the dashboard also removes these.

    It is the only way I can see to duplicate the problem.

  • vrijvlindervrijvlinder Papillon-Sauvage MVP

    I just removed a plugin from the dashboard, the quotes plugin. No problems. The plugins are still there.

    I noticed that I do get a confirm pop up asking if I really want to remove this plugin and has the plugin's name. I click yes it refreshes and plugin is removed.

    No problem. I will do this on all domains to see what happens. I have pretty much the same array of plugins enabled on all of them. I duplicated the plugins folder and changed the name of one to old.plugins just in case they get wiped.

    I can't see how to duplicate what happened to me. The permissions are all identical .

  • vrijvlindervrijvlinder Papillon-Sauvage MVP
    edited May 2013

    I have been searching through the plugins to see if there is anything suggesting to clean up on disable I do have but it is not active. I do think that if there is a plugin that has this that is mentions the specific plugin so as not to remove the plugin folder.

    Which is the real question, How did the plugin folder get wiped out?

     public function OnDisable() {
          /*
          RemoveFromConfig('Plugins.Marquee.Imm1');
          RemoveFromConfig('Plugins.Marquee.Imm2');
          RemoveFromConfig('Plugins.Marquee.Imm3');
          RemoveFromConfig('Plugins.Marquee.Imm4');
          RemoveFromConfig('Plugins.Marquee.Imm5');
          RemoveFromConfig('Plugins.Marquee.Imm6');
              */
    
    
    
    also 
    
    public function OnDisable() {
          RemoveFromConfig('Plugins.FileUpload.Enabled');
    

    I mean this is not causing the problem. 80 bucks later and I still don't know what could have caused this. My forum now has no remove button. But the others still have it and it works fine.

    I will file a report as this seems to be a bug related to removing plugins from the dashboard. Which I thought was normal function and convenient function. But apparently it can malfunction....

  • vrijvlindervrijvlinder Papillon-Sauvage MVP

    I am so baffled by this, now I can't even delete plugins from the file manager panel in my server. They must have done something to my permissions when they put my plugins back in. :(

    As suggested , these permissions may be intercepted by the host in some way. I am starting to think this is not my fault but the host.

  • hgtonighthgtonight ∞ · New Moderator

    Looking at the RemoveFolder code, it is theoretically possible for a plugin to accidentally delete the entire folder. Were you doing anything that modified the Plugin Info?

    Search first

    Check out the Documentation! We are always looking for new content and pull requests.

    Click on insightful, awesome, and funny reactions to thank community volunteers for their valuable posts.

  • vrijvlindervrijvlinder Papillon-Sauvage MVP
    edited May 2013

    No that is what is odd I was not working on any php or js I was doing some css is all then went in the dashboard to delete the plugin as I have done many times, then i get a none style dash and look for my plugins, entire folder gone with one push of a button. Now I can't delete the folders from the list. Only deleting the files inside and then the folder works . Before all I had to do is delete the entire folder.

    I think they messed with my permissions or something. Making a plugins permission 777 or 775 does not change , still can't delete.

    I called them again, they sent it to higher authority ..... who knows what jesus will do. Sometimes it would be best if they told me exactly what they did.

  • vrijvlindervrijvlinder Papillon-Sauvage MVP
    edited May 2013

    @hgtonight I found something interesting, in the views folder of the dashboard settings plugins

    
     < tr class="<?php echo ($Upgrade ? 'More ' : '').$RowClass; ? >" >
             < td class="Info " >< ?php
                $ToggleText = array_key_exists($PluginName, $this->EnabledPlugins) ? 'Disable' : 'Enable';
                echo Anchor(
                   T($ToggleText),
                   '/settings/plugins/'.$this->Filter.'/'.$PluginName.'/'.$Session->TransientKey(),
                   $ToggleText . 'Addon SmallButton'
                );
                
                if ($SettingsUrl != '')
                   echo Anchor(T('Settings'), $SettingsUrl, 'SmallButton');
                
                if (SettingsModule::IsRemovable(SettingsModule::TYPE_PLUGIN, $PluginName))
                   echo Anchor(T('Remove'), '/settings/removeaddon/'.SettingsModule::TYPE_PLUGIN.'/'.$PluginName.'/'.$Session->TransientKey(), 'RemoveItem SmallButton');
    

    Notice the if is removable. How can a plugin be made not removable or removable?

    This here confirms that there is a remove button by default unless the plugin is not removable.

    Notice it says nothing about remove the entire plugin folder...

  • hgtonighthgtonight ∞ · New Moderator

    The is removable function looks like it is checking to see if it can be removed. I.e. checking the permissions on the folder.

    Search first

    Check out the Documentation! We are always looking for new content and pull requests.

    Click on insightful, awesome, and funny reactions to thank community volunteers for their valuable posts.

    vrijvlinder
  • vrijvlindervrijvlinder Papillon-Sauvage MVP

    @hgtonight I thing it checks for admin permissions no?

    $this->Permission('Garden.Settings.Manage');

    is the only one that can enable and disable and remove plugins.

    The assumption is that the folders are writeable. I am not sure that is what it checks for. It checks for admin credentials.

Sign In or Register to comment.