Xataface 2.0
Xataface Application Framework
actions/import.php
Go to the documentation of this file.
00001 <?php
00002 import('Dataface/QueryTool.php');
00007 class dataface_actions_import {
00008         function handle($params){
00009                 import( 'Dataface/ImportForm.php');
00010                 $app =& Dataface_Application::getInstance();
00011                 $query =& $app->getQuery();
00012                 
00013                 $form = new Dataface_ImportForm($query['-table']);
00014                 $record =& $form->_record;
00015                 
00016                 if ( is_object($record) ){
00017                         if ( !$record->checkPermission('import') ){
00018 
00019                                 return Dataface_Error::permissionDenied();
00020                         }
00021                 } else {
00022                         if ( !Dataface_PermissionsTool::checkPermission('import',Dataface_Table::loadTable($query['-table']) ) ){
00023                                 return Dataface_Error::permissionDenied();
00024                         }
00025                 }
00026                 $form->_build();
00027 
00028                 
00029                 
00030                 if ( $form->validate() ){
00031                         //echo "validated";
00032                         $querystr = $form->exportValue('-query');
00033                         $returnPage = $form->exportValue('--redirect');
00034                         
00035                         if ( intval($form->_step) === 1 ){
00036                                 
00037                                 if ( preg_match('/--step=1/',$querystr) ){
00038                                         $querystr = preg_replace('/--step=1/', '--step=2', $querystr);
00039                                 } else {
00040                                         $querystr .= '&--step=2';
00041                                 }
00042                                 $importTablename = $form->process(array(&$form, 'import'));
00043                                 $app->redirect($_SERVER['PHP_SELF'].'?'.$querystr.'&--importTablename='.$importTablename.'&--redirect='.urlencode($returnPage));
00044                         } else {
00045                                 $records = $form->process(array(&$form, 'import'));
00046                                 $returnPage = $form->exportValue('--redirect');
00047                                 //$keys  = $form->exportValue('__keys__');
00048                                 //$keys['-action'] = 'browse';
00049                                 //$keys['-step'] = null;
00050                                 //$keys['-query'] = null;
00051                         
00052                                 //$link = Dataface_LinkTool::buildLink($keys);
00053                                 $link = $returnPage;
00054                                 $response =& Dataface_Application::getResponse();
00055                                 $msg = urlencode(trim("Records imported successfully.\n".@$response['--msg']));
00056                                 if ( strpos($link,'?') === false ) $link .= '?';
00057                                 $app->redirect($link.'&--msg='.$msg);
00058 
00059                                 
00060                         
00061                         } 
00062                                 
00063                                 
00064                 
00065                 
00066                 }
00067                 
00068                 ob_start();
00069                 $form->display();
00070                 $out = ob_get_contents();
00071                 ob_end_clean();
00072                 $context['form'] = $out;
00073                 $context['filters'] = $form->_filterNames;
00074                 $context['step'] = $form->_step;
00075                 
00076                 if ( isset($query['-template']) ) $template = $query['-template'];
00077                 else if ( isset( $params['action']['template']) ) $template = $params['action']['template'];
00078                 else {
00079                         if ( isset( $query['-relationship'] ) ){
00080                                 $template = 'Dataface_Import_RelatedRecords.html';
00081                         
00082                         } else {
00083                                 $template = 'Dataface_Import_RelatedRecords.html';
00084                         }
00085                 
00086                 }
00087 
00088                 df_display($context, $template, true);
00089         
00090         }
00091 }
00092 
00093 
00094 ?>
 All Data Structures Namespaces Files Functions Variables Enumerations