From 4a37255897d8757daddf6a7d727cbd7b3c5d5a80 Mon Sep 17 00:00:00 2001 From: Aniessh Sethh Date: Fri, 12 Aug 2011 09:56:12 +0000 Subject: [PATCH] import CSV fixed git-svn-id: file:///Users/Shitiz/Downloads/lssvn/source/limesurvey_ci@10697 b72ed6b6-b9f8-46b5-92b4-906544132732 --- application/config/autoload.php | 2 +- application/config/config.php | 2 +- application/config/database.php | 100 +++++++++--------- .../controllers/admin/participants.php | 47 ++++---- .../admin/Participants/importCSV_view.php | 4 +- .../admin/Participants/uploadSummary_view.php | 27 +++-- scripts/admin/attributeMapCSV.js | 2 +- 7 files changed, 96 insertions(+), 88 deletions(-) diff --git a/application/config/autoload.php b/application/config/autoload.php index 0495a61be69..1ae12e5c21f 100644 --- a/application/config/autoload.php +++ b/application/config/autoload.php @@ -52,7 +52,7 @@ | $autoload['libraries'] = array('database', 'session', 'xmlrpc'); */ -$autoload['libraries'] = array('session'); +$autoload['libraries'] = array('database', 'session'); /* diff --git a/application/config/config.php b/application/config/config.php index a29a7054d4f..e3836a0869b 100644 --- a/application/config/config.php +++ b/application/config/config.php @@ -225,7 +225,7 @@ | MUST set an encryption key. See the user guide for info. | */ -$config['encryption_key'] = 'encryption_key'; +$config['encryption_key'] = '6990f870a883f574408c9634f3dd1d49'; /* |-------------------------------------------------------------------------- diff --git a/application/config/database.php b/application/config/database.php index 246af84cf70..f3b563b6186 100644 --- a/application/config/database.php +++ b/application/config/database.php @@ -1,52 +1,52 @@ -upload->do_upload()) { $errorinupload = array('error' => $this->upload->display_errors()); + $this->session->unset_userdata('summary'); + $data = array( 'errorinupload' => $errorinupload); + + $this->session->set_userdata('summary',$data); self::_getAdminHeader(); $clang = $this->limesurvey_lang; - $data = array('clang'=> $clang, - 'errorinupload' => $errorinupload ); + $data = array('clang'=> $clang); $this->load->view('admin/Participants/participantsPanel_view',$data); $this->load->view('admin/Participants/uploadSummary_view',$data); self::_getAdminFooter("http://docs.limesurvey.org", $this->limesurvey_lang->gT("LimeSurvey online manual")); @@ -984,6 +987,7 @@ function uploadCSV() } $invalidemail=false; $dupfound = false; + $thisduplicate = 0; $filterduplicatefields=array('firstname','lastname','email'); foreach($writearray as $value) { @@ -997,15 +1001,18 @@ function uploadCSV() $result=$this->participants_model->checkforDuplicate($data); if($result == true ) { + $thisduplicate = 1; $dupcount++; } } - if($dupcount > 0) + + if($thisduplicate == 1) { $dupfound = true; $duplicatelist[]=$writearray['firstname']." ".$writearray['lastname']." (".$writearray['email'].")"; } + $writearray['email'] = trim($writearray['email']); if($writearray['email']!='') { @@ -1036,12 +1043,12 @@ function uploadCSV() } else { - foreach($writearray as $key=> $value) { - - if(in_array($key, $allowedfieldnames)) + if(!empty($mappedarray)) { + if(in_array($key, $allowedfieldnames)) + { foreach($mappedarray as $attid=>$attname) { if($attname == $key) @@ -1061,6 +1068,7 @@ function uploadCSV() } } + } } /* if(is_numeric($key) && in_array($key, $allowedfieldnames)) { @@ -1127,6 +1135,7 @@ function uploadCSV() } }*/ } + $this->participants_model->insertParticipantCSV($writearray); $imported++; } @@ -1141,19 +1150,19 @@ function uploadCSV() self::_getAdminHeader(); $clang = $this->limesurvey_lang; - $data = array('clang'=> $clang, - 'duplicatelist' => $duplicatelist, - 'recordcount' => $recordcount-1, - 'mincriteria' => $mincriteria, - 'imported' => $imported, - 'dupcount' => count($duplicatelist), - 'errorinupload' => $errorinupload, - 'invalidemaillist'=> $invalidemaillist, - 'mandatory' => $mandatory, - 'invalidattribute' => $invalidattribute, - 'invalidparticipantid' => $invalidparticipantid - ); - redirect('admin/participants/summaryview'); + $data = array( 'duplicatelist' => $duplicatelist, + 'recordcount' => $recordcount-1, + 'mincriteria' => $mincriteria, + 'imported' => $imported, + 'dupcount' => count($duplicatelist), + 'errorinupload' => $errorinupload, + 'invalidemaillist'=> $invalidemaillist, + 'mandatory' => $mandatory, + 'invalidattribute' => $invalidattribute, + 'invalidparticipantid' => $invalidparticipantid ); + $this->session->unset_userdata('summary'); + $this->session->set_userdata('summary',$data); + //redirect('admin/participants/summaryview'); } function summaryview() { diff --git a/application/views/admin/Participants/importCSV_view.php b/application/views/admin/Participants/importCSV_view.php index 9989b05a98b..855448c2966 100644 --- a/application/views/admin/Participants/importCSV_view.php +++ b/application/views/admin/Participants/importCSV_view.php @@ -89,9 +89,9 @@
gT("CSV input format") ?>

gT("File should be a standard CSV (comma delimited) file with optional double quotes around values (default for OpenOffice and Excel). The first line must contain the field names. The fields can be in any order.");?>

- Mandatory fields:gT("First Name, Last Name, E-Mail"); ?> + Mandatory fields:gT("firstname, lastname, email"); ?>
- Optional fields:gT("Blacklist,Attributes,Language"); ?> + Optional fields:gT("blacklist,language"); ?>
diff --git a/application/views/admin/Participants/uploadSummary_view.php b/application/views/admin/Participants/uploadSummary_view.php index e0e8fdd140a..478831183d1 100644 --- a/application/views/admin/Participants/uploadSummary_view.php +++ b/application/views/admin/Participants/uploadSummary_view.php @@ -8,45 +8,44 @@ ".$clang->gT("CPDB CSV Summary")."
"; - if($this->session->flashdata('errorinupload') == "") { + if(empty($this->session->userdata['summary']['errorinupload'])) { $uploadSummary .= "
".$clang->gT('Uploaded CSV file successfully')."
"; - if($this->session->flashdata('imported') !=0) { + if($this->session->userdata['summary']['imported'] !=0) { $uploadSummary .= "
".$clang->gT('Successfully created token entries')."
"; } else { $uploadSummary .= "
".$clang->gT("Failed to create token entries")."
"; } - $uploadSummary .= ""; - if ($this->session->flashdata('dupcount')>0 || count($this->session->flashdata('invalidemaillist'))>0 || count($this->session->flashdata('invalidattribute'))>0) + $uploadSummary .= ""; + if ($this->session->userdata['summary']['dupcount'] >0 || count($this->session->userdata['summary']['invalidemaillist']) >0 || count($this->session->userdata['summary']['invalidattribute']) >0) { $uploadSummary .= "
".$clang->gT('Warnings')."