Fonction PHP

kinder77 Messages postés 134 Date d'inscription   Statut Membre Dernière intervention   -  
 Profil bloqué -
Bonjour,
Voila,n'étant pas un crack en php je m'efforce a traduire un plugin de wordpress cgm-event calendar pour qu'il me renvoie les mois,les jours et l'heure en français je galère
alors si quelqu'un peut m'aider ...voila une partie de la fonction que je pense:


<?php
foreach ($entries as $entry) {
echo '
<tr id="post-'.$entry->entry_id.'" class="alternate author-self status-publish iedit" valign="top">
<td class="post-title column-title"><strong><a class="row-title" href="admin.php?page=cgm_calendar_edit&entry_id='.$entry->entry_id.'" title="Edit “'.$entry->title.'">'.$entry->title.' - '.date('g:i a', $entry->start_date_time);
if (isset($entry->repeat_interval) && $entry->repeat_interval == 'days of week') {
echo ' ';
if (substr($entry->repeat_days, 1, 1) == '1') echo 'Mon ';
if (substr($entry->repeat_days, 2, 1) == '1') echo 'Tue ';
if (substr($entry->repeat_days, 3, 1) == '1') echo 'Wed ';
if (substr($entry->repeat_days, 4, 1) == '1') echo 'Thu ';
if (substr($entry->repeat_days, 5, 1) == '1') echo 'Fri ';
if (substr($entry->repeat_days, 6, 1) == '1') echo 'Sat ';
if (substr($entry->repeat_days, 0, 1) == '1') echo 'Sun ';
}
echo '</a></strong>';

echo '<div class="row-actions"><span class="edit"><a href="admin.php?page=cgm_calendar_edit&entry_id='.$entry->entry_id.'" title="Edit this entry">'.__('Edit', 'cgm_event_calendar').'</a> | </span><span class="delete"><a class="submitdelete" title="Delete this calendar entry" href="admin.php?page=cgm-event-calendar/cgm_calendar.php&delete_id='.$entry->entry_id.'" onClick="if ( confirm(\''.__('Are you sure you wish to delete this entry?', 'cgm_event_calendar').'\') ) { return true;}return false;">'.__('Delete', 'cgm_event_calendar').'</a></span></div>';
echo '</td>
<td class="tags column-tags">';
$tags = $wpdb->get_results("select td.tag_name from ".$wpdb->prefix."cgm_cal_tags td, ".$wpdb->prefix."cgm_cal_entry_tags t where t.entry_id = '".$entry->entry_id."' and t.tag_id = td.tag_id");
$tag_out = '';
foreach ($tags as $tag) {
$tag_out .= $tag->tag_name.', ';
}
$tag_out = trim($tag_out, ', ');
if ($tag_out != '') {
echo $tag_out;
} else {
echo 'none';
}
echo '</td>
</tr>';
}
?>
</tbody>
</table>
</div>
<?php
}

