aboutsummaryrefslogtreecommitdiff
path: root/src/fileManager.c
diff options
context:
space:
mode:
authorSyndamia <kamen.d.mladenov@protonmail.com>2021-09-02 14:50:58 +0300
committerSyndamia <kamen.d.mladenov@protonmail.com>2021-09-02 14:50:58 +0300
commite1792163733780a15e0d5049cd6d2af4a5465cee (patch)
tree8bc024b6e54cef104102e6cdb48e26a2680c9152 /src/fileManager.c
parente27a9d5f173f7626c576dbb2cd4c2f373edc847b (diff)
downloadyou86-e1792163733780a15e0d5049cd6d2af4a5465cee.tar
you86-e1792163733780a15e0d5049cd6d2af4a5465cee.tar.gz
you86-e1792163733780a15e0d5049cd6d2af4a5465cee.zip
(2) Implemented dailystack daily folder. Added test command that shows number of command arguments.
Diffstat (limited to 'src/fileManager.c')
-rw-r--r--src/fileManager.c27
1 files changed, 24 insertions, 3 deletions
diff --git a/src/fileManager.c b/src/fileManager.c
index 56e52cc..f6c050f 100644
--- a/src/fileManager.c
+++ b/src/fileManager.c
@@ -6,7 +6,7 @@
* | L__ grocery_shopping.you86
* |
* L__ DailyStack
- * L__ 02.09.2021
+ * L__ 02-09-2021
* L__ ParentProcedures.you86
* L__ result-1h_workout.png
* L__ result-math_homework.docx
@@ -17,17 +17,39 @@
#include <errno.h>
#include <stdio.h>
#include <string.h>
+#include <time.h>
+
+#define StrSize(str) (sizeof(str)/sizeof(str[0]))
+#define StrCpyCat(dest, cpy, cat) ({\
+ strcpy(dest, cpy);\
+ strcat(dest, cat);\
+ })
#define ROOT_DIR "/Documents/You86/"
#define PROCEDURES_DIR ROOT_DIR"Procedures/"
#define DAILY_STACK_DIR ROOT_DIR"DailyStack/"
+char today[11];
+
void createDir(char *);
+void initTodayString() {
+ time_t t = time(NULL);
+ struct tm localTime = *localtime(&t);
+ snprintf(today, StrSize(today), "%02d-%02d-%d", localTime.tm_mday, localTime.tm_mon + 1, localTime.tm_year + 1900);
+}
+
void initFiles() {
createDir(ROOT_DIR);
createDir(PROCEDURES_DIR);
createDir(DAILY_STACK_DIR);
+
+ initTodayString();
+
+ char todayPath[strlen(DAILY_STACK_DIR) + 11];
+ StrCpyCat(todayPath, DAILY_STACK_DIR, today);
+
+ createDir(todayPath);
}
void createDir(char *p_path) {
@@ -35,8 +57,7 @@ void createDir(char *p_path) {
int tildeLen = strlen(p_tilde), pathLen = strlen(p_path);
char fullPath[tildeLen + pathLen];
- for (int i = 0; i < tildeLen + pathLen; i++)
- fullPath[i] = (i < tildeLen) ? p_tilde[i] : p_path[i - tildeLen];
+ StrCpyCat(fullPath, p_tilde, p_path);
int ret = mkdir(fullPath, S_IRWXU);
if (ret == -1) {