web/wp-content/plugins/gigs-calendar/feedback.ajax.php
branchwordpress
changeset 112 fb7cd02b9848
parent 111 6b96085291d7
child 123 561aa6d282f6
equal deleted inserted replaced
111:6b96085291d7 112:fb7cd02b9848
     1 <?php
       
     2 
       
     3 require_once 'ajaxSetup.php';
       
     4 
       
     5 if ( 'load' == $_POST['action'] ) {
       
     6 	$userinfo = wp_get_current_user();
       
     7 	//print_r($userinfo);
       
     8 	?>
       
     9 		<h3 class="no-margin"><?php _e('Want to tell me what a great/horrible job I did?', $gcd) ?></h3>
       
    10 		<form id="submit-feedback" class="feedback" action="<?php echo $folder;?>feedback.ajax.php" method="post">
       
    11 			<input type="hidden" name="nonce" value="<?php echo $_POST['nonce']; ?>" />
       
    12 			<input type="hidden" name="action" value="feedback" />
       
    13 			<div>
       
    14 				<label><?php _e('Your name:', $gcd) ?> <input type="text" name="name" value="<?php echo $userinfo->display_name; ?>" /></label>
       
    15 				<select id="nameOptions">
       
    16 					<option><?php echo $userinfo->display_name; ?></option>
       
    17 					<option><?php echo $userinfo->nickname; ?></option>
       
    18 					<?php if ( isset($userinfo->user_firstname) ) : ?>
       
    19 						<option><?php echo $userinfo->user_firstname; ?></option>
       
    20 						<?php if ( isset($userinfo->user_lastname) ) : ?>
       
    21 							<option><?php echo $userinfo->user_firstname; ?> <?php echo $userinfo->user_lastname; ?></option>
       
    22 						<?php endif; ?>
       
    23 					<?php endif; ?>
       
    24 				</select>
       
    25 			</div>
       
    26 			<div><label><?php _e('Email Address:', $gcd) ?> <input type="text" name="email" value="<?php echo $userinfo->user_email; ?>" /></label></div>
       
    27 			<div><label>
       
    28 				<?php _e('Type of feedback:', $gcd) ?> 
       
    29 				<select name="type">
       
    30 					<option value='Bug Report'><?php _e('Bug Report', $gcd) ?></option>
       
    31 					<option value='Feedback/Comments'><?php _e('Feedback/Comments', $gcd) ?></option>
       
    32 					<option value='Feature Request'><?php _e('Feature Request', $gcd) ?></option>
       
    33 				</select>
       
    34 			</label></div>
       
    35 			<div><?php _e("If you're reporting a bug, please be as specific as possible.  Also, please use English if you can.", $gcd) ?><br /><textarea name="message"></textarea></div>
       
    36 			<h4 class="no-margin"><?php _e("Additional information that might help (deselect anything you don't want to send, but I might ask you for it anyway)", $gcd) ?></h4>
       
    37 			<div id="additional-info">
       
    38 				<div><label><input type="checkbox" value="blogurl" checked="checked" /> <?php _e('Blog URL', $gcd) ?></label> <input type="text" readonly="readonly" value="<?php bloginfo('wpurl'); ?>" name="blogurl" id="blogurl" /></div>
       
    39 				<div><label><input type="checkbox" value="wpversion" checked="checked" /> <?php _e('WordPress Version', $gcd) ?></label> <input type="text" readonly="readonly" value="<?php echo $wp_version; ?>" name="wpversion" id="wpversion" /></div>
       
    40 				<div><label><input type="checkbox" value="phpversion" checked="checked" /> <?php _e('PHP Version', $gcd) ?></label> <input type="text" readonly="readonly" value="<?php echo phpversion(); ?>" name="phpversion" id="phpversion" /></div>
       
    41 				<div><label><input type="checkbox" value="mysql" checked="checked" /> <?php _e('MySQL Info', $gcd) ?></label> <input type="text" readonly="readonly" value="<?php echo mysql_get_server_info() ?>" name="mysql" id="mysql" /></div>
       
    42 				<div><label><input type="checkbox" value="browser" checked="checked" /> <?php _e('Browser Info', $gcd) ?></label> <input type="text" readonly="readonly" value="<?php echo $_SERVER['HTTP_USER_AGENT'] ?>" name="browser" id="browser" /></div>
       
    43 			</div>
       
    44 			<div><label><input type="checkbox" value="1" name="settings" checked="checked" /> <?php _e('Include your plugin settings', $gcd) ?></label></div>
       
    45 			<input type="submit" class="button" value="<?php dtcGigs::escapeForInput(_e('Send Feedback', $gcd)) ?>" />
       
    46 			<input type="reset" class="button cancel" id="feedback-reset" value="<?php dtcGigs::escapeForInput(_e('Cancel', $gcd)) ?>" />
       
    47 		</form>
       
    48 		<script type="text/javascript">
       
    49 			
       
    50 			target = ajaxTarget + "categories.ajax.php";
       
    51 			jQuery("#additional-info input:checkbox").change(function(){
       
    52 				jQuery("#" + this.value).attr("disabled", !this.checked);
       
    53 			});
       
    54 			
       
    55 			jQuery("form#submit-feedback").ajaxForm({
       
    56 				url:pageTarget,
       
    57 				dataType: "json",
       
    58 				success:function(json){
       
    59 					if ( json.success ) {
       
    60 						jQuery("#feedback").html('<div style="text-align: center"><?php _e("Thanks for your feedback!  I&rsquo;ll try to get back to you as soon as I can.", $gcd) ?></div>');
       
    61 					}
       
    62 				}
       
    63 			});
       
    64 			
       
    65 			(function($){
       
    66 				$("input[name=name]").focus();
       
    67 				
       
    68 				$("#nameOptions").change(function(){
       
    69 					$("input[name=name]").val(($(this).val()));
       
    70 				});
       
    71 			}(jQuery));
       
    72 		</script>
       
    73 	<?php
       
    74 } elseif ( 'feedback' == $_POST['action'] ) {
       
    75 	$feedbackEmail = 'feedback.music' . (true?'@':'blah') . 'ssdn.us';  // Take that, spambots reading my repository!
       
    76 	$msg = '';
       
    77 	foreach ( $_POST as $key => $value ) {
       
    78 		if ( $key != 'nonce' && $key != 'message' && $key != 'action' ) {
       
    79 			$msg .= $key . ': ' . $value . "\n";
       
    80 		}
       
    81 	}
       
    82 
       
    83 	$msg .= 'Plugin Version: ' . DTC_GIGS_PLUGIN_VERSION . "\n";
       
    84 	$msg .= 'Database Version: ' . DTC_GIGS_DB_VERSION . "\n";
       
    85 	
       
    86 	$msg .= "\nMessage:\n" . $_POST['message'];
       
    87 	
       
    88 	if ( $_POST['settings'] == '1' ) {
       
    89 		$msg .= "\n\n\nSettings:\n" . print_r($options, true);
       
    90 	}
       
    91 	if ( wp_mail($feedbackEmail, 'Gigs Calendar - ' . $_POST['type'], $msg, 'Reply-To: ' . str_replace(array("\r", "\n"), '', $_POST['email'])) ) {
       
    92 		echo '{success: true}';
       
    93 	} else {
       
    94 		echo '{success: false}';
       
    95 	}
       
    96 }
       
    97 
       
    98 ?>