OSDN Git Service

だいぶよくなった 私の環境では具合が悪いときはIDEを再起動させる必要がありそうだ EPUBがFUSEeに寄せすぎた master
authoryamat0jp <terukohietori@gmail.com>
Sat, 14 Mar 2020 11:23:55 +0000 (20:23 +0900)
committeryamat0jp <terukohietori@gmail.com>
Sat, 14 Mar 2020 11:23:55 +0000 (20:23 +0900)
Unit1.dfm
Unit1.pas
WebModuleUnit1.dfm
WebModuleUnit1.pas

index 793b319..7cdfa82 100644 (file)
--- a/Unit1.dfm
+++ b/Unit1.dfm
@@ -84,9 +84,10 @@ object DataModule1: TDataModule1
     Left = 128
     Top = 184
     object newsnumber: TIntegerField
-      AutoGenerateValue = arDefault
       FieldName = 'number'
       Origin = '`number`'
+      ProviderFlags = [pfInUpdate, pfInWhere, pfInKey]
+      Required = True
     end
     object newsmagId: TIntegerField
       AutoGenerateValue = arDefault
index c4f549d..236164e 100644 (file)
--- a/Unit1.pas
+++ b/Unit1.pas
@@ -79,9 +79,7 @@ type
     procedure deleteMagazine(id: integer);
     procedure deleteNumber(id, num: integer);
     procedure deleteWriter(var id: integer);
-    procedure getView(id, num: integer; out Data: TJSONObject); overload;
-    procedure getView(id: integer; out Data: TJSONObject); overload;
-    procedure viewList(id: integer; out Data: TJSONObject);
+    procedure getView(id, num: integer; out Data: TJSONObject);
     procedure magazines(id: integer; out Data: TJSONObject);
     procedure magListAll(id: integer; out Data: TJSONObject);
     procedure createMagId(id: integer; out Data: TJSONObject);
@@ -136,14 +134,16 @@ begin
     Exit;
   Data := TJSONObject.Create;
   ar := TJSONArray.Create;
-  Data.AddPair('magnum', num);
-  Data.AddPair('name',mag.FieldByName('magname').AsString);
-  Data.AddPair('comment',mag.FieldByName('comment').AsString);
+  data.AddPair('magnum',mag.FieldByName('magnum').AsString);
+  data.AddPair('name',mag.FieldByName('magname').AsString);
+  data.AddPair('comment',mag.FieldByName('comment').AsString);
+  data.AddPair('day',mag.FieldByName('day').AsString);
+  data.AddPair('last',mag.FieldByName('lastday').AsString);
   Data.AddPair('data', ar);
   with FDQuery1 do
   begin
     SQL.Clear;
-    SQL.Add('select files,enabled from news where magId = :id order by day;');
+    SQL.Add('select files,enabled,changed,day from news where magId = :id order by day;');
     ParamByName('id').AsInteger := mag.FieldByName('magId').AsInteger;
     Open;
     while Eof = false do
@@ -154,6 +154,9 @@ begin
         d.AddPair('text', FieldByName('files').AsString)
       else
         d.AddPair('text', con);
+      if FieldByName('changed').AsBoolean = true then
+        d.AddPair('hint','\82±\82Ì\8bL\8e\96\82Í\95Ï\8dX\82³\82ê\82Ä\82¢\82Ü\82·');
+      d.AddPair('day',FieldByName('day').AsString);
       Next;
     end;
   end;
@@ -215,7 +218,7 @@ begin
   FDQuery1.ExecSQL
     (tmp + 'reader(readerId int primary key, reader varchar(20), mail varchar(20), password varchar(20));');
   FDQuery1.ExecSQL
-    (tmp + 'news(number int primary key, magId int, newsId int, files mediumtext character set utf8, day date, changed bool, enabled bool);');
+    (tmp + 'news(number int primary key, magId int, newsId int, files mediumtext, day date, changed bool, enabled bool);');
   FDQuery1.ExecSQL
     (tmp + 'image(imgId int primary key, magId int, newsId int, writerId int, name varchar(20), copyright varchar(20), data longblob, encode bool);');
   DB.Open;
