function merge_pdfs($pdf_ids) { // TODO: this entire function should be gaurded by some sort of mutex if (count($pdf_ids) < 2) { err_bad_input_format("expected at least 2 pdf ids"); } // validate pdf arguments and gather merged pdf attributes $paths = array(); foreach ($pdf_ids as $pdf_id) { $pdf = get_pdf_info($pdf_id); if (!$pdf) { err_bad_input_data('pdfid', $pdf_id, 'not a valid pdf id'); } $paths[] = $pdf['path']; } $new_path = merge_pdf_files($paths); $new_id = merge_pdf_metadata($pdf_ids, $new_path); if (!$new_id) { err_internal("could not merge pdfs"); } }
function service_merge_pdfs($args) { if (count($args) < 2) { err_bad_input_format("expected at least 2 arguments in URL (one or more pdf ids)"); } merge_pdfs($args); }