/** * Store a newly created resource in storage. * * @param \Illuminate\Http\Request $request * @return \Illuminate\Http\Response */ public function store(Request $request) { $items = (array) json_decode($request->input('items')); $connections_name = json_decode($request->input('connections_name')); $names = json_decode($request->input('names')); $sizes = json_decode($request->input('sizes')); $dates = json_decode($request->input('dates')); $path_names = json_decode($request->input('path_name')); $tmp_url = substr(base64_encode(sha1(mt_rand())), 0, 16); $link = new Link(); $link->link_name = $request->input('lkname'); $link->user_id = Auth::user()->id; $link->url = $tmp_url; $link->save(); $lid = $link->id; $random = User::find(Auth::user()->id)->token->first()->id; $root = File::create(['name' => 'root', 'path' => $request->input("lkname"), 'link_id' => $lid, 'token_id' => $random]); foreach ($items as $index => $item) { $tokenName = $connections_name[$index]; $name = $names[$index]; $path = $item; $size = $sizes[$index]; $date = $dates[$index]; $provObj = new Provider($tokenName); $share_link = $provObj->getLink($path); // $before_dir = str_replace('/'.basename($path), "", $path); $root->children()->create(['name' => $name, 'path' => $path_names[$index], 'bytes' => 0, 'size' => $size, 'mime_type' => "", 'is_dir' => $size == "" ? true : false, 'shared' => $share_link, 'modified' => $date, 'token_id' => $provObj->getTokenId(), 'link_id' => $lid]); } return Redirect::to('/gtl/' . $request->input("lkname")); }
public function getLink(Request $req) { $file = $req->input('file'); $connection_name = $req->input('connection_name'); $proObj = new Provider($connection_name); $link = $proObj->getLink($file); return $link; }