// EDIT/ADD/DELETE entries
function edit_entry() {
global $wpdb;
global $current_user;
$wpdb->show_errors();
$error_message = '';


$entry_id = '';
$entry = array();
if (isset($_GET['entry_id']) && is_numeric($_GET['entry_id'])) {
$entry_id = absint($_GET['entry_id']);
$entry = $wpdb->get_row("SELECT * FROM ".$wpdb->prefix."cgm_cal_entries WHERE entry_id = '".$entry_id."'");
}

// -----------------------------------------------
// ADD OR SAVE THE ENTRY
// -----------------------------------------------
if (isset($_POST['action']) && ($_POST['action'] == 'new' || $_POST['action'] == 'update')) {
$clean = $this->clean_input($_POST);

//$this->pa($clean);

// FILTER IN ANY GET INPUTS
$repeat_days = '0000000';
$repeat = 0;

$error_message = '';
$time_error = '';
if ($clean['title'] == '') $error_message .= __('You must enter a title.', 'cgm_event_calendar')."\n";

// CHECK THE START DATE AND SET THE UTC TIME
if ($clean['start_date_time'] == '') {
$time_error .= __('You must enter a start date.', 'cgm_event_calendar').'<br />';
} else {

$date = explode('/', $clean['start_date_time']);

if (count($date) != 3 || preg_match('[^0-9]', $date[0]) || preg_match('[^0-9]', $date[1]) || preg_match('[^0-9]', $date[2])) {
$time_error .= __('It appears you have entered an incorrect start date. Please check and try again.', 'cgm_event_calendar').'<br />';
} else {

if (strlen($date[0]) < 1 || strlen($date[0]) > 2 || intval($date[0]) < 1 || intval($date[0]) > 12) {
$time_error .= __('It appears you have entered an incorrect start date. Please check and try again.', 'cgm_event_calendar').'<br />';
} else if (strlen($date[1]) < 1 || strlen($date[1]) > 2 || intval($date[0]) < 1 || intval($date[0]) > 31) {
$time_error .= __('It appears you have entered an incorrect start date. Please check and try again.', 'cgm_event_calendar').'<br />';
} else if (strlen($date[2]) != 4) {
$time_error .= __('It appears you have entered an incorrect start date. Please check and try again.', 'cgm_event_calendar').'<br />';
}
}
if (intval($clean['start_hour']) < 0 || intval($clean['start_hour']) > 12) {
$time_error .= __('It appears you have entered an incorrect start hour. Please check and try again.', 'cgm_event_calendar').'<br />';
}
if ($clean['start_minutes'] < 0 || $clean['start_minutes'] > 59) {
$time_error .= __('It appears you have entered an incorrect start minute. Please check and try again.', 'cgm_event_calendar').'<br />';
}
}
if ($time_error == '') {
if ($clean['start_meridiem'] == 'PM' && $clean['start_hour'] != 12) {
$clean['start_hour'] += 12;
}
if ($clean['start_meridiem'] == 'AM' && $clean['start_hour'] == 12) {
$clean['start_hour'] = 0;
}
$clean['start_date_time'] = $this->dbtime($clean['start_hour'],$clean['start_minutes'],0,$date[0], $date[1], $date[2]);
}
$error_message .= $time_error;

$time_error = '';
// CHECK THE END DATE AND SET THE UTC TIME
if ($clean['end_date_time'] == '') {
$time_error .= __('You must enter a start date.', 'cgm_event_calendar').'<br />';
} else {
$date = explode('/', $clean['end_date_time']);
if (count($date) != 3 || preg_match('[^0-9]', $date[0]) || preg_match('[^0-9]', $date[1]) || preg_match('[^0-9]', $date[2])) {
$time_error .= __('It appears you have entered an incorrect end date. Please check and try again.', 'cgm_event_calendar').'<br />';
} else {
if (strlen($date[0]) < 1 || strlen($date[0]) > 2 || intval($date[0]) < 1 || intval($date[0]) > 12) {
$time_error .= __('It appears you have entered an incorrect end date. Please check and try again.', 'cgm_event_calendar').'<br />';
} else if (strlen($date[1]) < 1 || strlen($date[1]) > 2 || intval($date[0]) < 1 || intval($date[0]) > 31) {
$time_error .= __('It appears you have entered an incorrect end date. Please check and try again.', 'cgm_event_calendar').'<br />';
} else if (strlen($date[2]) != 4) {
$time_error .= __('It appears you have entered an incorrect end date. Please check and try again.', 'cgm_event_calendar').'<br />';
}
}
if ($clean['end_hour'] < 0 || $clean['end_hour'] > 12) {
$time_error .= __('It appears you have entered an incorrect end hour. Please check and try again.', 'cgm_event_calendar').'<br />';
}
if ($clean['end_minutes'] < 0 || $clean['end_minutes'] > 59) {
$time_error .= __('It appears you have entered an incorrect end minute. Please check and try again.', 'cgm_event_calendar').'<br />';
}
}
if ($time_error == '') {
if ($clean['end_meridiem'] == 'PM' && $clean['end_hour'] != 12) {
$clean['end_hour'] += 12;
}
if ($clean['end_meridiem'] == 'AM' && $clean['end_hour'] == 12) {
$clean['end_hour'] = 0;
}
$clean['end_date_time'] = $this->dbtime($clean['end_hour'],$clean['end_minutes'],0,$date[0], $date[1], $date[2]);
}
$error_message .= $time_error;

// MAKE SURE THE END DATE IS LATER
if ($error_message == '') {
if ($clean['end_date_time'] <= $clean['start_date_time']) {
$error_message .= __('Your end date must be sometime after your start date.', 'cgm_event_calendar').'<br />';
}
}

// CHECK THE EXPIRATION DATE AND SET TO UTC IF NEEDED
if ($clean['repeat_interval'] != 'none') {
$repeat = '1';
if ($clean['expiration_date_time'] == '' || $clean['repeat_forever'] == 'on') {
$clean['expiration_date_time'] = '0';
} else {

$date = explode('/', $clean['expiration_date_time']);
if (count($date) != 3 || preg_match('[^0-9]', $date[0]) || preg_match('[^0-9]', $date[1]) || preg_match('[^0-9]', $date[2])) {
$error_message .= __('It appears you have entered an incorrect expiration date. Please check and try again.', 'cgm_event_calendar').'<br />';
} else {
if (strlen($date[0]) < 1 || strlen($date[0]) > 2 || intval($date[0]) < 1 || intval($date[0]) > 12) {
$error_message .= __('It appears you have entered an incorrect expiration date. Please check and try again.', 'cgm_event_calendar').'<br />';
} else if (strlen($date[1]) < 1 || strlen($date[1]) > 2 || intval($date[0]) < 1 || intval($date[0]) > 31) {
$error_message .= __('It appears you have entered an incorrect expiration date. Please check and try again.', 'cgm_event_calendar').'<br />';
} else if (strlen($date[2]) != 4 || intval($date[2]) < date('Y')) {
$error_message .= __('It appears you have entered an incorrect expiration date. Please check and try again.', 'cgm_event_calendar').'<br />';
}
}

if ($error_message == '') {
$clean['expiration_date_time'] = $this->dbtime(23,59,59,$date[0], $date[1], $date[2]);
}

}
} else {
$clean['repeat_forever'] == 'on';
$clean['expiration_date_time'] = '0';
}
$repeat_days = '';
if ($clean['repeat_interval'] == 'these relative days') {
if ($clean['first'] == '' && $clean['second'] == '' && $clean['third'] == '' && $clean['fourth'] == '' && $clean['fifth'] == '' && $clean['last'] == '') {
$error_message .= __('You must select at least one relative day for the event to occur', 'cgm_event_calendar');
} else {
if ($clean['first'] == 'on') $repeat_days = '1'; else $repeat_days = '0';
if ($clean['second'] == 'on') $repeat_days .= '1'; else $repeat_days .= '0';
if ($clean['third'] == 'on') $repeat_days .= '1'; else $repeat_days .= '0';
if ($clean['fourth'] == 'on') $repeat_days .= '1'; else $repeat_days .= '0';
if ($clean['fifth'] == 'on') $repeat_days .= '1'; else $repeat_days .= '0';
if ($clean['last'] == 'on') $repeat_days .= '1'; else $repeat_days .= '0';
}
} else if ($clean['repeat_interval'] == 'days of week') {
if ($clean['lundi'] == '' && $clean['mardi'] == '' && $clean['mercredi'] == '' && $clean['jeudi'] == '' && $clean['vendredi'] == '' && $clean['samedi'] == '' && $clean['dimanche'] == '') {
$error_message .= __('You must select at least one day of the week for the event to occur', 'cgm_event_calendar');
} else {
if ($clean['dimanche'] == 'on') $repeat_days = '1'; else $repeat_days = '0';
if ($clean['lundi'] == 'on') $repeat_days .= '1'; else $repeat_days .= '0';
if ($clean['mardi'] == 'on') $repeat_days .= '1'; else $repeat_days .= '0';
if ($clean['mercredi'] == 'on') $repeat_days .= '1'; else $repeat_days .= '0';
if ($clean['jeudi'] == 'on') $repeat_days .= '1'; else $repeat_days .= '0';
if ($clean['vendredi'] == 'on') $repeat_days .= '1'; else $repeat_days .= '0';
if ($clean['dimanche'] == 'on') $repeat_days .= '1'; else $repeat_days .= '0';
}
}
$clean['repeat_days'] = $repeat_days;

if ($clean['action'] == 'new' && $error_message == '') {

$table_name = $wpdb->prefix . "cgm_cal_entries";

$data = array(
'start_date_time' => $clean['start_date_time'],
'end_date_time' => $clean['end_date_time'],
'does_repeat' => $repeat,
'repeat_interval' => $clean['repeat_interval'],
'repeat_days' => $clean['repeat_days'],
'expiration_date_time' => $clean['expiration_date_time'],
'title' => $clean['title'],
'description' => $clean['description'],
'location' => $clean['location'],
'instructor' => $clean['instructor'],
'level' => ''
);

$wpdb->insert( $table_name, $data );
$entry_id = $wpdb->insert_id;

$table_name = $wpdb->prefix . "cgm_cal_entry_includes";
if (count($clean['include_dates_select']) > 0) {
foreach ($clean['include_dates_select'] as $include_date) {
if ($include_date != '') {
$temp = explode(" ", $include_date);
$repeat_yearly = $temp[1];
$date = explode('/', $temp[0]);
if (count($date) != 3 || preg_match('[^0-9]', $date[0]) || preg_match('[^0-9]', $date[1]) || preg_match('[^0-9]', $date[2])) {
$error_message .= __('It appears you have entered an incorrect include date. Please check and try again.', 'cgm_event_calendar').'<br />';
} else {
if (strlen($date[0]) < 1 || strlen($date[0]) > 2 || intval($date[0]) < 1 || intval($date[0]) > 12) {
$error_message .= __('It appears you have entered an incorrect include date. Please check and try again.', 'cgm_event_calendar').'<br />';
} else if (strlen($date[1]) < 1 || strlen($date[1]) > 2 || intval($date[0]) < 1 || intval($date[0]) > 31) {
$error_message .= __('It appears you have entered an incorrect include date. Please check and try again.', 'cgm_event_calendar').'<br />';
} else if (strlen($date[2]) != 4 || intval($date[2]) < date('Y')) {
$error_message .= __('It appears you have entered an incorrect include date. Please check and try again.', 'cgm_event_calendar').'<br />';
}
}
if ($error_message == '') {
$date = $this->dbtime(0,0,0,$date[0], $date[1], $date[2]);
$data = array(
'entry_id' => $entry_id,
'include_date' => $date,
'every_year' => $repeat_yearly
);
$wpdb->insert( $table_name, $data );
}
}
}
}



A voir également:

1 réponse

Profil bloqué
 
Slt,
Tu aurais demander du html ou css je t'aurais repondut mais du php alors la je peux pas t'aider mais je veux voir qui va répondre à ta demande car je veux voir si y en qui sont fort en php. a++ Bonne continuation dans tes recherches.
0
kinder77 Messages postés 134 Date d'inscription   Statut Membre Dernière intervention   9
 
Merci quand meme
0
Profil bloqué
 
Dr ^^
0