???? زائر
موضوع: لترقيه الاستايل بكل سهوله السبت يناير 30, 2010 11:16 am ??? ???? ?????? ?????? ???? ?FTP ?? ???? ???admincp template.php ????? ?? :- ??? PHP:
// ################################################## ########################### // generate a diff between two templates (current or historical versions) if ( $_POST [ 'do' ] == 'docompare' ) { ??? ???? ??? ????? :- ??? PHP:
if ( $_POST [ 'do' ] == 'docompare' AND !empty( $_POST [ 'domerge' ])) { $_POST [ 'do' ] = 'merge' ; } ?? ??? ????? ???? ?? :- ??? PHP:
print_table_header ( construct_phrase ( $vbphrase [ 'comparing_versions_of_x' ], htmlspecialchars_uni ( $left_template [ 'title' ]))); print_cells_row (array( $vbphrase [ 'old_version' ], $vbphrase [ 'new_version' ] ), true , false , 1 ); foreach ( $entries AS $diff_entry ) { // possible classes: unchanged, notext, deleted, added, changed echo "\n\t"; echo ' . $diff_entry -> fetch_data_old_class () . '" dir="ltr">' . $diff_entry -> prep_diff_text ( $diff_entry -> fetch_data_old (), $vbulletin -> GPC [ 'wrap' ]) . " \n\t"; echo ' . $diff_entry -> fetch_data_new_class () . '" dir="ltr">' . $diff_entry -> prep_diff_text ( $diff_entry -> fetch_data_new (), $vbulletin -> GPC [ 'wrap' ]) . " \n"; echo " \n\n" ; } ??????? ???? ????? :- ??? PHP:
print_table_header ( construct_phrase ( $vbphrase [ 'comparing_versions_of_x' ], htmlspecialchars_uni ( $left_template [ 'title' ])), 3 ); print_cells_row (array( $vbphrase [ 'old_version' ], $vbphrase [ 'new_version' ], $vbphrase [ 'merge' ] ), true , false , 1 ); ?> function merge(entrynum, checkbox) { var leftentry = fetch_object('entry_' + entrynum + '_left'); var rightentry = fetch_object('entry_' + entrynum + '_right'); rightentry.innerHTML = leftentry.innerHTML; rightentry.className = 'diff-unchanged'; leftentry.className = 'diff-unchanged'; checkbox.style.display = 'none'; } foreach ( $entries AS $entrynum => $diff_entry ) { // possible classes: unchanged, notext, deleted, added, changed echo "\n\t"; echo ' . $entrynum . '_left" width="50%" valign="top" class="diff-' . $diff_entry -> fetch_data_old_class () . '" dir="ltr">' . $diff_entry -> prep_diff_text ( $diff_entry -> fetch_data_old (), 1 ) . " \n\t"; echo ' . $entrynum . '_right" width="50%" valign="top" class="diff-' . $diff_entry -> fetch_data_new_class () . '" dir="ltr">' . $diff_entry -> prep_diff_text ( $diff_entry -> fetch_data_new (), 1 ) . " \n"; if ( $diff_entry -> fetch_data_old_class () != 'unchanged' ) { echo( " "); } else { echo( " "); } echo " \n\n" ; } ???? ?? :- ??? PHP:
print_submit_row (( $vbulletin -> GPC [ 'wrap' ] ? $vbphrase [ 'disable_wrapping' ] : $vbphrase [ 'enable_wrapping' ]), '' ); ??????? ???? ?????:- ??? PHP:
print_submit_row (( $vbulletin -> GPC [ 'wrap' ] ? $vbphrase [ 'disable_wrapping' ] : $vbphrase [ 'enable_wrapping' ]), '' , 3 , '' , " " ); ???? ???? ???? ?? :- ??? PHP:
// ################################################## ########################### // insert queries and cache rebuilt for template insertion if ( $_POST [ 'do' ] == 'inserttemplate' ) { ??? ???? ??? ??? ????? :- ??? PHP:
if ( $_POST [ 'do' ] == 'merge' ) { $vbulletin -> input -> clean_array_gpc ( 'p' , array( 'left_template' => TYPE_STR , 'right_template' => TYPE_STR , 'merge' => TYPE_ARRAY_BOOL , )); list( $left_id , $left_type ) = explode ( '|' , $vbulletin -> GPC [ 'left_template' ]); list( $right_id , $right_type ) = explode ( '|' , $vbulletin -> GPC [ 'right_template' ]); $left_template = fetch_template_current_historical ( $left_id , $left_type ); $right_template = fetch_template_current_historical ( $right_id , $right_type ); if (! $left_template OR ! $right_template ) { exit; } require_once( DIR . '/includes/class_diff.php' ); $diff =& new vB_Text_Diff ( $left_template [ 'templatetext' ], $right_template [ 'templatetext' ]); $entries =& $diff -> fetch_diff (); foreach ( $entries AS $linenum => $diff_entry ) { if ( $vbulletin -> GPC [ 'merge' ][ "$linenum" ]) { $mergedtemplate .= "\n" . $diff_entry -> fetch_data_old (); } else { $mergedtemplate .= "\n" . $diff_entry -> fetch_data_new (); } } $mergedtemplate = substr ( $mergedtemplate , 1 ); // save current version in template history $db -> query_write ( " INSERT INTO " . TABLE_PREFIX . "templatehistory (styleid, title, template, dateline, username, version, comment) VALUES (" . $right_template [ 'styleid' ] . ", '" . $db -> escape_string ( $right_template [ 'title' ]) . "', '" . $db -> escape_string ( $right_template [ 'template_un' ]) . "', " . TIMENOW . ", '" . $db -> escape_string ( $vbphrase [ 'template_merge_system' ]) . "', '" . $db -> escape_string ( $right_template [ 'version' ]) . "', '" . $db -> escape_string ( $vbphrase [ 'version_before_merge' ]) . "') " ); // save merged template $db -> query_write ( " UPDATE " . TABLE_PREFIX . "template SET template = '" . $db -> escape_string ( compile_template ( $mergedtemplate )) . "', template_un = '" . $db -> escape_string ( $mergedtemplate ) . "', dateline = " . TIMENOW . ", version = '" . $db -> escape_string ( $vbulletin -> options [ 'templateversion' ]) . "', username = '" . $db -> escape_string ( $vbphrase [ 'template_merge_system' ]) . "' WHERE templateid = $right_template[templateid] " ); define ( 'CP_REDIRECT' , 'template.php?do=findupdates' ); print_stop_message ( 'template_merged_successfully' ); }