Changeset 2298
- Timestamp:
- 06/05/10 23:59:16 (14 years ago)
- Location:
- plugins/pacKman
- Files:
-
- 3 added
- 11 edited
Legend:
- Unmodified
- Added
- Removed
-
plugins/pacKman/_admin.php
r1570 r2298 3 3 # This file is part of pacKman, a plugin for Dotclear 2. 4 4 # 5 # Copyright (c) 2009 JC Denis and contributors5 # Copyright (c) 2009-2010 JC Denis and contributors 6 6 # jcdenis@gdwd.com 7 7 # … … 19 19 'index.php?pf=pacKman/icon.png', 20 20 preg_match('/plugin.php\?p=pacKman(&.*)?$/',$_SERVER['REQUEST_URI']), 21 $core->auth->isSuperAdmin()); 21 $core->auth->isSuperAdmin() 22 ); 22 23 23 24 # Plugins tab 24 if ($core->blog->settings->packman_menu_plugins && $core->auth->isSuperAdmin()) 25 if ($core->blog->settings->pacKman->packman_menu_plugins && $core->auth->isSuperAdmin()) 26 { 25 27 $core->addBehavior('pluginsToolsTabs','packmanPluginsToolsTabs'); 26 28 } 27 29 function packmanPluginsToolsTabs($core) 28 30 { -
plugins/pacKman/_define.php
r1570 r2298 3 3 # This file is part of pacKman, a plugin for Dotclear 2. 4 4 # 5 # Copyright (c) 2009 JC Denis and contributors5 # Copyright (c) 2009-2010 JC Denis and contributors 6 6 # jcdenis@gdwd.com 7 7 # … … 17 17 /* Description*/ "Manage your Dotclear packages", 18 18 /* Author */ "JC Denis", 19 /* Version */ '0. 4',19 /* Version */ '0.5', 20 20 /* Permissions */ null 21 21 ); 22 /* date */ #20 09101022 /* date */ #20100605 23 23 ?> -
plugins/pacKman/_install.php
r1570 r2298 3 3 # This file is part of pacKman, a plugin for Dotclear 2. 4 4 # 5 # Copyright (c) 2009 JC Denis and contributors5 # Copyright (c) 2009-2010 JC Denis and contributors 6 6 # jcdenis@gdwd.com 7 7 # … … 20 20 try 21 21 { 22 if ( !version_compare(DC_VERSION,'2.1.5','>='))22 if (version_compare(DC_VERSION,'2.2-beta','<')) 23 23 { 24 throw new Exception('pacKman plugin requires Dotclear 2.1.5');24 throw new Exception('pacKman requires Dotclear 2.2'); 25 25 } 26 $s =& $core->blog->settings; 27 $s->setNameSpace('pacKman'); 28 $s->put('packman_menu_plugins',false,'boolean','Add link to pacKman in plugins page',false,true); 29 $s->put('packman_pack_overwrite',false,'boolean','Overwrite existing package',false,true); 30 $s->put('packman_pack_filename','%type%-%id%','string','Name of package',false,true); 31 $s->put('packman_secondpack_filename','%type%-%id%-%version%','string','Name of second package',false,true); 32 $s->put('packman_pack_repository','','string','Path to package repository',false,true); 33 $s->put('packman_pack_excludefiles','*.zip,*.tar,*.tar.gz','string','Extra files to exclude from package',false,true); 34 $s->setNameSpace('system'); 35 36 $core->setVersion('pacKman',$core->plugins->moduleInfo('pacKman','version')); 37 26 27 $core->blog->settings->addNamespace('pacKman'); 28 $core->blog->settings->pacKman->put('packman_menu_plugins',false,'boolean','Add link to pacKman in plugins page',false,true); 29 $core->blog->settings->pacKman->put('packman_pack_overwrite',false,'boolean','Overwrite existing package',false,true); 30 $core->blog->settings->pacKman->put('packman_pack_filename','%type%-%id%','string','Name of package',false,true); 31 $core->blog->settings->pacKman->put('packman_secondpack_filename','%type%-%id%-%version%','string','Name of second package',false,true); 32 $core->blog->settings->pacKman->put('packman_pack_repository','','string','Path to package repository',false,true); 33 $core->blog->settings->pacKman->put('packman_pack_excludefiles','*.zip,*.tar,*.tar.gz,.directory','string','Extra files to exclude from package',false,true); 34 35 $core->setVersion('pacKman',$new_version); 36 38 37 return true; 39 38 } -
plugins/pacKman/_prepend.php
r1570 r2298 3 3 # This file is part of pacKman, a plugin for Dotclear 2. 4 4 # 5 # Copyright (c) 2009 JC Denis and contributors5 # Copyright (c) 2009-2010 JC Denis and contributors 6 6 # jcdenis@gdwd.com 7 7 # -
plugins/pacKman/_uninstall.php
r1570 r2298 3 3 # This file is part of pacKman, a plugin for Dotclear 2. 4 4 # 5 # Copyright (c) 2009 JC Denis and contributors5 # Copyright (c) 2009-2010 JC Denis and contributors 6 6 # jcdenis@gdwd.com 7 7 # … … 39 39 /* action */ 'delete_all', 40 40 /* ns */ 'packman', 41 /* description */ __('delete all pacKman settings')41 /* description */ sprintf(__('delete all %s settings'),'pacKman') 42 42 ); 43 43 … … 46 46 /* action */ 'delete', 47 47 /* ns */ 'pacKman', 48 /* description */ __('delete pacKman plugin files')48 /* description */ sprintf(__('delete %s plugin files'),'pacKman') 49 49 ); 50 50 … … 53 53 /* action */ 'delete', 54 54 /* ns */ 'pacKman', 55 /* description */ __('delete pacKman version number')55 /* description */ sprintf(__('delete %s version number'),'pacKman') 56 56 ); 57 57 -
plugins/pacKman/inc/class.dc.packman.php
r1737 r2298 3 3 # This file is part of pacKman, a plugin for Dotclear 2. 4 4 # 5 # Copyright (c) 2009 JC Denis and contributors5 # Copyright (c) 2009-2010 JC Denis and contributors 6 6 # jcdenis@gdwd.com 7 7 # … … 29 29 { 30 30 $res = array(); 31 31 32 32 $cache = self::getCache().'/'; 33 33 if (!is_dir($root) || !is_readable($root)) return $res; 34 34 35 35 $files = files::scanDir($root); 36 36 $zip_files = array(); … … 40 40 $zip_files[] = $file; 41 41 } 42 42 43 43 if (empty($zip_files)) return $res; 44 44 45 45 $modules = new dcModules($core); 46 46 47 47 $i = 0; 48 48 foreach($zip_files AS $zip_file) 49 49 { 50 50 $zip = new fileUnzip($root.'/'.$zip_file); 51 51 52 52 $zip_root_dir = $zip->getRootDir(); 53 53 54 54 if ($zip_root_dir != false) 55 55 { … … 62 62 $has_define = $zip->hasFile($define); 63 63 } 64 64 65 65 if (!$has_define) continue; 66 66 67 67 $zip->unzip($define,$cache.'/_define.php'); 68 68 69 69 $modules->requireDefine($cache,$zip_root_dir); 70 70 $res[$i] = $modules->getModules($zip_root_dir); 71 71 $res[$i]['id'] = $zip_root_dir; 72 72 $res[$i]['root'] = $root.'/'.$zip_file; 73 73 74 74 unlink($cache.'_define.php'); 75 75 $i++; … … 77 77 return $res; 78 78 } 79 79 80 80 public static function pack($info,$root,$files,$overwrite=false,$exclude=array()) 81 81 { … … 83 83 if (!($root = self::getRoot($root))) return false; 84 84 $exclude = self::getExclude($exclude); 85 85 86 86 foreach($files as $file) 87 87 { 88 88 if (!($file = self::getFile($file,$info))) continue; 89 89 if (!($dest = self::getOverwrite($overwrite,$root,$file))) continue; 90 90 91 91 @set_time_limit(300); 92 92 $fp = fopen($dest,'wb'); 93 93 $zip = new fileZip($fp); 94 94 95 95 foreach($exclude AS $e) 96 96 { … … 98 98 } 99 99 $zip->addDirectory(path::real($info['root']),$info['id'],true); 100 100 101 101 $zip->write(); 102 102 $zip->close(); … … 105 105 return true; 106 106 } 107 107 108 108 private function getRoot($root) 109 109 { … … 116 116 return $root; 117 117 } 118 118 119 119 private function getInfo($info) 120 120 { … … 126 126 return $info; 127 127 } 128 128 129 129 private function getExclude($exclude) 130 130 { … … 132 132 return self::quote_exclude($exclude); 133 133 } 134 134 135 135 private function getFile($file,$info) 136 136 { 137 137 if (empty($file) || empty($info)) return null; 138 138 139 139 $file = str_replace( 140 140 array( … … 161 161 return implode('/',$parts).'.zip'; 162 162 } 163 163 164 164 private function getOverwrite($overwrite,$root,$file) 165 165 { … … 173 173 return $path; 174 174 } 175 175 176 176 private static function getCache() 177 177 { … … 189 189 } 190 190 } 191 192 191 ?> -
plugins/pacKman/inc/lib.packman.php
r1570 r2298 3 3 # This file is part of pacKman, a plugin for Dotclear 2. 4 4 # 5 # Copyright (c) 2009 JC Denis and contributors5 # Copyright (c) 2009-2010 JC Denis and contributors 6 6 # jcdenis@gdwd.com 7 7 # … … 24 24 } 25 25 26 public static function tab($modules,$type=null,$redir=null )26 public static function tab($modules,$type=null,$redir=null,$extern=true) 27 27 { 28 28 $type = $type == 'themes' ? 'themes' : 'plugins'; 29 30 echo 31 '<div class="multi-part" id="packman-'.$type.'" title="'. 32 sprintf(__('Pack up %s'),__($type)).'">'; 29 30 if ($extern) 31 { 32 echo '<div class="multi-part" id="packman-'.$type.'" title="'. 33 sprintf(__('Pack up %s'),__($type)). 34 '">'; 35 } 36 else 37 { 38 echo '<div id="packman-'.$type.'">'. 39 '<h3>'.sprintf(__('Pack up %s'),__($type)).'</h3>'; 40 } 33 41 34 42 if (isset($_REQUEST['packupdone'])) 43 { 35 44 echo '<p class="message">'.__('Package successfully created').'</p>'; 36 37 if (!empty($modules) && is_array($modules)) { 45 } 46 47 if (!empty($modules) && is_array($modules)) 48 { 38 49 echo 39 50 '<form action="plugin.php" method="post">'. … … 45 56 '<th class="nowrap">'.__('Author').'</th>'. 46 57 '</tr>'; 47 48 foreach ($modules as $id => $module) { 58 59 foreach ($modules as $id => $module) 60 { 49 61 echo 50 62 '<tr class="line">'. … … 62 74 '<p><input type="hidden" name="p" value="pacKman" />'. 63 75 '<input type="hidden" name="type" value="'.$type.'" />'; 64 76 65 77 if ($redir) 78 { 66 79 echo '<input type="hidden" name="redir" value="'.html::escapeHTML($redir).'" />'; 67 80 } 81 68 82 echo 69 83 '<input type="hidden" name="action" value="packup" />'. … … 71 85 $GLOBALS['core']->formNonce().'</p>'. 72 86 '</form>'; 73 } else 87 } 88 else 89 { 74 90 echo '<p><strong>'.__('No available module').'</strong></p>'; 75 91 } 76 92 echo '</div>'; 77 93 } 78 94 79 95 public static function repo($modules,$type) 80 96 { 81 97 if (!in_array($type,array('plugins','themes','repository'))) return; 82 98 83 echo '<h2>'.sprintf(__('Package available in %s directory'),__($type)).'</h2>'; 99 echo '<fieldset id="repo-'.$type.'">'. 100 '<legend>'.sprintf(__('Package available in %s directory'),__($type)).'</legend>'; 84 101 85 102 if (isset($_REQUEST['deletedone']) && $_REQUEST['deletedone'] == $type) 103 { 86 104 echo '<p class="message">'.__('Package successfully deleted').'</p>'; 87 105 } 88 106 if (isset($_REQUEST['copydone']) && $_REQUEST['copydone'] == $type) 107 { 89 108 echo '<p class="message">'.__('Package successfully copied').'</p>'; 90 109 } 91 110 if (isset($_REQUEST['movedone']) && $_REQUEST['movedone'] == $type) 111 { 92 112 echo '<p class="message">'.__('Package successfully moved').'</p>'; 93 113 } 94 114 if (isset($_REQUEST['installdone']) && $_REQUEST['installdone'] == $type) 115 { 95 116 echo '<p class="message">'.__('Package successfully installed').'</p>'; 96 117 } 97 118 if (empty($modules) || !is_array($modules)) 119 { 98 120 echo '<p><strong>'.__('No available module').'</strong></p>'; 99 100 else { 121 } 122 else 123 { 101 124 $combo_action = array(__('delete')=>'delete'); 102 125 103 126 if ($type == 'plugins' || $type == 'themes') 127 { 104 128 $combo_action[__('install')] = 'install'; 105 106 if ($type != 'plugins') { 129 } 130 if ($type != 'plugins') 131 { 107 132 $combo_action[sprintf(__('copy to %s directory'),__('plugins'))] = 'copy_to_plugins'; 108 133 $combo_action[sprintf(__('move to %s directory'),__('plugins'))] = 'move_to_plugins'; 109 134 } 110 if ($type != 'themes') { 135 if ($type != 'themes') 136 { 111 137 $combo_action[sprintf(__('copy to %s directory'),__('themes'))] = 'copy_to_themes'; 112 138 $combo_action[sprintf(__('move to %s directory'),__('themes'))] = 'move_to_themes'; 113 139 } 114 if ($type != 'repository') { 140 if ($type != 'repository') 141 { 115 142 $combo_action[sprintf(__('copy to %s directory'),__('repository'))] = 'copy_to_repository'; 116 143 $combo_action[sprintf(__('move to %s directory'),__('repository'))] = 'move_to_repository'; 117 144 } 118 145 119 146 echo 120 147 '<form action="plugin.php" method="post">'. 121 148 '<table class="clear"><tr>'. 149 '<th class="nowrap">'.__('Id').'</th>'. 150 '<th class="nowrap">'.__('Version').'</th>'. 122 151 '<th class="nowrap">'.__('File').'</th>'. 123 152 '<th class="nowrap">'.__('Name').'</th>'. 124 '<th class="nowrap">'.__('Version').'</th>'.125 '<th class="nowrap">'.__('Id').'</th>'.126 153 '<th class="nowrap">'.__('Description').'</th>'. 127 154 '<th class="nowrap">'.__('Author').'</th>'. 128 155 '</tr>'; 129 130 foreach($modules AS $module) { 156 157 $dup = array(); 158 foreach($modules AS $module) 159 { 160 if (isset($dup[$module['root']])) continue; 161 $dup[$module['root']] = 1; 162 131 163 echo 132 164 '<tr class="line">'. 133 165 '<td class="nowrap"><label class="classic" title="'. 134 html::escapeHTML($module['root']). 135 '">'. 166 html::escapeHTML($module['root']).'">'. 136 167 form::checkbox(array('modules['.html::escapeHTML($module['id']).']'),$module['root']). 137 basename($module['root']).'</label></td>'. 168 html::escapeHTML($module['id']).'</label></td>'. 169 '<td class="nowrap">'.html::escapeHTML($module['version']).'</td>'. 170 '<td class="nowrap">'. 171 '<a class="packman-download" href="plugin.php?p=pacKman&package='.basename($module['root']).'&repo='.$type.'" title="'.__('Download').'">'. 172 html::escapeHTML(basename($module['root'])).'</a></td>'. 138 173 '<td class="nowrap">'.__(html::escapeHTML($module['name'])).'</td>'. 139 '<td class="nowrap">'.html::escapeHTML($module['version']).'</td>'.140 '<td class="nowrap">'.html::escapeHTML($module['id']).'</td>'.141 174 '<td class="maximal">'.html::escapeHTML($module['desc']).'</td>'. 142 175 '<td class="nowrap">'.html::escapeHTML($module['author']).'</td>'. 143 176 '</tr>'; 144 177 } 145 178 146 179 echo 147 180 '</table>'. … … 159 192 '</form>'; 160 193 } 194 echo '</fieldset>'; 161 195 } 162 196 } -
plugins/pacKman/index.php
r2039 r2298 3 3 # This file is part of pacKman, a plugin for Dotclear 2. 4 4 # 5 # Copyright (c) 2009 JC Denis and contributors5 # Copyright (c) 2009-2010 JC Denis and contributors 6 6 # jcdenis@gdwd.com 7 7 # … … 17 17 # Init vars 18 18 $p_url = 'plugin.php?p=pacKman'; 19 $default_tab = isset($_REQUEST['tab']) ? $_REQUEST['tab'] : ' settings';19 $default_tab = isset($_REQUEST['tab']) ? $_REQUEST['tab'] : ''; 20 20 $action = isset($_POST['action']) ? $_POST['action'] : ''; 21 21 $type = isset($_POST['type']) && in_array($_POST['type'], … … 23 23 24 24 # Settings 25 $ s =& $core->blog->settings;26 $packman_menu_plugins = $ s->packman_menu_plugins;27 $packman_pack_overwrite = $ s->packman_pack_overwrite;28 $packman_pack_filename = $ s->packman_pack_filename;29 $packman_secondpack_filename = $ s->packman_secondpack_filename;30 $packman_pack_repository = $ s->packman_pack_repository;31 $packman_pack_excludefiles = $ s->packman_pack_excludefiles;25 $core->blog->settings->addNamespace('pacKman'); 26 $packman_menu_plugins = $core->blog->settings->pacKman->packman_menu_plugins; 27 $packman_pack_overwrite = $core->blog->settings->pacKman->packman_pack_overwrite; 28 $packman_pack_filename = $core->blog->settings->pacKman->packman_pack_filename; 29 $packman_secondpack_filename = $core->blog->settings->pacKman->packman_secondpack_filename; 30 $packman_pack_repository = $core->blog->settings->pacKman->packman_pack_repository; 31 $packman_pack_excludefiles = $core->blog->settings->pacKman->packman_pack_excludefiles; 32 32 33 33 # Load class … … 49 49 try 50 50 { 51 # Download 52 if (isset($_REQUEST['package']) && empty($type)) 53 { 54 $modules = array(); 55 if ($type == 'plugins') 56 { 57 $modules = dcPackman::getPackages($core,$plugins_path); 58 } 59 elseif ($type == 'themes') 60 { 61 $modules = dcPackman::getPackages($core,$themes_path); 62 } 63 else 64 { 65 $modules = array_merge( 66 dcPackman::getPackages($core,dirname($repo_path.'/'.$packman_pack_filename)), 67 dcPackman::getPackages($core,dirname($repo_path.'/'.$packman_secondpack_filename)) 68 ); 69 } 70 if (empty($modules)) 71 { 72 # Not found 73 header('Content-Type: text/plain'); 74 http::head(404,'Not Found'); 75 exit; 76 } 77 foreach($modules as $f) 78 { 79 if (preg_match('/'.preg_quote($_REQUEST['package']).'$/',$f['root']) 80 && is_file($f['root']) && is_readable($f['root'])) 81 { 82 83 # --BEHAVIOR-- packmanBeforeDownloadPackage 84 $core->callBehavior('packmanBeforeDownloadPackage',$f,$type); 85 86 header('Content-Type: application/zip'); 87 header('Content-Length: '.filesize($f['root'])); 88 header('Content-Disposition: attachment; filename="'.basename($f['root']).'"'); 89 readfile($f['root']); 90 91 # --BEHAVIOR-- packmanAfterDownloadPackage 92 $core->callBehavior('packmanAfterDownloadPackage',$f,$type); 93 94 exit; 95 } 96 } 97 # Not found 98 header('Content-Type: text/plain'); 99 http::head(404,'Not Found'); 100 exit; 101 } 102 51 103 # Reset settings 52 104 if (isset($_POST['reset_settings'])) 53 105 { 54 $s->setNamespace('pacKman'); 55 56 $s->put('packman_menu_plugins',false); 57 $s->put('packman_pack_overwrite',false); 58 $s->put('packman_pack_filename','%type%-%id%-%version%'); 59 $s->put('packman_secondpack_filename','%type%-%id%'); 60 $s->put('packman_pack_repository', 61 path::real(path::fullFromRoot($s->public_path,DC_ROOT))); 62 $s->put('packman_pack_excludefiles','*.zip,*.tar,*.tar.gz'); 63 $s->setNamespace('system'); 106 $core->blog->settings->pacKman->put('packman_menu_plugins',false); 107 $core->blog->settings->pacKman->put('packman_pack_overwrite',false); 108 $core->blog->settings->pacKman->put('packman_pack_filename','%type%-%id%-%version%'); 109 $core->blog->settings->pacKman->put('packman_secondpack_filename','%type%-%id%'); 110 $core->blog->settings->pacKman->put('packman_pack_repository', 111 path::real(path::fullFromRoot($core->blog->settings->system->public_path,DC_ROOT)) 112 ); 113 $core->blog->settings->pacKman->put('packman_pack_excludefiles','*.zip,*.tar,*.tar.gz'); 64 114 65 115 http::redirect($p_url.'&tab=settings&setupdone=1'); 66 116 } 67 117 68 118 # Save settings 69 119 if (isset($_POST['save_settings'])) 70 120 { 71 121 if (!is_writable($_POST['packman_pack_repository'])) 122 { 72 123 throw new Exception(__('Path to repository is not writable')); 73 124 } 74 125 if (empty($_POST['packman_pack_filename'])) 126 { 75 127 throw new Exception(__('You must specify the name of package to export')); 76 128 } 77 129 if (!is_writable(dirname($_POST['packman_pack_repository'].'/'.$_POST['packman_pack_filename']))) 130 { 78 131 throw new Exception(__('Path to first export package is not writable')); 79 132 } 80 133 if (!empty($_POST['packman_secondpack_filename']) 81 && !is_writable(dirname($_POST['packman_pack_repository'].'/'.$_POST['packman_secondpack_filename']))) 134 && !is_writable(dirname($_POST['packman_pack_repository'].'/'.$_POST['packman_secondpack_filename']))) 135 { 82 136 throw new Exception(__('Path to second export package is not writable')); 83 137 } 138 84 139 $packman_menu_plugins = !empty($_POST['packman_menu_plugins']); 85 140 $packman_pack_overwrite = !empty($_POST['packman_pack_overwrite']); … … 88 143 $packman_pack_repository = path::real($_POST['packman_pack_repository']); 89 144 $packman_pack_excludefiles = $_POST['packman_pack_excludefiles']; 90 91 $s->setNamespace('pacKman'); 92 $s->put('packman_menu_plugins',$packman_menu_plugins); 93 $s->put('packman_pack_overwrite',$packman_pack_overwrite); 94 $s->put('packman_pack_filename',$packman_pack_filename); 95 $s->put('packman_secondpack_filename',$packman_secondpack_filename); 96 $s->put('packman_pack_repository',$packman_pack_repository); 97 $s->put('packman_pack_excludefiles',$packman_pack_excludefiles); 98 $s->setNamespace('system'); 99 145 146 $core->blog->settings->pacKman->put('packman_menu_plugins',$packman_menu_plugins); 147 $core->blog->settings->pacKman->put('packman_pack_overwrite',$packman_pack_overwrite); 148 $core->blog->settings->pacKman->put('packman_pack_filename',$packman_pack_filename); 149 $core->blog->settings->pacKman->put('packman_secondpack_filename',$packman_secondpack_filename); 150 $core->blog->settings->pacKman->put('packman_pack_repository',$packman_pack_repository); 151 $core->blog->settings->pacKman->put('packman_pack_excludefiles',$packman_pack_excludefiles); 152 100 153 http::redirect($p_url.'&tab=settings&setupdone=1'); 101 154 } 102 155 103 156 # Pack 104 if ($action == 'packup') {105 157 if ($action == 'packup') 158 { 106 159 if ($type == '' || empty($_POST['modules']) || !is_array($_POST['modules'])) 160 { 107 161 throw new Exception('Nothing to pack'); 108 162 } 163 109 164 $modules = array_keys($_POST['modules']); 110 111 foreach ($modules as $module) {112 165 166 foreach ($modules as $module) 167 { 113 168 if (!${$type}->moduleExists($module)) 169 { 114 170 throw new Exception('No such module '.$module); 115 171 } 172 116 173 $info = ${$type}->getModules($module); 117 174 $info['id'] = $module; 118 175 $info['type'] = $type == 'themes' ? 'theme' : 'plugin'; 119 176 120 177 $root = $packman_pack_repository; 121 178 $files = array($packman_pack_filename,$packman_secondpack_filename); 122 179 $overwrite = $packman_pack_overwrite; 123 180 $exclude = explode(',',$packman_pack_excludefiles); 124 125 181 126 182 # --BEHAVIOR-- packmanBeforeCreatePackage 127 183 $core->callBehavior('packmanBeforeCreatePackage',$info,$root,$files,$overwrite,$exclude); 128 129 184 130 185 dcPackman::pack($info,$root,$files,$overwrite,$exclude); 131 132 186 133 187 # --BEHAVIOR-- packmanAfterCreatePackage 134 188 $core->callBehavior('packmanAfterCreatePackage',$info,$root,$files,$overwrite,$exclude); 135 136 137 } 138 139 if (!empty($_POST['redir'])) { 140 189 190 } 191 192 if (!empty($_POST['redir'])) 193 { 141 194 $redir = $_POST['redir']; 142 143 if (preg_match('!^plugins.php$!',$redir)) {144 195 196 if (preg_match('!^plugins.php$!',$redir)) 197 { 145 198 $qa = array('tab' => 'packman-plugins', 'packupdone' => '1'); 146 199 $redir .= '?'.http_build_query($qa,'','&'); … … 150 203 http::redirect($p_url.'&tab=packman-'.$type.'&packupdone=1'); 151 204 } 152 205 153 206 # Delete 154 if ($action == 'delete') {155 207 if ($action == 'delete') 208 { 156 209 if ($type == '' || empty($_POST['modules']) || !is_array($_POST['modules'])) 210 { 157 211 throw new Exception('Nothing to delete'); 158 212 } 159 213 if ($type == 'plugins') 214 { 160 215 $proot = $plugins_path; 161 216 } 162 217 elseif ($type == 'themes') 218 { 163 219 $proot == $themes_path; 164 220 } 165 221 else 222 { 166 223 $proot == 'repository'; 167 168 foreach ($_POST['modules'] as $module => $root) { 169 224 } 225 226 foreach ($_POST['modules'] as $module => $root) 227 { 170 228 if (!file_exists($root) || !files::isDeletable($root)) 229 { 171 230 throw new Exception('Undeletable file: '.$root); 172 231 } 173 232 unlink($root); 174 233 } 175 234 http::redirect($p_url.'&tab=repository&deletedone='.$type); 176 235 } 177 236 178 237 # Install 179 if ($action == 'install') {180 238 if ($action == 'install') 239 { 181 240 if ($type == '' || empty($_POST['modules']) || !is_array($_POST['modules'])) 241 { 182 242 throw new Exception('Nothing to install'); 183 184 foreach ($_POST['modules'] as $id => $root) { 185 186 243 } 244 245 foreach ($_POST['modules'] as $id => $root) 246 { 247 187 248 # --BEHAVIOR-- packmanBeforeInstallPackage 188 249 $core->callBehavior('packmanBeforeInstallPackage',$type,$id,$root); 189 190 250 191 251 if ($type == 'plugins') 252 { 192 253 $ret_code = $plugins->installPackage($root,$plugins); 193 254 } 194 255 if ($type == 'themes') 256 { 195 257 $ret_code = $themes->installPackage($root,$themes); 196 197 258 } 259 198 260 # --BEHAVIOR-- packmanAfterInstallPackage 199 261 $core->callBehavior('packmanAfterInstallPackage',$type,$id,$root); 200 201 262 202 263 } 203 264 http::redirect($p_url.'&tab=repository&installdone='.$type); 204 265 } 205 266 206 267 # Copy 207 268 if ($action == 'copy_to_plugins' 208 269 || $action == 'copy_to_themes' 209 || $action == 'copy_to_repository') {210 270 || $action == 'copy_to_repository') 271 { 211 272 if ($type == '' || empty($_POST['modules']) || !is_array($_POST['modules'])) 273 { 212 274 throw new Exception('Nothing to copy'); 213 275 } 214 276 if ($action == 'copy_to_plugins') 277 { 215 278 $dest = $plugins_path; 216 279 } 217 280 elseif ($action == 'copy_to_themes') 281 { 218 282 $dest = $themes_path; 219 283 } 220 284 elseif ($action == 'copy_to_repository') 285 { 221 286 $dest = $repo_path; 222 223 foreach ($_POST['modules'] as $id => $root) { 224 287 } 288 289 foreach ($_POST['modules'] as $id => $root) 290 { 225 291 file_put_contents($dest.'/'.basename($root),file_get_contents($root)); 226 292 } 227 293 http::redirect($p_url.'&tab=repository©done='.$type); 228 294 } 229 295 230 296 # Move 231 297 if ($action == 'move_to_plugins' 232 298 || $action == 'move_to_themes' 233 || $action == 'move_to_repository') {234 299 || $action == 'move_to_repository') 300 { 235 301 if ($type == '' || empty($_POST['modules']) || !is_array($_POST['modules'])) 302 { 236 303 throw new Exception('Nothing to move'); 237 304 } 238 305 if ($action == 'move_to_plugins') 306 { 239 307 $dest = $plugins_path; 240 308 } 241 309 elseif ($action == 'move_to_themes') 310 { 242 311 $dest = $themes_path; 243 312 } 244 313 elseif ($action == 'move_to_repository') 314 { 245 315 $dest = $repo_path; 246 247 foreach ($_POST['modules'] as $id => $root) { 248 316 } 317 318 foreach ($_POST['modules'] as $id => $root) 319 { 249 320 file_put_contents($dest.'/'.basename($root),file_get_contents($root)); 250 321 unlink($root); … … 253 324 } 254 325 } 255 catch(Exception $e) { 326 catch(Exception $e) 327 { 256 328 $core->error->add($e->getMessage()); 257 329 } 330 331 $iswritable = libPackman::is_writable($packman_pack_repository,$packman_pack_filename); 332 if ($default_tab == '') 333 { 334 $default_tab = $iswritable ? 'repository' : 'settings'; 335 } 336 258 337 259 338 # Display 260 339 echo ' 261 340 <html><head><title>'.__('pacKman').'</title> 262 '.dcPage::jsLoad('js/_posts_list.js'). dcPage::jsPageTabs($default_tab);263 341 '.dcPage::jsLoad('js/_posts_list.js'). 342 '<link rel="stylesheet" type="text/css" href="index.php?pf=pacKman/style.css" />'; 264 343 265 344 # --BEHAVIOR-- packmanAdminHeader 266 345 $core->callBehavior('packmanAdminHeader',$core,$default_tab); 267 346 268 269 347 echo ' 270 348 </head><body> 271 <h2>'.html::escapeHTML($core->blog->name).' › 272 pac<img alt="'.__('pacKman').'" src="index.php?pf=pacKman/icon.png" />man</h2>'; 273 274 if (libPackman::is_writable($packman_pack_repository,$packman_pack_filename)) 349 <h2>pac<img alt="'.__('pacKman').'" src="index.php?pf=pacKman/icon.png" />man'. 350 ' - <a class="button" href="'.$p_url.'&tab=packman-plugins">'.__('Plugins').'</a>'. 351 ' - <a class="button" href="'.$p_url.'&tab=packman-themes">'.__('Themes').'</a>'; 352 if ($iswritable) 353 { 354 echo ' - <a class="button" href="'.$p_url.'&tab=repository">'.__('Repositories').'</a>'; 355 } 356 echo 357 '</h2><hr class="clear" />'; 358 359 if ($default_tab == 'packman-plugins' && $iswritable) 360 { 361 libPackman::tab($plugins->getModules(),'plugins',null,false); 362 } 363 elseif ($default_tab == 'packman-themes' && $iswritable) 364 { 365 libPackman::tab($themes->getModules(),'themes',null,false); 366 } 367 elseif ($default_tab == 'repository' && $iswritable) 275 368 { 276 369 $repo_path_modules = array_merge( … … 278 371 dcPackman::getPackages($core,dirname($repo_path.'/'.$packman_secondpack_filename)) 279 372 ); 280 281 libPackman::tab($plugins->getModules(),'plugins'); 282 libPackman::tab($themes->getModules(),'themes'); 283 284 echo '<div class="multi-part" id="repository" title="'. __('Repository').'">'; 285 286 libPackman::repo(dcPackman::getPackages($core,$plugins_path),'plugins'); 287 libPackman::repo(dcPackman::getPackages($core,$themes_path),'themes'); 288 libPackman::repo($repo_path_modules,'repository'); 289 373 $plugins_path_modules = dcPackman::getPackages($core,$plugins_path); 374 $themes_path_modules = dcPackman::getPackages($core,$themes_path); 375 376 echo '<div id="repository"><h3>'. __('Repositories of packages').'</h3>'; 377 378 if (empty($plugins_path_modules) && empty($themes_path_modules) && empty($repo_path_modules)) 379 { 380 echo '<p>'.__('There is no package').'</p>'; 381 } 382 if (!empty($plugins_path_modules)) 383 { 384 libPackman::repo($plugins_path_modules,'plugins'); 385 } 386 if (!empty($themes_path_modules)) 387 { 388 libPackman::repo($themes_path_modules,'themes'); 389 } 390 if (!empty($repo_path_modules)) 391 { 392 libPackman::repo($repo_path_modules,'repository'); 393 } 394 290 395 echo '</div>'; 396 } 397 else 398 { 399 echo '<div id="settings"><h3>'. __('Settings').'</h3>'; 400 401 if (!is_writable(DC_TPL_CACHE)) 402 { 403 echo '<p class="error">'.__('Cache directory is not writable, packman repository functions are unavailable').'</p>'; 404 } 405 if (isset($_REQUEST['setupdone'])) 406 { 407 echo '<p class="message">'.__('Configuration successfully saved').'</p>'; 408 } 409 echo ' 410 <form method="post" action="'.$p_url.'"> 411 <fieldset id="setting-behavior"><legend>'.__('Behaviors').'</legend> 412 <p><label class="classic">'. 413 form::checkbox(array('packman_menu_plugins'),'1',$packman_menu_plugins).' '. 414 __('Enable menu on extensions page').'</label></p> 415 <p><label class="classic">'. 416 form::checkbox(array('packman_pack_overwrite'),'1',$packman_pack_overwrite).' '. 417 __('Overwrite existing package').'</label></p> 418 </fieldset> 419 420 <fieldset id="setting-file"><legend>'.__('Packages').'</legend> 421 <p><label class="classic">'.__('Name of exported package').'<br />'. 422 form::field(array('packman_pack_filename'),65,255,$packman_pack_filename).'</label></p> 423 <p><label class="classic">'.__('Name of second exported package').'<br />'. 424 form::field(array('packman_secondpack_filename'),65,255,$packman_secondpack_filename).'</label></p> 425 <p><label class="classic">'.__('Path to repository').'<br />'. 426 form::field(array('packman_pack_repository'),65,255,$packman_pack_repository).'</label></p>'; 427 if ($core->blog->public_path) 428 { 429 echo'<p class="form-note">'.sprintf(__('Public directory is: %s'),$core->blog->public_path).'</p>'; 430 } 431 echo ' 432 <p><label class="classic">'.__('Extra files to exclude from package').'<br />'. 433 form::field(array('packman_pack_excludefiles'),65,255,$packman_pack_excludefiles).'</label></p> 434 </fieldset> 435 436 <p class="clear"> 437 <input type="submit" name="save_settings" value="'.__('save').'" /> 438 <input type="submit" name="reset_settings" value="'.__('Reset settings').'" />'. 439 $core->formNonce(). 440 form::hidden(array('tab'),'settings'). 441 form::hidden(array('p'),'pacKman').' 442 </p> 443 </form> 444 </div>'; 291 445 } 292 446 … … 294 448 $core->callBehavior('packmanAdminTabs',$core,$default_tab); 295 449 296 297 echo '<div class="multi-part" id="settings" title="'. __('Settings').'">'; 298 299 if (!is_writable(DC_TPL_CACHE)) 300 echo '<p class="error">'.__('Cache directory is not writable, packman repository functions are unavailable').'</p>'; 301 302 if (isset($_REQUEST['setupdone'])) 303 echo '<p class="message">'.__('Configuration successfully saved').'</p>'; 304 305 echo ' 306 <form method="post" action="'.$p_url.'"> 307 <h2>'.__('Options').'</h2> 308 <p><label class="classic">'. 309 form::checkbox(array('packman_menu_plugins'),'1',$packman_menu_plugins).' '. 310 __('Enable menu on extensions page').'</label></p> 311 <p><label class="classic">'. 312 form::checkbox(array('packman_pack_overwrite'),'1',$packman_pack_overwrite).' '. 313 __('Overwrite existing package').'</label></p> 314 <h2>'.__('Files').'</h2> 315 <p><label class="classic">'.__('Name of exported package').'<br />'. 316 form::field(array('packman_pack_filename'),65,255,$packman_pack_filename).'</label></p> 317 <p><label class="classic">'.__('Name of second exported package').'<br />'. 318 form::field(array('packman_secondpack_filename'),65,255,$packman_secondpack_filename).'</label></p> 319 <p><label class="classic">'.__('Path to repository').'<br />'. 320 form::field(array('packman_pack_repository'),65,255,$packman_pack_repository).'</label></p>'; 321 if ($core->blog->public_path) { 322 echo'<p class="form-note">'.sprintf(__('Public directory is: %s'),$core->blog->public_path).'</p>'; 323 } 324 echo ' 325 <p><label class="classic">'.__('Extra files to exclude from package').'<br />'. 326 form::field(array('packman_pack_excludefiles'),65,255,$packman_pack_excludefiles).'</label></p> 327 <p class="clear"> 328 <input type="submit" name="save_settings" value="'.__('save').'" /> 329 <input type="submit" name="reset_settings" value="'.__('Reset settings').'" />'. 330 $core->formNonce(). 331 form::hidden(array('tab'),'settings'). 332 form::hidden(array('p'),'pacKman').' 333 </p> 334 </form> 335 </div> 336 '.dcPage::helpBlock('pacKman').' 337 <hr class="clear"/> 338 <p class="right"> 450 dcPage::helpBlock('pacKman'); 451 452 echo '<hr class="clear"/><p class="right"> 453 <a class="button" href="'.$p_url.'&tab=setting">'.__('Settings').'</a> - 339 454 pacKman - '.$core->plugins->moduleInfo('pacKman','version').' 340 455 <img alt="'.__('pacKman').'" src="index.php?pf=pacKman/icon.png" /> -
plugins/pacKman/locales/fr/main.lang.php
r1570 r2298 1 1 <?php 2 # -- BEGIN LICENSE BLOCK ---------------------------------- 3 # This file is part of pacKman, a plugin for Dotclear 2. 4 # 5 # Copyright (c) 2009 JC Denis and contributors 6 # jcdenis@gdwd.com 7 # 8 # Licensed under the GPL version 2.0 license. 9 # A copy of this license is available in LICENSE file or at 10 # http://www.gnu.org/licenses/old-licenses/gpl-2.0.html 11 # -- END LICENSE BLOCK ------------------------------------ 2 // Language: Français 3 // Module: pacKman - 0.5 4 // Date: 2010-06-05 10:04:17 5 // Translated with dcTranslater - 1.4 12 6 13 // Language: français 14 // Module: pacKman - 0.4 15 // Date: 2009-10-10 21:18:35 16 // Translated with dcTranslater - 1.2 17 18 #inc/lib.packman.php:32 7 #inc/lib.packman.php:33 8 #inc/lib.packman.php:39 19 9 $GLOBALS['__l10n']['Pack up %s'] = 'Emballer des %s'; 20 10 21 #inc/lib.packman.php: 3511 #inc/lib.packman.php:44 22 12 $GLOBALS['__l10n']['Package successfully created'] = 'Paquetage créé avec succès'; 23 13 24 #inc/lib.packman.php:70 14 #inc/lib.packman.php:52 15 #inc/lib.packman.php:150 16 $GLOBALS['__l10n']['Name'] = 'Nom'; 17 18 #inc/lib.packman.php:84 25 19 $GLOBALS['__l10n']['Pack up selected modules'] = 'Emballer les modules sélectionnés'; 26 20 27 #inc/lib.packman.php:98 21 #inc/lib.packman.php:90 22 #inc/lib.packman.php:120 28 23 $GLOBALS['__l10n']['No available module'] = 'Pas de module disponible'; 29 24 30 #inc/lib.packman.php: 8325 #inc/lib.packman.php:100 31 26 $GLOBALS['__l10n']['Package available in %s directory'] = 'Paquetage disponible dans le repertoire des %s'; 32 27 33 #inc/lib.packman.php: 8628 #inc/lib.packman.php:104 34 29 $GLOBALS['__l10n']['Package successfully deleted'] = 'Paquetage supprimé avec succès'; 35 30 36 #inc/lib.packman.php: 8931 #inc/lib.packman.php:108 37 32 $GLOBALS['__l10n']['Package successfully copied'] = 'Paquetage copié avec succès'; 38 33 39 #inc/lib.packman.php: 9234 #inc/lib.packman.php:112 40 35 $GLOBALS['__l10n']['Package successfully moved'] = 'Paquetage déplacé avec succès'; 41 36 42 #inc/lib.packman.php: 9537 #inc/lib.packman.php:116 43 38 $GLOBALS['__l10n']['Package successfully installed'] = 'Paquetage installé avec succès'; 44 39 45 #inc/lib.packman.php:1 0440 #inc/lib.packman.php:128 46 41 $GLOBALS['__l10n']['install'] = 'installer'; 47 42 48 #inc/lib.packman.php:115 43 #inc/lib.packman.php:132 44 #inc/lib.packman.php:137 45 #inc/lib.packman.php:142 49 46 $GLOBALS['__l10n']['copy to %s directory'] = 'copier dans le répertoire des %s'; 50 47 51 #inc/lib.packman.php:108 48 #inc/lib.packman.php:132 49 #inc/lib.packman.php:133 52 50 $GLOBALS['__l10n']['plugins'] = 'extensions'; 53 51 54 #inc/lib.packman.php:116 52 #inc/lib.packman.php:133 53 #inc/lib.packman.php:138 54 #inc/lib.packman.php:143 55 55 $GLOBALS['__l10n']['move to %s directory'] = 'déplacer dans le repertoire des %s'; 56 56 57 #inc/lib.packman.php:112 57 #inc/lib.packman.php:137 58 #inc/lib.packman.php:138 58 59 $GLOBALS['__l10n']['themes'] = 'thèmes'; 59 60 60 #inc/lib.packman.php:116 61 $GLOBALS['__l10n']['repository'] = 'dépôts'; 61 #inc/lib.packman.php:142 62 #inc/lib.packman.php:143 63 $GLOBALS['__l10n']['repository'] = 'dépôt'; 62 64 63 #inc/lib.packman.php:1 2265 #inc/lib.packman.php:149 64 66 $GLOBALS['__l10n']['File'] = 'Fichier'; 65 67 66 #inc/lib.packman.php:150 68 #inc/lib.packman.php:171 69 $GLOBALS['__l10n']['Download'] = 'Télécharger'; 70 71 #inc/lib.packman.php:184 67 72 $GLOBALS['__l10n']['Selected modules action:'] = 'Action sur les modules sélectionnés :'; 68 73 69 #index.php: 28270 $GLOBALS['__l10n'][' Repository'] = 'Dépôt';74 #index.php:123 75 $GLOBALS['__l10n']['Path to repository is not writable'] = 'Le chemin vers le dépôt n\'est pas accessible en écriture'; 71 76 72 #index.php:295 77 #index.php:127 78 $GLOBALS['__l10n']['You must specify the name of package to export'] = 'Vous devez un spécifier un nom de paquetage pour l\'export'; 79 80 #index.php:131 81 $GLOBALS['__l10n']['Path to first export package is not writable'] = 'Le premier chemin d\'export de paquetage n\'est pas accessible en écriture'; 82 83 #index.php:136 84 $GLOBALS['__l10n']['Path to second export package is not writable'] = 'Le second chemin d\'export de paquetage n\'est pas accessible en écriture'; 85 86 #index.php:354 87 $GLOBALS['__l10n']['Repositories'] = 'Dépôts'; 88 89 #index.php:376 90 $GLOBALS['__l10n']['Repositories of packages'] = 'Dépôts de paquetages'; 91 92 #index.php:380 93 $GLOBALS['__l10n']['There is no package'] = 'Il n\'y a pas de paquetage'; 94 95 #index.php:399 96 #index.php:453 73 97 $GLOBALS['__l10n']['Settings'] = 'Paramètres'; 74 98 75 #index.php: 29876 $GLOBALS['__l10n']['Cache directory is not writable, packman repository functions are unavailable'] = 'Le repertoire cache n\'est pas accessible en écriture, les f unctions de dépôt de packman ne sont pas disponibles';99 #index.php:403 100 $GLOBALS['__l10n']['Cache directory is not writable, packman repository functions are unavailable'] = 'Le repertoire cache n\'est pas accessible en écriture, les fonctions de dépôt de Packman ne sont pas disponibles'; 77 101 78 #index.php: 301102 #index.php:407 79 103 $GLOBALS['__l10n']['Configuration successfully saved'] = 'Configuration sauvergardée avec succès'; 80 104 81 #index.php:308 105 #index.php:411 106 $GLOBALS['__l10n']['Behaviors'] = 'Comportements'; 107 108 #index.php:414 82 109 $GLOBALS['__l10n']['Enable menu on extensions page'] = 'Activer le menu sur la page des extensions'; 83 110 84 #index.php: 311111 #index.php:417 85 112 $GLOBALS['__l10n']['Overwrite existing package'] = 'Écraser les paquetages existants'; 86 113 87 #index.php: 31288 $GLOBALS['__l10n'][' Files'] = 'Fichiers';114 #index.php:420 115 $GLOBALS['__l10n']['Packages'] = 'Paquetages'; 89 116 90 #index.php: 313117 #index.php:421 91 118 $GLOBALS['__l10n']['Name of exported package'] = 'Nom du paquetage exporté'; 92 119 93 #index.php: 315120 #index.php:423 94 121 $GLOBALS['__l10n']['Name of second exported package'] = 'Nom du second paquetage exporté'; 95 122 96 #index.php: 317123 #index.php:425 97 124 $GLOBALS['__l10n']['Path to repository'] = 'Chemin vers le dépôt'; 98 125 99 #index.php: 319100 $GLOBALS['__l10n'][' Extra files to exclude from package'] = 'Fichiers suplémentaires à exclure du paquetage';126 #index.php:429 127 $GLOBALS['__l10n']['Public directory is: %s'] = 'Le repertoire publique est: %s'; 101 128 102 #index.php:323 103 $GLOBALS['__l10n']['Reset settings'] = 'Remise à zero'; 129 #index.php:432 130 $GLOBALS['__l10n']['Extra files to exclude from package'] = 'Fichiers supplémentaires à exclure du paquetage'; 131 132 #index.php:438 133 $GLOBALS['__l10n']['Reset settings'] = 'Remise à zéro'; 104 134 105 135 ?> -
plugins/pacKman/locales/fr/main.po
r1762 r2298 1 # Language: français 2 # Module: pacKman - 0.4 3 # Date: 2009-10-10 21:18:35 4 # Translated with dcTranslater - 1.2 1 # Language: Français 2 # Module: pacKman - 0.5 3 # Date: 2010-06-05 10:04:17 4 # Translated with translater 1.4 5 5 6 msgid "" 6 7 msgstr "" 7 8 "Content-Type: text/plain; charset=UTF-8\n" 8 "Project-Id-Version: \n"9 "Project-Id-Version: pacKman 0.5\n" 9 10 "POT-Creation-Date: \n" 10 "PO-Revision-Date: \n"11 "Last-Translator: Kozlika <kozlika@free.fr>\n"11 "PO-Revision-Date: 2010-06-05T10:04:17+00:00\n" 12 "Last-Translator: JC Denis\n" 12 13 "Language-Team: \n" 13 14 "MIME-Version: 1.0\n" 14 15 "Content-Transfer-Encoding: 8bit\n" 15 16 16 #: inc/lib.packman.php:32 17 #: inc/lib.packman.php:33 18 #: inc/lib.packman.php:39 17 19 msgid "Pack up %s" 18 20 msgstr "Emballer des %s" 19 21 20 #: inc/lib.packman.php: 3522 #: inc/lib.packman.php:44 21 23 msgid "Package successfully created" 22 24 msgstr "Paquetage créé avec succès" 23 25 24 #: inc/lib.packman.php:70 26 #: inc/lib.packman.php:52 27 #: inc/lib.packman.php:150 28 msgid "Name" 29 msgstr "Nom" 30 31 #: inc/lib.packman.php:84 25 32 msgid "Pack up selected modules" 26 33 msgstr "Emballer les modules sélectionnés" 27 34 28 #: inc/lib.packman.php:98 35 #: inc/lib.packman.php:90 36 #: inc/lib.packman.php:120 29 37 msgid "No available module" 30 38 msgstr "Pas de module disponible" 31 39 32 #: inc/lib.packman.php: 8340 #: inc/lib.packman.php:100 33 41 msgid "Package available in %s directory" 34 42 msgstr "Paquetage disponible dans le repertoire des %s" 35 43 36 #: inc/lib.packman.php: 8644 #: inc/lib.packman.php:104 37 45 msgid "Package successfully deleted" 38 46 msgstr "Paquetage supprimé avec succès" 39 47 40 #: inc/lib.packman.php: 8948 #: inc/lib.packman.php:108 41 49 msgid "Package successfully copied" 42 50 msgstr "Paquetage copié avec succès" 43 51 44 #: inc/lib.packman.php: 9252 #: inc/lib.packman.php:112 45 53 msgid "Package successfully moved" 46 54 msgstr "Paquetage déplacé avec succès" 47 55 48 #: inc/lib.packman.php: 9556 #: inc/lib.packman.php:116 49 57 msgid "Package successfully installed" 50 58 msgstr "Paquetage installé avec succès" 51 59 52 #: inc/lib.packman.php:1 0460 #: inc/lib.packman.php:128 53 61 msgid "install" 54 62 msgstr "installer" 55 63 56 #: inc/lib.packman.php:115 64 #: inc/lib.packman.php:132 65 #: inc/lib.packman.php:137 66 #: inc/lib.packman.php:142 57 67 msgid "copy to %s directory" 58 68 msgstr "copier dans le répertoire des %s" 59 69 60 #: inc/lib.packman.php:108 70 #: inc/lib.packman.php:132 71 #: inc/lib.packman.php:133 61 72 msgid "plugins" 62 73 msgstr "extensions" 63 74 64 #: inc/lib.packman.php:116 75 #: inc/lib.packman.php:133 76 #: inc/lib.packman.php:138 77 #: inc/lib.packman.php:143 65 78 msgid "move to %s directory" 66 79 msgstr "déplacer dans le repertoire des %s" 67 80 68 #: inc/lib.packman.php:112 81 #: inc/lib.packman.php:137 82 #: inc/lib.packman.php:138 69 83 msgid "themes" 70 84 msgstr "thèmes" 71 85 72 #: inc/lib.packman.php:116 86 #: inc/lib.packman.php:142 87 #: inc/lib.packman.php:143 73 88 msgid "repository" 74 89 msgstr "dépôt" 75 90 76 #: inc/lib.packman.php:1 2291 #: inc/lib.packman.php:149 77 92 msgid "File" 78 93 msgstr "Fichier" 79 94 80 #: inc/lib.packman.php:150 95 #: inc/lib.packman.php:171 96 msgid "Download" 97 msgstr "Télécharger" 98 99 #: inc/lib.packman.php:184 81 100 msgid "Selected modules action:" 82 101 msgstr "Action sur les modules sélectionnés :" 83 102 84 #: index.php: 28285 msgid " Repository"86 msgstr " Dépôt"103 #: index.php:123 104 msgid "Path to repository is not writable" 105 msgstr "Le chemin vers le dépôt n'est pas accessible en écriture" 87 106 88 #: index.php:295 107 #: index.php:127 108 msgid "You must specify the name of package to export" 109 msgstr "Vous devez un spécifier un nom de paquetage pour l'export" 110 111 #: index.php:131 112 msgid "Path to first export package is not writable" 113 msgstr "Le premier chemin d'export de paquetage n'est pas accessible en écriture" 114 115 #: index.php:136 116 msgid "Path to second export package is not writable" 117 msgstr "Le second chemin d'export de paquetage n'est pas accessible en écriture" 118 119 #: index.php:354 120 msgid "Repositories" 121 msgstr "Dépôts" 122 123 #: index.php:376 124 msgid "Repositories of packages" 125 msgstr "Dépôts de paquetages" 126 127 #: index.php:380 128 msgid "There is no package" 129 msgstr "Il n'y a pas de paquetage" 130 131 #: index.php:399 132 #: index.php:453 89 133 msgid "Settings" 90 134 msgstr "Paramètres" 91 135 92 #: index.php: 298136 #: index.php:403 93 137 msgid "Cache directory is not writable, packman repository functions are unavailable" 94 138 msgstr "Le repertoire cache n'est pas accessible en écriture, les fonctions de dépôt de Packman ne sont pas disponibles" 95 139 96 #: index.php: 301140 #: index.php:407 97 141 msgid "Configuration successfully saved" 98 142 msgstr "Configuration sauvergardée avec succès" 99 143 100 #: index.php:308 144 #: index.php:411 145 msgid "Behaviors" 146 msgstr "Comportements" 147 148 #: index.php:414 101 149 msgid "Enable menu on extensions page" 102 150 msgstr "Activer le menu sur la page des extensions" 103 151 104 #: index.php: 311152 #: index.php:417 105 153 msgid "Overwrite existing package" 106 154 msgstr "Écraser les paquetages existants" 107 155 108 #: index.php: 312109 msgid " Files"110 msgstr " Fichiers"156 #: index.php:420 157 msgid "Packages" 158 msgstr "Paquetages" 111 159 112 #: index.php: 313160 #: index.php:421 113 161 msgid "Name of exported package" 114 162 msgstr "Nom du paquetage exporté" 115 163 116 #: index.php: 315164 #: index.php:423 117 165 msgid "Name of second exported package" 118 166 msgstr "Nom du second paquetage exporté" 119 167 120 #: index.php: 317168 #: index.php:425 121 169 msgid "Path to repository" 122 170 msgstr "Chemin vers le dépôt" 123 171 124 #: index.php:319 172 #: index.php:429 173 msgid "Public directory is: %s" 174 msgstr "Le repertoire publique est: %s" 175 176 #: index.php:432 125 177 msgid "Extra files to exclude from package" 126 178 msgstr "Fichiers supplémentaires à exclure du paquetage" 127 179 128 #: index.php: 323180 #: index.php:438 129 181 msgid "Reset settings" 130 182 msgstr "Remise à zéro" -
plugins/pacKman/release.txt
r1570 r2298 1 0.5 20100605 2 * Switched to DC 2.2 3 * Changed admin interface (easy, light, fast) 4 * Added direct download button on repository (closes #449) 5 1 6 0.4 20091010 2 7 * Fixed second package management
Note: See TracChangeset
for help on using the changeset viewer.