Seite 1 von 4

Advance Poll Voters untereinander und Datum?

Verfasst: 04.12.2011 13:26
von Shorty1968
Hallo ich habe bei dem MOD Advance Poll Voter ein Problem und zwar wenn ich den Code der im Template viewtopic_body.html ein <br /> rein mache setzt er die Usernamen trotzdem nicht unter die Balken,muss das eventuell in die viewtopic.php gemacht werden,wenn ja kann mir bitte jemand sagen wo genau?

Das Vote Datum wird auch Falsch angezeigt,dort steht z.b. das der User am 01. Jan 1970 gevotet hat,wo kann da der fehler liegen?

Advance Poll Voters

Gruß

Re: Advance Poll Voters untereinander und Datum?

Verfasst: 04.12.2011 18:22
von WileCoyote
Da du mittlerweile scheinbar zum Fachmann für MOD-Installationen avanciert bist, sollte das für dich eigentlich kein Problem darstellen.

Re: Advance Poll Voters untereinander und Datum?

Verfasst: 04.12.2011 20:36
von Shorty1968
Es soll auch dinge geben,die man nicht hinbekommt und das ist leider sowas.

Re: Advance Poll Voters untereinander und Datum?

Verfasst: 04.12.2011 23:20
von Miriam
Shorty1968 hat geschrieben:...
Das Vote Datum wird auch Falsch angezeigt,dort steht z.b. das der User am 01. Jan 1970 gevotet hat,wo kann da der fehler liegen?
...
Entweder wird kein Zeitwert eingetragen oder nicht ausgelesen oder beides. Auf jeden Fall ist er 0 bzw. leer, was einen Unix-Timestamp vom 01.01.1970, 0:00Uhr bedeutet.

Re: Advance Poll Voters untereinander und Datum?

Verfasst: 05.12.2011 10:02
von Shorty1968
Hallo Miriam
Ich vermute das der besagte Zeitstempel in diesem code liegen muss oder?

Code: Alles auswählen

// MOD: Advanced Show Poll Voters - STAR
          $sql_voters = '
             SELECT u.username, u.user_colour, pv.vote_user_id, pv.vote_time
             FROM ' . POLL_VOTES_TABLE . ' pv, ' . USERS_TABLE . ' u
             WHERE pv.topic_id = ' . $topic_id . '
                AND poll_option_id = ' . $poll_info[$i]['poll_option_id'] . '
                AND pv.vote_user_id = u.user_id
             ORDER BY u.username_clean ASC, pv.vote_user_id ASC';

          $results_voters = $db->sql_query($sql_voters);
          $voters_total = 0;
          $voters_string = "";

    // Add all voters to a string.
          while ($row_voters = $db->sql_fetchrow($results_voters))
          {
             $voters_total = $voters_total + 1;
             $vote_time = $user->format_date($row_voters['vote_time']);
             $voters_string .= ", " . get_username_string('full', $row_voters['vote_user_id'], $row_voters['username'], $row_voters['user_colour'], $row_voters['username']) . ' (' .  $user->lang['POSTED_ON_DATE'] . ' ' . $vote_time . ') ';
          }

          $voters_string = ltrim($voters_string, ", ");

    // Add the string to the list.
          $poll_info[$i]['poll_option_voters'] = $voters_string;
          $db->sql_freeresult($results_voters);
// MOD: Advanced Show Poll Voters - END
aber wo genau,muss zugeben da sind meine fähigkeiten an ihre grenzen gestossen?

Re: Advance Poll Voters untereinander und Datum?

Verfasst: 06.12.2011 23:19
von Miriam
Hallo,

zu deinem Zeit-Problem:

Finde in der viewtopic.php

Code: Alles auswählen

		foreach ($voted_id as $option)
		{
			if (in_array($option, $cur_voted_id))
			{
				continue;
			}

			$sql = 'UPDATE ' . POLL_OPTIONS_TABLE . '
				SET poll_option_total = poll_option_total + 1
				WHERE poll_option_id = ' . (int) $option . '
					AND topic_id = ' . (int) $topic_id;
			$db->sql_query($sql);

			if ($user->data['is_registered'])
			{
				$sql_ary = array(
					'topic_id'			=> (int) $topic_id,
					'poll_option_id'	=> (int) $option,
					'vote_user_id'		=> (int) $user->data['user_id'],
					'vote_user_ip'		=> (string) $user->ip,
				);

				$sql = 'INSERT INTO ' . POLL_VOTES_TABLE . ' ' . $db->sql_build_array('INSERT', $sql_ary);
				$db->sql_query($sql);
			}
		}
