it is NOT legal, because it requires an act of parliament to alter/cancel the act of parliament which established 29th march as the leaving date.
Unfortunately, we have no sovereignty in our nation, because EU law trumps our laws - same goes for any of the other 27 nations. They can just slap down whatever they want on whoever they want… And they don't even care about referenda anyway - remember what happened when Ireland voted NO to the Lisbon Treaty? The EU said yo uvoted wrong, take the referendum again and vote YES this time. The EU will either make you vote again or completely ignore the outcome - that happened with Greece who voted against the bailout. EU just ignored them.
If we don't get some declas or other leaks of some kind that wil force Brexit to happen, then the only solution is mass non-violent civil unrest.
Because you cannot reason with a tiger. The EU is the EVIL UNION and they DO NOT GIVE A SHIT ABOUT US they only want to control nations and therefore the people in them.