-
☆ A M B ☆
- 2,213 Posts
The web is very open and if you can view it you can copy it. There isn’t any way I can think of to restrict the site until you get final payment. If you have a contract with the client it will be your best bet for getting final payment.
The only way to hold the site hostage would be to host the site on your own server or a sandbox server with the client lacking access to the database or backup feature of MODx.
If this client has already made progress payments, I don’t see why he would ruin his business relationship with you over a final payment. I have had clients attempt to negotiate a final payment, but (knocks on wood) never had one that refused to pay outright.
Although I never had the need to do so, you can always add a remote ’kill switch’ to your snippets or plugins, and then Zend-encode or Ioncube-encode the PHP source prior to delivery to the client. At least that way your PHP source code is hidden and better protected from being copied or reverse-engineered.
lo9on.com
MODx Evolution/Revolution | Remote Desktop Training | Development
If he is an admin Super User, he can undo anything you might do. If it is MODx Revolution, you might be able to create a policy that would give him rights to everything but Access Permissions so he would be not quite a super user. That way he could still do everything on the site but you could cut off his access down the road if the payment isn’t forthcoming and he couldn’t undo that. In Evolution, you might be able to do the same thing with a custom role -- I’m not sure.
Thanks for all the replies. I do have a contract and it states that the site will not be launched until final payment is received. Usually I have full control over the site, but in this rare case I do not. I don’t think there would be anything hurting the clients relationship. I think anyone would agree you have to have some sort of fall back in case a client does not pay, all my clients completely understand that. I’m not trying to limit or disrupt what he is doing in anyway.
It’s a lesson learned though, next time I know I will need to write into my contracts that admin rights will not be handed over until final payment is received. Thanks again for all the replies.
Quote from: steve.mullen at Jun 07, 2010, 09:01 AM
Thanks for all the replies. I do have a contract and it states that the site will not be launched until final payment is received. Usually I have full control over the site, but in this rare case I do not. I don’t think there would be anything hurting the clients relationship. I think anyone would agree you have to have some sort of fall back in case a client does not pay, all my clients completely understand that. I’m not trying to limit or disrupt what he is doing in anyway.
It’s a lesson learned though, next time I know I will need to write into my contracts that admin rights will not be handed over until final payment is received. Thanks again for all the replies.
You’ve probably thought of this already, but I think there’s a fair chance that the client already has the entire site backed up somewhere. That would make anything you might do to secure it ineffective.
Very interesting ideas, guys! I like the kill switch. I’ve wondered about this myself, when dealing with a tech-savvy person. I have generally set up developing sites on my own hosting when I was somewhat paranoid.
As I read this, I thought of the idea of having the files on their hosting, but actually having the database hosted elsewhere you have control over (when the host will allow it). Then again, I suppose they could do a backup of their site through the MODx backend, and that would thwart that idea.
-
MODX Staff
- 12,272 Posts
Remote databases will kill your site performance most likely.
Ryan Thrash, MODX Co-Founder
Follow me on Twitter at @rthrash or catch my occasional unofficial thoughts at thrash.me
-
☆ A M B ☆
- 24,524 Posts
The only time I had a problem with payment (barefaced refusal to pay, and what was I going to do about it?) they didn’t understand the significance of having persuaded me to purchase their domain name in my name with my credit card