I also have the same question but I just can not wait, so here what I did and it give to Author access to :
/wp-admin/admin.php?page=leadin
/wp-admin/admin.php?page=leadin_contacts
I kept the /wp-admin/admin.php?page=leadin_settings only to Admin
Locate the file leadin-admin.php in /admin folder of the plugin.
Here the code I’ve changed:
// Block non-sanctioned users from accessing Leadin
//$capability = 'activate_plugins';
$capability = 'publish_posts';
/*
if (!current_user_can('activate_plugins')) {
if (!array_key_exists('li_grant_access_to_' . leadin_get_user_role(), $options))
return FALSE;
else {
if (current_user_can('manage_network')) // super admin
$capability = 'manage_network';
else if (current_user_can('edit_pages')) // editor
$capability = 'edit_pages';
else if (current_user_can('publish_posts')) // author
$capability = 'publish_posts';
else if (current_user_can('edit_posts')) // contributor
$capability = 'edit_posts';
else if (current_user_can('read')) // subscriber
$capability = 'read';
}
}
*/
$leadin_icon = LEADIN_PATH . '/images/leadin-icon-16x16-white.png';
//add_menu_page('Leadin', 'Leadin', $capability, 'leadin', array($this, 'leadin_build_app'), $leadin_icon, '25.100713');
add_menu_page('Leadin', 'Leadin', $capability, 'leadin', array($this, 'leadin_build_app'), $leadin_icon, '25.100713');
//add_submenu_page('leadin', 'Contacts', 'Contacts', 'activate_plugins', 'leadin_contacts', array($this, 'leadin_build_app'));
add_submenu_page('leadin', 'Contacts', 'Contacts', $capability, 'leadin_contacts', array($this, 'leadin_build_app'));
add_submenu_page('leadin', 'Settings', 'Settings', 'activate_plugins', 'leadin_settings', array($this, 'leadin_build_app'));