' . PHP_EOL, $argv[0]); exit(1); } try { $pathToICSFile = trim($argv[1]); $pathToDrupalConfig = trim($argv[2]); $icsReader = new ICSFileReader($pathToICSFile); $drupalReader = new DrupalConfigFileReader($pathToDrupalConfig); echo sprintf('Reading iCal data from %s' . PHP_EOL, $icsReader->getPath()); echo sprintf('Using Drupal connection details from %s' . PHP_EOL, $drupalReader->getPath()); echo '---' . PHP_EOL; $events = $icsReader->getEvents(); echo sprintf('%d event%s found' . PHP_EOL, count($events), count($events) == 1 ? '' : 's'); echo '---' . PHP_EOL; /** @var Event $event */ $index = 0; foreach ($events as $event) { echo sprintf('%d: %s | %s' . PHP_EOL, $index, $event->getUid(), $event->getStartDate()->format('H:i:s d/M/Y')); echo $event->getTitle() . PHP_EOL; if (strlen($event->getDescription())) { echo PHP_EOL . $event->getDescription() . PHP_EOL; } echo '---' . PHP_EOL; $index++; } echo PHP_EOL . '*** Imported ICS file ***' . PHP_EOL; if (count($events) == 0) { exit(0); } echo '*** Ready to upload to Drupal ***' . PHP_EOL . PHP_EOL; $character = readline('Do you want to continue? '); if (strtolower($character) !== 'y') { exit(0); } echo PHP_EOL; $target = new DrupalDatabaseEventWriter($drupalReader); $target->open(); /** @var Event $event */ foreach ($events as $event) { $target->upload($event); } $target->close(); } catch (\Exception $e) { echo sprintf('Caught exception: %s' . PHP_EOL, $e->getMessage()); echo $e->getTraceAsString(); }