hook for disabling fields on add and edit node for a content type
If I understand you right you'd be better off using the Field Permissions module:


  The Field Permissions module allows site administrators to set field-level permissions to edit, view and create fields on any entity.


If you do code it yourself you're going to end up implementing most of that modules functionality, so even if you don't use it it's a great place to look for the right hooks to call etc.