The Arcive of Official vBulletin Modifications Site.It is not a VB3 engine, just a parsed copy! |
|
Links and Downloads Manager Details »» | |||||||||||||||||||||||||
What this is and does
LDM is a general-purpose tool for managing libraries of links and files, and handling uploads and downloads in a flexible way, while tracking and control user access. It has a range of integrated media players and a large library of 'plugin' extras. Installation and Usage Explained in the on-line Wiki, with a brief explanation in the file instructions.txt in the release zip. The recent revision history is given in the first post of this thread. Please use carefully and always backup your database before upgrading. Post reports of problems and suggestions for enhancements in this thread. 14.06.09 Version 2.3.0 is now the the officially-supported version. Works with 3.7 and vb 3.8. Please post comments in this thread 22.06.08 Version 2.2.9-post1 - This is the previous supported version. Works fine with all versions of vb 3.6 and vb 3.7. All standard features except profile integration and forum prefix selection work fine with vb 3.8. Show Your Support
|
Comments |
#1252
|
|||
|
|||
Quote:
|
#1253
|
|||
|
|||
I've just been debugging a problem for a site which has set up multiple usergroups and given people membership of these as their primary and secondary usergroups. Depending on how this is set up, there can be unexpected consequences within LDM.
LDM - gives users the most liberal permission based on *any* of their usergroups. - gives users download allowances based on their *primary* usergroup. Suppose usergroup 'FullyRegistered' has an allowance of 10 files a day and usergroup 'Registered' an allowance of 5 files a day. - Someone who is a member of both usergroups with primary member of Registered will be allowed 5 files/day - Someone who is a member of both with primary member of FullyRegistered will be allowed 10 files/day However, suppose 'FullyRegistered' is also given *can_bypass_hit_recording* permission. - All users who have FullyRegistered as their primary or secondary usergroup will gain this permission - Consequently, their accesses will not be recorded - Consequently, they will never exceed their allowances. Questions: - Is this what you would expect to happen? - Should users be given allowances based on their primary group or the most liberal of their primary and secondary groups? |
#1254
|
||||
|
||||
m8 what Exactly does this do... u can uplaod and Download Stuff like Piratebay etc..?
|
#1255
|
||||
|
||||
Re: multiple usergroups & can_bypass permissions
I think your 3 can_bypass permissions (hit_recording, bandwidth_limits, forumperms) are like a tertiary level of access control. To prevent the permissions dilemma that you're debugging, I think you should remove those permissions from usergroups and make them specific to listed users (ie: userids, usernames). These liberal permissions should then override the usergroup permissions for any listed users who have those permissions. Users can configure their desired access control for usergroups without using these 3 can_bypass permissions by editing Forum Permissions, LDM Permissions, and LDM Allowances. The only possible loss functionality that I see is the can_bypass_hit_recording for the Guest group. To compensate, you can provide an option to activate that setting for the Guest group, but guests will then have either no or unlimited download/ upload limits (depending on the settings in LDM Allowances). |
#1256
|
||||
|
||||
Quote:
|
#1257
|
|||
|
|||
Quote:
|
#1258
|
|||
|
|||
It's explained in the wiki. Yes, it's a general purpose tool for managing files, links, uploads and downloads.
|
#1259
|
|||
|
|||
I have do the modification, added an audio, but the title don't change. I have do this modification :
Code:
if (array_key_exists('id3v2', $ThisFileInfo['tags'])) { $entitytags['Piste'] = $ThisFileInfo['tags']['id3v2']['title'][0]; $entitytags[Auteur'] = $ThisFileInfo['tags']['id3v2']['artist'][0]; $entitytags['Th?me'] = $ThisFileInfo['tags']['id3v2']['album'][0]; $entitytags['Genre'] = $ThisFileInfo['tags']['id3v2']['genre'][0]; $entitytags['Year'] = $ThisFileInfo['tags']['id3v2']['year'][0]; } elseif (array_key_exists('id3v1', $ThisFileInfo['tags'])) { $entitytags['Piste'] = $ThisFileInfo['tags']['id3v1']['title'][0]; $entitytags['Auteur'] = $ThisFileInfo['tags']['id3v1']['artist'][0]; $entitytags['Th?me'] = $ThisFileInfo['tags']['id3v1']['album'][0]; $entitytags['Genre'] = $ThisFileInfo['tags']['id3v1']['genre'][0]; $entitytags['Year'] = $ThisFileInfo['tags']['id3v1']['year'][0]; } if (array_key_exists('playtime_string', $ThisFileInfo)) { $entitytags['Dur?e'] = $ThisFileInfo['playtime_string']; } } break; case 'wma': $FileName = ldm_cleanto_fopen($linkurl); $getID3 = new getID3; $ThisFileInfo = $getID3->analyze($FileName); if (array_key_exists('playtime_string', $ThisFileInfo)) { $entitytags['Dur?e'] = $ThisFileInfo['playtime_string']; } break; case 'jpg': case 'jpeg': $FileName = ldm_cleanto_fopen($linkurl); $getID3 = new getID3; $ThisFileInfo = $getID3->analyze($FileName); if (array_key_exists('jpg', $ThisFileInfo)) { $entitytags['DateTime'] = $ThisFileInfo['jpg']['exif']['IFD0']['DateTime']; $entitytags['Height'] = $ThisFileInfo['jpg']['exif']['COMPUTED']['Height']; $entitytags['Width'] = $ThisFileInfo['jpg']['exif']['COMPUTED']['Width']; } break; case 'avi': case 'flv': case 'mpg': case 'mpeg': case 'mov': case 'rm': $FileName = ldm_cleanto_fopen($linkurl); $getID3 = new getID3; $ThisFileInfo = $getID3->analyze($FileName); if (array_key_exists('playtime_string', $ThisFileInfo)) { $entitytags['Dur?e'] = $ThisFileInfo['playtime_string']; } if (isset($ThisFileInfo["video"]["resolution_x"])) { $entitytags['Height'] = $ThisFileInfo['video']['resolution_y']; $entitytags['Width'] = $ThisFileInfo['video']['resolution_x']; } break; case 'asf': case 'wmv': $FileName = ldm_cleanto_fopen($linkurl); $getID3 = new getID3; $ThisFileInfo = $getID3->analyze($FileName); if (array_key_exists('playtime_string', $ThisFileInfo)) { $entitytags['Dur?e'] = $ThisFileInfo['playtime_string']; } if (isset($ThisFileInfo["video"]["streams"])) { foreach ($ThisFileInfo["video"]["streams"] as $thisstream) { if (isset($thisstream['resolution_x'])) { $entitytags['Height'] = $thisstream['resolution_y']; $entitytags['Width'] = $thisstream['resolution_x']; break; } } } break; } if (count($entitytags)) { require_once(DIR . '/includes/local_links_entities.php'); } foreach ($entitytags as $entityname=>$entityvalue) { $entityexists = 0; $entitygroup = ($links_defaults['id3tag_enhance_group'] ? $links_defaults['id3tag_enhance_group'] : ID3ENTITYGROUP); ldm_define_entity($entityname, $entitygroup, ENTITY_TYPE_TEXT, 1); if (is_array($linkentities)) { foreach ($linkentities as $thisentity) { if ($thisentity['entityname']==$entityname and $thisentity['entityset']) { $entityexists = 1; // User entry takes priority break; } } } if (!$entityexists) { $linkentities[] = array('entityname'=>$entityname, 'entityvalue'=>$entityvalue, 'entityset'=>1); } } } } |
#1260
|
|||
|
|||
Quote:
Quote:
*cURL* is an addon library for your web server. It provides another (better) way to access remote files. Your web admin has not installed it. Consequently, LDM cannot *manage* remote downloads - it can only manage *local* downloads. A *local* download is physically stored on your server (either an upload or a file with no url in its name). A *remote* download is a file accessed via a full url. These are two more settings that control php's handling of uploads, also found in the php configuration file *php.ini*. They specify the maximum amount of data that can be uploaded in one go. It is good practice (but not essential) that *post_max_size* has a bigger value than *upload_max_filesize*. Otherwise, when a user tries to upload file that is bigger than *post_max_size*, some versions of php will fail to generate an error message. |
#1261
|
|||
|
|||
Sorry, it works !
|
Thread Tools | |
|
|
X vBulletin 3.8.12 by vBS Debug Information | |
---|---|
|
|
More Information | |
Template Usage:
Phrase Groups Available:
|
Included Files:
Hooks Called:
|