my_vote implemented

This commit is contained in:
Nael 2014-03-07 19:41:08 +01:00
parent 43edfc7db0
commit cd21275543
9 changed files with 251 additions and 20 deletions

View File

@ -4,6 +4,10 @@ class api_uvote extends \SYSTEM\API\api_login {
public static function call_vote_action_vote($poll_ID, $vote) {
return votes::write_vote($poll_ID, $vote);
}
public static function call_vote_action_data($location, $birthyear, $gender, $children) {
return votes::write_data($location, $birthyear, $gender, $children);
}
public static function call_vote_action_new_vote($ID, $title, $iframe_link) {

View File

@ -167,11 +167,20 @@ class votes {
$res = $con->prepare( 'insertVote',
'REPLACE uvote_data
VALUES (?, ?, ?, 0, NOW());',
VALUES (?, ?, ?, 0, NOW());',
array($poll_ID, \SYSTEM\SECURITY\Security::getUser()->id, $vote));
return JsonResult::ok();
}
public static function write_data($location, $birthyear, $gender, $children){
if(!\SYSTEM\SECURITY\Security::isLoggedIn()){
throw new ERROR("You need to be logged in.");}
return \DBD\UVOTE_DATA_USER_ADD_DATA_INSERT::Q1(array(\SYSTEM\SECURITY\Security::getUser()->id, $location, $birthyear, $gender, $children, \SYSTEM\SECURITY\Security::getUser()->id, $location, $birthyear, $gender, $children));}
public static function get_add_data(){
return \DBD\UVOTE_DATA_USER_ADD_DATA::Q1(array(\SYSTEM\SECURITY\Security::getUser()->id));
}
public static function write_poll($ID, $title, $iframe_link ){
$con = new \SYSTEM\DB\Connection(new \DBD\uVote());
$res = $con->prepare( 'insertPoll',

View File

@ -0,0 +1,11 @@
<?php
namespace DBD;
class UVOTE_DATA_USER_ADD_DATA extends \SYSTEM\DB\QP {
protected static function query(){
return new \SYSTEM\DB\QQuery(get_class(),
//pg
'',
//mys
'SELECT * FROM uvote_user_additional WHERE `user_ID` = ?;'
);}}

View File

@ -0,0 +1,12 @@
<?php
namespace DBD;
class UVOTE_DATA_USER_ADD_DATA_INSERT extends \SYSTEM\DB\QP {
protected static function query(){
return new \SYSTEM\DB\QQuery(get_class(),
//pg
'',
//mys
'INSERT INTO `uvote_user_additional` (`user_ID`, `location`, `birthyear`, `gender`, `children`) VALUES (?, ?, ?, ?, ?)
ON DUPLICATE KEY UPDATE user_ID = ?, location = ?, birthyear = ?, gender = ?, children = ?;'
);}}

View File

@ -93,17 +93,23 @@ function drawChart(){
}
function load_user_main_tab(action){
switch(action){
case 'user_main_uVote':
window.location.reload();
$('#tab_uVote').load('./?action='+ action);
$('#tab_uVote').load('./?action='+ action);
return;
case 'user_main_urVote':
$('#tab_urVote').load('./?action='+ action);
return;
case 'user_main_myVote':
$('#tab_myVote').load('./?action='+ action);
$('#tab_myVote').load('./?action='+ action, function(){
$('.add_data_submit').click(function () {
submit_add_data();
alert('success');
});
});
return;
default:
}
@ -157,6 +163,25 @@ function vote_click (poll_ID, vote) {
});
}
function submit_add_data () {
var a = document.getElementById("location");
var location = a.options[a.selectedIndex].text;
var b = document.getElementById("birthyear");
var birthyear = b.options[b.selectedIndex].text;
var c = document.getElementById("gender");
var gender = c.options[c.selectedIndex].text;
var d = document.getElementById("children");
var children = d.options[d.selectedIndex].text;
$.getJSON('./api.php?call=vote&action=data&location=' + location + '&birthyear=' + birthyear + '&gender=' + gender + '&children=' + children, function(data) {
var items = [];
if(data.status == true){
alert("success");
} else {
alert(data.result.message);
}
});
}
function send_feedback (feedback) {
// $.getJSON('./api.php?call=vote&action=feedback&feedback=' + feedback, function(data) {

View File

@ -53,7 +53,7 @@
<span class="icon-bar"></span>
</button>
<a class="brand" href="" id="menu_uvote">uVote</a>
<a data-toggle="modal" class="brand" href="#impressum" id="impressum">impressum</a>
<a data-toggle="modal" class="brand" href="#impressum" id="impressum"><font size="2">impressum</font></a>
<div class="nav-collapse collapse">
<ul class="nav">

View File

@ -1,14 +1,163 @@
Geburtsjahr
<br>
<input type="text" id="feedback_text"/>
<br>
<ul class="dropdown-menu" style="display: block;">
<li><a tabindex="-1" href="#">männlich</a></li>
<li><a tabindex="-1" href="#">weiblich</a></li>
<li><a tabindex="-1" href="#">weder noch</a></li>
<li class="divider"></li>
<li><a tabindex="-1" href="#">keine Angabe</a></li>
</ul>
<input type="submit" id="feedback_submit" />
<h4>Einstellungen</h4>
<div style="float: left; margin-top: 30px;">
${myvote_bodytext}
</div>
<div style="float: right">
<form action="" name="someform">
${location}<br>
<select id="location" name="location">
<option value="0">${keineangaben_location}</option>
<option value="1">Baden-Württemberg</option>
<option value="2">Bayern</option>
<option value="3">Berlin</option>
<option value="4">Brandenburg</option>
<option value="5">Bremen</option>
<option value="6">Hamburg</option>
<option value="7">Hessen</option>
<option value="8">Mecklenburg-Vorpommern</option>
<option value="9">Niedersachsen</option>
<option value="10">Nordrhein-Westfalen</option>
<option value="11">Rheinland-Pfalz</option>
<option value="12">Saarland</option>
<option value="13">Sachsen</option>
<option value="14">Sachsen-Anhalt</option>
<option value="15">Schleswig-Holstein</option>
<option value="16">Thüringen</option>
</select>
<br>
${birthyear}<br>
<select id="birthyear" name="birthyear">
<option value="0">${keineangaben_age}</option>
<option value="2007">2007</option>
<option value="2006">2006</option>
<option value="2005">2005</option>
<option value="2004">2004</option>
<option value="2003">2003</option>
<option value="2002">2002</option>
<option value="2001">2001</option>
<option value="2000">2000</option>
<option value="1999">1999</option>
<option value="1998">1998</option>
<option value="1997">1997</option>
<option value="1996">1996</option>
<option value="1995">1995</option>
<option value="1994">1994</option>
<option value="1993">1993</option>
<option value="1992">1992</option>
<option value="1991">1991</option>
<option value="1990">1990</option>
<option value="1989">1989</option>
<option value="1988">1988</option>
<option value="1987">1987</option>
<option value="1986">1986</option>
<option value="1985">1985</option>
<option value="1984">1984</option>
<option value="1983">1983</option>
<option value="1982">1982</option>
<option value="1981">1981</option>
<option value="1980">1980</option>
<option value="1979">1979</option>
<option value="1978">1978</option>
<option value="1977">1977</option>
<option value="1976">1976</option>
<option value="1975">1975</option>
<option value="1974">1974</option>
<option value="1973">1973</option>
<option value="1972">1972</option>
<option value="1971">1971</option>
<option value="1970">1970</option>
<option value="1969">1969</option>
<option value="1968">1968</option>
<option value="1967">1967</option>
<option value="1966">1966</option>
<option value="1965">1965</option>
<option value="1964">1964</option>
<option value="1963">1963</option>
<option value="1962">1962</option>
<option value="1961">1961</option>
<option value="1960">1960</option>
<option value="1959">1959</option>
<option value="1958">1958</option>
<option value="1957">1957</option>
<option value="1956">1956</option>
<option value="1955">1955</option>
<option value="1954">1954</option>
<option value="1953">1953</option>
<option value="1952">1952</option>
<option value="1951">1951</option>
<option value="1950">1950</option>
<option value="1949">1949</option>
<option value="1948">1948</option>
<option value="1947">1947</option>
<option value="1946">1946</option>
<option value="1945">1945</option>
<option value="1944">1944</option>
<option value="1943">1943</option>
<option value="1942">1942</option>
<option value="1941">1941</option>
<option value="1940">1940</option>
<option value="1939">1939</option>
<option value="1938">1938</option>
<option value="1937">1937</option>
<option value="1936">1936</option>
<option value="1935">1935</option>
<option value="1934">1934</option>
<option value="1933">1933</option>
<option value="1932">1932</option>
<option value="1931">1931</option>
<option value="1930">1930</option>
<option value="1929">1929</option>
<option value="1928">1928</option>
<option value="1927">1927</option>
<option value="1926">1926</option>
<option value="1925">1925</option>
<option value="1924">1924</option>
<option value="1923">1923</option>
<option value="1922">1922</option>
<option value="1921">1921</option>
<option value="1920">1920</option>
<option value="1919">1919</option>
<option value="1918">1918</option>
<option value="1917">1917</option>
<option value="1916">1916</option>
<option value="1915">1915</option>
<option value="1914">1914</option>
<option value="1913">1913</option>
<option value="1912">1912</option>
<option value="1911">1911</option>
<option value="1910">1910</option>
<option value="1909">1909</option>
<option value="1908">1908</option>
<option value="1907">1907</option>
<option value="1906">1906</option>
<option value="1905">1905</option>
<option value="1904">1904</option>
<option value="1903">1903</option>
<option value="1902">1902</option>
<option value="1901">1901</option>
<option value="1900">1900</option>
</select>
<br>
${gender} <br>
<select id="gender" name="gender">
<option value="0">${keineangaben_gender}</option>
<option value="1">${male}</option>
<option value="2">${female}</option>
<option value="3">${none}</option>
<option value="0">${no_data}</option>
</select>
<br>
${children} <br>
<select id="children" name="children">
<option value="1">${keineangaben_children}</option>
<option value="1">${yes}</option>
<option value="2">${no}</option>
<option value="0">${no_data}</option>
</select>
</form>
<div class="btn btn-primary add_data_submit" id="add_data_submit">Absenden</div>
</div>

View File

@ -1,7 +1,26 @@
<?php
class user_main_myVote extends SYSTEM\PAGE\Page {
public function html(){
return SYSTEM\PAGE\replace::replaceFile(SYSTEM\SERVERPATH(new PPAGE(),'user_main_myVote/myVote.tpl'),array());
class user_main_myVote extends SYSTEM\PAGE\Page {
public function get_add_data (){
$qqresult = votes::get_add_data();
$vars['keineangaben_location'] = $qqresult['location'] ? $qqresult['location'] : 'Keine Angaben';
$vars['keineangaben_age'] = $qqresult['birthyear'] ? $qqresult['birthyear'] : 'Keine Angaben';
$vars['keineangaben_gender'] = $qqresult['gender'] ? $qqresult['gender'] : 'Keine Angaben';
$vars['keineangaben_children'] = $qqresult['children'] ? $qqresult['children'] : 'Keine Angaben';
return $vars;
}
public function html(){
$vars = array();
$vars = $this->get_add_data();
$vars['frontend_logos'] = \SYSTEM\CONFIG\config::get(\SYSTEM\CONFIG\config_ids::SYS_CONFIG_PATH_BASEURL).'api.php?call=img&cat=frontend_logos&id=';
$vars = array_merge($vars, \SYSTEM\locale::getStrings(DBD\locale_string::VALUE_CATEGORY_MAINPAGE));
$vars = array_merge($vars, \SYSTEM\locale::getStrings(150));
$vars = array_merge($vars, \SYSTEM\locale::getStrings(110));
return SYSTEM\PAGE\replace::replaceFile(SYSTEM\SERVERPATH(new PPAGE(),'user_main_myVote/myVote.tpl'), $vars);
}
}

View File

@ -21,6 +21,8 @@
<div style="margin-left: 40px; float: left;">
${user_overall_votes}
</div>
<div id="graph_bt_user_overall" style=""></div>
<script type="text/javascript" language="JavaScript">load_visualisation_urvote('graph_bt_user_overall',84600);</script>
</div>