Show
Ignore:
Timestamp:
02/18/11 17:15:58 (2 years ago)
Author:
patdenice
Message:

Permalink accept special chars.
Bug correction.

Files:
1 modified

Legend:

Unmodified
Added
Removed
  • extensions/AdditionalPages/admin/add_page.inc.php

    r9273 r9275  
    2020  if (!empty($_POST['permalink'])) 
    2121  { 
    22     $permalink = $_POST['permalink']; 
    23     $sanitized_permalink = preg_replace( '#[^a-zA-Z0-9_/-]#', '' ,$permalink); 
    24     $sanitized_permalink = trim($sanitized_permalink, '/'); 
    25     $sanitized_permalink = str_replace('//', '/', $sanitized_permalink); 
    26     if ( $sanitized_permalink != $permalink or preg_match( '#^(\d)+(-.*)?$#', $permalink) ) 
    27     { 
    28       array_push($page['errors'], l10n('The permalink name must be composed of a-z, A-Z, 0-9, "-", "_" or "/". It must not be numeric or start with number followed by "-"')); 
    29     } 
     22    $permalink = trim($_POST['permalink'], ' /'); 
     23    $permalink = str_replace(array(' ', '/'), '_',$permalink); 
     24 
    3025    $query =' 
    3126SELECT id FROM '.ADD_PAGES_TABLE.' 
     
    4742  $language = $_POST['lang'] != 'ALL' ? '"'.$_POST['lang'].'"' : 'NULL'; 
    4843  $group_access = !empty($_POST['groups']) ? '"'.implode(',', $_POST['groups']).'"' : 'NULL'; 
    49   $user_access = !empty($_POST['users']) ? '"'.implode(',', $_POST['users']).'"' : 'NULL'; 
    5044  $standalone = isset($_POST['standalone']) ? '"true"' : '"false"'; 
     45 
     46  $user_access = 'NULL'; 
     47  if ($conf['additional_pages']['user_perm']) 
     48  { 
     49    $user_access = !empty($_POST['users']) ? '"'.implode(',', $_POST['users']).'"' : '"admin"'; 
     50  } 
    5151 
    5252  if (empty($page['errors'])) 
     
    106106  $edited_page['title'] = stripslashes($_POST['title']); 
    107107  $edited_page['permalink'] = $_POST['permalink']; 
     108  $edited_page['lang'] = $_POST['lang']; 
    108109  $edited_page['content'] = stripslashes($_POST['ap_content']); 
    109110  $edited_page['groups'] = !empty($_POST['groups']) ? trim($group_access, '"') : ''; 
     
    139140if ($conf['additional_pages']['user_perm']) 
    140141{ 
    141   if (isset($_GET['edit'])) 
    142           $selected_users = isset($edited_page['users']) ? explode(',', $edited_page['users']) : array(); 
    143   else 
    144     $selected_users = array('guest', 'generic', 'normal'); 
     142  $selected_users = array('guest', 'generic', 'normal'); 
     143  if (isset($_GET['edit']) and isset($edited_page['users'])) 
     144  { 
     145    $selected_users = explode(',', $edited_page['users']); 
     146  } 
    145147 
    146148        $template->assign('user_perm', array( 
    147     'GUEST' => (in_array('guest', $selected_users) ? 'checked="checked"' : ''), 
    148                 'GENERIC' => (in_array('generic', $selected_users) ? 'checked="checked"' : ''), 
    149                 'NORMAL' => (in_array('normal', $selected_users) ? 'checked="checked"' : ''))); 
     149      'GUEST' => in_array('guest', $selected_users) ? 'checked="checked"' : '', 
     150      'GENERIC' => in_array('generic', $selected_users) ? 'checked="checked"' : '', 
     151      'NORMAL' => in_array('normal', $selected_users) ? 'checked="checked"' : '' 
     152    ) 
     153  ); 
    150154} 
    151155