Hier musst du dich vllt. noch um die Zeitzone deines Boards kümmern.
ersetze gegen:

Code: Alles auswählen

		foreach ($voted_id as $option)
		{
			if (in_array($option, $cur_voted_id))
			{
				continue;
			}

			$sql = 'UPDATE ' . POLL_OPTIONS_TABLE . '
				SET poll_option_total = poll_option_total + 1
				WHERE poll_option_id = ' . (int) $option . '
					AND topic_id = ' . (int) $topic_id;
			$db->sql_query($sql);

			if ($user->data['is_registered'])
			{
				$sql_ary = array(
					'topic_id'			=> (int) $topic_id,
					'poll_option_id'	=> (int) $option,
					'vote_user_id'		=> (int) $user->data['user_id'],
					'vote_user_ip'		=> (string) $user->ip,
					'vote_time'			=> time(),   //Aenderungen hier
				);

				$sql = 'INSERT INTO ' . POLL_VOTES_TABLE . ' ' . $db->sql_build_array('INSERT', $sql_ary);
				$db->sql_query($sql);
			}
		}
Zu deinem Layout-Problem:

Finde in der viewtopic_body.html

Code: Alles auswählen

			<!-- BEGIN poll_option -->
				<dl class="<!-- IF poll_option.POLL_OPTION_VOTED -->voted<!-- ENDIF -->"<!-- IF poll_option.POLL_OPTION_VOTED --> title="{L_POLL_VOTED_OPTION}"<!-- ENDIF -->>
					<dt><!-- IF S_CAN_VOTE --><label for="vote_{poll_option.POLL_OPTION_ID}">{poll_option.POLL_OPTION_CAPTION}</label><!-- ELSE -->{poll_option.POLL_OPTION_CAPTION}<!-- ENDIF --></dt>
					<!-- IF S_CAN_VOTE --><dd style="width: auto;"><!-- IF S_IS_MULTI_CHOICE --><input type="checkbox" name="vote_id[]" id="vote_{poll_option.POLL_OPTION_ID}" value="{poll_option.POLL_OPTION_ID}"<!-- IF poll_option.POLL_OPTION_VOTED --> checked="checked"<!-- ENDIF --> /><!-- ELSE --><input type="radio" name="vote_id[]" id="vote_{poll_option.POLL_OPTION_ID}" value="{poll_option.POLL_OPTION_ID}"<!-- IF poll_option.POLL_OPTION_VOTED --> checked="checked"<!-- ENDIF --> /><!-- ENDIF --></dd><!-- ENDIF -->
					<!-- IF S_DISPLAY_RESULTS --><dd class="resultbar"><div class="<!-- IF poll_option.POLL_OPTION_PCT < 20 -->pollbar1<!-- ELSEIF poll_option.POLL_OPTION_PCT < 40 -->pollbar2<!-- ELSEIF poll_option.POLL_OPTION_PCT < 60 -->pollbar3<!-- ELSEIF poll_option.POLL_OPTION_PCT < 80 -->pollbar4<!-- ELSE -->pollbar5<!-- ENDIF -->" style="width:{poll_option.POLL_OPTION_PERCENT};">{poll_option.POLL_OPTION_RESULT}</div></dd>
<!-- ELSE -->{poll_option.POLL_OPTION_PERCENT}<!-- IF S_POLL_RESULTS_ENABLE --><!-- IF .poll_option && poll_option.POLL_OPTION_RESULT_PERMISSION  --><dd class="resultbar">{poll_option.POLL_OPTION_VOTERS}</dd><!-- ENDIF --><!-- ENDIF --><!-- ENDIF -->
				</dl>
			<!-- END poll_option -->
tausche aus gegen:

