3 added 696 characters in body
source | link

Depending on the wider picture of you requirement, you can separate the author's input into several folders/library/subweb.

Using several library or subweb (one for each company), you can set up once for each company the permissions (at the library or subweb level).

For your own company users, either a content query web part with site collection query of a specific content or use a flat view if you store everything in the same library with specific folder.

It will be far more simple to implement than having to programmaticaly set permissions for each elements.

[Edit] As I misread the question, the following answer is not valid anymore. I keep it for information.

You can set the SecurityBits attributes to 22 of the ListTemplate element. Grant the users of your company the ManageList permission to see everything in the list.

However, as stated in the documentation, it does not applies to Document Libraries.

I thinks this solution is quite simple, if you can use a custom list template.

[Edit] You can also set up this behavior in the advanced settings page of the list for existing lists.

You can set the SecurityBits attributes to 22 of the ListTemplate element. Grant the users of your company the ManageList permission to see everything in the list.

However, as stated in the documentation, it does not applies to Document Libraries.

I thinks this solution is quite simple, if you can use a custom list template.

[Edit] You can also set up this behavior in the advanced settings page of the list for existing lists.

Depending on the wider picture of you requirement, you can separate the author's input into several folders/library/subweb.

Using several library or subweb (one for each company), you can set up once for each company the permissions (at the library or subweb level).

For your own company users, either a content query web part with site collection query of a specific content or use a flat view if you store everything in the same library with specific folder.

It will be far more simple to implement than having to programmaticaly set permissions for each elements.

[Edit] As I misread the question, the following answer is not valid anymore. I keep it for information.

You can set the SecurityBits attributes to 22 of the ListTemplate element. Grant the users of your company the ManageList permission to see everything in the list.

However, as stated in the documentation, it does not applies to Document Libraries.

I thinks this solution is quite simple, if you can use a custom list template.

[Edit] You can also set up this behavior in the advanced settings page of the list for existing lists.

2 added 112 characters in body
source | link

You can set the SecurityBits attributes to 22 of the ListTemplate element. Grant the users of your company the ManageList permission to see everything in the list.

However, as stated in the documentation, it does not applies to Document Libraries.

I thinks this solution is quite simple, if you can use a custom list template.

[Edit] You can also set up this behavior in the advanced settings page of the list for existing lists.

You can set the SecurityBits attributes to 22 of the ListTemplate element. Grant the users of your company the ManageList permission to see everything in the list.

However, as stated in the documentation, it does not applies to Document Libraries.

I thinks this solution is quite simple, if you can use a custom list template.

You can set the SecurityBits attributes to 22 of the ListTemplate element. Grant the users of your company the ManageList permission to see everything in the list.

However, as stated in the documentation, it does not applies to Document Libraries.

I thinks this solution is quite simple, if you can use a custom list template.

[Edit] You can also set up this behavior in the advanced settings page of the list for existing lists.

1
source | link

You can set the SecurityBits attributes to 22 of the ListTemplate element. Grant the users of your company the ManageList permission to see everything in the list.

However, as stated in the documentation, it does not applies to Document Libraries.

I thinks this solution is quite simple, if you can use a custom list template.