Jump to content

PB411

New Members
  • Posts

    2
  • Joined

  • Last visited

PB411's Achievements

Newbie

Newbie (1/5)

0

Reputation

  1. Thank you so much!!! I have another question if you could help me out -- would it be possible to stack the First Name, Last Name, Custom, & Date fields on top of the image I have in the first column? So it would appear as so: (background image) First Name, Last Name Custom Date instead of having them in a row? Thanks again! <?php /** * Class for displaying signatures via [signaturelist] shortcode */ class dk_speakup_Signaturelist { /** * generates HTML table of signatures for a single petition * * @param int $id the ID petition for which we are displaying signatures * @param int $start the first signature to be retrieved * @param int $limit number of signatures to be retrieved * @param string $context either 'shortcode' or 'ajax' to distinguish between calls from the initia page load (shortcode) and calls from pagination buttons (ajax) * @param string $dateformat PHP date format provided by shortcode attribute - also relayed in ajax requests * @param string $nextbuttontext provided by shortcode attribute * @param string $prevtbuttontext provided by shortcode attribute * * @return string HTML table containing signatures (or just the table rows if context is ajax) */ public static function table( $id, $start, $limit, $context = 'shortcode', $dateformat = 'M d, Y', $nextbuttontext = '>', $prevbuttontext = '<' ) { include_once( 'class.signature.php' ); $the_signatures = new dk_speakup_Signature(); $options = get_option( 'dk_speakup_options' ); // get list of columns to display - as defined in settings $columns = unserialize( $options['signaturelist_columns'] ); // get the signatures $signatures = $the_signatures->all( $id, $start, $limit, 'signaturelist' ); $total = $the_signatures->count( $id, 'signaturelist' ); $current_signature_number = $total - $start; $signatures_list = ''; // only show signature lists if there are signatures if ( $total > 0 ) { // determine which columns to display $display_city = ( in_array( 'sig_city', $columns ) ) ? 1 : 0; $display_state = ( in_array( 'sig_state', $columns ) ) ? 1 : 0; $display_postcode = ( in_array( 'sig_postcode', $columns ) ) ? 1 : 0; $display_country = ( in_array( 'sig_country', $columns ) ) ? 1 : 0; $display_custom = ( in_array( 'sig_custom', $columns ) ) ? 1 : 0; $display_date = ( in_array( 'sig_date', $columns ) ) ? 1 : 0; if ( $context !== 'ajax' ) { // only include on initial page load (not when paging) $signatures_list = ' <!-- signaturelist --> <table class="dk-speakup-signaturelist dk-speakup-signaturelist-' . $id . '"> <caption>' . $options['signaturelist_header'] . '</caption>'; } $row_count = 0; foreach ( $signatures as $signature ) { if ( $row_count % 2 ) { $signatures_list .= '<tr class="dk-speakup-even">'; } else { $signatures_list .= '<tr class="dk-speakup-odd">'; } $signatures_list .= '<td><div style="width: 175px; height: 175px; background: url(wp-content/uploads/Rose2.png) no-repeat center center;"></td>'; $signatures_list .= '<td class="dk-speakup-signaturelist-name">' . stripslashes( $signature->first_name . ' ' . $signature->last_name ) . '</td>'; // if we display both city and state, combine them into one column $city = ( $display_city ) ? $signature->city : ''; $state = ( $display_state ) ? $signature->state : ''; if ( $display_city && $display_state ) { // should we separate with a comma? $delimiter = ( $city !='' && $state != '' ) ? ', ' : ''; $signatures_list .= '<td class="dk-speakup-signaturelist-city">' . stripslashes( $city . $delimiter . $state ) . '</td>'; } // else keep city or state values in their own column else { if ( $display_city ) $signatures_list .= '<td class="dk-speakup-signaturelist-city">' . stripslashes( $city ) . '</td>'; if ( $display_state ) $signatures_list .= '<td class="dk-speakup-signaturelist-state">' . stripslashes( $state ) . '</td>'; } if ( $display_postcode ) $signatures_list .= '<td class="dk-speakup-signaturelist-postcode">' . stripslashes( $signature->postcode ) . '</td>'; if ( $display_country ) $signatures_list .= '<td class="dk-speakup-signaturelist-country">' . stripslashes( $signature->country ) . '</td>'; if ( $display_custom ) $signatures_list .= '<td class="dk-speakup-signaturelist-custom">' . stripslashes( $signature->custom_field ) . '</td>'; if ( $display_date ) $signatures_list .= '<td class="dk-speakup-signaturelist-date">' . date_i18n( $dateformat, strtotime( $signature->date ) ) . '</td>'; $signatures_list .= '</tr>'; $current_signature_number --; $row_count ++; } if ( $context !== 'ajax' ) { // only include on initial page load if ( $limit != 0 && $start + $limit < $total ) { $colspan = ( count( $columns ) + 2 ); $signatures_list .= ' <tr class="dk-speakup-signaturelist-pagelinks"> <td colspan="' . $colspan . '"> <a class="dk-speakup-signaturelist-prev dk-speakup-signaturelist-disabled" rel="' . $id . ',' . $total . ',' . $limit . ',' . $total . ',0">' . $prevbuttontext . '</a> <a class="dk-speakup-signaturelist-next" rel="' . $id . ',' . ( $start + $limit ) . ',' . $limit . ',' . $total . ',1">' . $nextbuttontext . '</a> </td> </tr> '; } $signatures_list .= '</table>'; } } return $signatures_list; } } ?>
  2. Weird request, but I'm currently using the "SpeakUp! Email Petitions" plugin on Wordpress (here) and would like to have an image automatically show up next to each individual signature in the signature list. How would I go about this? Ideally, I wanted to have it where if you mouse over the image, you see the signature, but I think this might be a bit complex (though definitely preferred if possible). I'm new to coding, so any help would be MUCH appreciated. Thank you! The following is the code from the class.signaturelist.php file (not sure if this is the file I should edit?): <?php /** * Class for displaying signatures via [signaturelist] shortcode */ class dk_speakup_Signaturelist { /** * generates HTML table of signatures for a single petition * * @param int $id the ID petition for which we are displaying signatures * @param int $start the first signature to be retrieved * @param int $limit number of signatures to be retrieved * @param string $context either 'shortcode' or 'ajax' to distinguish between calls from the initia page load (shortcode) and calls from pagination buttons (ajax) * @param string $dateformat PHP date format provided by shortcode attribute - also relayed in ajax requests * @param string $nextbuttontext provided by shortcode attribute * @param string $prevtbuttontext provided by shortcode attribute * * @return string HTML table containing signatures (or just the table rows if context is ajax) */ public static function table( $id, $start, $limit, $context = 'shortcode', $dateformat = 'M d, Y', $nextbuttontext = '>', $prevbuttontext = '<' ) { include_once( 'class.signature.php' ); $the_signatures = new dk_speakup_Signature(); $options = get_option( 'dk_speakup_options' ); // get list of columns to display - as defined in settings $columns = unserialize( $options['signaturelist_columns'] ); // get the signatures $signatures = $the_signatures->all( $id, $start, $limit, 'signaturelist' ); $total = $the_signatures->count( $id, 'signaturelist' ); $current_signature_number = $total - $start; $signatures_list = ''; // only show signature lists if there are signatures if ( $total > 0 ) { // determine which columns to display $display_city = ( in_array( 'sig_city', $columns ) ) ? 1 : 0; $display_state = ( in_array( 'sig_state', $columns ) ) ? 1 : 0; $display_postcode = ( in_array( 'sig_postcode', $columns ) ) ? 1 : 0; $display_country = ( in_array( 'sig_country', $columns ) ) ? 1 : 0; $display_custom = ( in_array( 'sig_custom', $columns ) ) ? 1 : 0; $display_date = ( in_array( 'sig_date', $columns ) ) ? 1 : 0; if ( $context !== 'ajax' ) { // only include on initial page load (not when paging) $signatures_list = ' <!-- signaturelist --> <table class="dk-speakup-signaturelist dk-speakup-signaturelist-' . $id . '"> <caption>' . $options['signaturelist_header'] . '</caption>'; } $row_count = 0; foreach ( $signatures as $signature ) { if ( $row_count % 2 ) { $signatures_list .= '<tr class="dk-speakup-even">'; } else { $signatures_list .= '<tr class="dk-speakup-odd">'; } $signatures_list .= '<td class="dk-speakup-signaturelist-count">' . number_format( $current_signature_number, 0, '.', ',' ) . '</td>'; $signatures_list .= '<td class="dk-speakup-signaturelist-name">' . stripslashes( $signature->first_name . ' ' . $signature->last_name ) . '</td>'; // if we display both city and state, combine them into one column $city = ( $display_city ) ? $signature->city : ''; $state = ( $display_state ) ? $signature->state : ''; if ( $display_city && $display_state ) { // should we separate with a comma? $delimiter = ( $city !='' && $state != '' ) ? ', ' : ''; $signatures_list .= '<td class="dk-speakup-signaturelist-city">' . stripslashes( $city . $delimiter . $state ) . '</td>'; } // else keep city or state values in their own column else { if ( $display_city ) $signatures_list .= '<td class="dk-speakup-signaturelist-city">' . stripslashes( $city ) . '</td>'; if ( $display_state ) $signatures_list .= '<td class="dk-speakup-signaturelist-state">' . stripslashes( $state ) . '</td>'; } if ( $display_postcode ) $signatures_list .= '<td class="dk-speakup-signaturelist-postcode">' . stripslashes( $signature->postcode ) . '</td>'; if ( $display_country ) $signatures_list .= '<td class="dk-speakup-signaturelist-country">' . stripslashes( $signature->country ) . '</td>'; if ( $display_custom ) $signatures_list .= '<td class="dk-speakup-signaturelist-custom">' . stripslashes( $signature->custom_field ) . '</td>'; if ( $display_date ) $signatures_list .= '<td class="dk-speakup-signaturelist-date">' . date_i18n( $dateformat, strtotime( $signature->date ) ) . '</td>'; $signatures_list .= '</tr>'; $current_signature_number --; $row_count ++; } if ( $context !== 'ajax' ) { // only include on initial page load if ( $limit != 0 && $start + $limit < $total ) { $colspan = ( count( $columns ) + 2 ); $signatures_list .= ' <tr class="dk-speakup-signaturelist-pagelinks"> <td colspan="' . $colspan . '"> <a class="dk-speakup-signaturelist-prev dk-speakup-signaturelist-disabled" rel="' . $id . ',' . $total . ',' . $limit . ',' . $total . ',0">' . $prevbuttontext . '</a> <a class="dk-speakup-signaturelist-next" rel="' . $id . ',' . ( $start + $limit ) . ',' . $limit . ',' . $total . ',1">' . $nextbuttontext . '</a> </td> </tr> '; } $signatures_list .= '</table>'; } } return $signatures_list; } } ?>
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.