Code: Alles auswählen

			<!-- BEGIN poll_option -->
				<dl class="<!-- IF poll_option.POLL_OPTION_VOTED -->voted<!-- ENDIF -->"<!-- IF poll_option.POLL_OPTION_VOTED --> title="{L_POLL_VOTED_OPTION}"<!-- ENDIF -->>
					<dt><!-- IF S_CAN_VOTE --><label for="vote_{poll_option.POLL_OPTION_ID}">{poll_option.POLL_OPTION_CAPTION}</label><!-- ELSE -->{poll_option.POLL_OPTION_CAPTION}<!-- ENDIF --></dt>
					<!-- IF S_CAN_VOTE --><dd style="width: auto;"><!-- IF S_IS_MULTI_CHOICE --><input type="checkbox" name="vote_id[]" id="vote_{poll_option.POLL_OPTION_ID}" value="{poll_option.POLL_OPTION_ID}"<!-- IF poll_option.POLL_OPTION_VOTED --> checked="checked"<!-- ENDIF --> /><!-- ELSE --><input type="radio" name="vote_id[]" id="vote_{poll_option.POLL_OPTION_ID}" value="{poll_option.POLL_OPTION_ID}"<!-- IF poll_option.POLL_OPTION_VOTED --> checked="checked"<!-- ENDIF --> /><!-- ENDIF --></dd><!-- ENDIF -->
					<!-- IF S_DISPLAY_RESULTS --><dd class="resultbar"><div class="<!-- IF poll_option.POLL_OPTION_PCT < 20 -->pollbar1<!-- ELSEIF poll_option.POLL_OPTION_PCT < 40 -->pollbar2<!-- ELSEIF poll_option.POLL_OPTION_PCT < 60 -->pollbar3<!-- ELSEIF poll_option.POLL_OPTION_PCT < 80 -->pollbar4<!-- ELSE -->pollbar5<!-- ENDIF -->" style="width:{poll_option.POLL_OPTION_PERCENT};">{poll_option.POLL_OPTION_RESULT}</div><!-- IF S_POLL_RESULTS_ENABLE --><!-- IF .poll_option && poll_option.POLL_OPTION_RESULT_PERMISSION  -->{poll_option.POLL_OPTION_VOTERS}<!-- ENDIF --><!-- ENDIF --></dd>
<!-- ELSE -->{poll_option.POLL_OPTION_PERCENT}<!-- ENDIF -->
				</dl>
			<!-- END poll_option -->

Re: Advance Poll Voters untereinander und Datum?

Verfasst: 07.12.2011 00:54
von Shorty1968
Hallo Miriam
Vielen dank das mit dem Layout hat in den prosilver Basierenden Style perfekt gepasst,dort ist es so wie ich es wollte.
Ich habe mir deinen code mal angesehen wollte ihn auch an den subsilver2 anpassen,dabei habe ich gesehen du hast das nicht mit <br /> gemacht,vermute das du es mit css gemacht hast stimmt das?
Das wäre der Orginal code für den subsilver2:

Code: Alles auswählen

<!-- BEGIN poll_option -->
					<tr>
					<!-- IF S_CAN_VOTE -->
						<td>
							<!-- IF S_IS_MULTI_CHOICE -->
								<input type="checkbox" class="radio" name="vote_id[]" value="{poll_option.POLL_OPTION_ID}"<!-- IF poll_option.POLL_OPTION_VOTED --> checked="checked"<!-- ENDIF --> />
							<!-- ELSE -->
								<input type="radio" class="radio" name="vote_id[]" value="{poll_option.POLL_OPTION_ID}"<!-- IF poll_option.POLL_OPTION_VOTED --> checked="checked"<!-- ENDIF --> />
							<!-- ENDIF -->
						</td>
					<!-- ENDIF -->
						<td><span class="gen">{poll_option.POLL_OPTION_CAPTION}</span></td>
						<!-- IF S_DISPLAY_RESULTS -->
							<td dir="ltr">{POLL_LEFT_CAP_IMG}{poll_option.POLL_OPTION_IMG}{POLL_RIGHT_CAP_IMG}</td>
							<td class="gen" align="{S_CONTENT_FLOW_END}"><b>&nbsp;{poll_option.POLL_OPTION_PERCENT}<!-- IF S_POLL_RESULTS_ENABLE --><!-- IF .poll_option && poll_option.POLL_OPTION_RESULT_PERMISSION  --><dd class="resultbar">{poll_option.POLL_OPTION_VOTERS}</dd><!-- ENDIF --><!-- ENDIF -->&nbsp;</b></td>
							<td class="gen" align="center">[ {poll_option.POLL_OPTION_RESULT} ]</td>
							<!-- IF poll_option.POLL_OPTION_VOTED -->
								<td class="gensmall" valign="top"><b title="{L_POLL_VOTED_OPTION}">x</b></td>
							<!-- ENDIF -->
						<!-- ENDIF -->
					</tr>
				<!-- END poll_option -->
