#!/usr/bin/env php 'File', 'a' => 'Api key', 's' => 'Shortcut'], ['c' => 'Command', 'id' => 'Snip id']); $parsed = $argvParser->parseArgv($argv); if ($parsed === false) { line('Usage: ' . __FILE__ . ' ' . $argvParser->getOptionsHelp()); exit(1); } $command = $parsed->get('c'); $id = $parsed->get('id'); $file = $parsed->get('f'); $apiKey = $parsed->get('k', $config->get('apiKey')); $getShortcut = $parsed->get('s'); $content = $parsed->getRest(); if (empty($apiKey)) { line('Input api key:'); $apiKey = trim(fgets(STDIN)); $config->set('apiKey', $apiKey); line('Api key stored in config file'); } if (empty($apiKey)) { line('Api Key is empty'); exit(1); } if ($getShortcut) { $shortcut = $config->get('shortcuts')[$id] ?? null; if (empty($shortcut)) { line('Shortcut ' . $getShortcut . ' not found'); exit(1); } $id = $shortcut[0]; $file = $shortcut[1]; } $baseUrl = 'https://snips.loken.nl/api/'; $snips = new snips($baseUrl, $apiKey); switch ($command) { case 'get': $content = $snips->getSnip($id); if ($file) { file_put_contents($file, $content); line('Snip content saved to ' . $file); } else { line($content); } break; case 'set': if ($file) { if (!file_exists($file)) { line('File ' . $file . ' does not exist'); exit(1); } $content = file_get_contents($file); if ($content === false) { line('Error reading file ' . $file); exit(1); } } $content = $snips->postSnip($id, $content); break; default: line('Unknown command: ' . $command); exit(1); }