@@ -306,11 +309,6 @@ begin
   Data.AddPair('mag', ar);
 end;
 
-procedure TDataModule1.viewList(id: integer; out Data: TJSONObject);
-begin
-
-end;
-
 procedure TDataModule1.zipFile(id: integer; magNum: string; stream: TStream);
 var
   Zip: TZipFIle;
@@ -402,7 +400,7 @@ begin
         inc(imgid);
       end;
     end
-    else if (str2 = '/text') and (str <> '') then
+    else if (str2 = '/text') and (str <> '') and (str <> 'nav.xhtml') and (str <> 'cover.xhtml') then
     begin
       Zip.Read(name, stream, ziph);
       list.LoadFromStream(stream,TEncoding.UTF8);
@@ -487,22 +485,6 @@ begin
   Data := makeTable(FDQuery1);
 end;
 
-procedure TDataModule1.getView(id: integer; out Data: TJSONObject);
-begin
-  if id = 0 then
-    Exit;
-  with FDQuery1.SQL do
-  begin
-    Clear;
-    Add('select magName,writer,changed,news.day,files from db,news,mag,writer');
-    Add(' where db.readerId = :id and db.magId = mag.magId and db.magId = news.magId');
-    Add(' and db.writerId = writer.writerId and enabled = true order by news.day;');
-  end;
-  FDQuery1.ParamByName('id').AsInteger := id;
-  FDQuery1.Open;
-  Data := makeTable(FDQuery1);
-end;
-
 procedure TDataModule1.imageView(magNum, name: string; newsId: integer; out Data: TJSONObject);
 var
   id: Variant;
@@ -653,13 +635,12 @@ end;
 
 procedure TDataModule1.mainView(id: integer; out Data: TJSONObject);
 begin
-  Data := TJSONObject.Create;
   with FDQuery1.SQL do
   begin
     Clear;
-    Add('select nagName,writer,text,day,changed from db,news,mag,writer');
-    Add(' where db.newsId = news.newsId and db.magId = mag.magId and');
-    Add(' db.writerId = writer.writerId and db.reader.id = :id order by day;');
+    Add('select magName,writer,files,news.day,changed from db,news,mag,writer');
+    Add(' where db.magId = news.magId and db.magId = mag.magId and');
+    Add(' db.writerId = writer.writerId and db.readerId = :id order by day;');
   end;
   FDQuery1.ParamByName('id').AsInteger := id;
   FDQuery1.Open;
index 016cbd0..f94c48b 100644 (file)
@@ -306,12 +306,9 @@ object WebModule1: TWebModule1
       '        <p>'#12491#12517#12540#12473#12398#25968#12293#12434#12362#27005#12375#12415#12367#12384#12373#12356
       '        {{#mag}}'
       '        <hr>'
-      '                <p>[{{magName}}] ({{day}})'
-      '                <p>by {{writer}}'
+      '                <h4>[{{magName}}] ({{day}})  by {{writer}}</h4>'
       '                {{&text}}'
-      '                {{#changed}}'
-      '                        <p>{{hint}}'
-      '                {{/changed}}'
+      '                <p>{{hint}}'
       '        {{/mag}}'
       '</body>'
       '</html>')
@@ -399,7 +396,7 @@ object WebModule1: TWebModule1
       '    <title>Document</title>'
       '</head>'
       '<body>'
-      '        <p>{{name}}'
+      '        <p>{{name}} \\// '#30331#37682#26085'{{date}} \\// '#26368#32066#26356#26032#26085'{{last}}'
       '        <p>{{comment}}'
       '        <#main>'
       '        {{#id}}'
index 0d49e24..a86d161 100644 (file)
@@ -259,7 +259,7 @@ var
   data: TJSONObject;
 begin
   Response.ContentType := 'text/html;charset=utf-8';
-  DataModule1.getView(readerId, data);
+  DataModule1.mainView(readerId, data);
   mustache := TSynMustache.Parse(mainView.Content);
   Response.Content := mustache.RenderJSON(data.ToJSON);
 end;