Die zeit und das Datum passen mit deiner änderung perfekt,das geht nun so wie es sein soll,vielen dank für deine hilfe.

Gruß

Re: Advance Poll Voters untereinander und Datum?

Verfasst: 07.12.2011 18:04
von Miriam
Shorty1968 hat geschrieben:...vermute das du es mit css gemacht hast stimmt das?
In prosilver sind das definierte Listen, weil es CSS basiert ist. Lies auch hier => Klick. Ich habe es einfach an die Stelle geschoben, die es meiner Meinung (und scheinbar auch deiner) nach, sein sollte. Kannst dir ja mal die Code-Änderungen anschauen, die ich gemacht habe.

Danke für den subsilver HTML-Code. Was soll ich jetzt damit? :roll:

Code: Alles auswählen

              <!-- BEGIN poll_option -->
                                        <tr>
                                        <!-- IF S_CAN_VOTE -->
                                                <td>
                                                        <!-- IF S_IS_MULTI_CHOICE -->
                                                                <input type="checkbox" class="radio" name="vote_id[]" value="{poll_option.POLL_OPTION_ID}"<!-- IF poll_option.POLL_OPTION_VOTED --> checked="checked"<!-- ENDIF --> />
                                                        <!-- ELSE -->
                                                                <input type="radio" class="radio" name="vote_id[]" value="{poll_option.POLL_OPTION_ID}"<!-- IF poll_option.POLL_OPTION_VOTED --> checked="checked"<!-- ENDIF --> />
                                                        <!-- ENDIF -->
                                                </td>
                                        <!-- ENDIF -->
                                                <td><span class="gen">{poll_option.POLL_OPTION_CAPTION}</span></td>
                                                <!-- IF S_DISPLAY_RESULTS -->
                                                        <td dir="ltr">{POLL_LEFT_CAP_IMG}{poll_option.POLL_OPTION_IMG}{POLL_RIGHT_CAP_IMG}</td>
                                                        <td class="gen" align="{S_CONTENT_FLOW_END}"><b>&nbsp;{poll_option.POLL_OPTION_PERCENT}&nbsp;test</b></td>
                                                        <td class="gen" align="center">[ {poll_option.POLL_OPTION_RESULT} ]</td>
                                                        <!-- IF poll_option.POLL_OPTION_VOTED -->
                                                                <td class="gensmall" valign="top"><b title="{L_POLL_VOTED_OPTION}">x</b></td>
                                                        <!-- ELSE -->
                                                                <td class="gensmall" valign="top">&nbsp;</td>
                                                        <!-- ENDIF -->
                                                        <!-- IF S_POLL_RESULTS_ENABLE -->
                                                                <!-- IF .poll_option && poll_option.POLL_OPTION_RESULT_PERMISSION  -->
                                                                        <td class="gen" align="left">{poll_option.POLL_OPTION_VOTERS}</td>
                                                                <!-- ENDIF -->
                                                        <!-- ENDIF -->
                                                <!-- ENDIF -->
                                        </tr>
                                <!-- END poll_option -->
                  
^^^^^^^^^^^^
Check das mal bitte.

P.S.: subsilver ist Tabellen basiert.

Re: Advance Poll Voters untereinander und Datum?

Verfasst: 07.12.2011 18:45
von Shorty1968
Hallo Miriam
Wenn ich deinen code rein mache ist es genauso,wie bei meinen mit denen ich es versucht habe es ändert sich nichts?

Ich habe eben mein glück auch noch mal versucht mit css , aber leider erfolglos.

Re: Advance Poll Voters untereinander und Datum?

Verfasst: 07.12.2011 18:59
von Miriam
Du hast den geänderten subsilver Code eingebaut und es sieht.. also anstelle des von dir geposteten und es sieht immer nocht so aus wie vorher?.... Komisch